@bonesofspring/ai-rules 0.2.20 → 0.2.22
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/CHANGELOG.md +28 -0
- package/README.md +17 -2
- package/bin/cli.js +83 -6
- package/package.json +5 -2
- package/presets/_shared/README.md +2 -1
- package/presets/_shared/assets/docs-specs/INDEX.md +4 -1
- package/presets/_shared/core/agent-team/agent-artifact-contracts.md +15 -0
- package/presets/_shared/core/agent-team/agent-task-metrics.md +1 -1
- package/presets/_shared/core/agent-team/agent-team-orchestrator.md +1 -3
- package/presets/_shared/core/meta/preset-pr-checklist.md +5 -1
- package/presets/_shared/core/meta/preset-token-budget.md +7 -3
- package/presets/_shared/core/meta/preset-twin-sync.md +2 -0
- package/presets/_shared/core/testing/testing-principles.md +70 -0
- package/presets/claude/android-kotlin/agents/README.md +2 -1
- package/presets/claude/android-kotlin/agents/build-verifier.md +2 -0
- package/presets/claude/android-kotlin/agents/code-reviewer.md +2 -0
- package/presets/claude/android-kotlin/agents/debugger.md +1 -0
- package/presets/claude/android-kotlin/agents/feature-developer.md +4 -1
- package/presets/claude/android-kotlin/agents/openspec-author.md +163 -0
- package/presets/claude/android-kotlin/agents/qa-tester.md +2 -0
- package/presets/claude/android-kotlin/agents/task-analyst.md +1 -1
- package/presets/claude/android-kotlin/agents/task-router.md +9 -1
- package/presets/claude/android-kotlin/agents/tech-writer.md +4 -0
- package/presets/claude/android-kotlin/commands/README.md +0 -2
- package/presets/claude/android-kotlin/commands/task-continue.md +1 -1
- package/presets/claude/android-kotlin/commands/task.md +1 -5
- package/presets/claude/android-kotlin/commands/technical-retro.md +2 -2
- package/presets/claude/android-kotlin/hooks/chain-team-phases.sh +105 -13
- package/presets/claude/android-kotlin/rules/README.md +1 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/agent-team-orchestrator.md +7 -4
- package/presets/claude/android-kotlin/rules/tooling-and-review/ai-local-overlay.md +48 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-pr-checklist.md +5 -1
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-token-budget.md +7 -3
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/go/README.md +1 -1
- package/presets/claude/go/agents/README.md +3 -2
- package/presets/claude/go/agents/build-verifier.md +4 -0
- package/presets/claude/go/agents/code-reviewer.md +4 -0
- package/presets/claude/go/agents/debugger.md +4 -0
- package/presets/claude/go/agents/feature-developer.md +5 -0
- package/presets/claude/go/agents/openspec-author.md +163 -0
- package/presets/claude/go/agents/qa-tester.md +4 -0
- package/presets/claude/go/agents/task-router.md +9 -1
- package/presets/claude/go/agents/tech-writer.md +4 -0
- package/presets/claude/go/commands/README.md +0 -2
- package/presets/claude/go/commands/task-continue.md +1 -1
- package/presets/claude/go/commands/task.md +1 -4
- package/presets/claude/go/hooks/chain-team-phases.sh +105 -14
- package/presets/claude/go/rules/README.md +1 -0
- package/presets/claude/go/rules/tooling-and-review/agent-team-orchestrator.md +2 -4
- package/presets/claude/go/rules/tooling-and-review/ai-local-overlay.md +48 -0
- package/presets/claude/go/rules/tooling-and-review/preset-pr-checklist.md +5 -1
- package/presets/claude/go/rules/tooling-and-review/preset-token-budget.md +7 -3
- package/presets/claude/go/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/ios-swift/agents/README.md +3 -2
- package/presets/claude/ios-swift/agents/build-verifier.md +2 -0
- package/presets/claude/ios-swift/agents/code-reviewer.md +2 -0
- package/presets/claude/ios-swift/agents/debugger.md +1 -0
- package/presets/claude/ios-swift/agents/feature-developer.md +4 -1
- package/presets/claude/ios-swift/agents/openspec-author.md +163 -0
- package/presets/claude/ios-swift/agents/qa-tester.md +2 -0
- package/presets/claude/ios-swift/agents/task-analyst.md +1 -1
- package/presets/claude/ios-swift/agents/task-router.md +9 -1
- package/presets/claude/ios-swift/agents/tech-writer.md +4 -0
- package/presets/claude/ios-swift/commands/README.md +0 -2
- package/presets/claude/ios-swift/commands/task-continue.md +1 -1
- package/presets/claude/ios-swift/commands/task.md +1 -5
- package/presets/claude/ios-swift/commands/technical-retro.md +2 -2
- package/presets/claude/ios-swift/hooks/chain-team-phases.sh +105 -13
- package/presets/claude/ios-swift/rules/README.md +1 -0
- package/presets/claude/ios-swift/rules/tooling-and-review/agent-team-orchestrator.md +7 -4
- package/presets/claude/ios-swift/rules/tooling-and-review/ai-local-overlay.md +48 -0
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-pr-checklist.md +5 -1
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-token-budget.md +7 -3
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/java/CLAUDE.md +1 -1
- package/presets/claude/java/agents/README.md +3 -2
- package/presets/claude/java/agents/build-verifier.md +4 -0
- package/presets/claude/java/agents/code-reviewer.md +4 -0
- package/presets/claude/java/agents/debugger.md +4 -0
- package/presets/claude/java/agents/feature-developer.md +5 -0
- package/presets/claude/java/agents/openspec-author.md +163 -0
- package/presets/claude/java/agents/qa-tester.md +4 -0
- package/presets/claude/java/agents/task-router.md +9 -1
- package/presets/claude/java/agents/tech-writer.md +4 -0
- package/presets/claude/java/commands/README.md +0 -2
- package/presets/claude/java/commands/task-continue.md +1 -1
- package/presets/claude/java/commands/task.md +1 -4
- package/presets/claude/java/hooks/chain-team-phases.sh +105 -14
- package/presets/claude/java/rules/README.md +1 -0
- package/presets/claude/java/rules/tooling-and-review/agent-team-orchestrator.md +2 -4
- package/presets/claude/java/rules/tooling-and-review/ai-local-overlay.md +48 -0
- package/presets/claude/java/rules/tooling-and-review/preset-pr-checklist.md +5 -1
- package/presets/claude/java/rules/tooling-and-review/preset-token-budget.md +7 -3
- package/presets/claude/java/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/mcp-ts/agents/build-verifier.md +4 -0
- package/presets/claude/mcp-ts/agents/feature-developer.md +5 -0
- package/presets/claude/mcp-ts/agents/task-analyst.md +1 -1
- package/presets/claude/mcp-ts/agents/task-router.md +1 -1
- package/presets/claude/mcp-ts/commands/README.md +0 -2
- package/presets/claude/mcp-ts/commands/task-continue.md +1 -1
- package/presets/claude/mcp-ts/commands/task.md +1 -4
- package/presets/claude/mcp-ts/commands/technical-retro.md +2 -2
- package/presets/claude/mcp-ts/hooks/chain-team-phases.sh +91 -20
- package/presets/claude/mcp-ts/rules/README.md +1 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-orchestrator.md +2 -4
- package/presets/claude/mcp-ts/rules/tooling-and-review/ai-local-overlay.md +48 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-pr-checklist.md +5 -1
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-token-budget.md +7 -3
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/next/README.md +1 -0
- package/presets/claude/next/agents/README.md +2 -2
- package/presets/claude/next/agents/build-verifier.md +13 -1
- package/presets/claude/next/agents/code-reviewer.md +2 -0
- package/presets/claude/next/agents/debugger.md +4 -0
- package/presets/claude/next/agents/feature-developer.md +4 -1
- package/presets/claude/next/agents/openspec-author.md +163 -0
- package/presets/claude/next/agents/qa-tester.md +4 -0
- package/presets/claude/next/agents/task-analyst.md +1 -1
- package/presets/claude/next/agents/task-router.md +5 -1
- package/presets/claude/next/agents/tech-writer.md +4 -0
- package/presets/claude/next/agents/unit-test-generator.md +1 -1
- package/presets/claude/next/agents/unit-test-planner.md +1 -1
- package/presets/claude/next/commands/README.md +0 -2
- package/presets/claude/next/commands/task-continue.md +1 -1
- package/presets/claude/next/commands/task.md +1 -4
- package/presets/claude/next/hooks/chain-team-phases.sh +105 -13
- package/presets/claude/next/rules/README.md +1 -0
- package/presets/claude/next/rules/api-and-data/http-client.md +1 -1
- package/presets/claude/next/rules/architecture/reference-features.md +1 -1
- package/presets/claude/next/rules/testing/README.md +7 -1
- package/presets/claude/next/rules/testing/tests-e2e-structure.md +86 -48
- package/presets/claude/next/rules/testing/tests-unit.md +78 -51
- package/presets/claude/next/rules/tooling-and-review/agent-team-orchestrator.md +3 -4
- package/presets/claude/next/rules/tooling-and-review/ai-local-overlay.md +48 -0
- package/presets/claude/next/rules/tooling-and-review/preset-pr-checklist.md +5 -1
- package/presets/claude/next/rules/tooling-and-review/preset-token-budget.md +7 -3
- package/presets/claude/next/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/next/rules/ui-and-accessibility/react-ui.md +1 -1
- package/presets/claude/next/skills/playwright-e2e/SKILL.md +5 -3
- package/presets/claude/next/skills/unit-testing/SKILL.md +6 -4
- package/presets/claude/next/team/README.md +0 -3
- package/presets/claude/nuxt/agents/README.md +1 -1
- package/presets/claude/nuxt/agents/build-verifier.md +2 -0
- package/presets/claude/nuxt/agents/code-reviewer.md +2 -0
- package/presets/claude/nuxt/agents/debugger.md +4 -0
- package/presets/claude/nuxt/agents/feature-developer.md +4 -1
- package/presets/claude/nuxt/agents/openspec-author.md +163 -0
- package/presets/claude/nuxt/agents/qa-tester.md +4 -0
- package/presets/claude/nuxt/agents/task-analyst.md +1 -1
- package/presets/claude/nuxt/agents/task-router.md +5 -1
- package/presets/claude/nuxt/agents/tech-writer.md +4 -0
- package/presets/claude/nuxt/commands/README.md +0 -2
- package/presets/claude/nuxt/commands/task-continue.md +1 -1
- package/presets/claude/nuxt/commands/task.md +1 -5
- package/presets/claude/nuxt/commands/technical-retro.md +2 -2
- package/presets/claude/nuxt/hooks/chain-team-phases.sh +105 -13
- package/presets/claude/nuxt/rules/README.md +1 -0
- package/presets/claude/nuxt/rules/testing/README.md +6 -0
- package/presets/claude/nuxt/rules/testing/tests-e2e-structure.md +86 -43
- package/presets/claude/nuxt/rules/testing/tests-unit.md +58 -45
- package/presets/claude/nuxt/rules/tooling-and-review/agent-team-orchestrator.md +8 -5
- package/presets/claude/nuxt/rules/tooling-and-review/ai-local-overlay.md +48 -0
- package/presets/claude/nuxt/rules/tooling-and-review/preset-pr-checklist.md +5 -1
- package/presets/claude/nuxt/rules/tooling-and-review/preset-token-budget.md +7 -3
- package/presets/claude/nuxt/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/nuxt/team/README.md +0 -3
- package/presets/claude/php-hexagonal/CLAUDE.md +1 -1
- package/presets/claude/php-hexagonal/agents/README.md +3 -2
- package/presets/claude/php-hexagonal/agents/build-verifier.md +4 -0
- package/presets/claude/php-hexagonal/agents/code-reviewer.md +4 -0
- package/presets/claude/php-hexagonal/agents/debugger.md +4 -0
- package/presets/claude/php-hexagonal/agents/feature-developer.md +5 -0
- package/presets/claude/php-hexagonal/agents/openspec-author.md +163 -0
- package/presets/claude/php-hexagonal/agents/qa-tester.md +4 -0
- package/presets/claude/php-hexagonal/agents/task-router.md +9 -1
- package/presets/claude/php-hexagonal/agents/tech-writer.md +4 -0
- package/presets/claude/php-hexagonal/commands/README.md +0 -2
- package/presets/claude/php-hexagonal/commands/task-continue.md +1 -1
- package/presets/claude/php-hexagonal/commands/task.md +1 -4
- package/presets/claude/php-hexagonal/hooks/chain-team-phases.sh +105 -14
- package/presets/claude/php-hexagonal/rules/README.md +1 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-orchestrator.md +2 -4
- package/presets/claude/php-hexagonal/rules/tooling-and-review/ai-local-overlay.md +48 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-pr-checklist.md +5 -1
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-token-budget.md +7 -3
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/php-laravel/agents/README.md +3 -2
- package/presets/claude/php-laravel/agents/build-verifier.md +4 -0
- package/presets/claude/php-laravel/agents/code-reviewer.md +4 -0
- package/presets/claude/php-laravel/agents/debugger.md +4 -0
- package/presets/claude/php-laravel/agents/feature-developer.md +5 -0
- package/presets/claude/php-laravel/agents/openspec-author.md +163 -0
- package/presets/claude/php-laravel/agents/qa-tester.md +4 -0
- package/presets/claude/php-laravel/agents/task-router.md +6 -1
- package/presets/claude/php-laravel/agents/tech-writer.md +4 -0
- package/presets/claude/php-laravel/commands/README.md +0 -2
- package/presets/claude/php-laravel/commands/task-continue.md +1 -1
- package/presets/claude/php-laravel/commands/task.md +1 -4
- package/presets/claude/php-laravel/hooks/chain-team-phases.sh +105 -14
- package/presets/claude/php-laravel/rules/README.md +1 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-orchestrator.md +2 -4
- package/presets/claude/php-laravel/rules/tooling-and-review/ai-local-overlay.md +48 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-pr-checklist.md +5 -1
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-token-budget.md +7 -3
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/svelte/agents/README.md +1 -1
- package/presets/claude/svelte/agents/build-verifier.md +2 -0
- package/presets/claude/svelte/agents/code-reviewer.md +2 -0
- package/presets/claude/svelte/agents/debugger.md +4 -0
- package/presets/claude/svelte/agents/feature-developer.md +4 -1
- package/presets/claude/svelte/agents/openspec-author.md +163 -0
- package/presets/claude/svelte/agents/qa-tester.md +4 -0
- package/presets/claude/svelte/agents/task-analyst.md +1 -1
- package/presets/claude/svelte/agents/task-router.md +5 -1
- package/presets/claude/svelte/agents/tech-writer.md +4 -0
- package/presets/claude/svelte/commands/README.md +0 -2
- package/presets/claude/svelte/commands/task-continue.md +1 -1
- package/presets/claude/svelte/commands/task.md +1 -5
- package/presets/claude/svelte/commands/technical-retro.md +2 -2
- package/presets/claude/svelte/hooks/chain-team-phases.sh +105 -13
- package/presets/claude/svelte/rules/README.md +1 -0
- package/presets/claude/svelte/rules/testing/README.md +6 -0
- package/presets/claude/svelte/rules/testing/tests-e2e-structure.md +87 -45
- package/presets/claude/svelte/rules/testing/tests-unit.md +70 -23
- package/presets/claude/svelte/rules/tooling-and-review/agent-team-orchestrator.md +8 -5
- package/presets/claude/svelte/rules/tooling-and-review/ai-local-overlay.md +48 -0
- package/presets/claude/svelte/rules/tooling-and-review/preset-pr-checklist.md +5 -1
- package/presets/claude/svelte/rules/tooling-and-review/preset-token-budget.md +7 -3
- package/presets/claude/svelte/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/svelte/team/README.md +0 -3
- package/presets/cursor/android-kotlin/agents/README.md +2 -1
- package/presets/cursor/android-kotlin/agents/build-verifier.md +2 -0
- package/presets/cursor/android-kotlin/agents/code-reviewer.md +2 -0
- package/presets/cursor/android-kotlin/agents/debugger.md +1 -0
- package/presets/cursor/android-kotlin/agents/feature-developer.md +4 -1
- package/presets/cursor/android-kotlin/agents/openspec-author.md +164 -0
- package/presets/cursor/android-kotlin/agents/qa-tester.md +2 -0
- package/presets/cursor/android-kotlin/agents/task-analyst.md +1 -1
- package/presets/cursor/android-kotlin/agents/task-router.md +9 -1
- package/presets/cursor/android-kotlin/agents/tech-writer.md +4 -0
- package/presets/cursor/android-kotlin/commands/README.md +0 -2
- package/presets/cursor/android-kotlin/commands/task-continue.md +1 -1
- package/presets/cursor/android-kotlin/commands/task.md +1 -5
- package/presets/cursor/android-kotlin/commands/technical-retro.md +2 -2
- package/presets/cursor/android-kotlin/hooks/chain-team-phases.sh +105 -13
- package/presets/cursor/android-kotlin/rules/agent-team-orchestrator.mdc +7 -4
- package/presets/cursor/android-kotlin/rules/ai-local-overlay.mdc +43 -0
- package/presets/cursor/android-kotlin/rules/preset-pr-checklist.mdc +5 -1
- package/presets/cursor/android-kotlin/rules/preset-token-budget.mdc +7 -3
- package/presets/cursor/android-kotlin/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/go/README.md +6 -6
- package/presets/cursor/go/agents/README.md +3 -2
- package/presets/cursor/go/agents/build-verifier.md +4 -0
- package/presets/cursor/go/agents/code-reviewer.md +4 -0
- package/presets/cursor/go/agents/debugger.md +4 -0
- package/presets/cursor/go/agents/feature-developer.md +5 -0
- package/presets/cursor/go/agents/openspec-author.md +164 -0
- package/presets/cursor/go/agents/qa-tester.md +4 -0
- package/presets/cursor/go/agents/task-router.md +9 -1
- package/presets/cursor/go/agents/tech-writer.md +4 -0
- package/presets/cursor/go/commands/README.md +0 -2
- package/presets/cursor/go/commands/task-continue.md +1 -1
- package/presets/cursor/go/commands/task.md +1 -4
- package/presets/cursor/go/commands/technical-retro.md +2 -2
- package/presets/cursor/go/hooks/chain-team-phases.sh +105 -14
- package/presets/cursor/go/rules/agent-team-orchestrator.mdc +2 -4
- package/presets/cursor/go/rules/ai-local-overlay.mdc +43 -0
- package/presets/cursor/go/rules/preset-pr-checklist.mdc +5 -1
- package/presets/cursor/go/rules/preset-token-budget.mdc +7 -3
- package/presets/cursor/go/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/ios-swift/README.md +6 -6
- package/presets/cursor/ios-swift/agents/README.md +3 -2
- package/presets/cursor/ios-swift/agents/build-verifier.md +2 -0
- package/presets/cursor/ios-swift/agents/code-reviewer.md +2 -0
- package/presets/cursor/ios-swift/agents/debugger.md +1 -0
- package/presets/cursor/ios-swift/agents/feature-developer.md +4 -1
- package/presets/cursor/ios-swift/agents/openspec-author.md +164 -0
- package/presets/cursor/ios-swift/agents/qa-tester.md +2 -0
- package/presets/cursor/ios-swift/agents/task-analyst.md +1 -1
- package/presets/cursor/ios-swift/agents/task-router.md +9 -1
- package/presets/cursor/ios-swift/agents/tech-writer.md +4 -0
- package/presets/cursor/ios-swift/commands/README.md +1 -3
- package/presets/cursor/ios-swift/commands/task-continue.md +1 -1
- package/presets/cursor/ios-swift/commands/task.md +1 -5
- package/presets/cursor/ios-swift/commands/technical-retro.md +2 -2
- package/presets/cursor/ios-swift/hooks/chain-team-phases.sh +105 -13
- package/presets/cursor/ios-swift/rules/agent-team-orchestrator.mdc +7 -4
- package/presets/cursor/ios-swift/rules/ai-local-overlay.mdc +43 -0
- package/presets/cursor/ios-swift/rules/preset-pr-checklist.mdc +5 -1
- package/presets/cursor/ios-swift/rules/preset-token-budget.mdc +7 -3
- package/presets/cursor/ios-swift/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/java/AGENTS.md +1 -1
- package/presets/cursor/java/agents/README.md +3 -2
- package/presets/cursor/java/agents/build-verifier.md +4 -0
- package/presets/cursor/java/agents/code-reviewer.md +4 -0
- package/presets/cursor/java/agents/debugger.md +4 -0
- package/presets/cursor/java/agents/feature-developer.md +5 -0
- package/presets/cursor/java/agents/openspec-author.md +164 -0
- package/presets/cursor/java/agents/qa-tester.md +4 -0
- package/presets/cursor/java/agents/task-router.md +9 -1
- package/presets/cursor/java/agents/tech-writer.md +4 -0
- package/presets/cursor/java/commands/README.md +0 -2
- package/presets/cursor/java/commands/task-continue.md +1 -1
- package/presets/cursor/java/commands/task.md +1 -4
- package/presets/cursor/java/commands/technical-retro.md +2 -2
- package/presets/cursor/java/hooks/chain-team-phases.sh +105 -14
- package/presets/cursor/java/rules/agent-team-orchestrator.mdc +2 -4
- package/presets/cursor/java/rules/ai-local-overlay.mdc +43 -0
- package/presets/cursor/java/rules/preset-pr-checklist.mdc +5 -1
- package/presets/cursor/java/rules/preset-token-budget.mdc +7 -3
- package/presets/cursor/java/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/mcp-ts/agents/build-verifier.md +4 -0
- package/presets/cursor/mcp-ts/agents/feature-developer.md +5 -0
- package/presets/cursor/mcp-ts/agents/task-analyst.md +1 -1
- package/presets/cursor/mcp-ts/agents/task-router.md +1 -1
- package/presets/cursor/mcp-ts/commands/README.md +0 -2
- package/presets/cursor/mcp-ts/commands/task-continue.md +1 -1
- package/presets/cursor/mcp-ts/commands/task.md +1 -4
- package/presets/cursor/mcp-ts/commands/technical-retro.md +2 -2
- package/presets/cursor/mcp-ts/hooks/chain-team-phases.sh +91 -20
- package/presets/cursor/mcp-ts/rules/agent-team-orchestrator.mdc +2 -4
- package/presets/cursor/mcp-ts/rules/ai-local-overlay.mdc +43 -0
- package/presets/cursor/mcp-ts/rules/preset-pr-checklist.mdc +5 -1
- package/presets/cursor/mcp-ts/rules/preset-token-budget.mdc +7 -3
- package/presets/cursor/mcp-ts/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/next/README.md +8 -6
- package/presets/cursor/next/REPO_AGENTS.md +8 -0
- package/presets/cursor/next/agents/README.md +2 -2
- package/presets/cursor/next/agents/build-verifier.md +13 -1
- package/presets/cursor/next/agents/code-reviewer.md +2 -0
- package/presets/cursor/next/agents/debugger.md +4 -0
- package/presets/cursor/next/agents/feature-developer.md +4 -1
- package/presets/cursor/next/agents/openspec-author.md +164 -0
- package/presets/cursor/next/agents/qa-tester.md +4 -0
- package/presets/cursor/next/agents/task-analyst.md +1 -1
- package/presets/cursor/next/agents/task-router.md +5 -1
- package/presets/cursor/next/agents/tech-writer.md +4 -0
- package/presets/cursor/next/agents/unit-test-generator.md +1 -1
- package/presets/cursor/next/agents/unit-test-planner.md +1 -1
- package/presets/cursor/next/commands/README.md +0 -2
- package/presets/cursor/next/commands/task-continue.md +1 -1
- package/presets/cursor/next/commands/task.md +1 -4
- package/presets/cursor/next/commands/technical-retro.md +2 -2
- package/presets/cursor/next/hooks/chain-team-phases.sh +105 -13
- package/presets/cursor/next/rules/README.md +6 -3
- package/presets/cursor/next/rules/agent-team-orchestrator.mdc +7 -5
- package/presets/cursor/next/rules/ai-local-overlay.mdc +43 -0
- package/presets/cursor/next/rules/http-client.mdc +1 -1
- package/presets/cursor/next/rules/preset-pr-checklist.mdc +5 -1
- package/presets/cursor/next/rules/preset-token-budget.mdc +7 -3
- package/presets/cursor/next/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/next/rules/react-ui.mdc +1 -1
- package/presets/cursor/next/rules/reference-features.mdc +1 -1
- package/presets/cursor/next/rules/tests-e2e-structure.mdc +85 -43
- package/presets/cursor/next/rules/tests-unit.mdc +79 -48
- package/presets/cursor/next/skills/playwright-e2e/SKILL.md +5 -3
- package/presets/cursor/next/skills/unit-testing/SKILL.md +6 -4
- package/presets/cursor/next/team/README.md +0 -3
- package/presets/cursor/nuxt/README.md +6 -6
- package/presets/cursor/nuxt/agents/README.md +1 -1
- package/presets/cursor/nuxt/agents/build-verifier.md +2 -0
- package/presets/cursor/nuxt/agents/code-reviewer.md +2 -0
- package/presets/cursor/nuxt/agents/debugger.md +4 -0
- package/presets/cursor/nuxt/agents/feature-developer.md +4 -1
- package/presets/cursor/nuxt/agents/openspec-author.md +164 -0
- package/presets/cursor/nuxt/agents/qa-tester.md +4 -0
- package/presets/cursor/nuxt/agents/task-analyst.md +1 -1
- package/presets/cursor/nuxt/agents/task-router.md +5 -1
- package/presets/cursor/nuxt/agents/tech-writer.md +4 -0
- package/presets/cursor/nuxt/commands/README.md +0 -2
- package/presets/cursor/nuxt/commands/task-continue.md +1 -1
- package/presets/cursor/nuxt/commands/task.md +1 -5
- package/presets/cursor/nuxt/commands/technical-retro.md +2 -2
- package/presets/cursor/nuxt/hooks/chain-team-phases.sh +105 -13
- package/presets/cursor/nuxt/rules/README.md +3 -1
- package/presets/cursor/nuxt/rules/agent-team-orchestrator.mdc +8 -5
- package/presets/cursor/nuxt/rules/ai-local-overlay.mdc +43 -0
- package/presets/cursor/nuxt/rules/preset-pr-checklist.mdc +5 -1
- package/presets/cursor/nuxt/rules/preset-token-budget.mdc +7 -3
- package/presets/cursor/nuxt/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/nuxt/rules/tests-e2e-structure.mdc +87 -43
- package/presets/cursor/nuxt/rules/tests-unit.mdc +62 -47
- package/presets/cursor/nuxt/team/README.md +0 -3
- package/presets/cursor/php-hexagonal/AGENTS.md +1 -1
- package/presets/cursor/php-hexagonal/agents/README.md +3 -2
- package/presets/cursor/php-hexagonal/agents/build-verifier.md +4 -0
- package/presets/cursor/php-hexagonal/agents/code-reviewer.md +4 -0
- package/presets/cursor/php-hexagonal/agents/debugger.md +4 -0
- package/presets/cursor/php-hexagonal/agents/feature-developer.md +5 -0
- package/presets/cursor/php-hexagonal/agents/openspec-author.md +164 -0
- package/presets/cursor/php-hexagonal/agents/qa-tester.md +4 -0
- package/presets/cursor/php-hexagonal/agents/task-router.md +9 -1
- package/presets/cursor/php-hexagonal/agents/tech-writer.md +4 -0
- package/presets/cursor/php-hexagonal/commands/README.md +0 -2
- package/presets/cursor/php-hexagonal/commands/task-continue.md +1 -1
- package/presets/cursor/php-hexagonal/commands/task.md +1 -4
- package/presets/cursor/php-hexagonal/commands/technical-retro.md +2 -2
- package/presets/cursor/php-hexagonal/hooks/chain-team-phases.sh +105 -14
- package/presets/cursor/php-hexagonal/rules/agent-team-orchestrator.mdc +2 -4
- package/presets/cursor/php-hexagonal/rules/ai-local-overlay.mdc +43 -0
- package/presets/cursor/php-hexagonal/rules/preset-pr-checklist.mdc +5 -1
- package/presets/cursor/php-hexagonal/rules/preset-token-budget.mdc +7 -3
- package/presets/cursor/php-hexagonal/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/php-laravel/AGENTS.md +1 -1
- package/presets/cursor/php-laravel/agents/README.md +3 -2
- package/presets/cursor/php-laravel/agents/build-verifier.md +4 -0
- package/presets/cursor/php-laravel/agents/code-reviewer.md +4 -0
- package/presets/cursor/php-laravel/agents/debugger.md +4 -0
- package/presets/cursor/php-laravel/agents/feature-developer.md +5 -0
- package/presets/cursor/php-laravel/agents/openspec-author.md +164 -0
- package/presets/cursor/php-laravel/agents/qa-tester.md +4 -0
- package/presets/cursor/php-laravel/agents/task-router.md +6 -1
- package/presets/cursor/php-laravel/agents/tech-writer.md +4 -0
- package/presets/cursor/php-laravel/commands/README.md +0 -2
- package/presets/cursor/php-laravel/commands/task-continue.md +1 -1
- package/presets/cursor/php-laravel/commands/task.md +1 -4
- package/presets/cursor/php-laravel/commands/technical-retro.md +2 -2
- package/presets/cursor/php-laravel/hooks/chain-team-phases.sh +105 -14
- package/presets/cursor/php-laravel/rules/agent-team-orchestrator.mdc +2 -4
- package/presets/cursor/php-laravel/rules/ai-local-overlay.mdc +43 -0
- package/presets/cursor/php-laravel/rules/preset-pr-checklist.mdc +5 -1
- package/presets/cursor/php-laravel/rules/preset-token-budget.mdc +7 -3
- package/presets/cursor/php-laravel/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/svelte/README.md +6 -6
- package/presets/cursor/svelte/agents/README.md +1 -1
- package/presets/cursor/svelte/agents/build-verifier.md +2 -0
- package/presets/cursor/svelte/agents/code-reviewer.md +2 -0
- package/presets/cursor/svelte/agents/debugger.md +4 -0
- package/presets/cursor/svelte/agents/feature-developer.md +4 -1
- package/presets/cursor/svelte/agents/openspec-author.md +164 -0
- package/presets/cursor/svelte/agents/qa-tester.md +4 -0
- package/presets/cursor/svelte/agents/task-analyst.md +1 -1
- package/presets/cursor/svelte/agents/task-router.md +5 -1
- package/presets/cursor/svelte/agents/tech-writer.md +4 -0
- package/presets/cursor/svelte/commands/README.md +0 -2
- package/presets/cursor/svelte/commands/task-continue.md +1 -1
- package/presets/cursor/svelte/commands/task.md +1 -5
- package/presets/cursor/svelte/commands/technical-retro.md +2 -2
- package/presets/cursor/svelte/hooks/chain-team-phases.sh +105 -13
- package/presets/cursor/svelte/rules/README.md +3 -1
- package/presets/cursor/svelte/rules/agent-team-orchestrator.mdc +8 -5
- package/presets/cursor/svelte/rules/ai-local-overlay.mdc +43 -0
- package/presets/cursor/svelte/rules/preset-pr-checklist.mdc +5 -1
- package/presets/cursor/svelte/rules/preset-token-budget.mdc +7 -3
- package/presets/cursor/svelte/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/svelte/rules/tests-e2e-structure.mdc +87 -43
- package/presets/cursor/svelte/rules/tests-unit.mdc +72 -23
- package/presets/cursor/svelte/team/README.md +0 -3
- package/scripts/_lib/embed-stems.json +31 -0
- package/scripts/aggregate-agent-task-metrics.mjs +23 -0
- package/scripts/check-chain-hook-coverage.sh +109 -0
- package/scripts/check-local-overlay.sh +136 -0
- package/scripts/check-preset-i18n.sh +2 -2
- package/scripts/check-preset-leakage.sh +4 -1
- package/scripts/check-preset-structure.sh +31 -1
- package/scripts/check-preset-token-budget.sh +120 -10
- package/scripts/check-rule-eval.mjs +16 -0
- package/scripts/check-shared-core-drift.sh +10 -32
- package/scripts/check-task-router-intents.sh +141 -0
- package/scripts/close-agent-task-human-gate.mjs +22 -5
- package/scripts/sync-shared-core-embeds.sh +9 -20
- package/scripts/test-agent-task-metrics-hooks.mjs +100 -2
- package/scripts/test-chain-team-phases-coverage.mjs +510 -0
- package/scripts/test-task-router-intents-fixtures.mjs +109 -0
- package/presets/claude/android-kotlin/commands/feature-continue.md +0 -23
- package/presets/claude/android-kotlin/commands/feature-start.md +0 -41
- package/presets/claude/go/commands/feature-continue.md +0 -23
- package/presets/claude/go/commands/feature-start.md +0 -38
- package/presets/claude/ios-swift/commands/feature-continue.md +0 -23
- package/presets/claude/ios-swift/commands/feature-start.md +0 -41
- package/presets/claude/java/commands/feature-continue.md +0 -23
- package/presets/claude/java/commands/feature-start.md +0 -38
- package/presets/claude/mcp-ts/commands/feature-continue.md +0 -23
- package/presets/claude/mcp-ts/commands/feature-start.md +0 -41
- package/presets/claude/next/commands/feature-continue.md +0 -23
- package/presets/claude/next/commands/feature-start.md +0 -38
- package/presets/claude/nuxt/commands/feature-continue.md +0 -23
- package/presets/claude/nuxt/commands/feature-start.md +0 -41
- package/presets/claude/php-hexagonal/commands/feature-continue.md +0 -23
- package/presets/claude/php-hexagonal/commands/feature-start.md +0 -38
- package/presets/claude/php-laravel/commands/feature-continue.md +0 -23
- package/presets/claude/php-laravel/commands/feature-start.md +0 -38
- package/presets/claude/svelte/commands/feature-continue.md +0 -23
- package/presets/claude/svelte/commands/feature-start.md +0 -41
- package/presets/cursor/android-kotlin/commands/feature-continue.md +0 -23
- package/presets/cursor/android-kotlin/commands/feature-start.md +0 -41
- package/presets/cursor/go/commands/feature-continue.md +0 -23
- package/presets/cursor/go/commands/feature-start.md +0 -41
- package/presets/cursor/ios-swift/commands/feature-continue.md +0 -23
- package/presets/cursor/ios-swift/commands/feature-start.md +0 -41
- package/presets/cursor/java/commands/feature-continue.md +0 -23
- package/presets/cursor/java/commands/feature-start.md +0 -41
- package/presets/cursor/mcp-ts/commands/feature-continue.md +0 -23
- package/presets/cursor/mcp-ts/commands/feature-start.md +0 -41
- package/presets/cursor/next/commands/feature-continue.md +0 -23
- package/presets/cursor/next/commands/feature-start.md +0 -41
- package/presets/cursor/nuxt/commands/feature-continue.md +0 -23
- package/presets/cursor/nuxt/commands/feature-start.md +0 -41
- package/presets/cursor/php-hexagonal/commands/feature-continue.md +0 -23
- package/presets/cursor/php-hexagonal/commands/feature-start.md +0 -41
- package/presets/cursor/php-laravel/commands/feature-continue.md +0 -23
- package/presets/cursor/php-laravel/commands/feature-start.md +0 -41
- package/presets/cursor/svelte/commands/feature-continue.md +0 -23
- package/presets/cursor/svelte/commands/feature-start.md +0 -41
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-continue
|
|
3
|
-
description: Legacy alias for /task-continue that resumes a feature pipeline after human approval or pause.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature continue — legacy alias
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task-continue <slug>` — same behavior, respects `pipeline.json`.
|
|
9
|
-
|
|
10
|
-
Continue after a human gate. Full logic — in **`task-continue.md`**.
|
|
11
|
-
|
|
12
|
-
## Short form
|
|
13
|
-
|
|
14
|
-
1. Read `pipeline.json` (if present) and `status.json`.
|
|
15
|
-
2. Clear `awaitingHumanGate`; determine the next step from `pipelineIndex`.
|
|
16
|
-
3. Invoke the subagent for `currentAgent`.
|
|
17
|
-
4. The hook continues the chain when `autoChain: true`.
|
|
18
|
-
|
|
19
|
-
See `task-continue.md` for details and the handoff table.
|
|
20
|
-
|
|
21
|
-
## Product specs (docs/specs)
|
|
22
|
-
|
|
23
|
-
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists, instruct them to load **`product-specs`** and honor **Related specs** from `brief.md` (behavior SoT). Soft-fail on miss; never invent product behavior. No-op if INDEX is absent.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-start
|
|
3
|
-
description: Legacy analyst-only feature intake. Prefer /task for new work because it uses router and dynamic pipeline.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature start — legacy agent command
|
|
7
|
-
|
|
8
|
-
Starts the **analysis phase** for a new task. For new work, prefer `/task` because it builds a dynamic pipeline via `task-router` first.
|
|
9
|
-
|
|
10
|
-
## What to do
|
|
11
|
-
|
|
12
|
-
1. Extract the task description from command arguments (everything after `/feature-start`).
|
|
13
|
-
2. Generate a **slug** (kebab-case, up to 48 characters) from the task title.
|
|
14
|
-
3. Create `.claude/team/tasks/<slug>/` if it does not exist — via Write / Edit, not Shell `mkdir`.
|
|
15
|
-
4. Write `.claude/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
16
|
-
5. Invoke subagent **task-analyst** with the full task description and artifact paths.
|
|
17
|
-
6. Wait for the analyst to finish. **Do not invoke developer** at this stage.
|
|
18
|
-
|
|
19
|
-
## Product specs (docs/specs)
|
|
20
|
-
|
|
21
|
-
When invoking **task-analyst**: if `docs/specs/INDEX.md` exists, instruct consume via **`product-specs`** and cite **Related specs**. Soft-fail on miss; never invent behavior.
|
|
22
|
-
|
|
23
|
-
If the user/AC requests generation or bootstrap, or INDEX is missing **with** bootstrap AC / `/spec-start` intent: instruct **author mode** inside the same analyst step — load **`product-specs-authoring`** + skill **`spec-authoring`**. Authoring is **not** a separate pipeline agent. Handoff must list created paths + INDEX diff; human gate must approve generated specs before feature-developer.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
## Human gate
|
|
27
|
-
|
|
28
|
-
After the analyst:
|
|
29
|
-
|
|
30
|
-
- Show the user links to `brief.md` and `decomposition.md`.
|
|
31
|
-
- Also ask them to check **Related specs** in `brief.md` when `docs/specs/INDEX.md` exists.
|
|
32
|
-
- Ask them to review and approve or send edits.
|
|
33
|
-
- To continue: `/feature-continue <slug>` or `/task-continue <slug>`.
|
|
34
|
-
|
|
35
|
-
## If slug already exists
|
|
36
|
-
|
|
37
|
-
- If `status.json` is `awaiting_approval` — offer review or `/feature-continue`.
|
|
38
|
-
- If the task is in progress — ask whether to continue or start a new slug.
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-continue
|
|
3
|
-
description: Legacy alias for /task-continue that resumes a feature pipeline after human approval or pause.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature continue — legacy alias
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task-continue <slug>` — same behavior, respects `pipeline.json`.
|
|
9
|
-
|
|
10
|
-
Continue after a human gate. Full logic is in **`task-continue.md`**.
|
|
11
|
-
|
|
12
|
-
## Short version
|
|
13
|
-
|
|
14
|
-
1. Read `pipeline.json` (if present) and `status.json`.
|
|
15
|
-
2. Clear `awaitingHumanGate`; determine the next step from `pipelineIndex`.
|
|
16
|
-
3. Invoke the subagent for `currentAgent`.
|
|
17
|
-
4. The hook continues the chain when `autoChain: true`.
|
|
18
|
-
|
|
19
|
-
See `task-continue.md` for details and the handoff table.
|
|
20
|
-
|
|
21
|
-
## Product specs (docs/specs)
|
|
22
|
-
|
|
23
|
-
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists, instruct them to load **`product-specs`** and honor **Related specs** from `brief.md` (behavior SoT). Soft-fail on miss; never invent product behavior. No-op if INDEX is absent.
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-start
|
|
3
|
-
description: Legacy analyst-only feature intake. Prefer /task for new work because it uses router and dynamic pipeline.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature start — legacy (analyst only)
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task <description>` — the router chooses roles and order automatically.
|
|
9
|
-
|
|
10
|
-
Starts the **analysis phase** without the router. The parent agent acts as orchestrator (see `tooling-and-review/agent-team-orchestrator.md`).
|
|
11
|
-
|
|
12
|
-
## What to do
|
|
13
|
-
|
|
14
|
-
1. Extract the task description from the command arguments (everything after `/feature-start`).
|
|
15
|
-
2. Generate a **slug** (kebab-case, up to 48 characters) from the task title.
|
|
16
|
-
3. Create `.claude/team/tasks/<slug>/` if it does not exist yet — via **Write** of an artifact (not Shell `mkdir`).
|
|
17
|
-
4. Write `.claude/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
18
|
-
5. Optional: minimal `pipeline.json` with fixed steps (analyst → developer → reviewer → qa-tester).
|
|
19
|
-
6. Invoke subagent **task-analyst** (Task tool) with the full task description and artifact paths.
|
|
20
|
-
7. Wait for the analyst to finish. **Do not invoke developer** at this stage.
|
|
21
|
-
|
|
22
|
-
## Product specs (docs/specs)
|
|
23
|
-
|
|
24
|
-
When invoking **task-analyst**: if `docs/specs/INDEX.md` exists, instruct consume via **`product-specs`** and cite **Related specs**. Soft-fail on miss; never invent behavior.
|
|
25
|
-
|
|
26
|
-
If the user/AC requests generation or bootstrap, or INDEX is missing **with** bootstrap AC / `/spec-start` intent: instruct **author mode** inside the same analyst step — load **`product-specs-authoring`** + skill **`spec-authoring`**. Authoring is **not** a separate pipeline agent. Handoff must list created paths + INDEX diff; human gate must approve generated specs before feature-developer.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
## Human gate
|
|
30
|
-
|
|
31
|
-
After the analyst:
|
|
32
|
-
|
|
33
|
-
- Show the user links to `brief.md` and `decomposition.md`.
|
|
34
|
-
- Also ask them to check **Related specs** in `brief.md` when `docs/specs/INDEX.md` exists.
|
|
35
|
-
- Ask them to review and approve or send edits.
|
|
36
|
-
- To continue: `/task-continue <slug>` or `/feature-continue <slug>`.
|
|
37
|
-
|
|
38
|
-
## If the slug already exists
|
|
39
|
-
|
|
40
|
-
- If `status.json` is `awaiting_approval` — offer review or continue.
|
|
41
|
-
- If the task is in progress — ask whether to continue or start a new slug.
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-continue
|
|
3
|
-
description: Legacy alias for /task-continue that resumes a feature pipeline after human approval or pause.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature continue — legacy alias
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task-continue <slug>` — same behavior, respects `pipeline.json`.
|
|
9
|
-
|
|
10
|
-
Continue after a human gate. Full logic — in **`task-continue.md`**.
|
|
11
|
-
|
|
12
|
-
## Short form
|
|
13
|
-
|
|
14
|
-
1. Read `pipeline.json` (if present) and `status.json`.
|
|
15
|
-
2. Clear `awaitingHumanGate`; determine the next step from `pipelineIndex`.
|
|
16
|
-
3. Invoke the subagent for `currentAgent`.
|
|
17
|
-
4. The hook continues the chain when `autoChain: true`.
|
|
18
|
-
|
|
19
|
-
See `task-continue.md` for details and the handoff table.
|
|
20
|
-
|
|
21
|
-
## Product specs (docs/specs)
|
|
22
|
-
|
|
23
|
-
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists, instruct them to load **`product-specs`** and honor **Related specs** from `brief.md` (behavior SoT). Soft-fail on miss; never invent product behavior. No-op if INDEX is absent.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-start
|
|
3
|
-
description: Legacy analyst-only feature intake. Prefer /task for new work because it uses router and dynamic pipeline.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature start — legacy agent command
|
|
7
|
-
|
|
8
|
-
Starts the **analysis phase** for a new task. For new work, prefer `/task` because it builds a dynamic pipeline via `task-router` first.
|
|
9
|
-
|
|
10
|
-
## What to do
|
|
11
|
-
|
|
12
|
-
1. Extract the task description from command arguments (everything after `/feature-start`).
|
|
13
|
-
2. Generate a **slug** (kebab-case, up to 48 characters) from the task title.
|
|
14
|
-
3. Create `.claude/team/tasks/<slug>/` if it does not exist — via Write / Edit, not Shell `mkdir`.
|
|
15
|
-
4. Write `.claude/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
16
|
-
5. Invoke subagent **task-analyst** with the full task description and artifact paths.
|
|
17
|
-
6. Wait for the analyst to finish. **Do not invoke developer** at this stage.
|
|
18
|
-
|
|
19
|
-
## Product specs (docs/specs)
|
|
20
|
-
|
|
21
|
-
When invoking **task-analyst**: if `docs/specs/INDEX.md` exists, instruct consume via **`product-specs`** and cite **Related specs**. Soft-fail on miss; never invent behavior.
|
|
22
|
-
|
|
23
|
-
If the user/AC requests generation or bootstrap, or INDEX is missing **with** bootstrap AC / `/spec-start` intent: instruct **author mode** inside the same analyst step — load **`product-specs-authoring`** + skill **`spec-authoring`**. Authoring is **not** a separate pipeline agent. Handoff must list created paths + INDEX diff; human gate must approve generated specs before feature-developer.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
## Human gate
|
|
27
|
-
|
|
28
|
-
After the analyst:
|
|
29
|
-
|
|
30
|
-
- Show the user links to `brief.md` and `decomposition.md`.
|
|
31
|
-
- Also ask them to check **Related specs** in `brief.md` when `docs/specs/INDEX.md` exists.
|
|
32
|
-
- Ask them to review and approve or send edits.
|
|
33
|
-
- To continue: `/feature-continue <slug>` or `/task-continue <slug>`.
|
|
34
|
-
|
|
35
|
-
## If slug already exists
|
|
36
|
-
|
|
37
|
-
- If `status.json` is `awaiting_approval` — offer review or `/feature-continue`.
|
|
38
|
-
- If the task is in progress — ask whether to continue or start a new slug.
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-continue
|
|
3
|
-
description: Legacy alias for /task-continue that resumes a feature pipeline after human approval or pause.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature continue — legacy alias
|
|
7
|
-
|
|
8
|
-
> **Preferred:** `/task-continue <slug>` — same behavior, respects `pipeline.json`.
|
|
9
|
-
|
|
10
|
-
Continue after a human gate. Full logic lives in **`task-continue.md`**.
|
|
11
|
-
|
|
12
|
-
## Short version
|
|
13
|
-
|
|
14
|
-
1. Read `pipeline.json` (if present) and `status.json`.
|
|
15
|
-
2. Clear `awaitingHumanGate`; determine the next step from `pipelineIndex`.
|
|
16
|
-
3. Call the subagent for `currentAgent`.
|
|
17
|
-
4. The hook continues the chain when `autoChain: true`.
|
|
18
|
-
|
|
19
|
-
See `task-continue.md` for details and the handoff table.
|
|
20
|
-
|
|
21
|
-
## Product specs (docs/specs)
|
|
22
|
-
|
|
23
|
-
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists, instruct them to load **`product-specs`** and honor **Related specs** from `brief.md` (behavior SoT). Soft-fail on miss; never invent product behavior. No-op if INDEX is absent.
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-start
|
|
3
|
-
description: Legacy analyst-only feature intake. Prefer /task for new work because it uses router and dynamic pipeline.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature start — legacy (analyst only)
|
|
7
|
-
|
|
8
|
-
> **Preferred:** `/task <description>` — the router picks roles and order automatically.
|
|
9
|
-
|
|
10
|
-
Starts the **analysis phase** without the router. The parent agent acts as orchestrator (see `rules/tooling-and-review/agent-team-orchestrator.md`).
|
|
11
|
-
|
|
12
|
-
## What to do
|
|
13
|
-
|
|
14
|
-
1. Extract the task description from command arguments (everything after `/feature-start`).
|
|
15
|
-
2. Generate a **slug** (kebab-case, up to 48 characters) from the task title.
|
|
16
|
-
3. Create `.claude/team/tasks/<slug>/` if it does not exist yet — via Write / Edit (not Shell `mkdir`).
|
|
17
|
-
4. Write `.claude/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
18
|
-
5. Optionally: minimal `pipeline.json` with fixed steps (analyst → developer → reviewer → qa-tester).
|
|
19
|
-
6. Invoke subagent **task-analyst** with the full task description and artifact paths.
|
|
20
|
-
7. Wait for the analyst to finish. **Do not invoke developer** at this stage.
|
|
21
|
-
|
|
22
|
-
## Product specs (docs/specs)
|
|
23
|
-
|
|
24
|
-
When invoking **task-analyst**: if `docs/specs/INDEX.md` exists, instruct consume via **`product-specs`** and cite **Related specs**. Soft-fail on miss; never invent behavior.
|
|
25
|
-
|
|
26
|
-
If the user/AC requests generation or bootstrap, or INDEX is missing **with** bootstrap AC / `/spec-start` intent: instruct **author mode** inside the same analyst step — load **`product-specs-authoring`** + skill **`spec-authoring`**. Authoring is **not** a separate pipeline agent. Handoff must list created paths + INDEX diff; human gate must approve generated specs before feature-developer.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
## Human gate
|
|
30
|
-
|
|
31
|
-
After the analyst:
|
|
32
|
-
|
|
33
|
-
- Show the user links to `brief.md` and `decomposition.md`.
|
|
34
|
-
- Also ask them to check **Related specs** in `brief.md` when `docs/specs/INDEX.md` exists.
|
|
35
|
-
- Ask them to review and approve or send edits.
|
|
36
|
-
- To continue: `/task-continue <slug>` or `/feature-continue <slug>`.
|
|
37
|
-
|
|
38
|
-
## If slug already exists
|
|
39
|
-
|
|
40
|
-
- If `status.json` is `awaiting_approval` — offer review or continue.
|
|
41
|
-
- If the task is in progress — ask whether to continue or start a new slug.
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-continue
|
|
3
|
-
description: Legacy alias for /task-continue that resumes a feature pipeline after human approval or pause.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature continue — legacy alias
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task-continue <slug>` — same behavior, respects `pipeline.json`.
|
|
9
|
-
|
|
10
|
-
Continue after a human gate. Full logic — in **`task-continue.md`**.
|
|
11
|
-
|
|
12
|
-
## Short form
|
|
13
|
-
|
|
14
|
-
1. Read `pipeline.json` (if present) and `status.json`.
|
|
15
|
-
2. Clear `awaitingHumanGate`; determine the next step from `pipelineIndex`.
|
|
16
|
-
3. Invoke the subagent for `currentAgent`.
|
|
17
|
-
4. The hook continues the chain when `autoChain: true`.
|
|
18
|
-
|
|
19
|
-
See `task-continue.md` for details and the handoff table.
|
|
20
|
-
|
|
21
|
-
## Product specs (docs/specs)
|
|
22
|
-
|
|
23
|
-
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists, instruct them to load **`product-specs`** and honor **Related specs** from `brief.md` (behavior SoT). Soft-fail on miss; never invent product behavior. No-op if INDEX is absent.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-start
|
|
3
|
-
description: Legacy analyst-only feature intake. Prefer /task for new work because it uses router and dynamic pipeline.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature start — legacy agent command
|
|
7
|
-
|
|
8
|
-
Starts the **analysis phase** for a new task. For new work, prefer `/task` because it builds a dynamic pipeline via `task-router` first.
|
|
9
|
-
|
|
10
|
-
## What to do
|
|
11
|
-
|
|
12
|
-
1. Extract the task description from command arguments (everything after `/feature-start`).
|
|
13
|
-
2. Generate a **slug** (kebab-case, up to 48 characters) from the task title.
|
|
14
|
-
3. Create `.claude/team/tasks/<slug>/` if it does not exist — via Write / Edit, not Shell `mkdir`.
|
|
15
|
-
4. Write `.claude/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
16
|
-
5. Invoke subagent **task-analyst** with the full task description and artifact paths.
|
|
17
|
-
6. Wait for the analyst to finish. **Do not invoke developer** at this stage.
|
|
18
|
-
|
|
19
|
-
## Product specs (docs/specs)
|
|
20
|
-
|
|
21
|
-
When invoking **task-analyst**: if `docs/specs/INDEX.md` exists, instruct consume via **`product-specs`** and cite **Related specs**. Soft-fail on miss; never invent behavior.
|
|
22
|
-
|
|
23
|
-
If the user/AC requests generation or bootstrap, or INDEX is missing **with** bootstrap AC / `/spec-start` intent: instruct **author mode** inside the same analyst step — load **`product-specs-authoring`** + skill **`spec-authoring`**. Authoring is **not** a separate pipeline agent. Handoff must list created paths + INDEX diff; human gate must approve generated specs before feature-developer.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
## Human gate
|
|
27
|
-
|
|
28
|
-
After the analyst:
|
|
29
|
-
|
|
30
|
-
- Show the user links to `brief.md` and `decomposition.md`.
|
|
31
|
-
- Also ask them to check **Related specs** in `brief.md` when `docs/specs/INDEX.md` exists.
|
|
32
|
-
- Ask them to review and approve or send edits.
|
|
33
|
-
- To continue: `/feature-continue <slug>` or `/task-continue <slug>`.
|
|
34
|
-
|
|
35
|
-
## If slug already exists
|
|
36
|
-
|
|
37
|
-
- If `status.json` is `awaiting_approval` — offer review or `/feature-continue`.
|
|
38
|
-
- If the task is in progress — ask whether to continue or start a new slug.
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-continue
|
|
3
|
-
description: Legacy alias for /task-continue that resumes a feature pipeline after human approval or pause.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature continue — legacy alias
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task-continue <slug>` — same behavior, respects `pipeline.json`.
|
|
9
|
-
|
|
10
|
-
Continue after a human gate. Full logic — in **`task-continue.md`**.
|
|
11
|
-
|
|
12
|
-
## Short form
|
|
13
|
-
|
|
14
|
-
1. Read `pipeline.json` (if present) and `status.json`.
|
|
15
|
-
2. Clear `awaitingHumanGate`; determine the next step from `pipelineIndex`.
|
|
16
|
-
3. Invoke the subagent for `currentAgent`.
|
|
17
|
-
4. The hook continues the chain when `autoChain: true`.
|
|
18
|
-
|
|
19
|
-
See `task-continue.md` for details and the handoff table.
|
|
20
|
-
|
|
21
|
-
## Product specs (docs/specs)
|
|
22
|
-
|
|
23
|
-
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists, instruct them to load **`product-specs`** and honor **Related specs** from `brief.md` (behavior SoT). Soft-fail on miss; never invent product behavior. No-op if INDEX is absent.
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-start
|
|
3
|
-
description: Legacy analyst-only feature intake. Prefer /task for new work because it uses router and dynamic pipeline.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature start — legacy (analyst only)
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task <description>` — the router picks roles and order automatically.
|
|
9
|
-
|
|
10
|
-
Starts the **analysis phase** without the router. The parent agent acts as orchestrator (see `rules/tooling-and-review/agent-team-orchestrator.md`).
|
|
11
|
-
|
|
12
|
-
## What to do
|
|
13
|
-
|
|
14
|
-
1. Extract the task description from the command arguments (everything after `/feature-start`).
|
|
15
|
-
2. Generate a **slug** (kebab-case, up to 48 characters) from the task title.
|
|
16
|
-
3. Create `.claude/team/tasks/<slug>/` if it does not exist yet — via **Write** of an artifact (not Shell `mkdir`).
|
|
17
|
-
4. Write `.claude/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
18
|
-
5. Optionally: a minimal `pipeline.json` with fixed steps (analyst → developer → reviewer → qa-tester).
|
|
19
|
-
6. Invoke subagent **task-analyst** (Task tool) with the full task description and artifact paths.
|
|
20
|
-
7. Wait for the analyst to finish. **Do not invoke the developer** at this stage.
|
|
21
|
-
|
|
22
|
-
## Product specs (docs/specs)
|
|
23
|
-
|
|
24
|
-
When invoking **task-analyst**: if `docs/specs/INDEX.md` exists, instruct consume via **`product-specs`** and cite **Related specs**. Soft-fail on miss; never invent behavior.
|
|
25
|
-
|
|
26
|
-
If the user/AC requests generation or bootstrap, or INDEX is missing **with** bootstrap AC / `/spec-start` intent: instruct **author mode** inside the same analyst step — load **`product-specs-authoring`** + skill **`spec-authoring`**. Authoring is **not** a separate pipeline agent. Handoff must list created paths + INDEX diff; human gate must approve generated specs before feature-developer.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
## Human gate
|
|
30
|
-
|
|
31
|
-
After the analyst:
|
|
32
|
-
|
|
33
|
-
- Show the user links to `brief.md` and `decomposition.md`.
|
|
34
|
-
- Also ask them to check **Related specs** in `brief.md` when `docs/specs/INDEX.md` exists.
|
|
35
|
-
- Ask them to review and approve or send edits.
|
|
36
|
-
- To continue: `/task-continue <slug>` or `/feature-continue <slug>`.
|
|
37
|
-
|
|
38
|
-
## If the slug already exists
|
|
39
|
-
|
|
40
|
-
- If `status.json` is `awaiting_approval` — suggest review or continue.
|
|
41
|
-
- If the task is in progress — ask whether to continue or start a new slug.
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-continue
|
|
3
|
-
description: Legacy alias for /task-continue that resumes a feature pipeline after human approval or pause.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature continue — legacy alias
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task-continue <slug>` — same behavior, respects `pipeline.json`.
|
|
9
|
-
|
|
10
|
-
Continue after a human gate. Full logic — in **`task-continue.md`**.
|
|
11
|
-
|
|
12
|
-
## Short form
|
|
13
|
-
|
|
14
|
-
1. Read `pipeline.json` (if present) and `status.json`.
|
|
15
|
-
2. Clear `awaitingHumanGate`; determine the next step from `pipelineIndex`.
|
|
16
|
-
3. Invoke the subagent for `currentAgent`.
|
|
17
|
-
4. The hook continues the chain when `autoChain: true`.
|
|
18
|
-
|
|
19
|
-
See `task-continue.md` for details and the handoff table.
|
|
20
|
-
|
|
21
|
-
## Product specs (docs/specs)
|
|
22
|
-
|
|
23
|
-
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists, instruct them to load **`product-specs`** and honor **Related specs** from `brief.md` (behavior SoT). Soft-fail on miss; never invent product behavior. No-op if INDEX is absent.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-start
|
|
3
|
-
description: Legacy analyst-only feature intake. Prefer /task for new work because it uses router and dynamic pipeline.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature start — legacy agent-team command
|
|
7
|
-
|
|
8
|
-
Starts the **analysis phase** for a new task. For new work prefer `/task`, because it builds a dynamic pipeline through `task-router` first.
|
|
9
|
-
|
|
10
|
-
## What to do
|
|
11
|
-
|
|
12
|
-
1. Extract the task description from command arguments (everything after `/feature-start`).
|
|
13
|
-
2. Generate a **slug** (kebab-case, up to 48 characters) from the task title.
|
|
14
|
-
3. Create `.claude/team/tasks/<slug>/` if it does not exist yet — by writing a file (Write / Edit), not Shell `mkdir`.
|
|
15
|
-
4. Write `.claude/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
16
|
-
5. Invoke subagent **task-analyst** with the full task description and artifact paths.
|
|
17
|
-
6. Wait for the analyst to finish. **Do not invoke developer** at this stage.
|
|
18
|
-
|
|
19
|
-
## Product specs (docs/specs)
|
|
20
|
-
|
|
21
|
-
When invoking **task-analyst**: if `docs/specs/INDEX.md` exists, instruct consume via **`product-specs`** and cite **Related specs**. Soft-fail on miss; never invent behavior.
|
|
22
|
-
|
|
23
|
-
If the user/AC requests generation or bootstrap, or INDEX is missing **with** bootstrap AC / `/spec-start` intent: instruct **author mode** inside the same analyst step — load **`product-specs-authoring`** + skill **`spec-authoring`**. Authoring is **not** a separate pipeline agent. Handoff must list created paths + INDEX diff; human gate must approve generated specs before feature-developer.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
## Human gate
|
|
27
|
-
|
|
28
|
-
After the analyst:
|
|
29
|
-
|
|
30
|
-
- Show the user links to `brief.md` and `decomposition.md`.
|
|
31
|
-
- Also ask them to check **Related specs** in `brief.md` when `docs/specs/INDEX.md` exists.
|
|
32
|
-
- Ask them to review and approve or send edits.
|
|
33
|
-
- To continue: `/feature-continue <slug>` or `/task-continue <slug>`.
|
|
34
|
-
|
|
35
|
-
## If slug already exists
|
|
36
|
-
|
|
37
|
-
- If `status.json` is `awaiting_approval` — offer review or `/feature-continue`.
|
|
38
|
-
- If the task is in progress — ask whether to continue or start a new slug.
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-continue
|
|
3
|
-
description: Legacy alias for /task-continue that resumes a feature pipeline after human approval or pause.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature continue — legacy alias
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task-continue <slug>` — same behavior, respects `pipeline.json`.
|
|
9
|
-
|
|
10
|
-
Continue after a human gate. Full logic — in **`task-continue.md`**.
|
|
11
|
-
|
|
12
|
-
## Short form
|
|
13
|
-
|
|
14
|
-
1. Read `pipeline.json` (if present) and `status.json`.
|
|
15
|
-
2. Clear `awaitingHumanGate`; determine the next step from `pipelineIndex`.
|
|
16
|
-
3. Invoke the subagent for `currentAgent`.
|
|
17
|
-
4. The hook continues the chain when `autoChain: true`.
|
|
18
|
-
|
|
19
|
-
See `task-continue.md` for details and the handoff table.
|
|
20
|
-
|
|
21
|
-
## Product specs (docs/specs)
|
|
22
|
-
|
|
23
|
-
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists, instruct them to load **`product-specs`** and honor **Related specs** from `brief.md` (behavior SoT). Soft-fail on miss; never invent product behavior. No-op if INDEX is absent.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-start
|
|
3
|
-
description: Legacy analyst-only feature intake. Prefer /task for new work because it uses router and dynamic pipeline.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature start — legacy agent-team command
|
|
7
|
-
|
|
8
|
-
Starts the **analysis phase** for a new task. Prefer `/task` for new work because it builds a dynamic pipeline via `task-router` first.
|
|
9
|
-
|
|
10
|
-
## What to do
|
|
11
|
-
|
|
12
|
-
1. Extract the task description from command arguments (everything after `/feature-start`).
|
|
13
|
-
2. Generate a **slug** (kebab-case, up to 48 characters) from the task title.
|
|
14
|
-
3. Create `.claude/team/tasks/<slug>/` if it does not exist yet — via Write / Edit, not Shell `mkdir`.
|
|
15
|
-
4. Write `.claude/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
16
|
-
5. Invoke subagent **task-analyst** with the full task description and artifact paths.
|
|
17
|
-
6. Wait for the analyst to finish. **Do not invoke developer** at this stage.
|
|
18
|
-
|
|
19
|
-
## Product specs (docs/specs)
|
|
20
|
-
|
|
21
|
-
When invoking **task-analyst**: if `docs/specs/INDEX.md` exists, instruct consume via **`product-specs`** and cite **Related specs**. Soft-fail on miss; never invent behavior.
|
|
22
|
-
|
|
23
|
-
If the user/AC requests generation or bootstrap, or INDEX is missing **with** bootstrap AC / `/spec-start` intent: instruct **author mode** inside the same analyst step — load **`product-specs-authoring`** + skill **`spec-authoring`**. Authoring is **not** a separate pipeline agent. Handoff must list created paths + INDEX diff; human gate must approve generated specs before feature-developer.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
## Human gate
|
|
27
|
-
|
|
28
|
-
After the analyst:
|
|
29
|
-
|
|
30
|
-
- Show the user links to `brief.md` and `decomposition.md`.
|
|
31
|
-
- Also ask them to check **Related specs** in `brief.md` when `docs/specs/INDEX.md` exists.
|
|
32
|
-
- Ask them to review and approve or send edits.
|
|
33
|
-
- To continue: `/feature-continue <slug>` or `/task-continue <slug>`.
|
|
34
|
-
|
|
35
|
-
## If slug already exists
|
|
36
|
-
|
|
37
|
-
- If `status.json` is `awaiting_approval` — offer review or `/feature-continue`.
|
|
38
|
-
- If the task is in progress — ask whether to continue or start a new slug.
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-continue
|
|
3
|
-
description: Legacy alias for /task-continue that resumes a feature pipeline after human approval or pause.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature continue — legacy alias
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task-continue <slug>` — same behavior, respects `pipeline.json`.
|
|
9
|
-
|
|
10
|
-
Continue after a human gate. Full logic — in **`task-continue.md`**.
|
|
11
|
-
|
|
12
|
-
## Short form
|
|
13
|
-
|
|
14
|
-
1. Read `pipeline.json` (if present) and `status.json`.
|
|
15
|
-
2. Clear `awaitingHumanGate`; determine the next step from `pipelineIndex`.
|
|
16
|
-
3. Invoke the subagent for `currentAgent`.
|
|
17
|
-
4. The hook continues the chain when `autoChain: true`.
|
|
18
|
-
|
|
19
|
-
See `task-continue.md` for details and the handoff table.
|
|
20
|
-
|
|
21
|
-
## Product specs (docs/specs)
|
|
22
|
-
|
|
23
|
-
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists, instruct them to load **`product-specs`** and honor **Related specs** from `brief.md` (behavior SoT). Soft-fail on miss; never invent product behavior. No-op if INDEX is absent.
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-start
|
|
3
|
-
description: Legacy analyst-only feature intake. Prefer /task for new work because it uses router and dynamic pipeline.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature start — legacy (analyst only)
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task <description>` — the router picks roles and order automatically.
|
|
9
|
-
|
|
10
|
-
Starts the **analysis phase** without the router. The parent agent acts as orchestrator (see `rules/tooling-and-review/agent-team-orchestrator.md`).
|
|
11
|
-
|
|
12
|
-
## What to do
|
|
13
|
-
|
|
14
|
-
1. Extract the task description from the command arguments (everything after `/feature-start`).
|
|
15
|
-
2. Generate a **slug** (kebab-case, up to 48 characters) from the task title.
|
|
16
|
-
3. Create `.claude/team/tasks/<slug>/` if it does not exist yet — via **Write** of an artifact (not Shell `mkdir`).
|
|
17
|
-
4. Write `.claude/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
18
|
-
5. Optionally: a minimal `pipeline.json` with fixed steps (analyst → developer → reviewer → qa-tester).
|
|
19
|
-
6. Invoke subagent **task-analyst** (Task tool) with the full task description and artifact paths.
|
|
20
|
-
7. Wait for the analyst to finish. **Do not invoke the developer** at this stage.
|
|
21
|
-
|
|
22
|
-
## Product specs (docs/specs)
|
|
23
|
-
|
|
24
|
-
When invoking **task-analyst**: if `docs/specs/INDEX.md` exists, instruct consume via **`product-specs`** and cite **Related specs**. Soft-fail on miss; never invent behavior.
|
|
25
|
-
|
|
26
|
-
If the user/AC requests generation or bootstrap, or INDEX is missing **with** bootstrap AC / `/spec-start` intent: instruct **author mode** inside the same analyst step — load **`product-specs-authoring`** + skill **`spec-authoring`**. Authoring is **not** a separate pipeline agent. Handoff must list created paths + INDEX diff; human gate must approve generated specs before feature-developer.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
## Human gate
|
|
30
|
-
|
|
31
|
-
After the analyst:
|
|
32
|
-
|
|
33
|
-
- Show the user links to `brief.md` and `decomposition.md`.
|
|
34
|
-
- Also ask them to check **Related specs** in `brief.md` when `docs/specs/INDEX.md` exists.
|
|
35
|
-
- Ask them to review and approve or send edits.
|
|
36
|
-
- To continue: `/task-continue <slug>` or `/feature-continue <slug>`.
|
|
37
|
-
|
|
38
|
-
## If the slug already exists
|
|
39
|
-
|
|
40
|
-
- If `status.json` is `awaiting_approval` — suggest review or continue.
|
|
41
|
-
- If the task is in progress — ask whether to continue or start a new slug.
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-continue
|
|
3
|
-
description: Legacy alias for /task-continue that resumes a feature pipeline after human approval or pause.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature continue — legacy alias
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task-continue <slug>` — same behavior, respects `pipeline.json`.
|
|
9
|
-
|
|
10
|
-
Continue after a human gate. Full logic is in **`task-continue.md`**.
|
|
11
|
-
|
|
12
|
-
## Short version
|
|
13
|
-
|
|
14
|
-
1. Read `pipeline.json` (if present) and `status.json`.
|
|
15
|
-
2. Clear `awaitingHumanGate`; determine the next step from `pipelineIndex`.
|
|
16
|
-
3. Invoke the subagent for `currentAgent`.
|
|
17
|
-
4. The hook continues the chain when `autoChain: true`.
|
|
18
|
-
|
|
19
|
-
See `task-continue.md` for details and the handoff table.
|
|
20
|
-
|
|
21
|
-
## Product specs (docs/specs)
|
|
22
|
-
|
|
23
|
-
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists, instruct them to load **`product-specs`** and honor **Related specs** from `brief.md` (behavior SoT). Soft-fail on miss; never invent product behavior. No-op if INDEX is absent.
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-start
|
|
3
|
-
description: Legacy analyst-only feature intake. Prefer /task for new work because it uses router and dynamic pipeline.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Feature start — legacy (analyst only)
|
|
7
|
-
|
|
8
|
-
> **Prefer:** `/task <description>` — the router chooses roles and order automatically.
|
|
9
|
-
|
|
10
|
-
Starts the **analysis phase** without the router. The parent agent acts as orchestrator (see `agent-team-orchestrator.mdc`).
|
|
11
|
-
|
|
12
|
-
## What to do
|
|
13
|
-
|
|
14
|
-
1. Extract the task description from the command arguments (everything after `/feature-start`).
|
|
15
|
-
2. Generate a **slug** (kebab-case, up to 48 characters) from the task title.
|
|
16
|
-
3. Create `.cursor/team/tasks/<slug>/` if it does not exist yet — via **Write** of an artifact (not Shell `mkdir`).
|
|
17
|
-
4. Write `.cursor/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
18
|
-
5. Optional: minimal `pipeline.json` with fixed steps (analyst → developer → reviewer → qa-tester).
|
|
19
|
-
6. Invoke subagent **task-analyst** (Task tool) with the full task description and artifact paths.
|
|
20
|
-
7. Wait for the analyst to finish. **Do not invoke developer** at this stage.
|
|
21
|
-
|
|
22
|
-
## Product specs (docs/specs)
|
|
23
|
-
|
|
24
|
-
When invoking **task-analyst**: if `docs/specs/INDEX.md` exists, instruct consume via **`product-specs`** and cite **Related specs**. Soft-fail on miss; never invent behavior.
|
|
25
|
-
|
|
26
|
-
If the user/AC requests generation or bootstrap, or INDEX is missing **with** bootstrap AC / `/spec-start` intent: instruct **author mode** inside the same analyst step — load **`product-specs-authoring`** + skill **`spec-authoring`**. Authoring is **not** a separate pipeline agent. Handoff must list created paths + INDEX diff; human gate must approve generated specs before feature-developer.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
## Human gate
|
|
30
|
-
|
|
31
|
-
After the analyst:
|
|
32
|
-
|
|
33
|
-
- Show the user links to `brief.md` and `decomposition.md`.
|
|
34
|
-
- Also ask them to check **Related specs** in `brief.md` when `docs/specs/INDEX.md` exists.
|
|
35
|
-
- Ask them to review and approve or send edits.
|
|
36
|
-
- To continue: `/task-continue <slug>` or `/feature-continue <slug>`.
|
|
37
|
-
|
|
38
|
-
## If the slug already exists
|
|
39
|
-
|
|
40
|
-
- If `status.json` is `awaiting_approval` — offer review or continue.
|
|
41
|
-
- If the task is in progress — ask whether to continue or start a new slug.
|