@mrciphersmith/keryx 0.2.72 → 0.2.73
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/dist/cli.js +352 -22
- package/package.json +2 -2
- package/src/gdskills/bundled/rules/core/gproject-contracts.mdc +1 -1
- package/src/gdskills/bundled/rules/core/jobs-documentation.mdc +1 -1
- package/src/gdskills/bundled/rules/core/subagent-context-construction.md +1 -1
- package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.codex.md +326 -20
- package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.cursor.md +320 -22
- package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.opencode.md +326 -12
- package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.zed.md +333 -9
- package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.codex.md +92 -4
- package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.cursor.md +92 -4
- package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.opencode.md +92 -4
- package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.zed.md +92 -4
- package/src/gdskills/bundled/skills/orchestration/context-collector/orchestrator-prompt.md +1 -1
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.codex.md +154 -1098
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.cursor.md +154 -1098
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.opencode.md +154 -1098
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.zed.md +154 -1098
- package/src/gdskills/bundled/skills/orchestration/feature-analyzer/orchestrator-prompt.md +1 -1
- package/src/gdskills/bundled/skills/orchestration/feature-dev/SKILL.codex.md +101 -41
- package/src/gdskills/bundled/skills/orchestration/feature-dev/SKILL.cursor.md +101 -41
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.codex.md +115 -49
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.cursor.md +115 -49
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.opencode.md +115 -49
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.zed.md +115 -49
- package/src/gdskills/bundled/skills/orchestration/issue-analyzer/orchestrator-prompt.md +1 -1
- package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.codex.md +15 -6
- package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.cursor.md +15 -6
- package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.opencode.md +15 -6
- package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.zed.md +15 -6
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.opencode.md +1 -1
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.zed.md +1 -1
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.codex.md +300 -55
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.cursor.md +300 -55
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.md +120 -37
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.opencode.md +300 -55
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.zed.md +300 -55
- package/src/gdskills/bundled/skills/orchestration/task-implementer/input-contract.schema.json +56 -14
- package/src/gdskills/bundled/skills/orchestration/task-implementer/orchestrator-prompt.md +50 -23
- package/src/gdskills/bundled/skills/orchestration/task-implementer/output-contract.schema.json +6 -2
- package/src/gdskills/bundled/skills/orchestration/task-implementer/task-request.template.md +18 -12
- package/src/gdskills/bundled/skills/planning/brainstorm/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/planning/brainstorm/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/planning/consistency-checker/SKILL.codex.md +168 -9
- package/src/gdskills/bundled/skills/planning/consistency-checker/SKILL.cursor.md +168 -9
- package/src/gdskills/bundled/skills/planning/interview/SKILL.codex.md +7 -1
- package/src/gdskills/bundled/skills/planning/interview/SKILL.cursor.md +7 -1
- package/src/gdskills/bundled/skills/planning/interviewer/SKILL.codex.md +7 -1
- package/src/gdskills/bundled/skills/planning/interviewer/SKILL.cursor.md +7 -1
- package/src/gdskills/bundled/skills/planning/patterns-researcher/SKILL.codex.md +215 -9
- package/src/gdskills/bundled/skills/planning/patterns-researcher/SKILL.cursor.md +215 -9
- package/src/gdskills/bundled/skills/planning/planner/SKILL.codex.md +168 -9
- package/src/gdskills/bundled/skills/planning/planner/SKILL.cursor.md +168 -9
- package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.codex.md +2 -2
- package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.cursor.md +2 -2
- package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.opencode.md +2 -2
- package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.zed.md +2 -2
- package/src/gdskills/bundled/skills/planning/problem-definer/SKILL.codex.md +133 -9
- package/src/gdskills/bundled/skills/planning/problem-definer/SKILL.cursor.md +133 -9
- package/src/gdskills/bundled/skills/planning/project-discovery/SKILL.codex.md +145 -9
- package/src/gdskills/bundled/skills/planning/project-discovery/SKILL.cursor.md +145 -9
- package/src/gdskills/bundled/skills/planning/spec-writer/SKILL.codex.md +210 -9
- package/src/gdskills/bundled/skills/planning/spec-writer/SKILL.cursor.md +210 -9
- package/src/gdskills/bundled/skills/planning/stack-advisor/SKILL.codex.md +161 -9
- package/src/gdskills/bundled/skills/planning/stack-advisor/SKILL.cursor.md +161 -9
- package/src/gdskills/bundled/skills/platform/claude-md-management/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/platform/claude-md-management/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/platform/hookify/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/platform/hookify/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/quality/changelog/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/quality/changelog/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/quality/commit/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/quality/commit/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/quality/db-migrate/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/quality/db-migrate/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/quality/dependency-update/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/quality/dependency-update/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/quality/deploy/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/quality/deploy/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/quality/perf-check/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/quality/perf-check/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/quality/pr/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/quality/pr/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.codex.md +15 -1
- package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.cursor.md +248 -165
- package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.opencode.md +15 -1
- package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.zed.md +359 -19
- package/src/gdskills/bundled/skills/quality/push/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/quality/push/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/quality/security-audit/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/quality/security-audit/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/quality/test-gen/SKILL.codex.md +1 -1
- package/src/gdskills/bundled/skills/quality/test-gen/SKILL.cursor.md +1 -1
- package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.codex.md +299 -24
- package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.cursor.md +296 -31
- package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.opencode.md +309 -18
- package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.zed.md +312 -17
- package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.codex.md +29 -30
- package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.cursor.md +29 -30
- package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.opencode.md +29 -30
- package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.zed.md +29 -30
- package/src/gdskills/bundled/skills/review/code-learned-review/SKILL.codex.md +21 -30
- package/src/gdskills/bundled/skills/review/code-learned-review/SKILL.cursor.md +21 -30
- package/src/gdskills/bundled/skills/review/code-learned-review/SKILL.opencode.md +21 -30
- package/src/gdskills/bundled/skills/review/code-learned-review/SKILL.zed.md +21 -30
- package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.codex.md +19 -23
- package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.cursor.md +19 -23
- package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.opencode.md +19 -23
- package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.zed.md +19 -23
- package/src/gdskills/bundled/skills/review/code-style-review/SKILL.codex.md +17 -24
- package/src/gdskills/bundled/skills/review/code-style-review/SKILL.cursor.md +17 -24
- package/src/gdskills/bundled/skills/review/code-style-review/SKILL.opencode.md +17 -24
- package/src/gdskills/bundled/skills/review/code-style-review/SKILL.zed.md +17 -24
- package/src/gdskills/bundled/skills/review/review-orchestrator/SKILL.md +16 -3
- package/src/gdskills/bundled/skills/planning/brainstorm/SKILL.claude.md +0 -46
- package/src/gdskills/bundled/skills/planning/interviewer/SKILL.claude.md +0 -94
- package/src/gdskills/bundled/skills/quality/changelog/SKILL.claude.md +0 -45
- package/src/gdskills/bundled/skills/quality/db-migrate/SKILL.claude.md +0 -40
- package/src/gdskills/bundled/skills/quality/dependency-update/SKILL.claude.md +0 -45
- package/src/gdskills/bundled/skills/quality/deploy/SKILL.claude.md +0 -42
- package/src/gdskills/bundled/skills/quality/perf-check/SKILL.claude.md +0 -48
- package/src/gdskills/bundled/skills/quality/security-audit/SKILL.claude.md +0 -40
- package/src/gdskills/bundled/skills/quality/test-gen/SKILL.claude.md +0 -30
|
@@ -1,25 +1,30 @@
|
|
|
1
1
|
# Task Implementer — Orchestrator Prompt
|
|
2
2
|
|
|
3
|
-
> **Purpose:** Template
|
|
4
|
-
> The
|
|
5
|
-
> The task-implementer executes SKILL.md autonomously, writes the full JSON result to a file, and returns a compact STATUS response.
|
|
3
|
+
> **Purpose:** Template `job-orchestrator` fills in to dispatch `task-implementer` as a sub-agent.
|
|
4
|
+
> The orchestrator fills in the placeholders below and sends the result as a Task prompt.
|
|
5
|
+
> The task-implementer executes SKILL.md autonomously, writes the full JSON result to a file, records it with `keryx job document`, and returns a compact STATUS response.
|
|
6
6
|
|
|
7
7
|
## Data Flow
|
|
8
8
|
|
|
9
9
|
```
|
|
10
|
-
[job-orchestrator] →
|
|
11
|
-
↓
|
|
12
|
-
[wave-executor] → extracts tasks → fills template → Task(task-implementer) × N (parallel)
|
|
10
|
+
[job-orchestrator] → extracts tasks → fills template → Task(task-implementer) × N (parallel)
|
|
13
11
|
↓
|
|
14
12
|
[task-implementer] → executes SKILL.md → writes JSON to .metaproject/jobs/<job-name>/results/<task_id>.json
|
|
13
|
+
→ keryx job document <job-name> --type implementation-report
|
|
15
14
|
↓
|
|
16
15
|
[Result] → compact STATUS: DONE response (no inline JSON)
|
|
17
|
-
|
|
18
|
-
[
|
|
19
|
-
|
|
20
|
-
[job-orchestrator] → receives one-line wave summary per wave
|
|
16
|
+
↓
|
|
17
|
+
[job-orchestrator] → collects STATUS responses; reads a result file only for
|
|
18
|
+
DONE_WITH_CONCERNS or BLOCKED
|
|
21
19
|
```
|
|
22
20
|
|
|
21
|
+
**There is no `wave-executor` agent.** The orchestrator dispatches every task in
|
|
22
|
+
a wave itself, in one turn, and collects the STATUS lines itself — the same
|
|
23
|
+
statement `job-orchestrator/SKILL.md` makes. This document described a
|
|
24
|
+
`wave-executor` as real in four places while the agent it named existed in no
|
|
25
|
+
catalogue and no dispatcher; `src/job/plans.ts` names `task-implementer` as the
|
|
26
|
+
`implement` and `fix` step agents, with nothing in between.
|
|
27
|
+
|
|
23
28
|
## Step 1: Extract Task Parameters
|
|
24
29
|
|
|
25
30
|
From the issue-analyzer JSON output, extract one task object:
|
|
@@ -30,7 +35,7 @@ TASK:
|
|
|
30
35
|
task_name → from tasks[i].task_name
|
|
31
36
|
task_type → from tasks[i].task_type
|
|
32
37
|
complexity → from tasks[i].complexity
|
|
33
|
-
dependencies → from tasks[i].dependencies (
|
|
38
|
+
dependencies → from tasks[i].dependencies (dispatch in dependency_order)
|
|
34
39
|
description → from tasks[i].description
|
|
35
40
|
target_files → from tasks[i].target_files
|
|
36
41
|
acceptance_criteria → from tasks[i].acceptance_criteria
|
|
@@ -52,11 +57,24 @@ JOB_CONTEXT (optional):
|
|
|
52
57
|
|
|
53
58
|
## Step 2: Validate
|
|
54
59
|
|
|
60
|
+
Write the assembled `{ task, workspace, automation }` object to a file and run:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
keryx skills contracts validate <request.json> --schema task-implementer-input
|
|
55
64
|
```
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
65
|
+
|
|
66
|
+
Non-zero exit means the request is malformed — the command names the field and
|
|
67
|
+
the rule. Do not dispatch a request that does not validate. The schema is
|
|
68
|
+
`input-contract.schema.json` in this folder, registered in
|
|
69
|
+
`src/gdskills/contracts.ts`; it is what refuses an empty `target_files`, a
|
|
70
|
+
`task_type` outside the enum, a `task_id` that is not `task-<n>`, a missing
|
|
71
|
+
`codebase_path`/`branch`/`issue_number`, `skip_confirmation` other than `true`,
|
|
72
|
+
`max_self_fix_attempts` above 3, and any undeclared field.
|
|
73
|
+
|
|
74
|
+
One check the schema cannot make, because it is a fact about the machine:
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
test -d "<CODEBASE_PATH>" # otherwise ABORT: "Codebase path not found"
|
|
60
78
|
```
|
|
61
79
|
|
|
62
80
|
## Step 3: Build Sub-Agent Prompt (regular task)
|
|
@@ -65,7 +83,7 @@ ASSERT codebase_path exists → otherwise ABORT: "Codebase path not foun
|
|
|
65
83
|
You are running the task-implementer skill in AUTONOMOUS MODE.
|
|
66
84
|
DO NOT ask the user any questions. Execute the full workflow end-to-end.
|
|
67
85
|
|
|
68
|
-
Load the skill: task-implementer (from skills/task-implementer/SKILL.md)
|
|
86
|
+
Load the skill: task-implementer (from skills/gdskills/orchestration/task-implementer/SKILL.md)
|
|
69
87
|
|
|
70
88
|
═══════════════════════════════════════════════
|
|
71
89
|
TASK
|
|
@@ -116,7 +134,12 @@ CONTEXT_PATH: <JOBS_ROOT>/<JOB_NAME>/ai/context.md
|
|
|
116
134
|
|
|
117
135
|
1. Load task-implementer SKILL.md
|
|
118
136
|
2. Execute all 6 phases: RECEIVE → RESEARCH → PLAN → IMPLEMENT → VERIFY → REPORT
|
|
119
|
-
3. Phase 6: Write full JSON result to <JOBS_ROOT>/<JOB_NAME>/results/<task_id>.json
|
|
137
|
+
3. Phase 6: Write full JSON result to <JOBS_ROOT>/<JOB_NAME>/results/<task_id>.json,
|
|
138
|
+
then validate and record it:
|
|
139
|
+
keryx skills contracts validate <that file> --schema task-implementer-output
|
|
140
|
+
keryx job document <JOB_NAME> --type implementation-report --file <that file>
|
|
141
|
+
Both refuse rather than warn; `job document` refuses outright if the file was
|
|
142
|
+
never written.
|
|
120
143
|
4. Return a compact STATUS response as your FINAL MESSAGE — NO inline JSON:
|
|
121
144
|
|
|
122
145
|
STATUS: DONE
|
|
@@ -139,7 +162,7 @@ For fix tasks dispatched from the review loop:
|
|
|
139
162
|
You are running the task-implementer skill in FIX MODE (AUTONOMOUS).
|
|
140
163
|
DO NOT ask the user any questions. Execute the full workflow end-to-end.
|
|
141
164
|
|
|
142
|
-
Load the skill: task-implementer (from skills/task-implementer/SKILL.md)
|
|
165
|
+
Load the skill: task-implementer (from skills/gdskills/orchestration/task-implementer/SKILL.md)
|
|
143
166
|
|
|
144
167
|
═══════════════════════════════════════════════
|
|
145
168
|
FIX TASK
|
|
@@ -171,7 +194,10 @@ WORKSPACE: (same as above)
|
|
|
171
194
|
|
|
172
195
|
AUTOMATION SETTINGS: (same as above)
|
|
173
196
|
|
|
174
|
-
EXECUTION:
|
|
197
|
+
EXECUTION INSTRUCTIONS: (same as above — including the Phase 6 validate/record
|
|
198
|
+
pair, and the compact STATUS response as the FINAL MESSAGE with NO inline JSON.
|
|
199
|
+
`parseChildResult` throws on any first line that is not `STATUS: <TOKEN>`, so a
|
|
200
|
+
returned JSON object is not a result the orchestrator can read.)
|
|
175
201
|
```
|
|
176
202
|
|
|
177
203
|
---
|
|
@@ -181,16 +207,16 @@ EXECUTION: Run to completion, return JSON result.
|
|
|
181
207
|
```javascript
|
|
182
208
|
Task({
|
|
183
209
|
description: "Implement task-1: <TASK_NAME>",
|
|
184
|
-
subagent_type: "general",
|
|
210
|
+
subagent_type: "general-purpose",
|
|
185
211
|
prompt: "<generated prompt from template above>"
|
|
186
212
|
})
|
|
187
213
|
```
|
|
188
214
|
|
|
189
215
|
---
|
|
190
216
|
|
|
191
|
-
## Parsing the Result
|
|
217
|
+
## Parsing the Result
|
|
192
218
|
|
|
193
|
-
After receiving the sub-agent STATUS response, the
|
|
219
|
+
After receiving the sub-agent STATUS response, the orchestrator must:
|
|
194
220
|
|
|
195
221
|
1. Read the STATUS line: `DONE` | `DONE_WITH_CONCERNS` | `BLOCKED`
|
|
196
222
|
2. Extract compact summary from the response:
|
|
@@ -203,4 +229,5 @@ After receiving the sub-agent STATUS response, the wave-executor must:
|
|
|
203
229
|
4. Decision based on STATUS:
|
|
204
230
|
- `DONE` → continue, collect commit hashes from response
|
|
205
231
|
- `DONE_WITH_CONCERNS` → read result file, log concerns, continue
|
|
206
|
-
- `BLOCKED` → STOP wave
|
|
232
|
+
- `BLOCKED` → STOP the wave and report the reason; the `implement` step stays
|
|
233
|
+
open, and `keryx job complete` refuses while it is
|
package/src/gdskills/bundled/skills/orchestration/task-implementer/output-contract.schema.json
CHANGED
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://keryx.local/schemas/task-implementer/output-contract.schema.json",
|
|
4
4
|
"title": "Task Implementer Output Contract",
|
|
5
|
-
"description": "JSON result
|
|
5
|
+
"description": "JSON result task-implementer writes in Phase 6.1. Registered as contract `task-implementer-output`: validate a result with `keryx skills contracts validate <result.json> --schema task-implementer-output`.",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"additionalProperties": false,
|
|
8
8
|
"required": ["task_id", "task_name", "task_type", "status"],
|
|
9
9
|
"properties": {
|
|
10
|
-
"task_id": { "type": "string", "pattern": "^task-[0-9]+$" },
|
|
10
|
+
"task_id": { "type": "string", "pattern": "^(?:task|fix)-[0-9]+$" },
|
|
11
11
|
"task_name": { "type": "string" },
|
|
12
12
|
"task_type": {
|
|
13
13
|
"type": "string",
|
|
@@ -43,6 +43,10 @@
|
|
|
43
43
|
"type": "string",
|
|
44
44
|
"description": "all OR 'partial: <list of unmet criteria>' OR none"
|
|
45
45
|
},
|
|
46
|
+
"skill_drift": {
|
|
47
|
+
"type": "string",
|
|
48
|
+
"description": "Set from SKILL.md Phase 2.0b: 'none' | 'stale: <module>/<skill> — <what diverged>' | 'missing: <module> should have a project-skill'. SKILL.md has required this field since project-skill verification was added; this object is `additionalProperties: false`, so until it was declared here a compliant result was REFUSED by its own contract."
|
|
49
|
+
},
|
|
46
50
|
"notes": {
|
|
47
51
|
"type": "string",
|
|
48
52
|
"description": "Warnings, blockers, or additional context"
|
|
@@ -6,7 +6,9 @@
|
|
|
6
6
|
Заполняется оркестратором ПЕРЕД запуском task-implementer.
|
|
7
7
|
Все обязательные поля (*) должны быть заполнены.
|
|
8
8
|
|
|
9
|
-
Валидация:
|
|
9
|
+
Валидация: keryx skills contracts validate <request.json> --schema task-implementer-input
|
|
10
|
+
(схема — input-contract.schema.json, зарегистрирована в src/gdskills/contracts.ts;
|
|
11
|
+
команда возвращает ненулевой код и называет поле и правило)
|
|
10
12
|
Использование: orchestrator-prompt.md читает этот файл и формирует промпт для субагента.
|
|
11
13
|
-->
|
|
12
14
|
|
|
@@ -87,8 +89,8 @@ Components in `src/pipelines/components/` use `observer()` wrapping, props inter
|
|
|
87
89
|
|
|
88
90
|
| Field | Value |
|
|
89
91
|
|-------|-------|
|
|
90
|
-
| Original Task
|
|
91
|
-
| Iteration | |
|
|
92
|
+
| Original Task IDs | |
|
|
93
|
+
| Iteration | `1`..`3` |
|
|
92
94
|
|
|
93
95
|
### Review Feedback
|
|
94
96
|
|
|
@@ -100,12 +102,16 @@ Components in `src/pipelines/components/` use `observer()` wrapping, props inter
|
|
|
100
102
|
|
|
101
103
|
## Automation Settings *
|
|
102
104
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
|
108
|
-
|
|
109
|
-
|
|
|
110
|
-
|
|
|
111
|
-
|
|
|
105
|
+
<!-- Типы, значения по умолчанию и границы объявлены в input-contract.schema.json
|
|
106
|
+
(объект `automation`) и проверяются командой validate выше. Здесь — только
|
|
107
|
+
значения для этого запроса. -->
|
|
108
|
+
|
|
109
|
+
| Setting | Value |
|
|
110
|
+
|---------|-------|
|
|
111
|
+
| skip_confirmation * | `true` |
|
|
112
|
+
| auto_commit | `true` |
|
|
113
|
+
| verify_lint | `true` |
|
|
114
|
+
| verify_types | `true` |
|
|
115
|
+
| verify_tests | `true` |
|
|
116
|
+
| verify_stories | `false` |
|
|
117
|
+
| max_self_fix_attempts | `3` |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brainstorm
|
|
3
|
-
description: "
|
|
3
|
+
description: "Use when exploring architecture decisions, tech choices, feature ideas, or any open-ended problem that benefits from multiple perspectives."
|
|
4
4
|
triggers:
|
|
5
5
|
- "/brainstorm"
|
|
6
6
|
- "Brainstorm"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: brainstorm
|
|
3
|
-
description: "
|
|
3
|
+
description: "Use when exploring architecture decisions, tech choices, feature ideas, or any open-ended problem that benefits from multiple perspectives."
|
|
4
4
|
triggers:
|
|
5
5
|
- "/brainstorm"
|
|
6
6
|
- "Brainstorm"
|
|
@@ -1,18 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gproject-consistency-checker
|
|
3
|
-
description:
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
description: >
|
|
4
|
+
Validates PRD/Implementation Plan against decisions registry, architecture doc,
|
|
5
|
+
and best practices constraints. Catches contradictions, gaps, and violations.
|
|
6
|
+
Use when: dispatched by gproject-orchestrator Phase 5.
|
|
7
|
+
NOT for: direct user invocation.
|
|
7
8
|
metadata:
|
|
8
|
-
|
|
9
|
-
version: "1.0.0"
|
|
10
|
-
category: "planning"
|
|
9
|
+
version: 1.0.0
|
|
11
10
|
compatible_harnesses: "cursor,codex,zed,opencode"
|
|
12
|
-
license: "MIT"
|
|
13
11
|
---
|
|
14
12
|
|
|
15
|
-
|
|
16
13
|
# gproject-consistency-checker
|
|
17
14
|
|
|
18
15
|
## Purpose
|
|
@@ -31,3 +28,165 @@ This agent is adversarial — its job is to find problems, not to approve.
|
|
|
31
28
|
| 4 | Classify severity: CRITICAL (blocks approval) / WARNING (should fix) / INFO (suggestion) |
|
|
32
29
|
| 5 | NEVER fix violations yourself — only report them |
|
|
33
30
|
| 6 | A clean report still lists what was checked (audit trail) |
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Input Contract
|
|
35
|
+
|
|
36
|
+
```yaml
|
|
37
|
+
task: "Validate PRD consistency against all project decisions and constraints"
|
|
38
|
+
input_artifacts:
|
|
39
|
+
- .metaproject/jobs/<job>/artifacts/prd.md
|
|
40
|
+
- .metaproject/jobs/<job>/artifacts/problem-statement.md
|
|
41
|
+
- .metaproject/jobs/<job>/artifacts/stack-decision.md
|
|
42
|
+
- .metaproject/jobs/<job>/artifacts/architecture.md
|
|
43
|
+
- .metaproject/jobs/<job>/artifacts/tech-bestpractices.md
|
|
44
|
+
- .metaproject/jobs/<job>/decisions.md
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Output Contract
|
|
48
|
+
|
|
49
|
+
```yaml
|
|
50
|
+
status: "DONE" | "DONE_WITH_CONCERNS"
|
|
51
|
+
summary: "<3-5 sentences: checks run, violations found, overall verdict>"
|
|
52
|
+
concerns: ["<CRITICAL violations if any>"]
|
|
53
|
+
artifact_path: ".metaproject/jobs/<job>/artifacts/consistency-report.md"
|
|
54
|
+
# Note: no new_decisions — this agent doesn't make decisions
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Status logic:
|
|
58
|
+
- `DONE` = zero CRITICAL violations (WARNINGs acceptable)
|
|
59
|
+
- `DONE_WITH_CONCERNS` = one or more CRITICAL violations found
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## Workflow
|
|
64
|
+
|
|
65
|
+
### Step 1: Goals ↔ User Stories Check
|
|
66
|
+
|
|
67
|
+
For each goal in problem-statement.md:
|
|
68
|
+
- [ ] At least one user story addresses this goal
|
|
69
|
+
- [ ] User story acceptance criteria map to goal's success metric
|
|
70
|
+
|
|
71
|
+
For each user story in PRD:
|
|
72
|
+
- [ ] Traces back to a defined goal (not an invented one)
|
|
73
|
+
- [ ] Does NOT implement a non-goal
|
|
74
|
+
|
|
75
|
+
**Violation types:**
|
|
76
|
+
- CRITICAL: Goal with no user story coverage
|
|
77
|
+
- CRITICAL: User story implementing a non-goal
|
|
78
|
+
- WARNING: User story with weak traceability to goal
|
|
79
|
+
|
|
80
|
+
### Step 2: Stack ↔ PRD Check
|
|
81
|
+
|
|
82
|
+
For each technology in stack-decision.md:
|
|
83
|
+
- [ ] PRD technical references use this technology (not something else)
|
|
84
|
+
- [ ] No undeclared technologies appear in PRD
|
|
85
|
+
|
|
86
|
+
**Violation types:**
|
|
87
|
+
- CRITICAL: PRD references technology not in stack-decision.md
|
|
88
|
+
- CRITICAL: Key stack technology has no presence in PRD
|
|
89
|
+
- WARNING: Stack technology mentioned but underspecified in PRD
|
|
90
|
+
|
|
91
|
+
### Step 3: Architecture ↔ PRD Check
|
|
92
|
+
|
|
93
|
+
For each architecture decision in architecture.md:
|
|
94
|
+
- [ ] PRD respects layer boundaries
|
|
95
|
+
- [ ] PRD respects dependency direction
|
|
96
|
+
- [ ] PRD technical notes align with defined patterns
|
|
97
|
+
|
|
98
|
+
**Violation types:**
|
|
99
|
+
- CRITICAL: PRD proposes pattern contradicting architecture.md
|
|
100
|
+
- WARNING: PRD section doesn't reference applicable architecture decision
|
|
101
|
+
|
|
102
|
+
### Step 4: Best Practices ↔ PRD Check
|
|
103
|
+
|
|
104
|
+
For each MUST constraint in tech-bestpractices.md:
|
|
105
|
+
- [ ] PRD does not violate this constraint
|
|
106
|
+
- [ ] Relevant user stories reference this constraint
|
|
107
|
+
|
|
108
|
+
For each MUST NOT constraint:
|
|
109
|
+
- [ ] PRD does not propose the antipattern
|
|
110
|
+
|
|
111
|
+
**Violation types:**
|
|
112
|
+
- CRITICAL: PRD violates a MUST constraint
|
|
113
|
+
- CRITICAL: PRD proposes a MUST NOT antipattern
|
|
114
|
+
- WARNING: MUST constraint not referenced by any user story
|
|
115
|
+
|
|
116
|
+
### Step 5: Internal Consistency Check
|
|
117
|
+
|
|
118
|
+
Within the PRD itself:
|
|
119
|
+
- [ ] No two user stories contradict each other
|
|
120
|
+
- [ ] Priorities are consistent (P0 depends on P0, not P1 depending on P2)
|
|
121
|
+
- [ ] Data model matches API surface
|
|
122
|
+
- [ ] Security requirements cover all user-facing features
|
|
123
|
+
- [ ] Testing requirements cover all P0 user stories
|
|
124
|
+
|
|
125
|
+
**Violation types:**
|
|
126
|
+
- CRITICAL: Contradicting user stories
|
|
127
|
+
- CRITICAL: P0 feature with no test coverage requirement
|
|
128
|
+
- WARNING: Priority inconsistency in dependencies
|
|
129
|
+
|
|
130
|
+
### Step 6: Completeness Check
|
|
131
|
+
|
|
132
|
+
- [ ] All sections of PRD template are present
|
|
133
|
+
- [ ] Executive summary matches actual content
|
|
134
|
+
- [ ] Traceability matrix is complete
|
|
135
|
+
- [ ] Open questions are flagged (not hidden)
|
|
136
|
+
|
|
137
|
+
**Violation types:**
|
|
138
|
+
- WARNING: Missing PRD section
|
|
139
|
+
- INFO: Traceability matrix has gaps
|
|
140
|
+
|
|
141
|
+
### Step 7: Write Consistency Report
|
|
142
|
+
|
|
143
|
+
Write `artifacts/consistency-report.md`:
|
|
144
|
+
|
|
145
|
+
```markdown
|
|
146
|
+
# Consistency Report: <Project/Task Name>
|
|
147
|
+
|
|
148
|
+
## Verdict: PASS | PASS_WITH_WARNINGS | FAIL
|
|
149
|
+
|
|
150
|
+
## Summary
|
|
151
|
+
- Checks executed: <count>
|
|
152
|
+
- CRITICAL violations: <count>
|
|
153
|
+
- WARNING violations: <count>
|
|
154
|
+
- INFO items: <count>
|
|
155
|
+
|
|
156
|
+
## Violations
|
|
157
|
+
|
|
158
|
+
### CRITICAL
|
|
159
|
+
#### V-001: <Title>
|
|
160
|
+
- **Check**: <which check caught this>
|
|
161
|
+
- **Found in PRD**: <section/user story reference>
|
|
162
|
+
- **Conflicts with**: <decision ID / constraint ID / architecture section>
|
|
163
|
+
- **Details**: <specific description>
|
|
164
|
+
- **Suggested fix**: <what should change>
|
|
165
|
+
- **Fix target**: <which phase/artifact needs to be updated>
|
|
166
|
+
|
|
167
|
+
### WARNINGS
|
|
168
|
+
#### W-001: <Title>
|
|
169
|
+
...
|
|
170
|
+
|
|
171
|
+
### INFO
|
|
172
|
+
#### I-001: <Title>
|
|
173
|
+
...
|
|
174
|
+
|
|
175
|
+
## Audit Trail
|
|
176
|
+
| Check Category | Items Checked | Passed | Failed |
|
|
177
|
+
|---------------|--------------|--------|--------|
|
|
178
|
+
| Goals ↔ User Stories | <N> | <N> | <N> |
|
|
179
|
+
| Stack ↔ PRD | <N> | <N> | <N> |
|
|
180
|
+
| Architecture ↔ PRD | <N> | <N> | <N> |
|
|
181
|
+
| Best Practices ↔ PRD | <N> | <N> | <N> |
|
|
182
|
+
| Internal Consistency | <N> | <N> | <N> |
|
|
183
|
+
| Completeness | <N> | <N> | <N> |
|
|
184
|
+
|
|
185
|
+
## Rollback Recommendations
|
|
186
|
+
<If CRITICAL violations exist, suggest which phase to rollback to>
|
|
187
|
+
- V-001 → requires rollback to Phase <N> (<reason>)
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### Step 8: Return Summary
|
|
191
|
+
|
|
192
|
+
Compact summary: verdict, violation counts, rollback recommendation if applicable.
|
|
@@ -1,18 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gproject-consistency-checker
|
|
3
|
-
description:
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
description: >
|
|
4
|
+
Validates PRD/Implementation Plan against decisions registry, architecture doc,
|
|
5
|
+
and best practices constraints. Catches contradictions, gaps, and violations.
|
|
6
|
+
Use when: dispatched by gproject-orchestrator Phase 5.
|
|
7
|
+
NOT for: direct user invocation.
|
|
7
8
|
metadata:
|
|
8
|
-
|
|
9
|
-
version: "1.0.0"
|
|
10
|
-
category: "planning"
|
|
9
|
+
version: 1.0.0
|
|
11
10
|
compatible_harnesses: "cursor,codex,zed,opencode"
|
|
12
|
-
license: "MIT"
|
|
13
11
|
---
|
|
14
12
|
|
|
15
|
-
|
|
16
13
|
# gproject-consistency-checker
|
|
17
14
|
|
|
18
15
|
## Purpose
|
|
@@ -31,3 +28,165 @@ This agent is adversarial — its job is to find problems, not to approve.
|
|
|
31
28
|
| 4 | Classify severity: CRITICAL (blocks approval) / WARNING (should fix) / INFO (suggestion) |
|
|
32
29
|
| 5 | NEVER fix violations yourself — only report them |
|
|
33
30
|
| 6 | A clean report still lists what was checked (audit trail) |
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Input Contract
|
|
35
|
+
|
|
36
|
+
```yaml
|
|
37
|
+
task: "Validate PRD consistency against all project decisions and constraints"
|
|
38
|
+
input_artifacts:
|
|
39
|
+
- .metaproject/jobs/<job>/artifacts/prd.md
|
|
40
|
+
- .metaproject/jobs/<job>/artifacts/problem-statement.md
|
|
41
|
+
- .metaproject/jobs/<job>/artifacts/stack-decision.md
|
|
42
|
+
- .metaproject/jobs/<job>/artifacts/architecture.md
|
|
43
|
+
- .metaproject/jobs/<job>/artifacts/tech-bestpractices.md
|
|
44
|
+
- .metaproject/jobs/<job>/decisions.md
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Output Contract
|
|
48
|
+
|
|
49
|
+
```yaml
|
|
50
|
+
status: "DONE" | "DONE_WITH_CONCERNS"
|
|
51
|
+
summary: "<3-5 sentences: checks run, violations found, overall verdict>"
|
|
52
|
+
concerns: ["<CRITICAL violations if any>"]
|
|
53
|
+
artifact_path: ".metaproject/jobs/<job>/artifacts/consistency-report.md"
|
|
54
|
+
# Note: no new_decisions — this agent doesn't make decisions
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Status logic:
|
|
58
|
+
- `DONE` = zero CRITICAL violations (WARNINGs acceptable)
|
|
59
|
+
- `DONE_WITH_CONCERNS` = one or more CRITICAL violations found
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## Workflow
|
|
64
|
+
|
|
65
|
+
### Step 1: Goals ↔ User Stories Check
|
|
66
|
+
|
|
67
|
+
For each goal in problem-statement.md:
|
|
68
|
+
- [ ] At least one user story addresses this goal
|
|
69
|
+
- [ ] User story acceptance criteria map to goal's success metric
|
|
70
|
+
|
|
71
|
+
For each user story in PRD:
|
|
72
|
+
- [ ] Traces back to a defined goal (not an invented one)
|
|
73
|
+
- [ ] Does NOT implement a non-goal
|
|
74
|
+
|
|
75
|
+
**Violation types:**
|
|
76
|
+
- CRITICAL: Goal with no user story coverage
|
|
77
|
+
- CRITICAL: User story implementing a non-goal
|
|
78
|
+
- WARNING: User story with weak traceability to goal
|
|
79
|
+
|
|
80
|
+
### Step 2: Stack ↔ PRD Check
|
|
81
|
+
|
|
82
|
+
For each technology in stack-decision.md:
|
|
83
|
+
- [ ] PRD technical references use this technology (not something else)
|
|
84
|
+
- [ ] No undeclared technologies appear in PRD
|
|
85
|
+
|
|
86
|
+
**Violation types:**
|
|
87
|
+
- CRITICAL: PRD references technology not in stack-decision.md
|
|
88
|
+
- CRITICAL: Key stack technology has no presence in PRD
|
|
89
|
+
- WARNING: Stack technology mentioned but underspecified in PRD
|
|
90
|
+
|
|
91
|
+
### Step 3: Architecture ↔ PRD Check
|
|
92
|
+
|
|
93
|
+
For each architecture decision in architecture.md:
|
|
94
|
+
- [ ] PRD respects layer boundaries
|
|
95
|
+
- [ ] PRD respects dependency direction
|
|
96
|
+
- [ ] PRD technical notes align with defined patterns
|
|
97
|
+
|
|
98
|
+
**Violation types:**
|
|
99
|
+
- CRITICAL: PRD proposes pattern contradicting architecture.md
|
|
100
|
+
- WARNING: PRD section doesn't reference applicable architecture decision
|
|
101
|
+
|
|
102
|
+
### Step 4: Best Practices ↔ PRD Check
|
|
103
|
+
|
|
104
|
+
For each MUST constraint in tech-bestpractices.md:
|
|
105
|
+
- [ ] PRD does not violate this constraint
|
|
106
|
+
- [ ] Relevant user stories reference this constraint
|
|
107
|
+
|
|
108
|
+
For each MUST NOT constraint:
|
|
109
|
+
- [ ] PRD does not propose the antipattern
|
|
110
|
+
|
|
111
|
+
**Violation types:**
|
|
112
|
+
- CRITICAL: PRD violates a MUST constraint
|
|
113
|
+
- CRITICAL: PRD proposes a MUST NOT antipattern
|
|
114
|
+
- WARNING: MUST constraint not referenced by any user story
|
|
115
|
+
|
|
116
|
+
### Step 5: Internal Consistency Check
|
|
117
|
+
|
|
118
|
+
Within the PRD itself:
|
|
119
|
+
- [ ] No two user stories contradict each other
|
|
120
|
+
- [ ] Priorities are consistent (P0 depends on P0, not P1 depending on P2)
|
|
121
|
+
- [ ] Data model matches API surface
|
|
122
|
+
- [ ] Security requirements cover all user-facing features
|
|
123
|
+
- [ ] Testing requirements cover all P0 user stories
|
|
124
|
+
|
|
125
|
+
**Violation types:**
|
|
126
|
+
- CRITICAL: Contradicting user stories
|
|
127
|
+
- CRITICAL: P0 feature with no test coverage requirement
|
|
128
|
+
- WARNING: Priority inconsistency in dependencies
|
|
129
|
+
|
|
130
|
+
### Step 6: Completeness Check
|
|
131
|
+
|
|
132
|
+
- [ ] All sections of PRD template are present
|
|
133
|
+
- [ ] Executive summary matches actual content
|
|
134
|
+
- [ ] Traceability matrix is complete
|
|
135
|
+
- [ ] Open questions are flagged (not hidden)
|
|
136
|
+
|
|
137
|
+
**Violation types:**
|
|
138
|
+
- WARNING: Missing PRD section
|
|
139
|
+
- INFO: Traceability matrix has gaps
|
|
140
|
+
|
|
141
|
+
### Step 7: Write Consistency Report
|
|
142
|
+
|
|
143
|
+
Write `artifacts/consistency-report.md`:
|
|
144
|
+
|
|
145
|
+
```markdown
|
|
146
|
+
# Consistency Report: <Project/Task Name>
|
|
147
|
+
|
|
148
|
+
## Verdict: PASS | PASS_WITH_WARNINGS | FAIL
|
|
149
|
+
|
|
150
|
+
## Summary
|
|
151
|
+
- Checks executed: <count>
|
|
152
|
+
- CRITICAL violations: <count>
|
|
153
|
+
- WARNING violations: <count>
|
|
154
|
+
- INFO items: <count>
|
|
155
|
+
|
|
156
|
+
## Violations
|
|
157
|
+
|
|
158
|
+
### CRITICAL
|
|
159
|
+
#### V-001: <Title>
|
|
160
|
+
- **Check**: <which check caught this>
|
|
161
|
+
- **Found in PRD**: <section/user story reference>
|
|
162
|
+
- **Conflicts with**: <decision ID / constraint ID / architecture section>
|
|
163
|
+
- **Details**: <specific description>
|
|
164
|
+
- **Suggested fix**: <what should change>
|
|
165
|
+
- **Fix target**: <which phase/artifact needs to be updated>
|
|
166
|
+
|
|
167
|
+
### WARNINGS
|
|
168
|
+
#### W-001: <Title>
|
|
169
|
+
...
|
|
170
|
+
|
|
171
|
+
### INFO
|
|
172
|
+
#### I-001: <Title>
|
|
173
|
+
...
|
|
174
|
+
|
|
175
|
+
## Audit Trail
|
|
176
|
+
| Check Category | Items Checked | Passed | Failed |
|
|
177
|
+
|---------------|--------------|--------|--------|
|
|
178
|
+
| Goals ↔ User Stories | <N> | <N> | <N> |
|
|
179
|
+
| Stack ↔ PRD | <N> | <N> | <N> |
|
|
180
|
+
| Architecture ↔ PRD | <N> | <N> | <N> |
|
|
181
|
+
| Best Practices ↔ PRD | <N> | <N> | <N> |
|
|
182
|
+
| Internal Consistency | <N> | <N> | <N> |
|
|
183
|
+
| Completeness | <N> | <N> | <N> |
|
|
184
|
+
|
|
185
|
+
## Rollback Recommendations
|
|
186
|
+
<If CRITICAL violations exist, suggest which phase to rollback to>
|
|
187
|
+
- V-001 → requires rollback to Phase <N> (<reason>)
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### Step 8: Return Summary
|
|
191
|
+
|
|
192
|
+
Compact summary: verdict, violation counts, rollback recommendation if applicable.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: interview
|
|
3
|
-
description: "
|
|
3
|
+
description: "Use before implementation, design, or migration when requirements are unclear and targeted clarifying questions are needed to gather precise context."
|
|
4
4
|
triggers:
|
|
5
5
|
- "/interview"
|
|
6
6
|
- "Interview"
|
|
@@ -16,6 +16,12 @@ metadata:
|
|
|
16
16
|
license: "MIT"
|
|
17
17
|
---
|
|
18
18
|
|
|
19
|
+
<SUBAGENT-STOP>
|
|
20
|
+
If you were dispatched as a subagent to execute a specific task, skip this skill entirely.
|
|
21
|
+
This skill is for orchestrators and interactive session-level routing only.
|
|
22
|
+
Proceed directly with your assigned task.
|
|
23
|
+
</SUBAGENT-STOP>
|
|
24
|
+
|
|
19
25
|
# Interview
|
|
20
26
|
|
|
21
27
|
Critical requirements interviewer that asks targeted clarifying questions before expensive operations begin. The goal is to eliminate ambiguity and gather precise context so downstream skills (job-orchestrator, feature-dev, prd-creator) produce accurate results.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: interview
|
|
3
|
-
description: "
|
|
3
|
+
description: "Use before implementation, design, or migration when requirements are unclear and targeted clarifying questions are needed to gather precise context."
|
|
4
4
|
triggers:
|
|
5
5
|
- "/interview"
|
|
6
6
|
- "Interview"
|
|
@@ -16,6 +16,12 @@ metadata:
|
|
|
16
16
|
license: "MIT"
|
|
17
17
|
---
|
|
18
18
|
|
|
19
|
+
<SUBAGENT-STOP>
|
|
20
|
+
If you were dispatched as a subagent to execute a specific task, skip this skill entirely.
|
|
21
|
+
This skill is for orchestrators and interactive session-level routing only.
|
|
22
|
+
Proceed directly with your assigned task.
|
|
23
|
+
</SUBAGENT-STOP>
|
|
24
|
+
|
|
19
25
|
# Interview
|
|
20
26
|
|
|
21
27
|
Critical requirements interviewer that asks targeted clarifying questions before expensive operations begin. The goal is to eliminate ambiguity and gather precise context so downstream skills (job-orchestrator, feature-dev, prd-creator) produce accurate results.
|