create-vasvibe 0.3.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/index.mjs +9 -3
- package/src/scaffold.mjs +1 -1
- package/template/.agents/agents/analyst/agent.json +2 -3
- package/template/.agents/agents/developer/agent.json +2 -2
- package/template/.agents/agents/devops/agent.json +44 -0
- package/template/.agents/agents/document/agent.json +2 -3
- package/template/.agents/agents/fixer/agent.json +2 -2
- package/template/.agents/agents/initiator/agent.json +2 -5
- package/template/.agents/agents/orchestrator/agent.json +44 -0
- package/template/.agents/agents/pm/agent.json +2 -4
- package/template/.agents/agents/qa/agent.json +44 -0
- package/template/.agents/agents/sysarch/agent.json +2 -2
- package/template/.agents/agents/tester/agent.json +2 -2
- package/template/.agents/skills/developer/SKILL.md +6 -6
- package/template/.agents/skills/pm/SKILL.md +15 -17
- package/template/.claude/agents/analyst.md +5 -6
- package/template/.claude/agents/developer.md +12 -83
- package/template/.claude/agents/devops.md +29 -0
- package/template/.claude/agents/document.md +35 -14
- package/template/.claude/agents/fixer.md +6 -29
- package/template/.claude/agents/initiator.md +2 -3
- package/template/.claude/agents/orchestrator.md +41 -0
- package/template/.claude/agents/pm.md +6 -10
- package/template/.claude/agents/qa.md +53 -0
- package/template/.claude/agents/sysarch.md +15 -17
- package/template/.claude/agents/tester.md +7 -30
- package/template/.github/prompts/developer.prompt.md +3 -3
- package/template/.github/prompts/fixer.prompt.md +3 -3
- package/template/.github/prompts/pm.prompt.md +4 -2
- package/template/.github/prompts/tester.prompt.md +2 -2
- package/template/.opencode/commands/analyst.md +5 -6
- package/template/.opencode/commands/developer.md +11 -112
- package/template/.opencode/commands/devops.md +29 -0
- package/template/.opencode/commands/document.md +35 -14
- package/template/.opencode/commands/fixer.md +6 -29
- package/template/.opencode/commands/initiator.md +2 -3
- package/template/.opencode/commands/orchestrator.md +41 -0
- package/template/.opencode/commands/pm.md +6 -5
- package/template/.opencode/commands/qa.md +53 -0
- package/template/.opencode/commands/sysarch.md +15 -17
- package/template/.opencode/commands/tester.md +7 -34
- package/template/GIT_STRUCTURE_GUIDE.md +1 -1
- package/template/README.md +0 -9
- package/template/_gitignore +0 -7
- package/template/agent/workflows/_shared/git-branch-management.md +25 -0
- package/template/agent/workflows/_shared/state-management.md +5 -0
- package/template/agent/workflows/analyst.md +6 -4
- package/template/agent/workflows/developer.md +9 -28
- package/template/agent/workflows/devops.md +29 -0
- package/template/agent/workflows/document.md +35 -11
- package/template/agent/workflows/fixer.md +7 -27
- package/template/agent/workflows/initiator.md +3 -1
- package/template/agent/workflows/orchestrator.md +41 -0
- package/template/agent/workflows/pm.md +7 -3
- package/template/agent/workflows/qa.md +53 -0
- package/template/agent/workflows/sysarch.md +4 -2
- package/template/agent/workflows/tester.md +7 -27
- package/template/opencode.json +312 -0
- package/template/schemas/dev_log.template.md +26 -0
- package/template/schemas/product-ci.template.yml +50 -0
- package/template/schemas/specification.template.md +27 -0
- package/template/schemas/style_guide.template.md +29 -0
- package/template/schemas/task_list.template.md +33 -0
- package/template/state/knowledge_base/.gitkeep +1 -0
package/package.json
CHANGED
package/src/index.mjs
CHANGED
|
@@ -17,6 +17,7 @@ ${pc.bold('Usage:')}
|
|
|
17
17
|
|
|
18
18
|
${pc.bold('Options:')}
|
|
19
19
|
-y, --yes Skip prompts and use defaults
|
|
20
|
+
-u, --update Update an existing project (overwrites template files, keeps user files)
|
|
20
21
|
--no-git Do not initialize a git repository
|
|
21
22
|
--no-opencode Exclude .opencode/ (commands, skills)
|
|
22
23
|
--no-claude Exclude .claude/ and .agents/
|
|
@@ -35,6 +36,7 @@ function parseArgs(argv) {
|
|
|
35
36
|
const args = argv.slice(2);
|
|
36
37
|
const flags = {
|
|
37
38
|
yes: false,
|
|
39
|
+
update: false,
|
|
38
40
|
git: true,
|
|
39
41
|
opencode: true,
|
|
40
42
|
claude: true,
|
|
@@ -51,6 +53,10 @@ function parseArgs(argv) {
|
|
|
51
53
|
case '--yes':
|
|
52
54
|
flags.yes = true;
|
|
53
55
|
break;
|
|
56
|
+
case '-u':
|
|
57
|
+
case '--update':
|
|
58
|
+
flags.update = true;
|
|
59
|
+
break;
|
|
54
60
|
case '--no-git':
|
|
55
61
|
flags.git = false;
|
|
56
62
|
break;
|
|
@@ -125,10 +131,10 @@ export async function main(argv) {
|
|
|
125
131
|
? path.resolve(process.cwd(), argInput)
|
|
126
132
|
: path.resolve(process.cwd(), projectName);
|
|
127
133
|
|
|
128
|
-
// Safety: target must not exist or must be empty.
|
|
129
|
-
if (await pathExists(targetDir)) {
|
|
134
|
+
// Safety: target must not exist or must be empty, unless --update is passed.
|
|
135
|
+
if (!flags.update && await pathExists(targetDir)) {
|
|
130
136
|
if (!(await isDirEmpty(targetDir))) {
|
|
131
|
-
log.error(`Target directory "${projectName}" already exists and is not empty.`);
|
|
137
|
+
log.error(`Target directory "${projectName}" already exists and is not empty. Use --update to overwrite agent files.`);
|
|
132
138
|
process.exit(1);
|
|
133
139
|
}
|
|
134
140
|
}
|
package/src/scaffold.mjs
CHANGED
|
@@ -53,7 +53,7 @@ export async function scaffold({
|
|
|
53
53
|
// 4. Replace placeholders in well-known files.
|
|
54
54
|
const year = String(new Date().getFullYear());
|
|
55
55
|
const replacements = { projectName, year };
|
|
56
|
-
for (const rel of ['README.md', 'PROJECT_README.example.md', '.gitignore']) {
|
|
56
|
+
for (const rel of ['README.md', 'PROJECT_README.example.md', '.gitignore', 'AGENT_PERSONAS.md', 'GIT_STRUCTURE_GUIDE.md']) {
|
|
57
57
|
const f = path.join(targetDir, rel);
|
|
58
58
|
if (await pathExists(f)) await replaceInFile(f, replacements);
|
|
59
59
|
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"systemPromptSections": [
|
|
8
8
|
{
|
|
9
9
|
"title": "Agent System Instructions",
|
|
10
|
-
"content": "
|
|
10
|
+
"content": "You are the analyst Agent. Read and follow ALL instructions in agent/workflows/analyst.md as your complete system prompt. That file is your source of truth."
|
|
11
11
|
}
|
|
12
12
|
],
|
|
13
13
|
"toolNames": [
|
|
@@ -22,7 +22,6 @@
|
|
|
22
22
|
"multi_replace_file_content",
|
|
23
23
|
"replace_file_content",
|
|
24
24
|
"write_to_file",
|
|
25
|
-
"run_command",
|
|
26
25
|
"manage_task",
|
|
27
26
|
"define_subagent",
|
|
28
27
|
"invoke_subagent",
|
|
@@ -41,4 +40,4 @@
|
|
|
41
40
|
}
|
|
42
41
|
}
|
|
43
42
|
}
|
|
44
|
-
}
|
|
43
|
+
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"systemPromptSections": [
|
|
8
8
|
{
|
|
9
9
|
"title": "Agent System Instructions",
|
|
10
|
-
"content": "
|
|
10
|
+
"content": "You are the developer Agent. Read and follow ALL instructions in agent/workflows/developer.md as your complete system prompt. That file is your source of truth."
|
|
11
11
|
}
|
|
12
12
|
],
|
|
13
13
|
"toolNames": [
|
|
@@ -41,4 +41,4 @@
|
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
}
|
|
44
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "devops",
|
|
3
|
+
"description": "Mengotomasi deployment, membuat CI/CD pipelines, dan mengonfigurasi infrastruktur (Docker, GitHub Actions, dll) untuk product code.",
|
|
4
|
+
"hidden": false,
|
|
5
|
+
"config": {
|
|
6
|
+
"customAgent": {
|
|
7
|
+
"systemPromptSections": [
|
|
8
|
+
{
|
|
9
|
+
"title": "Agent System Instructions",
|
|
10
|
+
"content": "You are the DevOps Agent. Read and follow ALL instructions in agent/workflows/devops.md as your complete system prompt. That file is your source of truth."
|
|
11
|
+
}
|
|
12
|
+
],
|
|
13
|
+
"toolNames": [
|
|
14
|
+
"send_message",
|
|
15
|
+
"find_by_name",
|
|
16
|
+
"grep_search",
|
|
17
|
+
"view_file",
|
|
18
|
+
"list_dir",
|
|
19
|
+
"read_url_content",
|
|
20
|
+
"search_web",
|
|
21
|
+
"schedule",
|
|
22
|
+
"multi_replace_file_content",
|
|
23
|
+
"replace_file_content",
|
|
24
|
+
"write_to_file",
|
|
25
|
+
"run_command",
|
|
26
|
+
"manage_task",
|
|
27
|
+
"define_subagent",
|
|
28
|
+
"invoke_subagent",
|
|
29
|
+
"manage_subagents"
|
|
30
|
+
],
|
|
31
|
+
"systemPromptConfig": {
|
|
32
|
+
"includeSections": [
|
|
33
|
+
"user_information",
|
|
34
|
+
"mcp_servers",
|
|
35
|
+
"skills",
|
|
36
|
+
"subagent_reminder",
|
|
37
|
+
"messaging",
|
|
38
|
+
"artifacts",
|
|
39
|
+
"user_rules"
|
|
40
|
+
]
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"systemPromptSections": [
|
|
8
8
|
{
|
|
9
9
|
"title": "Agent System Instructions",
|
|
10
|
-
"content": "
|
|
10
|
+
"content": "You are the document Agent. Read and follow ALL instructions in agent/workflows/document.md as your complete system prompt. That file is your source of truth."
|
|
11
11
|
}
|
|
12
12
|
],
|
|
13
13
|
"toolNames": [
|
|
@@ -22,7 +22,6 @@
|
|
|
22
22
|
"multi_replace_file_content",
|
|
23
23
|
"replace_file_content",
|
|
24
24
|
"write_to_file",
|
|
25
|
-
"run_command",
|
|
26
25
|
"manage_task",
|
|
27
26
|
"define_subagent",
|
|
28
27
|
"invoke_subagent",
|
|
@@ -41,4 +40,4 @@
|
|
|
41
40
|
}
|
|
42
41
|
}
|
|
43
42
|
}
|
|
44
|
-
}
|
|
43
|
+
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"systemPromptSections": [
|
|
8
8
|
{
|
|
9
9
|
"title": "Agent System Instructions",
|
|
10
|
-
"content": "
|
|
10
|
+
"content": "You are the fixer Agent. Read and follow ALL instructions in agent/workflows/fixer.md as your complete system prompt. That file is your source of truth."
|
|
11
11
|
}
|
|
12
12
|
],
|
|
13
13
|
"toolNames": [
|
|
@@ -41,4 +41,4 @@
|
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
}
|
|
44
|
+
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"systemPromptSections": [
|
|
8
8
|
{
|
|
9
9
|
"title": "Agent System Instructions",
|
|
10
|
-
"content": "
|
|
10
|
+
"content": "You are the initiator Agent. Read and follow ALL instructions in agent/workflows/initiator.md as your complete system prompt. That file is your source of truth."
|
|
11
11
|
}
|
|
12
12
|
],
|
|
13
13
|
"toolNames": [
|
|
@@ -19,10 +19,7 @@
|
|
|
19
19
|
"read_url_content",
|
|
20
20
|
"search_web",
|
|
21
21
|
"schedule",
|
|
22
|
-
"multi_replace_file_content",
|
|
23
|
-
"replace_file_content",
|
|
24
22
|
"write_to_file",
|
|
25
|
-
"run_command",
|
|
26
23
|
"manage_task",
|
|
27
24
|
"define_subagent",
|
|
28
25
|
"invoke_subagent",
|
|
@@ -41,4 +38,4 @@
|
|
|
41
38
|
}
|
|
42
39
|
}
|
|
43
40
|
}
|
|
44
|
-
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "orchestrator",
|
|
3
|
+
"description": "Pipeline Coordinator — menerima high-level command dan menjalankan agent pipeline.",
|
|
4
|
+
"hidden": false,
|
|
5
|
+
"config": {
|
|
6
|
+
"customAgent": {
|
|
7
|
+
"systemPromptSections": [
|
|
8
|
+
{
|
|
9
|
+
"title": "Agent System Instructions",
|
|
10
|
+
"content": "You are the orchestrator Agent. Read and follow ALL instructions in agent/workflows/orchestrator.md as your complete system prompt. That file is your source of truth."
|
|
11
|
+
}
|
|
12
|
+
],
|
|
13
|
+
"toolNames": [
|
|
14
|
+
"send_message",
|
|
15
|
+
"find_by_name",
|
|
16
|
+
"grep_search",
|
|
17
|
+
"view_file",
|
|
18
|
+
"list_dir",
|
|
19
|
+
"read_url_content",
|
|
20
|
+
"search_web",
|
|
21
|
+
"schedule",
|
|
22
|
+
"multi_replace_file_content",
|
|
23
|
+
"replace_file_content",
|
|
24
|
+
"write_to_file",
|
|
25
|
+
"run_command",
|
|
26
|
+
"manage_task",
|
|
27
|
+
"define_subagent",
|
|
28
|
+
"invoke_subagent",
|
|
29
|
+
"manage_subagents"
|
|
30
|
+
],
|
|
31
|
+
"systemPromptConfig": {
|
|
32
|
+
"includeSections": [
|
|
33
|
+
"user_information",
|
|
34
|
+
"mcp_servers",
|
|
35
|
+
"skills",
|
|
36
|
+
"subagent_reminder",
|
|
37
|
+
"messaging",
|
|
38
|
+
"artifacts",
|
|
39
|
+
"user_rules"
|
|
40
|
+
]
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"systemPromptSections": [
|
|
8
8
|
{
|
|
9
9
|
"title": "Agent System Instructions",
|
|
10
|
-
"content": "
|
|
10
|
+
"content": "You are the pm Agent. Read and follow ALL instructions in agent/workflows/pm.md as your complete system prompt. That file is your source of truth."
|
|
11
11
|
}
|
|
12
12
|
],
|
|
13
13
|
"toolNames": [
|
|
@@ -20,9 +20,7 @@
|
|
|
20
20
|
"search_web",
|
|
21
21
|
"schedule",
|
|
22
22
|
"multi_replace_file_content",
|
|
23
|
-
"replace_file_content",
|
|
24
23
|
"write_to_file",
|
|
25
|
-
"run_command",
|
|
26
24
|
"manage_task",
|
|
27
25
|
"define_subagent",
|
|
28
26
|
"invoke_subagent",
|
|
@@ -41,4 +39,4 @@
|
|
|
41
39
|
}
|
|
42
40
|
}
|
|
43
41
|
}
|
|
44
|
-
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "qa",
|
|
3
|
+
"description": "Mengevaluasi kode produk secara statis, memastikan tidak ada code smells, tidak ada kerentanan keamanan (vulnerabilities), dan mengikuti standard yang ditetapkan.",
|
|
4
|
+
"hidden": false,
|
|
5
|
+
"config": {
|
|
6
|
+
"customAgent": {
|
|
7
|
+
"systemPromptSections": [
|
|
8
|
+
{
|
|
9
|
+
"title": "Agent System Instructions",
|
|
10
|
+
"content": "You are the QA and Security Agent. Read and follow ALL instructions in agent/workflows/qa.md as your complete system prompt. That file is your source of truth."
|
|
11
|
+
}
|
|
12
|
+
],
|
|
13
|
+
"toolNames": [
|
|
14
|
+
"send_message",
|
|
15
|
+
"find_by_name",
|
|
16
|
+
"grep_search",
|
|
17
|
+
"view_file",
|
|
18
|
+
"list_dir",
|
|
19
|
+
"read_url_content",
|
|
20
|
+
"search_web",
|
|
21
|
+
"schedule",
|
|
22
|
+
"multi_replace_file_content",
|
|
23
|
+
"replace_file_content",
|
|
24
|
+
"write_to_file",
|
|
25
|
+
"run_command",
|
|
26
|
+
"manage_task",
|
|
27
|
+
"define_subagent",
|
|
28
|
+
"invoke_subagent",
|
|
29
|
+
"manage_subagents"
|
|
30
|
+
],
|
|
31
|
+
"systemPromptConfig": {
|
|
32
|
+
"includeSections": [
|
|
33
|
+
"user_information",
|
|
34
|
+
"mcp_servers",
|
|
35
|
+
"skills",
|
|
36
|
+
"subagent_reminder",
|
|
37
|
+
"messaging",
|
|
38
|
+
"artifacts",
|
|
39
|
+
"user_rules"
|
|
40
|
+
]
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"systemPromptSections": [
|
|
8
8
|
{
|
|
9
9
|
"title": "Agent System Instructions",
|
|
10
|
-
"content": "
|
|
10
|
+
"content": "You are the sysarch Agent. Read and follow ALL instructions in agent/workflows/sysarch.md as your complete system prompt. That file is your source of truth."
|
|
11
11
|
}
|
|
12
12
|
],
|
|
13
13
|
"toolNames": [
|
|
@@ -41,4 +41,4 @@
|
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
}
|
|
44
|
+
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"systemPromptSections": [
|
|
8
8
|
{
|
|
9
9
|
"title": "Agent System Instructions",
|
|
10
|
-
"content": "
|
|
10
|
+
"content": "You are the tester Agent. Read and follow ALL instructions in agent/workflows/tester.md as your complete system prompt. That file is your source of truth."
|
|
11
11
|
}
|
|
12
12
|
],
|
|
13
13
|
"toolNames": [
|
|
@@ -41,4 +41,4 @@
|
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
}
|
|
44
|
+
}
|
|
@@ -11,7 +11,7 @@ memory: project
|
|
|
11
11
|
**INSTRUCTION STEPS:**
|
|
12
12
|
|
|
13
13
|
1. **Load Context:**
|
|
14
|
-
- Baca file spesifikasi target (misal: `
|
|
14
|
+
- Baca file spesifikasi target (misal: `specifications/001_...md`).
|
|
15
15
|
- Baca file `development_log.md` (jika ada) untuk memahami progress terakhir.
|
|
16
16
|
- **BACA file `task/task_list.md`** untuk menemukan task yang akan dikerjakan.
|
|
17
17
|
2. **Repo Management (CRITICAL - lakukan sebelum mulai coding):**
|
|
@@ -41,7 +41,7 @@ memory: project
|
|
|
41
41
|
|
|
42
42
|
3. **Update Task Status - START (CRITICAL):**
|
|
43
43
|
- Cari task yang sesuai dengan spesifikasi yang akan dikerjakan di `task/task_list.md`.
|
|
44
|
-
- **UPDATE status task** dari `not_started` menjadi `
|
|
44
|
+
- **UPDATE status task** dari `not_started` menjadi `development`.
|
|
45
45
|
- Update field **"Last Updated"** dengan timestamp saat ini [YYYY-MM-DD HH:MM].
|
|
46
46
|
- Update field **"Assigned To"** dengan "Developer Agent".
|
|
47
47
|
4. **Directory Check:** Cek apakah folder `codes/` ada. Jika tidak, **BUAT FOLDERNYA**.
|
|
@@ -56,9 +56,9 @@ memory: project
|
|
|
56
56
|
- Buat unit test yang bisa dieksekusi secara otomatis menggunakan framework dan tool yang tersedia seperti jest.
|
|
57
57
|
6. **Logging (CRITICAL):**
|
|
58
58
|
Setelah kode selesai ditulis, lakukan pencatatan:
|
|
59
|
-
- **Cek Folder:** Pastikan folder `
|
|
60
|
-
- **Nama File Log:** Gunakan format `
|
|
61
|
-
- _Contoh:_ Jika
|
|
59
|
+
- **Cek Folder:** Pastikan folder `task/[TASK-ID]_[nama-task]/` tersedia. Jika belum, BUAT folder tersebut.
|
|
60
|
+
- **Nama File Log:** Gunakan format `dev_log.md`.
|
|
61
|
+
- _Contoh:_ Jika task adalah `TASK-001`, maka log bernama `task/001_login/dev_log.md`.
|
|
62
62
|
- **Isi Log (Template):**
|
|
63
63
|
|
|
64
64
|
```markdown
|
|
@@ -84,7 +84,7 @@ memory: project
|
|
|
84
84
|
|
|
85
85
|
7. **Update Task Status - COMPLETE (CRITICAL):**
|
|
86
86
|
- Setelah development selesai dan log sudah dibuat, kembali ke `task/task_list.md`.
|
|
87
|
-
- **UPDATE status task** dari `
|
|
87
|
+
- **UPDATE status task** dari `development` menjadi `ready_to_test`.
|
|
88
88
|
- Update field **"Last Updated"** dengan timestamp saat ini [YYYY-MM-DD HH:MM].
|
|
89
89
|
- Tambahkan notes di field **"Notes"** jika ada informasi penting (misal: "Butuh environment variable X").
|
|
90
90
|
|
|
@@ -49,7 +49,7 @@ description: Brief description of what this Skill does and when to use it
|
|
|
49
49
|
## Priority 0 (Critical)
|
|
50
50
|
|
|
51
51
|
### [TASK-000] Environment Setup
|
|
52
|
-
- **Spec:** `
|
|
52
|
+
- **Spec:** `specifications/000_spec_environment_setup.md`
|
|
53
53
|
- **Status:** `not_started`
|
|
54
54
|
- **Assigned To:** Developer Agent
|
|
55
55
|
- **Dependencies:** None
|
|
@@ -62,7 +62,7 @@ description: Brief description of what this Skill does and when to use it
|
|
|
62
62
|
## Priority 1 (High)
|
|
63
63
|
|
|
64
64
|
### [TASK-001] User Authentication - Login
|
|
65
|
-
- **Spec:** `
|
|
65
|
+
- **Spec:** `specifications/001_spec_login.md`
|
|
66
66
|
- **Status:** `not_started`
|
|
67
67
|
- **Assigned To:** Developer Agent
|
|
68
68
|
- **Dependencies:** TASK-000
|
|
@@ -75,7 +75,7 @@ description: Brief description of what this Skill does and when to use it
|
|
|
75
75
|
## Priority 2 (Medium)
|
|
76
76
|
|
|
77
77
|
### [TASK-XXX] [Nama Task]
|
|
78
|
-
- **Spec:** `
|
|
78
|
+
- **Spec:** `specifications/XXX_spec_...md`
|
|
79
79
|
- **Status:** `not_started`
|
|
80
80
|
- **Assigned To:** -
|
|
81
81
|
- **Dependencies:** TASK-XXX
|
|
@@ -88,7 +88,7 @@ description: Brief description of what this Skill does and when to use it
|
|
|
88
88
|
## Blocked Tasks
|
|
89
89
|
|
|
90
90
|
### [TASK-XXX] [Nama Task]
|
|
91
|
-
- **Spec:** `
|
|
91
|
+
- **Spec:** `specifications/XXX_spec_...md`
|
|
92
92
|
- **Status:** `blocked`
|
|
93
93
|
- **Assigned To:** -
|
|
94
94
|
- **Dependencies:** TASK-XXX
|
|
@@ -102,8 +102,8 @@ description: Brief description of what this Skill does and when to use it
|
|
|
102
102
|
## Completed Tasks
|
|
103
103
|
|
|
104
104
|
### [TASK-XXX] [Nama Task]
|
|
105
|
-
- **Spec:** `
|
|
106
|
-
- **Status:** `
|
|
105
|
+
- **Spec:** `specifications/XXX_spec_...md`
|
|
106
|
+
- **Status:** `done`
|
|
107
107
|
- **Assigned To:** Developer Agent
|
|
108
108
|
- **Dependencies:** TASK-XXX
|
|
109
109
|
- **Description:** [Deskripsi singkat]
|
|
@@ -114,13 +114,11 @@ description: Brief description of what this Skill does and when to use it
|
|
|
114
114
|
5. **STATUS DEFINITIONS:**
|
|
115
115
|
Pastikan setiap task memiliki salah satu status berikut:
|
|
116
116
|
- `not_started`: Task belum dikerjakan sama sekali
|
|
117
|
-
- `
|
|
118
|
-
- `fixing`: Task sedang diperbaiki oleh Fixer Agent
|
|
119
|
-
- `testing_ready`: Test scenario dari Tester Agent sudah dibuat
|
|
117
|
+
- `development`: Task sedang dikerjakan oleh Developer Agent
|
|
120
118
|
- `ready_to_test`: Task sudah siap untuk dites (dev selesai, belum ada test scenario)
|
|
121
119
|
- `testing`: Task sedang dites oleh Tester Agent
|
|
122
|
-
- `
|
|
123
|
-
- `
|
|
120
|
+
- `fixing`: Task sedang diperbaiki oleh Fixer Agent
|
|
121
|
+
- `done`: Task lolos test
|
|
124
122
|
- `human_validated`: Task sudah divalidasi oleh manusia (status ini diisi manual)
|
|
125
123
|
- `blocked`: Task tidak dapat dikerjakan karena ada blocker
|
|
126
124
|
|
|
@@ -130,8 +128,8 @@ description: Brief description of what this Skill does and when to use it
|
|
|
130
128
|
- Jika ada circular dependency, **TANDAI SEBAGAI BLOCKER** dan beri catatan.
|
|
131
129
|
|
|
132
130
|
7. **MONITORING & UPDATES:**
|
|
133
|
-
- Ketika diminta update task list, baca ulang semua log di `
|
|
134
|
-
- Update status task berdasarkan log yang ditemukan.
|
|
131
|
+
- Ketika diminta update task list, baca ulang semua log di folder `task/` (terutama file `dev_log.md` dan `test_log.md` dalam subfolder masing-masing task) untuk mengidentifikasi progress.
|
|
132
|
+
- Update status task berdasarkan checklist di log yang ditemukan.
|
|
135
133
|
- Update timestamp "Last Updated" setiap kali ada perubahan.
|
|
136
134
|
- Update summary di bagian atas (Total Tasks, Completed, In Progress, etc).
|
|
137
135
|
|
|
@@ -164,9 +162,9 @@ description: Brief description of what this Skill does and when to use it
|
|
|
164
162
|
```
|
|
165
163
|
|
|
166
164
|
9. **COLLABORATION WITH OTHER AGENTS:**
|
|
167
|
-
- **Developer Agent:** Akan update status dari `not_started` → `
|
|
168
|
-
- **Fixer Agent:** Akan update status dari `
|
|
169
|
-
- **Tester Agent:** Akan update status dari `ready_to_test` → `
|
|
165
|
+
- **Developer Agent:** Akan update status dari `not_started` → `development` → `ready_to_test`.
|
|
166
|
+
- **Fixer Agent:** Akan update status dari `fixing` → `ready_to_test`.
|
|
167
|
+
- **Tester Agent:** Akan update status dari `ready_to_test` → `testing` → `done`/`fixing`.
|
|
170
168
|
- **Your Role:** Memastikan task list selalu up-to-date dan terorganisir dengan baik.
|
|
171
169
|
|
|
172
170
|
10. **VALIDATION & QUALITY CHECK:**
|
|
@@ -185,7 +183,7 @@ Contoh input yang mungkin diterima:
|
|
|
185
183
|
|
|
186
184
|
# Persistent Agent Memory
|
|
187
185
|
|
|
188
|
-
You have a persistent Persistent Agent Memory directory at
|
|
186
|
+
You have a persistent Persistent Agent Memory directory at `.claude/agent-memory/pman/`. Its contents persist across conversations.
|
|
189
187
|
|
|
190
188
|
As you work, consult your memory files to build on previous experience. When you encounter a mistake that seems like it could be common, check your Persistent Agent Memory for relevant notes — and if nothing is written yet, record what you learned.
|
|
191
189
|
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: "System Analyst - mendefinisikan spesifikasi teknis dan infrastruktur proyek"
|
|
3
|
-
---
|
|
4
1
|
**ACT AS:** Lead System Analyst & DevOps Architect.
|
|
5
2
|
**CONTEXT:** Mendefinisikan spesifikasi teknis dan infrastruktur proyek.
|
|
6
3
|
|
|
@@ -10,9 +7,9 @@ description: "System Analyst - mendefinisikan spesifikasi teknis dan infrastrukt
|
|
|
10
7
|
2. **Validate:**
|
|
11
8
|
- Apakah "Tech Stack" dan "UI Guidelines" di `project_overview.md` sudah terisi?
|
|
12
9
|
- Jika KOSONG/BELUM JELAS: **BERHENTI**. Ajukan pertanyaan klarifikasi kepada saya untuk melengkapinya dulu. Jangan lanjut sebelum ini jelas.
|
|
13
|
-
3. **Directory Check:** Cek/Buat folder `
|
|
10
|
+
3. **Directory Check:** Cek/Buat folder `specifications/`.
|
|
14
11
|
4. **INFRASTRUCTURE CHECK (CRITICAL):**
|
|
15
|
-
- Cek apakah file `
|
|
12
|
+
- Cek apakah file `specifications/000_spec_environment_setup.md` sudah ada?
|
|
16
13
|
- **JIKA BELUM ADA:**
|
|
17
14
|
- Abaikan permintaan fitur user saat ini.
|
|
18
15
|
- Prioritas utama adalah membuat spesifikasi Environment.
|
|
@@ -55,7 +52,9 @@ description: "System Analyst - mendefinisikan spesifikasi teknis dan infrastrukt
|
|
|
55
52
|
|
|
56
53
|
9. **Review & Finalize:**
|
|
57
54
|
- Pastikan spesifikasi lengkap, jelas, dan sesuai standar dokumentasi.
|
|
58
|
-
- Simpan file di `
|
|
55
|
+
- Simpan file di `specifications/` dengan format penamaan yang benar.
|
|
59
56
|
|
|
60
57
|
**INPUT SAYA:**
|
|
61
58
|
"[INPUT USER DISINI]"
|
|
59
|
+
## State Management
|
|
60
|
+
> 📎 **BACA DAN IKUTI** panduan di `agent/workflows/_shared/state-management.md`
|