nitm-ai-dev-toolkit 5.2.0 → 5.3.0

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.
Files changed (80) hide show
  1. package/CHANGELOG.md +18 -1
  2. package/README.md +24 -0
  3. package/bin/cli.js +1 -1
  4. package/package.json +1 -1
  5. package/src/monorepo/.agents/skills/dispatching-parallel-agents/SKILL.md +1 -1
  6. package/src/monorepo/.agents/skills/factory/SKILL.md +36 -13
  7. package/src/monorepo/.agents/skills/factory/roles/approve.md +3 -2
  8. package/src/monorepo/.agents/skills/factory/roles/review-code.md +2 -1
  9. package/src/monorepo/.agents/skills/factory/roles/spec.md +3 -1
  10. package/src/monorepo/.claude/agents-snippets/implementer.md +5 -1
  11. package/src/monorepo/.claude/commands/bootstrap-patch.md +2 -2
  12. package/src/monorepo/.claude/commands/constitution.md +1 -1
  13. package/src/monorepo/.claude/commands/create-skill.md +1 -1
  14. package/src/monorepo/.claude/commands/implement-feature.md +2 -2
  15. package/src/monorepo/.claude/commands/implement-fixes.md +1 -1
  16. package/src/monorepo/.claude/commands/implement.md +1 -1
  17. package/src/monorepo/.claude/commands/plan.md +1 -1
  18. package/src/monorepo/.claude/prompt-snippets/assign-tasks.md +3 -2
  19. package/src/monorepo/.claude/prompt-snippets/bootstrap-patch.md +15 -10
  20. package/src/monorepo/.claude/prompt-snippets/constitution.md +7 -1
  21. package/src/monorepo/.claude/prompt-snippets/create-skill.md +10 -0
  22. package/src/monorepo/.claude/prompt-snippets/implement-feature.md +39 -57
  23. package/src/monorepo/.claude/prompt-snippets/implement-fixes.md +31 -40
  24. package/src/monorepo/.claude/prompt-snippets/implement.md +101 -35
  25. package/src/monorepo/.claude/prompt-snippets/plan.md +19 -1
  26. package/src/monorepo/.claude/prompt-snippets/specify.md +9 -2
  27. package/src/monorepo/.claude/prompt-snippets/tasks.md +5 -5
  28. package/src/monorepo/.claude/rules-snippets/documentation.md +9 -1
  29. package/src/monorepo/.claude/rules-snippets/fit-review.md +62 -0
  30. package/src/monorepo/.claude/rules-snippets/subagent-workflow.md +71 -27
  31. package/src/monorepo/.cursor/commands/bootstrap-patch.md +1 -1
  32. package/src/monorepo/.cursor/commands/implement-feature.md +1 -1
  33. package/src/monorepo/.github/prompts/bootstrap-patch.prompt.md +1 -1
  34. package/src/monorepo/.github/prompts/constitution.prompt.md +1 -0
  35. package/src/monorepo/.github/prompts/create-skill.prompt.md +1 -0
  36. package/src/monorepo/.github/prompts/implement-feature.prompt.md +1 -1
  37. package/src/monorepo/.github/prompts/plan.prompt.md +1 -0
  38. package/src/monorepo/.opencode/commands/bootstrap-patch.md +1 -1
  39. package/src/monorepo/.opencode/commands/implement-feature.md +1 -1
  40. package/src/monorepo/AGENTS.md +12 -5
  41. package/src/monorepo/factory/README.md +3 -1
  42. package/src/repo/.agents/skills/dispatching-parallel-agents/SKILL.md +1 -1
  43. package/src/repo/.agents/skills/factory/SKILL.md +36 -13
  44. package/src/repo/.agents/skills/factory/roles/approve.md +3 -2
  45. package/src/repo/.agents/skills/factory/roles/review-code.md +2 -1
  46. package/src/repo/.agents/skills/factory/roles/spec.md +3 -1
  47. package/src/repo/.claude/agents-snippets/implementer.md +5 -1
  48. package/src/repo/.claude/commands/bootstrap-patch.md +2 -2
  49. package/src/repo/.claude/commands/constitution.md +1 -1
  50. package/src/repo/.claude/commands/create-skill.md +1 -1
  51. package/src/repo/.claude/commands/implement-feature.md +2 -2
  52. package/src/repo/.claude/commands/implement-fixes.md +1 -1
  53. package/src/repo/.claude/commands/implement.md +1 -1
  54. package/src/repo/.claude/commands/plan.md +1 -1
  55. package/src/repo/.claude/prompt-snippets/assign-tasks.md +3 -2
  56. package/src/repo/.claude/prompt-snippets/bootstrap-patch.md +15 -10
  57. package/src/repo/.claude/prompt-snippets/constitution.md +7 -1
  58. package/src/repo/.claude/prompt-snippets/create-skill.md +10 -0
  59. package/src/repo/.claude/prompt-snippets/implement-feature.md +38 -58
  60. package/src/repo/.claude/prompt-snippets/implement-fixes.md +33 -34
  61. package/src/repo/.claude/prompt-snippets/implement.md +101 -35
  62. package/src/repo/.claude/prompt-snippets/plan.md +19 -3
  63. package/src/repo/.claude/prompt-snippets/specify.md +9 -2
  64. package/src/repo/.claude/prompt-snippets/tasks.md +6 -6
  65. package/src/repo/.claude/rules-snippets/documentation.md +11 -1
  66. package/src/repo/.claude/rules-snippets/fit-review.md +62 -0
  67. package/src/repo/.claude/rules-snippets/subagent-workflow.md +71 -27
  68. package/src/repo/.cursor/commands/bootstrap-patch.md +1 -1
  69. package/src/repo/.cursor/commands/implement-feature.md +1 -1
  70. package/src/repo/.github/prompts/bootstrap-patch.prompt.md +2 -2
  71. package/src/repo/.github/prompts/constitution.prompt.md +1 -1
  72. package/src/repo/.github/prompts/create-skill.prompt.md +1 -1
  73. package/src/repo/.github/prompts/implement-feature.prompt.md +2 -2
  74. package/src/repo/.github/prompts/implement-fixes.prompt.md +1 -1
  75. package/src/repo/.github/prompts/implement.prompt.md +1 -1
  76. package/src/repo/.github/prompts/plan.prompt.md +1 -1
  77. package/src/repo/.opencode/commands/bootstrap-patch.md +1 -1
  78. package/src/repo/.opencode/commands/implement-feature.md +1 -1
  79. package/src/repo/AGENTS.md +17 -6
  80. package/src/repo/factory/README.md +3 -1
@@ -1,51 +1,117 @@
1
- You are helping to implement features based on a task list or specification.
1
+ # Implement
2
+
3
+ You are the orchestrator for this implementation. You derive the acceptance criteria from the supplied task, delegate the build, get an independent review, verify the evidence yourself, and decide whether the work is accepted. Only the orchestrator accepts work, and only when the loop below says so. Accepting does not commit: the calling flow decides that.
2
4
 
3
5
  ## Orchestrator Checkpoint
4
6
 
5
- > **🛑 Before starting**: If the task list contains 2+ tasks across different domains or files,
6
- > use the **orchestrator-first** flow. Dispatch a fresh subagent per task using the
7
- > `subagent-driven-development` skill. For 3+ independent `[P]` tasks, use the
8
- > `dispatching-parallel-agents` skill to run them concurrently.
9
- > See `.claude/rules-snippets/subagent-workflow.md` for full patterns.
7
+ > **🛑 Before starting**: Every task or fix runs the delivery loop below. Dispatch the builder directly
8
+ > with this loop. Do not route through a planning skill, and do not write a spec or plan first.
9
+ > For 3+ independent `[P]` tasks that touch disjoint files, the loops may run concurrently with the
10
+ > `dispatching-parallel-agents` skill. Each task still runs its own loop.
11
+ > Nontrivial ad-hoc code changes outside these commands follow the same loop. Context-heavy nontrivial work may be built directly, but acceptance still needs an independent reviewer; without one it is BLOCKED. Trivial changes (typos, one-line edits) stay outside this loop.
10
12
 
11
- ## Your Task
13
+ ## Roles
14
+
15
+ | Role | Agent | Rules |
16
+ | ------------ | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
17
+ | Orchestrator | this session | Derives the acceptance criteria, dispatches, verifies, decides. Only the orchestrator accepts work or ticks tasks as accepted. |
18
+ | Builder | `fixer` (bounded) or `implementer` where the harness has it; `feature-builder` for complex builds | Reproduces, builds, repairs and reports evidence. Never approves its own work. Its internal self-review, and any reviewer it dispatches, do not count as the independent review. |
19
+ | Reviewer | `reviewer`, or any read-only agent given the reviewer brief | Reads the original task, the diff, the untracked files and the checks. Never edits. |
20
+ | Oracle | `oracle` | Advises on approach or root cause before a build. Does not build or review. |
21
+
22
+ ## Delivery Loop
23
+
24
+ The loop repeats until it reaches an exit. It is not a single pass, and it has no fixed round limit.
25
+
26
+ ```
27
+ build → verify → review → decide ─┬─ accept (review PASS, every requirement verified, every required check passing)
28
+ ▲ ├─ blocked (stop and report; never accepted)
29
+ └──── repair (any gap) ─────────┤─ needs user decision (stop and report; never accepted)
30
+ └─ (anything else loops back to build)
31
+ ```
32
+
33
+ ### 1. Task, checks and baseline (orchestrator)
34
+
35
+ - The original supplied task (request, task list entry, or fix description) is the requirement. Keep its text and give it to the builder and the reviewer unchanged. Explicit user amendments and answers given during the loop are part of the requirement too: record each one as a dated entry beside the original text (do not rewrite it), and give the builder and the reviewer the original text plus every amendment. Do not require a new spec or plan first, and do not write one.
36
+ - Turn every requirement in the supplied task into an acceptance criterion, `AC-1`, `AC-2`, ... There is no fixed count: one criterion per requirement, however many there are. Do not add requirements the task does not state.
37
+ - Each AC names its check. Discover the real checks; do not assume them. Read the project's manifests (for example `package.json` scripts, `Makefile`, `pyproject.toml`, `Cargo.toml`, `go.mod`), its CI configuration (for example `.github/workflows`), its README, and `AGENTS.md`. Use the commands the project actually runs.
38
+ - A documentation criterion may be checked by direct inspection: open the file and confirm the content, and quote what you found as evidence.
39
+ - A required check that cannot be discovered, or cannot be run, is a gap. It is not a pass, and it is not a bypass. It blocks acceptance of the affected task and of any aggregate run that needs it. Ask the user for the command as one targeted question and keep that question in the progress report. Independent tasks whose checks do not depend on the gap continue (see the Blocked exit in step 5).
40
+ - Ask only when a requirement is unclear in a way that changes what gets built: two readings lead to different code, or a needed fact is missing. Ask one targeted question with its options. A task-scoped question blocks only that task and its dependents: independent tasks with clear requirements continue, and the question stays in the progress report (see [subagent-workflow.md](../rules-snippets/subagent-workflow.md), Autonomous Execution and Blockers). If the whole request is unclear, stop and ask before any build.
41
+ - Take a baseline snapshot once, before any build. It is a plain copy of the state the task starts from, kept in a temporary directory outside the repository:
42
+ - `git rev-parse HEAD`: the base commit.
43
+ - `git status --porcelain > <tmp>/baseline/status.txt`: which files were already changed, staged or untracked.
44
+ - `git diff --binary HEAD > <tmp>/baseline/tracked.patch`: a record of the preexisting tracked changes, staged and unstaged. It is for reference only. The review never subtracts it.
45
+ - A copy of the content of every preexisting dirty tracked file and every preexisting untracked file, under `<tmp>/baseline/files/<path>`.
46
+ - Preexisting untracked files the task would change are out of scope until the user agrees to that scope. If the task must touch one, stop before the overlap, ask, and continue only with the agreed scope. Hashes alone do not show which lines changed, so the saved copy is the comparison point.
47
+
48
+ ### 2. Build or repair (builder)
49
+
50
+ **Round 1 (build):** dispatch one builder, directly, with the original task text, the AC list, the discovered checks, the base commit, and the baseline snapshot. The builder must:
51
+
52
+ - For a bug, first write a failing test that reproduces it, and watch it fail for the right reason. Then make the minimal change that passes it. For a feature, follow TDD: failing test, minimal code, then refactor. Keep the diff as small as the task allows.
53
+ - Leave all its changes uncommitted and unstaged, including new files, so the review sees them. Do not commit.
54
+ - Report each AC as `pass` with the command and result, or `not verified` with the reason. List every changed and new file.
55
+ - Report `BLOCKED` with the decision the human must make if the task cannot be built as written.
56
+
57
+ **Later rounds (repair):** dispatch the same builder again with only the open items: every blocking review item, every AC that is not `pass`, and every check that failed or did not run. It must fix each item, or say in its report why it should stand. It must not expand scope.
12
58
 
13
- 1. **Load context**:
59
+ ### 3. Verify (orchestrator)
14
60
 
15
- - Read the specification or task list provided
16
- - Review `AGENTS.md` for coding patterns
17
- - Check relevant documentation in `docs/`
61
+ Every round, run every check that covers an AC, using the commands from step 1. Treat the builder's report as a lead, not as evidence. For each AC, record `pass` with the command and result from this round, or `not verified` or `fail` with the reason. Docs criteria are recorded with the quoted content.
18
62
 
19
- 2. **Analyze implementation requirements**:
63
+ Checks are scoped: each repair and each task runs the checks for its own ACs. After all writers are reconciled, run the project's full required regression checks once: the repo-defined full suite, lint, typecheck, and build, where they exist. Use only commands the project defines; do not invent them. A failed required check is a repair. A required check that does not exist or cannot run is BLOCKED (see step 5).
20
64
 
21
- - Identify files to create or modify
22
- - Understand dependencies between tasks
23
- - Note testing requirements
24
- - **Parallelization check**: Identify `[P]` tasks and group independent work by domain
25
- - Tasks touching different files with no shared state → dispatch in parallel
65
+ ### 4. Review (reviewer, read-only)
26
66
 
27
- 3. **Execute implementation**:
67
+ Every round, after verify, dispatch the reviewer on the current working tree. Give it the original supplied task text, the AC list, this round's check results, the base commit, and the baseline snapshot. Its review scope covers the whole task, and it compares content, not patches:
28
68
 
29
- - For sequential tasks: implement in dependency order
30
- - For parallel `[P]` tasks: dispatch domain specialist subagents concurrently
31
- - **Follow TDD**: Write failing tests before implementation (red-green-refactor). See `test-driven-development/SKILL.md`.
32
- - Follow project coding standards
33
- - Add appropriate comments and documentation
69
+ - Tracked file that was clean at baseline: `git diff --binary HEAD -- <file>`, which covers staged and unstaged changes.
70
+ - Tracked file that was dirty at baseline: compare the current file with its saved copy under `<tmp>/baseline/files/<path>`.
71
+ - New untracked file: read each one in full.
72
+ - Preexisting untracked file: compare it with its saved copy, and only if the user agreed to the scope (step 1).
34
73
 
35
- 4. **Review gate**:
36
- - Dispatch **Reviewer** agent after implementation, before marking work complete
37
- - Use `verification-before-completion` skill for final quality check
74
+ The reviewer's rules:
38
75
 
39
- 5. **Validate implementation**:
76
+ - Read-only. Do not edit files, format code, stage, or commit.
77
+ - The first line of the reply is exactly `VERDICT: PASS` or `VERDICT: CHANGES`.
78
+ - `VERDICT: CHANGES` needs at least one blocking item, each with `file:line`, the problem, and the specific fix. Blocking means a correctness issue, a failing check, a requirement with no test or evidence, or a clear convention break. Taste goes in non-blocking notes.
79
+ - Check each requirement of the original task, not only the diff. A requirement with no coverage is a blocking item.
80
+ - Scope drift, both ways: trace the diff against the original supplied task. A change that no requirement needs is a blocking item unless the reviewer confirms it is a necessary implementation detail for a stated goal and says why. Goals are the original supplied task plus the user amendments recorded in step 1: do not require or assume a spec or plan (supplied-task exception). Simplicity and SRP notes stay non-blocking unless they add scope the task does not ask for.
40
81
 
41
- - Run linting: `{{PACKAGE_MANAGER}} run lint`
42
- - Run tests: `{{PACKAGE_MANAGER}} run test`
43
- - Build project: `{{PACKAGE_MANAGER}} run build`
82
+ ### 5. Decide (orchestrator)
83
+
84
+ Pick one outcome per round:
85
+
86
+ - **Repair (back to step 2):** the review is `VERDICT: CHANGES`, **or** any AC is `not verified` or `fail`, **or** a required check failed or did not run. Send the open items to the builder, then run steps 3, 4 and 5 again on the current tree.
87
+ - **Accept (exit):** all of these hold on this round's verify and review: the review is `VERDICT: PASS`; every requirement has an AC marked `pass` with evidence from this round; every required check ran and passed; an independent reviewer produced the verdict; and the builder did not report `BLOCKED`. Then report `ACCEPTED` with the AC evidence. A review PASS alone never accepts.
88
+ - **Blocked (exit for the affected work):** the builder reports `BLOCKED`, a required check cannot be discovered or run, or no independent reviewer is available. Report `BLOCKED` with the blocker and what would unblock it. Never mark blocked work accepted. Work that depends on it stops; independent authorized work with its own checks and reviewer continues. Without an independent reviewer nothing is accepted, but discovery and builds that do not need acceptance may continue and be reported as awaiting review. Stop the run only when no authorized work remains or a mandatory approval, security, or permission gate applies.
89
+ - **Needs user decision (exit for the affected work):** the task is unclear in a way only the user can settle. Stop work on that task and its dependents, report `NOT ACCEPTED: needs decision` with the question, and continue independent authorized work. This is not acceptance.
90
+
91
+ No other exit exists. An unmet requirement, a failing check, or a `not verified` result always loops back to repair. There is no round limit to escape the loop.
92
+
93
+ **Evidence freshness.** Acceptance uses evidence from the tree it accepts. Any edit after a verify or review, whether by the builder, a repair, or the orchestrator, invalidates the evidence it affects: rerun the checks covering those ACs and re-review the changed diff. Reuse evidence that the edit cannot affect. If unsure whether an edit affects a check, treat it as affected. Do not rerun everything for an unrelated edit.
94
+
95
+ ### Commit (only when the calling flow asks)
96
+
97
+ The loop never commits by itself. Accepting reports the result; it does not create a commit. The calling command decides whether accepted work is committed, and only when its own flow says so and the user has not asked otherwise. When it does commit:
98
+
99
+ - Stage only the paths this task changed, taken from the builder's list and checked against the baseline. Never `git add -A`, and never stage a preexisting or foreign change.
100
+ - Skip the commit when nothing is staged. Do not create empty commits, and do not create a separate commit for each repair round.
101
+
102
+ ### Limits
103
+
104
+ - **No independent reviewer means nothing is accepted.** The orchestrator may run its own verify and report the evidence, but it cannot accept the work on its own review. Report `BLOCKED` for acceptance. Do not treat all work as blocked when independent discovery or build can proceed (see the Blocked exit in step 5).
105
+ - Mandatory approval, security, and permission gates are never bypassed. They apply to the affected work, or to the whole run when the gate is global.
106
+ - A self-review is never presented as an independent review.
107
+ - These gates are prompt instructions, not host enforcement. Resuming after a pause depends on the host; this prompt does not guarantee automatic resume.
108
+
109
+ ## Your Task
44
110
 
45
- 6. **Track progress**:
46
- - Mark completed tasks
47
- - Report any blockers or issues
48
- - Summarize changes made
111
+ 1. **Analyze**: identify the files to create or modify, the dependencies between tasks, and the `[P]` tasks.
112
+ Dispatch `[P]` tasks in parallel only when they touch different files with no shared state. Otherwise keep them sequential. A task whose write set is unknown or undeclared runs serially until the builder's changed-file list establishes its scope.
113
+ 2. **Run the delivery loop** for each task, in dependency order, until it exits as accepted, blocked, or needs a user decision.
114
+ 3. **Track progress**: tick a task only after the orchestrator accepts it. Report blockers and summarize the accepted changes.
49
115
 
50
116
  ## Guidelines
51
117
 
@@ -53,4 +119,4 @@ You are helping to implement features based on a task list or specification.
53
119
  - Keep changes focused and atomic
54
120
  - Write tests for new functionality
55
121
  - Update documentation as needed
56
- - Use conventional commit messages
122
+ - Use conventional commit messages when a commit is requested
@@ -1,6 +1,6 @@
1
1
  # Plan Feature Implementation
2
2
 
3
- Plan how to implement the specified feature. This is the second step in the development lifecycle.
3
+ Plan how to implement the supplied feature or requirement; a prior specification is not required.
4
4
 
5
5
  ## Usage
6
6
 
@@ -14,6 +14,7 @@ Plan how to implement the specified feature. This is the second step in the deve
14
14
  > **🛑 Before starting**: For complex features spanning multiple domains (backend + frontend + API + docs),
15
15
  > dispatch **Researcher** subagents in parallel to analyze each domain simultaneously.
16
16
  > Use the `writing-plans` skill for structured plan creation.
17
+ > For this command, the artifact-only scope, source preservation, template and review gates below override that skill's execution handoff, worktree and commit procedures. Stop after reporting the accepted artifacts.
17
18
  > See `.claude/rules-snippets/subagent-workflow.md` for full patterns.
18
19
 
19
20
  ## Process
@@ -21,7 +22,10 @@ Plan how to implement the specified feature. This is the second step in the deve
21
22
  > **📋 Standards**: Reference [Patterns](../rules-snippets/patterns.md) for architecture patterns.
22
23
 
23
24
  1. **Load Feature Context**:
24
- - Read specification from `docs/features/{{ISSUE_ID}}-{{FEATURE_NAME}}/spec.md`
25
+ - Use the supplied requirement as sufficient input. Ask targeted questions only when the request is unclear; do not require creating a specification first.
26
+ - If an existing specification is available at `docs/features/{{ISSUE_ID}}-{{FEATURE_NAME}}/spec.md`, read it as optional context.
27
+ - Without an existing specification, persist the original supplied requirements and acceptance criteria verbatim in `plan.md` under **Requirements Source** and **Acceptance Criteria**, including the source path or issue key when available. Preserve constraints; label any derived criteria or assumptions separately and ask the user about unclear or missing criteria rather than inventing approval. This plan is the durable requirements source for `/tasks` and `/assign-tasks`.
28
+ - With an existing specification, link to its requirements and acceptance criteria instead of duplicating them. Surface conflicts with the supplied request to the user before proceeding.
25
29
  - Review `AGENTS.md` for architecture patterns
26
30
  - Check `docs/constitution.md` for project principles
27
31
 
@@ -50,7 +54,13 @@ Plan how to implement the specified feature. This is the second step in the deve
50
54
  - `docs/features/{{ISSUE_ID}}-{{FEATURE_NAME}}/data-model.md` - Data model details
51
55
  - `docs/features/{{ISSUE_ID}}-{{FEATURE_NAME}}/api-contract.md` - API specifications
52
56
 
53
- 5. **Report Completion**:
57
+ 5. **Review and Accept Planning Artifacts**:
58
+ - The orchestrator dispatches an independent, read-only reviewer with the original request, requirements/context, plan and any additional artifact paths. Use the goal-fit brief (read and follow [fit-review](../rules-snippets/fit-review.md)): Oracle when available read-only, otherwise a separate reviewer; the author's self-review does not count. Review the actual artifacts for completeness, dependencies/order, actionability, and coverage of the request, and trace goals and plan items both ways. Return `VERDICT: PASS` or `VERDICT: CHANGES` with blocking findings and section references. A finding that needs a user decision is blocking, marked `requires user decision; do not auto-repair`; stop and ask the user.
59
+ - Repair blocking findings within the agreed scope, repeat affected artifact checks, and re-review the changed artifacts independently. Repeat until PASS or blocked, or until the user decides. Stop as BLOCKED with the reason when a repair changes nothing or the same finding returns unchanged. A goal change from the review is a user decision, not a repair. Open decisions block PASS until the user resolves them.
60
+ - Only the orchestrator accepts, after an independent PASS and evidence for every requirement and applicable artifact check. If an independent reviewer is unavailable, report BLOCKED; self-review cannot substitute for independent acceptance.
61
+ - This is a lightweight artifact review, not a code build loop: do not implement the plan, run runtime build/TDD/git procedures, or add commit, push, or apply steps. Keep any required human approval separate from artifact acceptance.
62
+
63
+ 6. **Report Completion** (only after artifact acceptance):
54
64
  - Plan file path
55
65
  - Additional artifacts created
56
66
  - Ready for `/tasks` command
@@ -63,6 +73,12 @@ Plan how to implement the specified feature. This is the second step in the deve
63
73
  ## Overview
64
74
  [Feature description and goals]
65
75
 
76
+ ## Requirements Source
77
+ [Without a specification: original supplied requirements verbatim and source path/issue key. Otherwise: link to the specification's requirements.]
78
+
79
+ ## Acceptance Criteria
80
+ [Without a specification: original supplied acceptance criteria verbatim; label derived criteria/assumptions separately. Otherwise: link to the specification's criteria.]
81
+
66
82
  ## Architecture
67
83
  [Component structure and relationships]
68
84
 
@@ -65,12 +65,19 @@ Start a new feature by creating a specification. This is the first step in the d
65
65
  - [ ] [Questions needing clarification]
66
66
  ```
67
67
 
68
- 5. **Create Git Branch** (optional):
68
+ 5. **Review and Accept the Specification**:
69
+ - Dispatch an independent, read-only reviewer with the original request (verbatim, with any later user amendments), the feature description, any intake answers, and `spec.md`. Use the goal-fit brief (read and follow [fit-review](../rules-snippets/fit-review.md)): Oracle when available read-only, otherwise a separate reviewer; the author's self-review does not count.
70
+ - The reviewer traces requirements and acceptance criteria both ways against the original request, checks that each criterion is testable, and returns `VERDICT: PASS` or `VERDICT: CHANGES` with blocking findings and section references. A finding that needs a user decision is blocking, marked `requires user decision; do not auto-repair`; stop and ask the user.
71
+ - Repair blocking findings within the agreed scope, repeat the affected checks, and re-review the changed spec independently. Repeat until PASS or blocked, or until the user decides. Stop as BLOCKED with the reason when a repair changes nothing or the same finding returns unchanged. A goal change from the review is a user decision, not a repair. Open decisions block PASS until the user resolves them.
72
+ - Only the orchestrator accepts, after an independent PASS. If an independent reviewer is unavailable, report BLOCKED; self-review cannot substitute for independent acceptance.
73
+ - Acceptance is separate from human approval: the human still confirms the spec.
74
+
75
+ 6. **Create Git Branch** (optional):
69
76
  ```bash
70
77
  git checkout -b feature/{{FEATURE_NAME}}
71
78
  ```
72
79
 
73
- 6. **Report Completion**:
80
+ 7. **Report Completion** only after artifact acceptance:
74
81
  - Feature directory path
75
82
  - Spec file path
76
83
  - Branch name (if created)
@@ -1,8 +1,8 @@
1
1
  # Generate Task Checklist
2
2
 
3
- Break the implementation plan into a slim task checklist. This is the third step in the development lifecycle.
3
+ Break the implementation plan into a slim task checklist; no prior specification is required.
4
4
 
5
- `tasks.md` is a checklist only. Acceptance criteria live in `spec.md`; approach, files, and effort live in `plan.md`. Do not repeat them here.
5
+ `tasks.md` is a checklist only. Acceptance criteria live in `spec.md` when present, otherwise in `plan.md` under **Requirements Source** and **Acceptance Criteria**; approach, files, and effort live in `plan.md`. Do not repeat them here.
6
6
 
7
7
  ## Usage
8
8
 
@@ -13,7 +13,7 @@ Break the implementation plan into a slim task checklist. This is the third step
13
13
 
14
14
  ## When Not to Create tasks.md
15
15
 
16
- Small work (1-2 steps) needs no `tasks.md`. Implement it directly.
16
+ Small work (1-2 steps) needs no `tasks.md`. Report that a separate implementation command can handle it; do not implement it in this command.
17
17
 
18
18
  ## Consolidation Rules (CRITICAL)
19
19
 
@@ -37,7 +37,7 @@ Before finalizing, ask: Can adjacent tasks merge? Would one developer naturally
37
37
 
38
38
  ## Process
39
39
 
40
- 1. **Load context**: `docs/features/{{ISSUE_ID}}-{{FEATURE_NAME}}/spec.md`, `plan.md`, and `AGENTS.md` (project patterns).
40
+ 1. **Load context**: Read `docs/features/{{ISSUE_ID}}-{{FEATURE_NAME}}/plan.md` and `AGENTS.md` (project patterns). Read sibling `spec.md` when present; otherwise use `plan.md` under **Requirements Source** and **Acceptance Criteria** as the requirements source. Cover every requirement and acceptance criterion in the deliverables without copying them into the checklist. If that source is missing or unclear, ask the user; do not require creating a specification.
41
41
 
42
42
  2. **Write `docs/features/{{ISSUE_ID}}-{{FEATURE_NAME}}/tasks.md`** in the format below.
43
43
 
@@ -78,6 +78,6 @@ Ordering: setup before implementation; tests before or alongside code (TDD); cor
78
78
  When this list is used by `/implement-feature` or `/implement`:
79
79
 
80
80
  - **`[P]` tasks**: dispatch one subagent per task concurrently, using `dispatching-parallel-agents`
81
- - **Other tasks**: execute in dependency order, one subagent per task, using `subagent-driven-development`
81
+ - **Other tasks**: execute in dependency order, one subagent per task
82
82
  - **Domain routing**: match each task to a specialist (Backend Architect, Frontend Developer, API Specialist, etc.)
83
- - **Review gate**: every task passes a Reviewer before it is ticked `[x]`
83
+ - **Review gate**: follow the shared delivery loop in `implement.md`; only the orchestrator accepts and ticks `[x]` after independent review and required evidence. This command only generates the checklist; do not dispatch implementation or bypass required human approval.
@@ -32,7 +32,7 @@ Create feature documentation for:
32
32
 
33
33
  **Location:** `docs/features/{{ISSUE_ID}}-{{FEATURE_NAME}}/`
34
34
 
35
- **Required Files:**
35
+ **Required Files** (subject to the [requirement-only planning exception](#requirement-only-planning-exception) and the separate [supplied-task exception](#supplied-task-exception)):
36
36
 
37
37
  ```
38
38
  {{ISSUE_ID}}-{{FEATURE_NAME}}/
@@ -43,6 +43,8 @@ Create feature documentation for:
43
43
 
44
44
  ### Creating Feature Documentation
45
45
 
46
+ The [requirement-only planning exception](#requirement-only-planning-exception) takes precedence over the spec-first sequence below for `/plan`, `/tasks` and `/assign-tasks` without a specification.
47
+
46
48
  1. **Use the spec workflow**: Run `/specify` command to generate `spec.md` in `docs/features/{{ISSUE_ID}}-{{FEATURE_NAME}}/`
47
49
  2. **Create implementation plan**: Run `/plan` command to generate `plan.md` in the same feature folder
48
50
  3. **Keep it updated**: Update during implementation if scope changes
@@ -500,6 +502,14 @@ What is the change we're proposing and/or doing?
500
502
 
501
503
  **⚠️ MANDATORY: Documentation MUST be written or updated BEFORE committing code. This is a hard requirement — no commit should land without the corresponding docs entry.**
502
504
 
505
+ ### Requirement-Only Planning Exception
506
+
507
+ For `/plan` without an existing specification, preserve the original supplied requirements and acceptance criteria in `plan.md` under **Requirements Source** and **Acceptance Criteria**; do not require or create `spec.md`. `/tasks` and `/assign-tasks` consume that plan source when no specification exists; keep acceptance criteria out of the slim task checklist. This exception overrides the spec prerequisite and mandatory spec-first sequence above and in the documentation checklist only for these planning artifacts. It does not authorize implementation, replace artifact review, waive required human approvals, or change any other documentation duties. The separate implementation-command supplied-task exception remains unchanged.
508
+
509
+ ### Supplied-Task Exception
510
+
511
+ For changes made by the `implement`, `implement-feature` and `implement-fixes` commands only, the task supplied to the command replaces the spec and plan prerequisites. Do not create or require `spec.md` or `plan.md` (feature folders or complex fix folders) unless the user asks for them. This exception covers only the spec and plan items below. Every other applicable item still applies.
512
+
503
513
  ### Pre-Commit Checklist
504
514
 
505
515
  Before running `git commit`, verify ALL items that apply to your change:
@@ -0,0 +1,62 @@
1
+ # Goal-Fit Review Brief
2
+
3
+ Read and follow this brief when a gate or command asks for a goal-fit review of a spec, a plan, or a build's scope. It adds to the reviewer rules of the calling flow.
4
+
5
+ ## Reviewer
6
+
7
+ - Read-only. Do not edit files, stage, or commit. Do not write any file the caller did not ask for.
8
+ - Independent of the author. Use Oracle when it is available read-only; otherwise a separate reviewer in fresh context. The author's self-review, the author's summary, and a single session playing every role do not count.
9
+ - If no independent reviewer can run, the caller reports `BLOCKED`. Do not review in its place.
10
+ - Review the current artifacts from scratch on every run, including resumed runs. Do not rely on an earlier reply, an earlier summary, or the author's account of what changed.
11
+
12
+ ## Goal sources
13
+
14
+ Use only these as goal authority:
15
+
16
+ 1. The original user request, verbatim, and every explicit user amendment (intake answers, operator change requests, rework decisions). The caller passes them to you as text in the dispatch.
17
+ 2. Accepted constraints from earlier artifacts, when the caller passes them: for a plan review, the accepted spec's requirements, acceptance criteria, and `[DECIDED]` items; for a build review, the accepted spec and plan. Trace against these. They are not goal authority on their own.
18
+
19
+ Not goal sources: a slug, a ticket key, a ticket title, the existing spec alone, the planner's or author's summary, and any reviewer finding from an earlier round.
20
+
21
+ If the original request is not in the dispatch, do not infer goals from the spec or the plan. Reply `VERDICT: CHANGES` with a blocking finding: `Missing authoritative baseline: requires user decision; do not auto-repair.`
22
+
23
+ Quote the original request in your report. When a lower source (a spec, a plan, or a summary) conflicts with the original request, report the conflict with both quotes. Do not silently trust the lower source.
24
+
25
+ ## Trace both ways
26
+
27
+ - **Forward:** every goal is covered by a requirement, acceptance criterion, or step. Name the section that covers it, or report the gap.
28
+ - **Backward:** every requirement, step, or file change traces to a goal. A change that no goal needs is scope drift.
29
+ - Implementation details that a goal needs are allowed without their own acceptance criterion (for example, a migration that a storage goal requires). Do not demand that every mundane detail be an acceptance criterion. Name the goal that justifies such a detail.
30
+
31
+ ## Lenses (separate from correctness)
32
+
33
+ - **Ponytail:** is this the simplest work that meets the goals? Flag speculative abstraction, dead flexibility, reinvented standard-library behavior, and steps no goal asks for. Block only when the finding adds scope or complexity the goals do not justify; otherwise note it.
34
+ - **SOLID and SRP, proportional:** flag a responsibility split only when it harms a goal, for example one unit doing unrelated work the request keeps apart. Do not require abstractions or interfaces, and do not forbid a justified interface. Judge by the goals, not by the pattern.
35
+
36
+ ## Decisions and repairs
37
+
38
+ - A change to a goal (dropping, narrowing, or adding one) is a user decision. So is any other question only the user can settle. A decision stays blocking until the user resolves it with an explicit amendment. Report it as a blocking finding under `VERDICT: CHANGES`, marked `requires user decision; do not auto-repair`, and also list it under **Decisions for the user**. Do not repair it, and do not assume an answer.
39
+ - Other blocking findings are scoped repairs: name the section and the specific change. The caller passes your findings to the author as dispatch context and reviews the changed artifacts again. You do not write repair notes or repair files.
40
+ - `VERDICT: PASS` means no blocking findings. Absence of blocking findings is not a pass. A finding that needs a user decision is blocking, so it is never a pass.
41
+
42
+ ## Output
43
+
44
+ The first line is exactly `VERDICT: PASS` or `VERDICT: CHANGES`. `CHANGES` needs at least one blocking finding. Then use these sections:
45
+
46
+ ```markdown
47
+ ## Goal sources
48
+ - Original request (quoted, short), amendments, accepted constraints. Conflicts: <quotes, or none>
49
+
50
+ ## Trace
51
+ - Forward: <goal → covering section, or gap>
52
+ - Backward: <untraced item → scope drift, or none>
53
+
54
+ ## Blocking findings
55
+ - [section] Problem. Repair: <specific change>
56
+
57
+ ## Decisions for the user
58
+ - <goal change or open decision, or none>
59
+
60
+ ## Notes (non-blocking)
61
+ - [section] Ponytail or SRP observation. Optional.
62
+ ```
@@ -71,42 +71,73 @@ When dispatching implementation tasks, match the specialist to the domain:
71
71
 
72
72
  ## Orchestration Patterns
73
73
 
74
- ### Sequential (default)
74
+ ### Delegation Default
75
75
 
76
- Tasks with dependencies are implemented one at a time in dependency order. Each must pass review before the next begins.
76
+ - **Delegate by default.** Hand substantial, safely separable discovery, implementation, test, and review work to subagents. Use a single agent only for trivial work, as listed under "When to Use a Single Agent Directly".
77
+ - **The coordinator keeps outcome responsibility.** It defines each task's scope, reconciles every result, makes sure verification runs, and reports the final outcome. A subagent reporting success is not the outcome.
78
+ - **Work directly only** for trivial changes (one small edit, a quick answer) or when the context is too heavy to hand off cheaply, such as work that depends on large context the coordinator already holds. Say why when you skip delegation.
79
+ - **No delegation capability.** If the host offers no subagent dispatch, say so explicitly in the report. Do permitted direct work where it is safe. Never self-review in place of an independent gate: record the gate as pending and end as BLOCKED or WAITING.
77
80
 
78
- ### Parallel
81
+ ### Dependency Graph and Parallel Batches (REQUIRED before dispatching)
79
82
 
80
- Independent tasks can be dispatched to multiple specialist subagents simultaneously. Use when tasks don't share files or state.
83
+ Before dispatching any task list, the orchestrator builds the dependency graph. No `[P]` marker is required. If a task list has `[P]` markers, treat them as hints and verify them.
81
84
 
82
- ### Parallelization Analysis (REQUIRED before dispatching)
85
+ 1. **Read and write sets.** For each task, list the files, directories, or packages it reads and writes.
86
+ 2. **Exclusive writable scopes.** Each writer gets a scope no other concurrent task writes. Two tasks that share any writable path are dependent. A task whose write set is unknown or undeclared runs serially until its scope is established from the changed-file list.
87
+ 3. **Data dependencies.** A task that reads what another task writes waits for that task.
88
+ 4. **Ready batch.** Tasks whose dependencies are satisfied and whose writable scopes are disjoint form one batch. Dispatch the whole batch together. Dependent and shared-write tasks run in later batches, one at a time.
89
+ 5. **Route by domain.** Backend tasks → Backend Architect; frontend → Frontend Developer; API contracts → API Specialist; docs → Documenter; cross-cutting → Implementer.
90
+ 6. **Track handles.** Record each dispatched task's handle, agent, writable scope, and status until its result is reconciled.
91
+ 7. **Reconcile before dependents.** Inspect each result (changed files, summary, verification) before dispatching any task that depends on it. If a result changed a path the graph did not expect, stop the affected tasks and re-plan the batch.
92
+ 8. **Continue the chain.** When a batch's results are reconciled, compute the next ready batch and dispatch it. Do not wait for the user unless a mandatory gate applies or no authorized, unblocked work remains (see Autonomous Execution and Blockers).
83
93
 
84
- Before executing any task list, the orchestrator MUST run this analysis:
85
-
86
- 1. **Scan for `[P]` markers** in the task list — these are pre-identified parallel candidates
87
- - If no `[P]` markers exist, do **not** assume sequential-only work. Treat all tasks as candidates and infer parallel-safe groups via the independence test.
88
- 2. **Build a dependency graph**: For each task, list which files it reads and writes
89
- 3. **Apply the independence test**:
90
- - Tasks that write to **different files** with **no shared state** → parallel-safe
91
- - Tasks that share any writable file → sequential (dependency edge)
92
- - Tasks where one reads what another writes → sequential (data dependency)
93
- 4. **Group by domain** for specialist routing:
94
- - Backend tasks → Backend Architect
95
- - Frontend tasks → Frontend Developer
96
- - API contract tasks → API Specialist
97
- - Documentation tasks → Documenter
98
- - Cross-cutting → Implementer
99
- 5. **Dispatch decision**:
100
- - **3+ independent tasks** → Use `dispatching-parallel-agents` skill, one agent per task
101
- - **2 independent tasks** → Parallel dispatch (simpler coordination)
102
- - **All tasks dependent** → Sequential with `subagent-driven-development` skill
103
- - **Mixed** → Dispatch independent group in parallel, then continue sequential chain
94
+ **Dispatch shape:** 3+ independent tasks → `dispatching-parallel-agents`, one agent per task. 2 independent tasks → parallel dispatch. All tasks dependent → sequential with `subagent-driven-development`. Mixed → run each ready batch in parallel, then continue the sequential chain.
104
95
 
105
96
  ```
106
- Example: 5 tasks → T1 (setup) → T2 [P] (backend API) + T3 [P] (frontend UI) + T4 [P] (docs) → T5 (integration tests)
107
- Dispatch: T1 sequential → T2+T3+T4 parallel → T5 sequential
97
+ Example: 5 tasks → T1 (setup) → T2 (backend API) + T3 (frontend UI) + T4 (docs) → T5 (integration tests)
98
+ Batches: [T1] → [T2, T3, T4] → [T5]
99
+ T2, T3, and T4 run together only because their writable scopes are disjoint.
108
100
  ```
109
101
 
102
+ ## Turn Completion and Waiting
103
+
104
+ During active multi-step execution, never end a turn silently, and never treat dispatch or partial progress as completion. End each such turn in exactly one of these states. Informational answers need no status line:
105
+
106
+ - **DONE:** the requested work is complete and verified under Quality Gates. State the outcome and the validation that ran.
107
+ - **WAITING:** name each pending task (handle and agent) and its resume trigger, such as a subagent notification or a user reply at a named gate. List what completed and what remains.
108
+ - **BLOCKED / NEEDS-DECISION:** state the blocker or decision, what completed, what remains, and the exact next user action.
109
+
110
+ Resume mechanics depend on the host:
111
+
112
+ - When the host notifies on subagent completion, reconcile the notified result and continue with the next eligible batch. Check each handle once per notification.
113
+ - When the host cannot resume in the background, do not claim that it will. Either run the batch in the foreground and collect the results within the turn, or end as WAITING and say that the user must send a message to resume, naming the exact step.
114
+ - Do not busy-poll. Never loop on status checks.
115
+
116
+ ## Autonomous Execution and Blockers
117
+
118
+ During multi-step execution, work autonomously within the approved goal, scope, and permissions. Autonomy grants no extra authority.
119
+
120
+ - **A blocker pauses only the affected task and its dependents.** Independent ready work within authority continues in the next batch.
121
+ - **Record each unresolved blocker immediately** in the existing progress record or the conversation: the affected task, what is needed and why, safe options or a targeted input, and the next action. Keep it visible in progress updates and the final report. Never drop it silently.
122
+ - **Defer non-global blockers** as follow-up questions while work can safely advance.
123
+ - **Stop for user input** only when no authorized, unblocked work remains, or when a mandatory approval, security, or permission gate prevents the remaining work. Agents still running are WAITING, not blocked.
124
+ - **Ask clearly.** Present the consolidated outstanding questions through the harness's native question or clarification tool when one is available. Do not assume a tool name or support. Without one, give numbered options or a fill-in block in chat.
125
+ - **Answers can arrive early.** Do not require a blocking tool prompt while independent work continues. Report deferred questions in progress updates.
126
+ - **Never** silently choose a consequential scope or requirement change, bypass a required human approval, or mark a partially blocked task DONE.
127
+
128
+ ## Long-Session Checkpoint
129
+
130
+ For sessions that span several batches or a context reset:
131
+
132
+ - Use existing progress records only: a progress section the plan or task list already has, Factory job notes, or task records, when they exist. Keep the approved goal, current step, active task handles, blocker, and next action in those notes or in the conversation.
133
+ - Never add fields to structured files such as Factory `job.json`, never rewrite accepted requirements or spec/plan text, and never replace an authoritative source with a summary.
134
+ - If no such records exist, a short checkpoint in the conversation is enough. Do not create new files for trivial work.
135
+ - On resume, reread the accepted source (spec, plan, or task text) instead of relying on the checkpoint summary, and check the working tree before dispatching anything.
136
+
137
+ ## Factory Approvals
138
+
139
+ Spec and plan confirmations remain mandatory human steps; final approval, escalation, and merge behavior follow the job's `APPROVAL_MODE` and `MERGE_MODE`. Delegation, batching, autonomy, and subagent sign-offs never satisfy spec or plan human confirmation, or human final approval when `APPROVAL_MODE=human`. Mode-defined approver behavior is preserved. Stop at the gate and report it as WAITING or BLOCKED.
140
+
110
141
  ## Quality Gates
111
142
 
112
143
  - Every implementation must pass **Reviewer** before proceeding
@@ -114,6 +145,19 @@ Example: 5 tasks → T1 (setup) → T2 [P] (backend API) + T3 [P] (frontend UI)
114
145
  - Coordinators should not skip review even for "simple" changes
115
146
  - If a reviewer requests changes, the original specialist fixes them and re-review occurs
116
147
 
148
+ ## Model Capacity Fallback
149
+
150
+ When a subagent stops on a model capacity, quota, session limit, or reset-wait failure (most often Claude), switch its **model** and keep its **agent**. This is automatic for those failures; do not ask first.
151
+
152
+ - **Same agent, same role.** Re-dispatch the same agent with the same task, permissions, and context (and session, where the harness supports it). Do not substitute an equivalent agent.
153
+ - **Model order, one attempt each.** Try the next model in the configured fallback order for that agent. When the order is exhausted, try the harness's known available default, unless it was already tried. Then stop; do not cycle back.
154
+ - **Never** retry the same unavailable model, and never wait blindly for a quota reset.
155
+ - **Only supported switching.** Change the model through per-call selection the runtime supports, using only fallback models and defaults that are already configured or exposed. Do not invent model IDs, and do not edit persistent or global config, accounts, or billing.
156
+ - **Blocker when nothing is left.** If no configured fallback or default is available, or per-call selection is unsupported, the affected task is reported BLOCKED with the question of which model to use. Its dependents stop; independent authorized work continues (see Autonomous Execution and Blockers).
157
+ - **Inspect before resuming.** Check what the failed attempt left in the working tree, then resume from that partial work. Never run two writers on the same files at once.
158
+ - **Keep review independent.** The reviewer stays a separate agent from the builder, even when the builder moves to a fallback model.
159
+ - **Disclose.** The final report names the original model, each fallback attempted, and the model that finished the work.
160
+
117
161
  ## Skills Integration
118
162
 
119
163
  These skills complement subagent workflows:
@@ -10,7 +10,7 @@ argument-hint: "optional patch options"
10
10
  | Agent | When to use |
11
11
  |-------|-------------|
12
12
  | `fixer` | Standard patch — incremental changes to existing config |
13
- | `planner` | Complex patch — cross-cutting changes needing analysis first |
13
+ | `reviewer` | Independent read-only review before approval and after apply |
14
14
 
15
15
  Patch AI instructions by comparing against the latest templates and applying updates.
16
16
 
@@ -10,7 +10,7 @@ argument-hint: "feature specification or task list"
10
10
  | Agent | When to use |
11
11
  |-------|-------------|
12
12
  | `fixer` | Bounded feature work — spec is clear, files are known |
13
- | `feature-builder` | Complex feature — needs research, planning, and coordination |
13
+ | `feature-builder` | Complex feature build — builder only; the orchestrator still runs the review |
14
14
 
15
15
  Implement a feature by completing tasks sequentially with proper tracking.
16
16
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  description: Patch AI instructions by fetching updates from the toolkit repo and applying new/updated/missing guidance
3
- tools: ["read", "search", "edit", "terminal"]
3
+ tools: ["read", "search", "edit", "terminal", "agent"]
4
4
  argument-hint: "[--dry-run] [--category <category>]"
5
5
  ---
6
6
 
@@ -11,6 +11,6 @@ argument-hint: "[--dry-run] [--category <category>]"
11
11
  | Agent | When to use |
12
12
  |-------|-------------|
13
13
  | `fixer` | Standard patch — incremental changes to existing config |
14
- | `planner` | Complex patch — cross-cutting changes needing analysis first |
14
+ | `reviewer` | Independent read-only review before approval and after apply |
15
15
 
16
16
  **CRITICAL: READ:** [.claude/prompt-snippets/bootstrap-patch.md](../../.claude/prompt-snippets/bootstrap-patch.md).
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  description: Create or update the project constitution
3
- tools: ["read", "search", "edit"]
3
+ tools: ["read", "search", "edit", "agent"]
4
4
  argument-hint: "no arguments required"
5
5
  ---
6
6
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  description: Create a new agent skill following VS Code and agentskills.io specifications
3
- tools: ["read", "search", "edit"]
3
+ tools: ["read", "search", "edit", "agent"]
4
4
  tags: [skill-creation, agent-skills, documentation, automation]
5
5
  version: 1.0.0
6
6
  argument-hint: "skill purpose or description"
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  description: Implement a feature by completing tasks sequentially
3
- tools: ["read", "search", "edit", "terminal"]
3
+ tools: ["read", "search", "edit", "terminal", "agent"]
4
4
  argument-hint: "issue key or task file path"
5
5
  ---
6
6
 
@@ -11,6 +11,6 @@ argument-hint: "issue key or task file path"
11
11
  | Agent | When to use |
12
12
  |-------|-------------|
13
13
  | `fixer` | Bounded feature work — spec is clear, files are known |
14
- | `feature-builder` | Complex feature — needs research, planning, and coordination |
14
+ | `feature-builder` | Complex feature build — builder only; the orchestrator still runs the review |
15
15
 
16
16
  **CRITICAL: READ:** [.claude/prompt-snippets/implement-feature.md](../../.claude/prompt-snippets/implement-feature.md).
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  description: Implement bug fixes with proper tracking and validation
3
- tools: ["read", "search", "edit", "terminal"]
3
+ tools: ["read", "search", "edit", "terminal", "agent"]
4
4
  argument-hint: "issue key or fix description"
5
5
  ---
6
6
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  description: Implement features based on a task list or specification
3
- tools: ["read", "search", "edit", "runInTerminal", "terminalLastCommand"]
3
+ tools: ["read", "search", "edit", "runInTerminal", "terminalLastCommand", "agent"]
4
4
  argument-hint: "task list or specification"
5
5
  ---
6
6
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  description: Create an implementation plan for a feature
3
- tools: ["read", "search"]
3
+ tools: ["read", "search", "edit", "agent"]
4
4
  argument-hint: "issue key or spec file path"
5
5
  ---
6
6