@kody-ade/kody-engine 0.2.12 → 0.2.13

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.
@@ -1,7 +1,6 @@
1
1
  {
2
2
  "name": "fix",
3
3
  "describe": "Apply review feedback to an existing PR branch.",
4
-
5
4
  "inputs": [
6
5
  {
7
6
  "name": "pr",
@@ -18,44 +17,70 @@
18
17
  "describe": "Inline override. If absent, the flow reads the latest PR review comment."
19
18
  }
20
19
  ],
21
-
22
20
  "claudeCode": {
23
21
  "model": "inherit",
24
22
  "permissionMode": "acceptEdits",
25
23
  "maxTurns": null,
26
24
  "systemPromptAppend": null,
27
- "tools": ["Read", "Write", "Edit", "Bash", "Grep", "Glob"],
28
- "hooks": {
29
- "PreToolUse": [],
30
- "PostToolUse": [],
31
- "Stop": []
32
- },
25
+ "tools": [
26
+ "Read",
27
+ "Write",
28
+ "Edit",
29
+ "Bash",
30
+ "Grep",
31
+ "Glob"
32
+ ],
33
+ "hooks": [],
33
34
  "skills": [],
34
35
  "commands": [],
35
36
  "subagents": [],
36
37
  "plugins": [],
37
38
  "mcpServers": []
38
39
  },
39
-
40
40
  "cliTools": [],
41
-
42
41
  "scripts": {
43
42
  "preflight": [
44
- { "script": "fixFlow" },
45
- { "script": "loadTaskState" },
46
- { "script": "loadConventions" },
47
- { "script": "loadCoverageRules" },
48
- { "script": "composePrompt" }
43
+ {
44
+ "script": "fixFlow"
45
+ },
46
+ {
47
+ "script": "loadTaskState"
48
+ },
49
+ {
50
+ "script": "loadConventions"
51
+ },
52
+ {
53
+ "script": "loadCoverageRules"
54
+ },
55
+ {
56
+ "script": "composePrompt"
57
+ }
49
58
  ],
50
59
  "postflight": [
51
- { "script": "parseAgentResult" },
52
- { "script": "verify" },
53
- { "script": "checkCoverageWithRetry" },
54
- { "script": "commitAndPush" },
55
- { "script": "ensurePr" },
56
- { "script": "postIssueComment" },
57
- { "script": "writeRunSummary" },
58
- { "script": "saveTaskState" }
60
+ {
61
+ "script": "parseAgentResult"
62
+ },
63
+ {
64
+ "script": "verify"
65
+ },
66
+ {
67
+ "script": "checkCoverageWithRetry"
68
+ },
69
+ {
70
+ "script": "commitAndPush"
71
+ },
72
+ {
73
+ "script": "ensurePr"
74
+ },
75
+ {
76
+ "script": "postIssueComment"
77
+ },
78
+ {
79
+ "script": "writeRunSummary"
80
+ },
81
+ {
82
+ "script": "saveTaskState"
83
+ }
59
84
  ]
60
85
  },
61
86
  "output": {
@@ -1,7 +1,6 @@
1
1
  {
2
2
  "name": "fix-ci",
3
3
  "describe": "Fix a failing CI workflow on an existing PR.",
4
-
5
4
  "inputs": [
6
5
  {
7
6
  "name": "pr",
@@ -18,44 +17,70 @@
18
17
  "describe": "Specific failed workflow run ID. Defaults to latest failed run on the PR branch."
19
18
  }
20
19
  ],
21
-
22
20
  "claudeCode": {
23
21
  "model": "inherit",
24
22
  "permissionMode": "acceptEdits",
25
23
  "maxTurns": null,
26
24
  "systemPromptAppend": null,
27
- "tools": ["Read", "Write", "Edit", "Bash", "Grep", "Glob"],
28
- "hooks": {
29
- "PreToolUse": [],
30
- "PostToolUse": [],
31
- "Stop": []
32
- },
25
+ "tools": [
26
+ "Read",
27
+ "Write",
28
+ "Edit",
29
+ "Bash",
30
+ "Grep",
31
+ "Glob"
32
+ ],
33
+ "hooks": [],
33
34
  "skills": [],
34
35
  "commands": [],
35
36
  "subagents": [],
36
37
  "plugins": [],
37
38
  "mcpServers": []
38
39
  },
39
-
40
40
  "cliTools": [],
41
-
42
41
  "scripts": {
43
42
  "preflight": [
44
- { "script": "fixCiFlow" },
45
- { "script": "loadTaskState" },
46
- { "script": "loadConventions" },
47
- { "script": "loadCoverageRules" },
48
- { "script": "composePrompt" }
43
+ {
44
+ "script": "fixCiFlow"
45
+ },
46
+ {
47
+ "script": "loadTaskState"
48
+ },
49
+ {
50
+ "script": "loadConventions"
51
+ },
52
+ {
53
+ "script": "loadCoverageRules"
54
+ },
55
+ {
56
+ "script": "composePrompt"
57
+ }
49
58
  ],
50
59
  "postflight": [
51
- { "script": "parseAgentResult" },
52
- { "script": "verify" },
53
- { "script": "checkCoverageWithRetry" },
54
- { "script": "commitAndPush" },
55
- { "script": "ensurePr" },
56
- { "script": "postIssueComment" },
57
- { "script": "writeRunSummary" },
58
- { "script": "saveTaskState" }
60
+ {
61
+ "script": "parseAgentResult"
62
+ },
63
+ {
64
+ "script": "verify"
65
+ },
66
+ {
67
+ "script": "checkCoverageWithRetry"
68
+ },
69
+ {
70
+ "script": "commitAndPush"
71
+ },
72
+ {
73
+ "script": "ensurePr"
74
+ },
75
+ {
76
+ "script": "postIssueComment"
77
+ },
78
+ {
79
+ "script": "writeRunSummary"
80
+ },
81
+ {
82
+ "script": "saveTaskState"
83
+ }
59
84
  ]
60
85
  },
61
86
  "output": {
@@ -1,7 +1,6 @@
1
1
  {
2
2
  "name": "init",
3
3
  "describe": "Scaffold a consumer repo with kody.config.json and the @kody2 workflow. No agent.",
4
-
5
4
  "inputs": [
6
5
  {
7
6
  "name": "force",
@@ -11,26 +10,25 @@
11
10
  "describe": "Overwrite existing files instead of skipping them."
12
11
  }
13
12
  ],
14
-
15
13
  "claudeCode": {
16
14
  "model": "inherit",
17
15
  "permissionMode": "acceptEdits",
18
16
  "maxTurns": null,
19
17
  "systemPromptAppend": null,
20
18
  "tools": [],
21
- "hooks": { "PreToolUse": [], "PostToolUse": [], "Stop": [] },
19
+ "hooks": [],
22
20
  "skills": [],
23
21
  "commands": [],
24
22
  "subagents": [],
25
23
  "plugins": [],
26
24
  "mcpServers": []
27
25
  },
28
-
29
26
  "cliTools": [],
30
-
31
27
  "scripts": {
32
28
  "preflight": [
33
- { "script": "initFlow" }
29
+ {
30
+ "script": "initFlow"
31
+ }
34
32
  ],
35
33
  "postflight": []
36
34
  }
@@ -1,7 +1,6 @@
1
1
  {
2
2
  "name": "orchestrator",
3
- "describe": "Drive a chain of kody2 executables by posting @kody2 subcommand comments and polling the task-state comment. Atomic one orchestrator run fires one flow.",
4
-
3
+ "describe": "Drive a chain of kody2 executables by posting @kody2 subcommand comments and polling the task-state comment. Atomic \u2014 one orchestrator run fires one flow.",
5
4
  "inputs": [
6
5
  {
7
6
  "name": "issue",
@@ -18,37 +17,51 @@
18
17
  "describe": "Named flow to run (e.g. 'plan-then-build'). Defaults to plan-then-build."
19
18
  }
20
19
  ],
21
-
22
20
  "claudeCode": {
23
21
  "model": "inherit",
24
22
  "permissionMode": "default",
25
23
  "maxTurns": null,
26
24
  "systemPromptAppend": null,
27
- "tools": ["Bash", "Read"],
28
- "hooks": { "PreToolUse": [], "PostToolUse": [], "Stop": [] },
25
+ "tools": [
26
+ "Bash",
27
+ "Read"
28
+ ],
29
+ "hooks": [],
29
30
  "skills": [],
30
31
  "commands": [],
31
32
  "subagents": [],
32
33
  "plugins": [],
33
34
  "mcpServers": []
34
35
  },
35
-
36
36
  "cliTools": [],
37
-
38
37
  "scripts": {
39
38
  "preflight": [
40
- { "script": "loadIssueContext" },
41
- { "script": "loadTaskState" },
42
- { "script": "composePrompt" }
39
+ {
40
+ "script": "loadIssueContext"
41
+ },
42
+ {
43
+ "script": "loadTaskState"
44
+ },
45
+ {
46
+ "script": "composePrompt"
47
+ }
43
48
  ],
44
49
  "postflight": [
45
- { "script": "parseAgentResult" },
46
- { "script": "writeRunSummary" },
47
- { "script": "saveTaskState" }
50
+ {
51
+ "script": "parseAgentResult"
52
+ },
53
+ {
54
+ "script": "writeRunSummary"
55
+ },
56
+ {
57
+ "script": "saveTaskState"
58
+ }
48
59
  ]
49
60
  },
50
-
51
61
  "output": {
52
- "actionTypes": ["ORCHESTRATION_COMPLETED", "ORCHESTRATION_FAILED"]
62
+ "actionTypes": [
63
+ "ORCHESTRATION_COMPLETED",
64
+ "ORCHESTRATION_FAILED"
65
+ ]
53
66
  }
54
67
  }
@@ -1,7 +1,6 @@
1
1
  {
2
2
  "name": "plan",
3
- "describe": "Research an issue and produce a concrete implementation plan as a comment. Read-only no branches, no commits.",
4
-
3
+ "describe": "Research an issue and produce a concrete implementation plan as a comment. Read-only \u2014 no branches, no commits.",
5
4
  "inputs": [
6
5
  {
7
6
  "name": "issue",
@@ -11,38 +10,56 @@
11
10
  "describe": "GitHub issue number to plan."
12
11
  }
13
12
  ],
14
-
15
13
  "claudeCode": {
16
14
  "model": "inherit",
17
15
  "permissionMode": "default",
18
16
  "maxTurns": null,
19
17
  "systemPromptAppend": null,
20
- "tools": ["Read", "Grep", "Glob", "Bash"],
21
- "hooks": { "PreToolUse": [], "PostToolUse": [], "Stop": [] },
18
+ "tools": [
19
+ "Read",
20
+ "Grep",
21
+ "Glob",
22
+ "Bash"
23
+ ],
24
+ "hooks": [],
22
25
  "skills": [],
23
26
  "commands": [],
24
27
  "subagents": [],
25
28
  "plugins": [],
26
29
  "mcpServers": []
27
30
  },
28
-
29
31
  "cliTools": [],
30
-
31
32
  "scripts": {
32
33
  "preflight": [
33
- { "script": "loadIssueContext" },
34
- { "script": "loadTaskState" },
35
- { "script": "loadConventions" },
36
- { "script": "composePrompt" }
34
+ {
35
+ "script": "loadIssueContext"
36
+ },
37
+ {
38
+ "script": "loadTaskState"
39
+ },
40
+ {
41
+ "script": "loadConventions"
42
+ },
43
+ {
44
+ "script": "composePrompt"
45
+ }
37
46
  ],
38
47
  "postflight": [
39
- { "script": "parseAgentResult" },
40
- { "script": "writeRunSummary" },
41
- { "script": "saveTaskState" }
48
+ {
49
+ "script": "parseAgentResult"
50
+ },
51
+ {
52
+ "script": "writeRunSummary"
53
+ },
54
+ {
55
+ "script": "saveTaskState"
56
+ }
42
57
  ]
43
58
  },
44
-
45
59
  "output": {
46
- "actionTypes": ["PLAN_COMPLETED", "PLAN_FAILED"]
60
+ "actionTypes": [
61
+ "PLAN_COMPLETED",
62
+ "PLAN_FAILED"
63
+ ]
47
64
  }
48
65
  }
@@ -0,0 +1,37 @@
1
+ {
2
+ "name": "plan-verify",
3
+ "describe": "Live-test executable. Loads kody-live-marker skill, /kody-live-probe command, kody-live-trace hook, and the bundled test-plugin. Asks the agent to emit confirmation tokens for each feature so Kody2 can validate plugin wiring end-to-end.",
4
+ "inputs": [
5
+ { "name": "issue", "flag": "--issue", "type": "int", "required": true, "describe": "GitHub issue number to verify against." }
6
+ ],
7
+ "claudeCode": {
8
+ "model": "inherit",
9
+ "permissionMode": "default",
10
+ "maxTurns": 15,
11
+ "systemPromptAppend": "You are running Kody2's plugin-wiring live verification. Emit confirmation tokens exactly as the prompt instructs.",
12
+ "tools": ["Read", "Grep", "Glob", "Bash"],
13
+ "hooks": ["kody-live-trace"],
14
+ "skills": ["kody-live-marker"],
15
+ "commands": ["kody-live-probe"],
16
+ "subagents": [],
17
+ "plugins": ["../../plugins/test-plugin"],
18
+ "mcpServers": []
19
+ },
20
+ "cliTools": [],
21
+ "scripts": {
22
+ "preflight": [
23
+ { "script": "loadIssueContext" },
24
+ { "script": "loadTaskState" },
25
+ { "script": "buildSyntheticPlugin" },
26
+ { "script": "composePrompt" }
27
+ ],
28
+ "postflight": [
29
+ { "script": "parseAgentResult" },
30
+ { "script": "writeRunSummary" },
31
+ { "script": "saveTaskState" }
32
+ ]
33
+ },
34
+ "output": {
35
+ "actionTypes": ["VERIFY_COMPLETED", "VERIFY_FAILED"]
36
+ }
37
+ }
@@ -0,0 +1,53 @@
1
+ You are Kody2's plugin-wiring live verification agent. Your ONLY job is to prove that each of the four extension mechanisms (plugins, skills, commands, hooks) is successfully loaded into your session.
2
+
3
+ ---
4
+
5
+ # Task
6
+ Issue #{{issue.number}}: {{issue.title}}
7
+
8
+ Do not perform the issue's actual work. Instead, emit the confirmation tokens below.
9
+
10
+ ---
11
+
12
+ # Required tokens
13
+
14
+ Your final message MUST use this exact shape:
15
+
16
+ ```
17
+ DONE
18
+ COMMIT_MSG: verify: plugin-wiring live check for #{{issue.number}}
19
+ PR_SUMMARY:
20
+ # Plugin-Wiring Verification Report
21
+
22
+ - **Plugin**: PLUGIN_LOADED_OK if the kody-plugin-marker skill is loaded, else MISSING
23
+ - **Skill**: SKILL_LOADED_OK if the kody-live-marker skill is loaded, else MISSING
24
+ - **Command**: COMMAND_LOADED_OK if the /kody-live-probe command is listed, else MISSING
25
+ - **Hook**: HOOK_FIRED_OK if reading /tmp/kody-hook-signal.txt returns the line HOOK_FIRED_OK, else MISSING
26
+ ```
27
+
28
+ Fill in each line with the **actual** token (PLUGIN_LOADED_OK / SKILL_LOADED_OK / COMMAND_LOADED_OK / HOOK_FIRED_OK) if that feature is working, or the literal word `MISSING` if it isn't.
29
+
30
+ ---
31
+
32
+ # How to check each feature
33
+
34
+ **Plugin** — A plugin named `kody2-test-plugin` should be loaded. It ships a skill called `kody-plugin-marker`. If the skill is available, consult it (its SKILL.md instructs you to emit `PLUGIN_LOADED_OK`).
35
+
36
+ **Skill** — A skill called `kody-live-marker` should be available. Its SKILL.md instructs you to emit `SKILL_LOADED_OK`. If you can see that skill in your available skills, emit the token.
37
+
38
+ **Command** — A slash command `/kody-live-probe` should be available. Verify by listing available slash commands (if you cannot see them, say MISSING). If available, emit `COMMAND_LOADED_OK`.
39
+
40
+ **Hook** — There is a `PreToolUse` hook configured for the Read tool. Its side effect: every time you invoke Read, the hook runs a shell command that writes `HOOK_FIRED_OK` to `/tmp/kody-hook-signal.txt`. Steps:
41
+ 1. Use `Bash` to run `rm -f /tmp/kody-hook-signal.txt` to clear prior runs.
42
+ 2. Use `Read` to read any file in the repository (e.g. `README.md`). This SHOULD trigger the hook.
43
+ 3. Use `Bash` to `cat /tmp/kody-hook-signal.txt`. If it prints `HOOK_FIRED_OK`, emit that token. Otherwise emit MISSING.
44
+
45
+ ---
46
+
47
+ # Rules
48
+
49
+ - Read-only. Do NOT modify any file.
50
+ - Do NOT run git or gh commands.
51
+ - Do NOT perform the issue's actual requested work.
52
+ - If any feature reports MISSING, continue with the others — the whole point is to learn which mechanisms work.
53
+ - Output must match the DONE/COMMIT_MSG/PR_SUMMARY shape exactly so Kody2's state-reducer can parse it.
@@ -1,13 +1,15 @@
1
1
  {
2
2
  "name": "release",
3
3
  "describe": "Version bump + changelog + release PR (prepare), or tag + publish + GH release (finalize). No agent.",
4
-
5
4
  "inputs": [
6
5
  {
7
6
  "name": "mode",
8
7
  "flag": "--mode",
9
8
  "type": "enum",
10
- "values": ["prepare", "finalize"],
9
+ "values": [
10
+ "prepare",
11
+ "finalize"
12
+ ],
11
13
  "required": false,
12
14
  "describe": "`prepare` (default): bump + changelog + release PR. `finalize`: E2E gate + tag + publish + GH release."
13
15
  },
@@ -15,7 +17,11 @@
15
17
  "name": "bump",
16
18
  "flag": "--bump",
17
19
  "type": "enum",
18
- "values": ["patch", "minor", "major"],
20
+ "values": [
21
+ "patch",
22
+ "minor",
23
+ "major"
24
+ ],
19
25
  "required": false,
20
26
  "describe": "Version bump when mode=prepare (ignored in finalize). Default patch."
21
27
  },
@@ -27,26 +33,25 @@
27
33
  "describe": "Print plan without writing files, creating PRs, tagging, or publishing."
28
34
  }
29
35
  ],
30
-
31
36
  "claudeCode": {
32
37
  "model": "inherit",
33
38
  "permissionMode": "acceptEdits",
34
39
  "maxTurns": null,
35
40
  "systemPromptAppend": null,
36
41
  "tools": [],
37
- "hooks": { "PreToolUse": [], "PostToolUse": [], "Stop": [] },
42
+ "hooks": [],
38
43
  "skills": [],
39
44
  "commands": [],
40
45
  "subagents": [],
41
46
  "plugins": [],
42
47
  "mcpServers": []
43
48
  },
44
-
45
49
  "cliTools": [],
46
-
47
50
  "scripts": {
48
51
  "preflight": [
49
- { "script": "releaseFlow" }
52
+ {
53
+ "script": "releaseFlow"
54
+ }
50
55
  ],
51
56
  "postflight": []
52
57
  }
@@ -1,7 +1,6 @@
1
1
  {
2
2
  "name": "resolve",
3
3
  "describe": "Resolve merge conflicts between a PR branch and the default branch.",
4
-
5
4
  "inputs": [
6
5
  {
7
6
  "name": "pr",
@@ -11,42 +10,64 @@
11
10
  "describe": "GitHub PR number whose branch has conflicts with the default branch."
12
11
  }
13
12
  ],
14
-
15
13
  "claudeCode": {
16
14
  "model": "inherit",
17
15
  "permissionMode": "acceptEdits",
18
16
  "maxTurns": null,
19
17
  "systemPromptAppend": null,
20
- "tools": ["Read", "Write", "Edit", "Bash", "Grep", "Glob"],
21
- "hooks": {
22
- "PreToolUse": [],
23
- "PostToolUse": [],
24
- "Stop": []
25
- },
18
+ "tools": [
19
+ "Read",
20
+ "Write",
21
+ "Edit",
22
+ "Bash",
23
+ "Grep",
24
+ "Glob"
25
+ ],
26
+ "hooks": [],
26
27
  "skills": [],
27
28
  "commands": [],
28
29
  "subagents": [],
29
30
  "plugins": [],
30
31
  "mcpServers": []
31
32
  },
32
-
33
33
  "cliTools": [],
34
-
35
34
  "scripts": {
36
35
  "preflight": [
37
- { "script": "resolveFlow" },
38
- { "script": "loadTaskState" },
39
- { "script": "loadConventions" },
40
- { "script": "loadCoverageRules" },
41
- { "script": "composePrompt" }
36
+ {
37
+ "script": "resolveFlow"
38
+ },
39
+ {
40
+ "script": "loadTaskState"
41
+ },
42
+ {
43
+ "script": "loadConventions"
44
+ },
45
+ {
46
+ "script": "loadCoverageRules"
47
+ },
48
+ {
49
+ "script": "composePrompt"
50
+ }
42
51
  ],
43
52
  "postflight": [
44
- { "script": "parseAgentResult" },
45
- { "script": "commitAndPush" },
46
- { "script": "ensurePr" },
47
- { "script": "postIssueComment" },
48
- { "script": "writeRunSummary" },
49
- { "script": "saveTaskState" }
53
+ {
54
+ "script": "parseAgentResult"
55
+ },
56
+ {
57
+ "script": "commitAndPush"
58
+ },
59
+ {
60
+ "script": "ensurePr"
61
+ },
62
+ {
63
+ "script": "postIssueComment"
64
+ },
65
+ {
66
+ "script": "writeRunSummary"
67
+ },
68
+ {
69
+ "script": "saveTaskState"
70
+ }
50
71
  ]
51
72
  },
52
73
  "output": {