@arthai/agents 1.0.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.
- package/README.md +123 -0
- package/VERSION +1 -0
- package/agents/ai-consultant.md +999 -0
- package/agents/architect.md +174 -0
- package/agents/code-reviewer.md +115 -0
- package/agents/competitive-analyst.md +688 -0
- package/agents/content-strategist.md +607 -0
- package/agents/design-studio-create.md +304 -0
- package/agents/design-studio-critique.md +258 -0
- package/agents/design-studio-think.md +79 -0
- package/agents/domain-hunter.md +519 -0
- package/agents/explore-light.md +52 -0
- package/agents/frontend.md +261 -0
- package/agents/gtm-expert.md +811 -0
- package/agents/meeting-prep.md +318 -0
- package/agents/ops.md +149 -0
- package/agents/product-manager.md +563 -0
- package/agents/python-backend.md +286 -0
- package/agents/qa-baseline-updater.md +45 -0
- package/agents/qa-challenger.md +97 -0
- package/agents/qa-domain.md +145 -0
- package/agents/qa-e2e.md +184 -0
- package/agents/qa-test-promoter.md +97 -0
- package/agents/qa.md +226 -0
- package/agents/setup.md +134 -0
- package/agents/sre.md +165 -0
- package/agents/stakeholder-reporter.md +94 -0
- package/agents/user-researcher.md +602 -0
- package/bin/cli.js +322 -0
- package/bundles/canvas.json +16 -0
- package/bundles/compass.json +16 -0
- package/bundles/counsel.json +31 -0
- package/bundles/cruise.json +11 -0
- package/bundles/forge.json +26 -0
- package/bundles/prime.json +10 -0
- package/bundles/prism.json +23 -0
- package/bundles/scalpel.json +17 -0
- package/bundles/sentinel.json +19 -0
- package/bundles/shield.json +14 -0
- package/bundles/spark.json +19 -0
- package/compiler.sh +305 -0
- package/dist/plugins/canvas/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/canvas/agents/design-studio-create.md +304 -0
- package/dist/plugins/canvas/agents/design-studio-critique.md +258 -0
- package/dist/plugins/canvas/agents/design-studio-think.md +79 -0
- package/dist/plugins/canvas/agents/frontend.md +261 -0
- package/dist/plugins/canvas/skills/planning/SKILL.md +436 -0
- package/dist/plugins/compass/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/compass/agents/content-strategist.md +607 -0
- package/dist/plugins/compass/agents/gtm-expert.md +811 -0
- package/dist/plugins/compass/agents/product-manager.md +563 -0
- package/dist/plugins/compass/agents/user-researcher.md +602 -0
- package/dist/plugins/compass/skills/planning/SKILL.md +436 -0
- package/dist/plugins/counsel/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/counsel/agents/ai-consultant.md +999 -0
- package/dist/plugins/counsel/agents/competitive-analyst.md +688 -0
- package/dist/plugins/counsel/agents/meeting-prep.md +318 -0
- package/dist/plugins/counsel/agents/stakeholder-reporter.md +94 -0
- package/dist/plugins/counsel/hooks/check-deliverable.sh +65 -0
- package/dist/plugins/counsel/hooks/ensure-client-dir.sh +59 -0
- package/dist/plugins/counsel/hooks/hooks.json +28 -0
- package/dist/plugins/counsel/skills/client-discovery/SKILL.md +266 -0
- package/dist/plugins/counsel/skills/consulting/SKILL.md +282 -0
- package/dist/plugins/counsel/skills/deliverable-builder/SKILL.md +928 -0
- package/dist/plugins/counsel/skills/engagement-tracker/SKILL.md +380 -0
- package/dist/plugins/counsel/skills/market-research/SKILL.md +300 -0
- package/dist/plugins/counsel/skills/opportunity-map/SKILL.md +307 -0
- package/dist/plugins/counsel/skills/pitch-generator/SKILL.md +378 -0
- package/dist/plugins/counsel/skills/roi-calculator/SKILL.md +469 -0
- package/dist/plugins/counsel/skills/share/SKILL.md +211 -0
- package/dist/plugins/counsel/skills/solution-architect/SKILL.md +566 -0
- package/dist/plugins/counsel/skills/templates/SKILL.md +194 -0
- package/dist/plugins/counsel/skills/welcome/SKILL.md +136 -0
- package/dist/plugins/counsel/skills/wizard/SKILL.md +411 -0
- package/dist/plugins/cruise/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/cruise/skills/autopilot/SKILL.md +425 -0
- package/dist/plugins/forge/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/forge/agents/architect.md +174 -0
- package/dist/plugins/forge/agents/code-reviewer.md +115 -0
- package/dist/plugins/forge/agents/frontend.md +261 -0
- package/dist/plugins/forge/agents/product-manager.md +563 -0
- package/dist/plugins/forge/agents/python-backend.md +286 -0
- package/dist/plugins/forge/agents/qa.md +226 -0
- package/dist/plugins/forge/hooks/hooks.json +28 -0
- package/dist/plugins/forge/hooks/post-test-summary.sh +115 -0
- package/dist/plugins/forge/hooks/triage-router.sh +740 -0
- package/dist/plugins/forge/skills/implement/SKILL.md +532 -0
- package/dist/plugins/forge/skills/planning/SKILL.md +436 -0
- package/dist/plugins/forge/skills/pr/SKILL.md +275 -0
- package/dist/plugins/forge/skills/precheck/SKILL.md +159 -0
- package/dist/plugins/forge/skills/qa/SKILL.md +127 -0
- package/dist/plugins/forge/skills/review-pr/SKILL.md +367 -0
- package/dist/plugins/prime/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/prime/agents/ai-consultant.md +999 -0
- package/dist/plugins/prime/agents/architect.md +174 -0
- package/dist/plugins/prime/agents/code-reviewer.md +115 -0
- package/dist/plugins/prime/agents/competitive-analyst.md +688 -0
- package/dist/plugins/prime/agents/content-strategist.md +607 -0
- package/dist/plugins/prime/agents/design-studio-create.md +304 -0
- package/dist/plugins/prime/agents/design-studio-critique.md +258 -0
- package/dist/plugins/prime/agents/design-studio-think.md +79 -0
- package/dist/plugins/prime/agents/explore-light.md +52 -0
- package/dist/plugins/prime/agents/frontend.md +261 -0
- package/dist/plugins/prime/agents/gtm-expert.md +811 -0
- package/dist/plugins/prime/agents/meeting-prep.md +318 -0
- package/dist/plugins/prime/agents/ops.md +149 -0
- package/dist/plugins/prime/agents/product-manager.md +563 -0
- package/dist/plugins/prime/agents/python-backend.md +286 -0
- package/dist/plugins/prime/agents/qa-baseline-updater.md +45 -0
- package/dist/plugins/prime/agents/qa-challenger.md +97 -0
- package/dist/plugins/prime/agents/qa-domain.md +145 -0
- package/dist/plugins/prime/agents/qa-e2e.md +184 -0
- package/dist/plugins/prime/agents/qa-test-promoter.md +97 -0
- package/dist/plugins/prime/agents/qa.md +226 -0
- package/dist/plugins/prime/agents/setup.md +134 -0
- package/dist/plugins/prime/agents/sre.md +165 -0
- package/dist/plugins/prime/agents/stakeholder-reporter.md +94 -0
- package/dist/plugins/prime/agents/user-researcher.md +602 -0
- package/dist/plugins/prime/hooks/check-deliverable.sh +65 -0
- package/dist/plugins/prime/hooks/ensure-client-dir.sh +59 -0
- package/dist/plugins/prime/hooks/hooks.json +184 -0
- package/dist/plugins/prime/hooks/post-deploy-health.sh +83 -0
- package/dist/plugins/prime/hooks/post-diff-test-compare.sh +125 -0
- package/dist/plugins/prime/hooks/post-edit-lint.sh +92 -0
- package/dist/plugins/prime/hooks/post-git-state.sh +54 -0
- package/dist/plugins/prime/hooks/post-merge-cleanup.sh +101 -0
- package/dist/plugins/prime/hooks/post-test-summary.sh +115 -0
- package/dist/plugins/prime/hooks/pre-bash-guard.sh +142 -0
- package/dist/plugins/prime/hooks/pre-edit-guard.sh +121 -0
- package/dist/plugins/prime/hooks/pre-task-context.sh +113 -0
- package/dist/plugins/prime/hooks/session-bootstrap.sh +379 -0
- package/dist/plugins/prime/hooks/session-end.sh +107 -0
- package/dist/plugins/prime/hooks/session-summary.sh +97 -0
- package/dist/plugins/prime/hooks/sync-agents.sh +269 -0
- package/dist/plugins/prime/hooks/triage-router.sh +740 -0
- package/dist/plugins/prime/skills/arth/SKILL.md +165 -0
- package/dist/plugins/prime/skills/autopilot/SKILL.md +425 -0
- package/dist/plugins/prime/skills/calibrate/SKILL.md +1807 -0
- package/dist/plugins/prime/skills/ci-fix/SKILL.md +293 -0
- package/dist/plugins/prime/skills/client-discovery/SKILL.md +266 -0
- package/dist/plugins/prime/skills/consulting/SKILL.md +282 -0
- package/dist/plugins/prime/skills/custom-domain/SKILL.md +261 -0
- package/dist/plugins/prime/skills/deliverable-builder/SKILL.md +928 -0
- package/dist/plugins/prime/skills/discord-ops/SKILL.md +125 -0
- package/dist/plugins/prime/skills/engagement-tracker/SKILL.md +380 -0
- package/dist/plugins/prime/skills/explore.md +43 -0
- package/dist/plugins/prime/skills/fix/SKILL.md +1058 -0
- package/dist/plugins/prime/skills/implement/SKILL.md +532 -0
- package/dist/plugins/prime/skills/incident/SKILL.md +910 -0
- package/dist/plugins/prime/skills/issue/SKILL.md +134 -0
- package/dist/plugins/prime/skills/market-research/SKILL.md +300 -0
- package/dist/plugins/prime/skills/onboard/SKILL.md +344 -0
- package/dist/plugins/prime/skills/opportunity-map/SKILL.md +307 -0
- package/dist/plugins/prime/skills/pitch-generator/SKILL.md +378 -0
- package/dist/plugins/prime/skills/planning/SKILL.md +436 -0
- package/dist/plugins/prime/skills/pr/SKILL.md +275 -0
- package/dist/plugins/prime/skills/precheck/SKILL.md +159 -0
- package/dist/plugins/prime/skills/qa/SKILL.md +127 -0
- package/dist/plugins/prime/skills/qa-incident/SKILL.md +54 -0
- package/dist/plugins/prime/skills/qa-learn/SKILL.md +47 -0
- package/dist/plugins/prime/skills/restart/SKILL.md +70 -0
- package/dist/plugins/prime/skills/review-pr/SKILL.md +367 -0
- package/dist/plugins/prime/skills/roi-calculator/SKILL.md +469 -0
- package/dist/plugins/prime/skills/scan/SKILL.md +232 -0
- package/dist/plugins/prime/skills/setup/SKILL.md +691 -0
- package/dist/plugins/prime/skills/share/SKILL.md +211 -0
- package/dist/plugins/prime/skills/solution-architect/SKILL.md +566 -0
- package/dist/plugins/prime/skills/sre/SKILL.md +362 -0
- package/dist/plugins/prime/skills/sync/SKILL.md +188 -0
- package/dist/plugins/prime/skills/templates/SKILL.md +194 -0
- package/dist/plugins/prime/skills/welcome/SKILL.md +136 -0
- package/dist/plugins/prime/skills/wizard/SKILL.md +411 -0
- package/dist/plugins/prism/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/prism/agents/qa-baseline-updater.md +45 -0
- package/dist/plugins/prism/agents/qa-challenger.md +97 -0
- package/dist/plugins/prism/agents/qa-domain.md +145 -0
- package/dist/plugins/prism/agents/qa-e2e.md +184 -0
- package/dist/plugins/prism/agents/qa-test-promoter.md +97 -0
- package/dist/plugins/prism/agents/qa.md +226 -0
- package/dist/plugins/prism/hooks/hooks.json +26 -0
- package/dist/plugins/prism/hooks/post-diff-test-compare.sh +125 -0
- package/dist/plugins/prism/hooks/post-test-summary.sh +115 -0
- package/dist/plugins/prism/skills/qa/SKILL.md +127 -0
- package/dist/plugins/prism/skills/qa-incident/SKILL.md +54 -0
- package/dist/plugins/prism/skills/qa-learn/SKILL.md +47 -0
- package/dist/plugins/scalpel/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/scalpel/agents/code-reviewer.md +115 -0
- package/dist/plugins/scalpel/hooks/hooks.json +26 -0
- package/dist/plugins/scalpel/hooks/pre-edit-guard.sh +121 -0
- package/dist/plugins/scalpel/skills/ci-fix/SKILL.md +293 -0
- package/dist/plugins/scalpel/skills/fix/SKILL.md +1058 -0
- package/dist/plugins/scalpel/skills/issue/SKILL.md +134 -0
- package/dist/plugins/sentinel/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/sentinel/agents/ops.md +149 -0
- package/dist/plugins/sentinel/agents/sre.md +165 -0
- package/dist/plugins/sentinel/hooks/hooks.json +26 -0
- package/dist/plugins/sentinel/hooks/post-deploy-health.sh +83 -0
- package/dist/plugins/sentinel/hooks/post-git-state.sh +54 -0
- package/dist/plugins/sentinel/skills/incident/SKILL.md +910 -0
- package/dist/plugins/sentinel/skills/restart/SKILL.md +70 -0
- package/dist/plugins/sentinel/skills/sre/SKILL.md +362 -0
- package/dist/plugins/shield/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/shield/hooks/hooks.json +60 -0
- package/dist/plugins/shield/hooks/pre-bash-guard.sh +142 -0
- package/dist/plugins/shield/hooks/pre-edit-guard.sh +121 -0
- package/dist/plugins/shield/hooks/session-bootstrap.sh +379 -0
- package/dist/plugins/shield/hooks/triage-router.sh +740 -0
- package/dist/plugins/spark/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/spark/agents/explore-light.md +52 -0
- package/dist/plugins/spark/agents/setup.md +134 -0
- package/dist/plugins/spark/hooks/hooks.json +16 -0
- package/dist/plugins/spark/hooks/session-bootstrap.sh +379 -0
- package/dist/plugins/spark/skills/calibrate/SKILL.md +1807 -0
- package/dist/plugins/spark/skills/onboard/SKILL.md +344 -0
- package/dist/plugins/spark/skills/scan/SKILL.md +232 -0
- package/dist/plugins/spark/skills/setup/SKILL.md +691 -0
- package/hook-defs.json +104 -0
- package/hooks/check-deliverable.sh +65 -0
- package/hooks/ensure-client-dir.sh +59 -0
- package/hooks/hooks.json +16 -0
- package/hooks/post-deploy-health.sh +83 -0
- package/hooks/post-diff-test-compare.sh +125 -0
- package/hooks/post-edit-lint.sh +92 -0
- package/hooks/post-git-state.sh +54 -0
- package/hooks/post-merge-cleanup.sh +101 -0
- package/hooks/post-test-summary.sh +115 -0
- package/hooks/pre-bash-guard.sh +142 -0
- package/hooks/pre-edit-guard.sh +121 -0
- package/hooks/pre-task-context.sh +113 -0
- package/hooks/session-bootstrap.sh +379 -0
- package/hooks/session-end.sh +107 -0
- package/hooks/session-start.sh +46 -0
- package/hooks/session-summary.sh +97 -0
- package/hooks/sync-agents.sh +269 -0
- package/hooks/triage-router.sh +740 -0
- package/install.sh +3185 -0
- package/package.json +40 -0
- package/portable.manifest +112 -0
- package/skills/arth/SKILL.md +165 -0
- package/skills/autopilot/SKILL.md +425 -0
- package/skills/calibrate/SKILL.md +1807 -0
- package/skills/ci-fix/SKILL.md +293 -0
- package/skills/client-discovery/SKILL.md +266 -0
- package/skills/consulting/SKILL.md +282 -0
- package/skills/continue/SKILL.md +174 -0
- package/skills/custom-domain/SKILL.md +261 -0
- package/skills/deliverable-builder/SKILL.md +928 -0
- package/skills/discord-ops/SKILL.md +125 -0
- package/skills/engagement-tracker/SKILL.md +380 -0
- package/skills/explore.md +43 -0
- package/skills/fix/SKILL.md +1058 -0
- package/skills/implement/SKILL.md +532 -0
- package/skills/incident/SKILL.md +910 -0
- package/skills/issue/SKILL.md +134 -0
- package/skills/market-research/SKILL.md +300 -0
- package/skills/onboard/SKILL.md +344 -0
- package/skills/opportunity-map/SKILL.md +307 -0
- package/skills/pitch-generator/SKILL.md +378 -0
- package/skills/planning/SKILL.md +436 -0
- package/skills/pr/SKILL.md +275 -0
- package/skills/precheck/SKILL.md +159 -0
- package/skills/qa/SKILL.md +127 -0
- package/skills/qa-incident/SKILL.md +54 -0
- package/skills/qa-learn/SKILL.md +47 -0
- package/skills/railway/central-station/SKILL.md +226 -0
- package/skills/railway/central-station/references/environment-config.md +183 -0
- package/skills/railway/central-station/references/monorepo.md +216 -0
- package/skills/railway/central-station/references/railpack.md +257 -0
- package/skills/railway/central-station/references/variables.md +170 -0
- package/skills/railway/database/SKILL.md +284 -0
- package/skills/railway/database/references/environment-config.md +183 -0
- package/skills/railway/database/references/monorepo.md +216 -0
- package/skills/railway/database/references/railpack.md +257 -0
- package/skills/railway/database/references/variables.md +170 -0
- package/skills/railway/database/scripts/railway-api.sh +41 -0
- package/skills/railway/deploy/SKILL.md +128 -0
- package/skills/railway/deploy/references/environment-config.md +183 -0
- package/skills/railway/deploy/references/monorepo.md +216 -0
- package/skills/railway/deploy/references/railpack.md +257 -0
- package/skills/railway/deploy/references/variables.md +170 -0
- package/skills/railway/deployment/SKILL.md +222 -0
- package/skills/railway/deployment/references/environment-config.md +183 -0
- package/skills/railway/deployment/references/monorepo.md +216 -0
- package/skills/railway/deployment/references/railpack.md +257 -0
- package/skills/railway/deployment/references/variables.md +170 -0
- package/skills/railway/domain/SKILL.md +137 -0
- package/skills/railway/domain/references/environment-config.md +183 -0
- package/skills/railway/domain/references/monorepo.md +216 -0
- package/skills/railway/domain/references/railpack.md +257 -0
- package/skills/railway/domain/references/variables.md +170 -0
- package/skills/railway/environment/SKILL.md +266 -0
- package/skills/railway/environment/references/environment-config.md +183 -0
- package/skills/railway/environment/references/monorepo.md +216 -0
- package/skills/railway/environment/references/railpack.md +257 -0
- package/skills/railway/environment/references/variables.md +170 -0
- package/skills/railway/metrics/SKILL.md +211 -0
- package/skills/railway/metrics/references/environment-config.md +183 -0
- package/skills/railway/metrics/references/monorepo.md +216 -0
- package/skills/railway/metrics/references/railpack.md +257 -0
- package/skills/railway/metrics/references/variables.md +170 -0
- package/skills/railway/metrics/scripts/railway-api.sh +41 -0
- package/skills/railway/new/SKILL.md +489 -0
- package/skills/railway/new/references/environment-config.md +183 -0
- package/skills/railway/new/references/monorepo.md +216 -0
- package/skills/railway/new/references/railpack.md +257 -0
- package/skills/railway/new/references/variables.md +170 -0
- package/skills/railway/projects/SKILL.md +142 -0
- package/skills/railway/projects/references/environment-config.md +183 -0
- package/skills/railway/projects/references/monorepo.md +216 -0
- package/skills/railway/projects/references/railpack.md +257 -0
- package/skills/railway/projects/references/variables.md +170 -0
- package/skills/railway/projects/scripts/railway-api.sh +41 -0
- package/skills/railway/railway-docs/SKILL.md +47 -0
- package/skills/railway/railway-docs/references/environment-config.md +183 -0
- package/skills/railway/railway-docs/references/monorepo.md +216 -0
- package/skills/railway/railway-docs/references/railpack.md +257 -0
- package/skills/railway/railway-docs/references/variables.md +170 -0
- package/skills/railway/service/SKILL.md +249 -0
- package/skills/railway/service/references/environment-config.md +183 -0
- package/skills/railway/service/references/monorepo.md +216 -0
- package/skills/railway/service/references/railpack.md +257 -0
- package/skills/railway/service/references/variables.md +170 -0
- package/skills/railway/service/scripts/railway-api.sh +41 -0
- package/skills/railway/status/SKILL.md +91 -0
- package/skills/railway/status/references/environment-config.md +183 -0
- package/skills/railway/status/references/monorepo.md +216 -0
- package/skills/railway/status/references/railpack.md +257 -0
- package/skills/railway/status/references/variables.md +170 -0
- package/skills/railway/templates/SKILL.md +275 -0
- package/skills/railway/templates/references/environment-config.md +183 -0
- package/skills/railway/templates/references/monorepo.md +216 -0
- package/skills/railway/templates/references/railpack.md +257 -0
- package/skills/railway/templates/references/variables.md +170 -0
- package/skills/railway/templates/scripts/railway-api.sh +41 -0
- package/skills/restart/SKILL.md +70 -0
- package/skills/review-pr/SKILL.md +367 -0
- package/skills/roi-calculator/SKILL.md +469 -0
- package/skills/scan/SKILL.md +232 -0
- package/skills/setup/SKILL.md +691 -0
- package/skills/share/SKILL.md +211 -0
- package/skills/solution-architect/SKILL.md +566 -0
- package/skills/sre/SKILL.md +362 -0
- package/skills/superpowers/brainstorming/SKILL.md +96 -0
- package/skills/superpowers/dispatching-parallel-agents/SKILL.md +180 -0
- package/skills/superpowers/executing-plans/SKILL.md +84 -0
- package/skills/superpowers/finishing-a-development-branch/SKILL.md +200 -0
- package/skills/superpowers/receiving-code-review/SKILL.md +213 -0
- package/skills/superpowers/requesting-code-review/SKILL.md +105 -0
- package/skills/superpowers/requesting-code-review/code-reviewer.md +146 -0
- package/skills/superpowers/subagent-driven-development/SKILL.md +242 -0
- package/skills/superpowers/subagent-driven-development/code-quality-reviewer-prompt.md +20 -0
- package/skills/superpowers/subagent-driven-development/implementer-prompt.md +78 -0
- package/skills/superpowers/subagent-driven-development/spec-reviewer-prompt.md +61 -0
- package/skills/superpowers/systematic-debugging/CREATION-LOG.md +119 -0
- package/skills/superpowers/systematic-debugging/SKILL.md +296 -0
- package/skills/superpowers/systematic-debugging/condition-based-waiting-example.ts +158 -0
- package/skills/superpowers/systematic-debugging/condition-based-waiting.md +115 -0
- package/skills/superpowers/systematic-debugging/defense-in-depth.md +122 -0
- package/skills/superpowers/systematic-debugging/find-polluter.sh +63 -0
- package/skills/superpowers/systematic-debugging/root-cause-tracing.md +169 -0
- package/skills/superpowers/systematic-debugging/test-academic.md +14 -0
- package/skills/superpowers/systematic-debugging/test-pressure-1.md +58 -0
- package/skills/superpowers/systematic-debugging/test-pressure-2.md +68 -0
- package/skills/superpowers/systematic-debugging/test-pressure-3.md +69 -0
- package/skills/superpowers/test-driven-development/SKILL.md +371 -0
- package/skills/superpowers/test-driven-development/testing-anti-patterns.md +299 -0
- package/skills/superpowers/using-git-worktrees/SKILL.md +218 -0
- package/skills/superpowers/using-superpowers/SKILL.md +95 -0
- package/skills/superpowers/verification-before-completion/SKILL.md +139 -0
- package/skills/superpowers/writing-plans/SKILL.md +116 -0
- package/skills/superpowers/writing-skills/SKILL.md +655 -0
- package/skills/superpowers/writing-skills/anthropic-best-practices.md +1150 -0
- package/skills/superpowers/writing-skills/examples/CLAUDE_MD_TESTING.md +189 -0
- package/skills/superpowers/writing-skills/graphviz-conventions.dot +172 -0
- package/skills/superpowers/writing-skills/persuasion-principles.md +187 -0
- package/skills/superpowers/writing-skills/render-graphs.js +168 -0
- package/skills/superpowers/writing-skills/testing-skills-with-subagents.md +384 -0
- package/skills/sync/SKILL.md +188 -0
- package/skills/templates/SKILL.md +194 -0
- package/skills/welcome/SKILL.md +136 -0
- package/skills/wizard/SKILL.md +411 -0
- package/templates/CLAUDE.md.managed-block +123 -0
- package/templates/CLAUDE.md.template +111 -0
- package/templates/consulting/engagement-tracker-template.md +181 -0
- package/templates/consulting/executive-summary-template.md +83 -0
- package/templates/consulting/maturity-assessment-template.md +182 -0
- package/templates/consulting/proposal-template.md +209 -0
- package/templates/consulting/roi-model-template.md +139 -0
- package/templates/consulting/solution-architecture-template.md +313 -0
- package/templates/settings.json +130 -0
|
@@ -0,0 +1,532 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: implement
|
|
3
|
+
description: "Spin up an implementation team from a plan. Usage: /implement <feature-name> [--frontend-only] [--backend-only] [--no-redteam] [--redteam-once] [--redteam-strict]"
|
|
4
|
+
user-invocable: true
|
|
5
|
+
arguments: "<feature-name> <--frontend-only> <--backend-only> <--no-redteam> <--redteam-once> <--redteam-strict>"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Implementation Team Skill
|
|
9
|
+
|
|
10
|
+
Automates the implementation team workflow into a single command.
|
|
11
|
+
|
|
12
|
+
## Argument Parsing
|
|
13
|
+
|
|
14
|
+
- `feature-name`: Required. Kebab-case name (used in team name `impl-{feature-name}`).
|
|
15
|
+
- `--frontend-only`: Override. Force frontend-only even if plan says both.
|
|
16
|
+
- `--backend-only`: Override. Force backend-only even if plan says both.
|
|
17
|
+
- `--no-redteam`: Skip red team entirely (Fast mode — build only).
|
|
18
|
+
- `--redteam-once`: Run red team once at end only (Guarded mode — balanced).
|
|
19
|
+
- `--redteam-strict`: Block on any unresolved HIGH finding (stricter than default which only blocks on CRITICAL).
|
|
20
|
+
|
|
21
|
+
If no feature name is provided, use AskUserQuestion to get it.
|
|
22
|
+
|
|
23
|
+
## Execution Steps
|
|
24
|
+
|
|
25
|
+
### 1. Load the Plan
|
|
26
|
+
|
|
27
|
+
**First**, check for a plan file at `.claude/plans/{feature-name}.md` (written by `/planning`).
|
|
28
|
+
|
|
29
|
+
If the plan file exists:
|
|
30
|
+
- Read it with the Read tool.
|
|
31
|
+
- Parse the YAML frontmatter to extract the `layers` array (`frontend`, `backend`, or both).
|
|
32
|
+
- Use `layers` to determine which agents to spawn (see Agent Selection below).
|
|
33
|
+
- Use the full file content as `PLAN`.
|
|
34
|
+
|
|
35
|
+
If the plan file does NOT exist:
|
|
36
|
+
- Check conversation history for a recent `/planning` output. If found, use it as `PLAN` and infer layers from task breakdown.
|
|
37
|
+
- If neither exists, ask the user with AskUserQuestion:
|
|
38
|
+
"Paste or describe the implementation plan — include: (1) what to build, (2) API contract (if any), (3) task breakdown (frontend vs backend tasks), (4) acceptance criteria."
|
|
39
|
+
Then infer layers from the user's response.
|
|
40
|
+
|
|
41
|
+
Store as `PLAN`.
|
|
42
|
+
|
|
43
|
+
### 1b. Mode Selection (Red Team Trade-Off)
|
|
44
|
+
|
|
45
|
+
**If a red team flag was passed on the CLI** (`--no-redteam`, `--redteam-once`, or `--redteam-strict`), skip this prompt and use the corresponding mode directly.
|
|
46
|
+
|
|
47
|
+
**Otherwise**, present the following prompt via AskUserQuestion:
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
Implementation mode:
|
|
51
|
+
[1] Fast — build only, no red team (~31x cost, fastest)
|
|
52
|
+
[2] Guarded — red team once at end (~40x cost, balanced)
|
|
53
|
+
[3] Strict — red team per step + cross-examine (~49x cost, most thorough)
|
|
54
|
+
[auto] — decide based on plan size and risk
|
|
55
|
+
|
|
56
|
+
Your pick? [auto]
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**Auto-detection logic** (used when user picks `auto` or presses Enter):
|
|
60
|
+
|
|
61
|
+
1. Count `TASK_COUNT` = total tasks extracted from `PLAN`.
|
|
62
|
+
2. Count `FILE_COUNT` = total distinct files referenced in the plan.
|
|
63
|
+
3. Check `RISK_FLAGS` = plan mentions auth, payments, data migration, security, or PII.
|
|
64
|
+
|
|
65
|
+
| Condition | Auto Mode |
|
|
66
|
+
|-----------|-----------|
|
|
67
|
+
| `TASK_COUNT < 3` AND `FILE_COUNT < 5` | Fast |
|
|
68
|
+
| `TASK_COUNT < 3` AND `FILE_COUNT >= 5` | Guarded |
|
|
69
|
+
| `TASK_COUNT` between 3 and 9 (inclusive) AND no `RISK_FLAGS` | Guarded |
|
|
70
|
+
| `TASK_COUNT >= 10` OR `RISK_FLAGS` present | Strict |
|
|
71
|
+
|
|
72
|
+
**Map selection to internal flags:**
|
|
73
|
+
|
|
74
|
+
| Selection | Internal flag | `BLOCK_ON_HIGH` | Red team behavior |
|
|
75
|
+
|-----------|--------------|-----------------|-------------------|
|
|
76
|
+
| Fast / `--no-redteam` | `REDTEAM_MODE=none` | `false` | Skip Step 5b entirely |
|
|
77
|
+
| Guarded / `--redteam-once` | `REDTEAM_MODE=once` | `false` | Run Step 5b once after all steps complete |
|
|
78
|
+
| Strict / default | `REDTEAM_MODE=strict` | `false` | Run Step 5b after each major step group |
|
|
79
|
+
| `--redteam-strict` | `REDTEAM_MODE=strict` | `true` | Strict + block on any unresolved HIGH |
|
|
80
|
+
|
|
81
|
+
Store as `REDTEAM_MODE` and `BLOCK_ON_HIGH`.
|
|
82
|
+
|
|
83
|
+
### Agent Selection
|
|
84
|
+
|
|
85
|
+
Determine which agents to spawn using this priority:
|
|
86
|
+
|
|
87
|
+
1. **CLI flags override everything**: `--frontend-only` or `--backend-only` wins.
|
|
88
|
+
2. **Plan file `layers` field**: If no flags, use `layers` from `.claude/plans/{feature-name}.md`.
|
|
89
|
+
3. **Inferred from tasks**: If no plan file, scan the plan text for frontend or backend file paths and task headers.
|
|
90
|
+
4. **Default**: Spawn both frontend and backend if ambiguous.
|
|
91
|
+
|
|
92
|
+
| layers | Agents spawned |
|
|
93
|
+
|--------|---------------|
|
|
94
|
+
| `[frontend]` | frontend + qa |
|
|
95
|
+
| `[backend]` | backend + qa |
|
|
96
|
+
| `[frontend, backend]` | frontend + backend + qa |
|
|
97
|
+
|
|
98
|
+
### 2. Parse Tasks from Plan
|
|
99
|
+
|
|
100
|
+
Extract from `PLAN`:
|
|
101
|
+
- **API_CONTRACT**: Endpoint signatures, request/response shapes (if any)
|
|
102
|
+
- **BACKEND_TASKS**: List of backend tasks (routes, services, models, migrations)
|
|
103
|
+
- **FRONTEND_TASKS**: List of frontend tasks (components, pages, API integration)
|
|
104
|
+
- **ACCEPTANCE_CRITERIA**: What "done" looks like
|
|
105
|
+
|
|
106
|
+
If tasks aren't clearly split, infer from the plan based on file ownership rules defined in your project structure.
|
|
107
|
+
|
|
108
|
+
### 3. Create Team + Tasks
|
|
109
|
+
|
|
110
|
+
Create team: `impl-{feature-name}`
|
|
111
|
+
|
|
112
|
+
Create one TaskCreate per task extracted from the plan. Tag each with its owner:
|
|
113
|
+
- Backend tasks → owner: `backend`
|
|
114
|
+
- Frontend tasks → owner: `frontend`
|
|
115
|
+
- QA tasks → owner: `qa`
|
|
116
|
+
|
|
117
|
+
If tasks have dependencies (e.g., frontend needs backend endpoint first), set `addBlockedBy` accordingly.
|
|
118
|
+
|
|
119
|
+
### 3b. Scan existing patterns with explore-light (cost: 1x Haiku)
|
|
120
|
+
|
|
121
|
+
Before agents start writing code, understand what patterns already exist:
|
|
122
|
+
|
|
123
|
+
```
|
|
124
|
+
subagent_type: "explore-light"
|
|
125
|
+
prompt: "Scan the codebase to find existing patterns for:
|
|
126
|
+
1. How routes/endpoints are structured (naming, middleware, validation)
|
|
127
|
+
2. How services/business logic is organized (file structure, naming)
|
|
128
|
+
3. How tests are written (fixture approach, assertion style, file naming)
|
|
129
|
+
4. How similar features were implemented (find the closest existing feature to {feature-name})
|
|
130
|
+
|
|
131
|
+
Focus on: {BACKEND_DIR} and {FRONTEND_DIR}
|
|
132
|
+
Return: concrete examples with file paths and code snippets."
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
Include the results in the shared context block below so agents match existing
|
|
136
|
+
patterns instead of inventing new ones. This is 60x cheaper than having each
|
|
137
|
+
Sonnet agent independently explore the codebase.
|
|
138
|
+
|
|
139
|
+
### 4. Build Shared Context Block
|
|
140
|
+
|
|
141
|
+
```
|
|
142
|
+
## Project Context
|
|
143
|
+
{PROJECT_NAME} - {PROJECT_DESCRIPTION}
|
|
144
|
+
Stack: {TECH_STACK}
|
|
145
|
+
Stage: {DEVELOPMENT_STAGE}
|
|
146
|
+
Auth: {AUTH_APPROACH}
|
|
147
|
+
|
|
148
|
+
## Implementation Plan
|
|
149
|
+
{PLAN}
|
|
150
|
+
|
|
151
|
+
## API Contract
|
|
152
|
+
{API_CONTRACT}
|
|
153
|
+
|
|
154
|
+
## Acceptance Criteria
|
|
155
|
+
{ACCEPTANCE_CRITERIA}
|
|
156
|
+
|
|
157
|
+
## Your Team
|
|
158
|
+
You are on team "impl-{feature-name}". Use SendMessage to collaborate.
|
|
159
|
+
Teammates: {list based on flags}
|
|
160
|
+
|
|
161
|
+
## File Ownership (STRICT)
|
|
162
|
+
- Frontend agent: ONLY modify files in {FRONTEND_DIR}
|
|
163
|
+
- Backend agent: ONLY modify files in {BACKEND_DIR}
|
|
164
|
+
- Violations will be rejected.
|
|
165
|
+
|
|
166
|
+
## When Done
|
|
167
|
+
Mark your tasks as completed. Notify team lead.
|
|
168
|
+
|
|
169
|
+
## Red Team Protocol
|
|
170
|
+
After each major implementation step, a red team will challenge your work:
|
|
171
|
+
- red-challenger attacks: "this will break because..."
|
|
172
|
+
- red-reviewer validates against plan: "this doesn't match step N because..."
|
|
173
|
+
|
|
174
|
+
When you receive a challenge via SendMessage:
|
|
175
|
+
1. If valid: fix the code, reply "FIXED: {what you changed}"
|
|
176
|
+
2. If invalid: reply "DEFENDED: {why not a real issue}"
|
|
177
|
+
3. If partial: reply "ACKNOWLEDGED: {risk accepted because...}"
|
|
178
|
+
|
|
179
|
+
When you complete a step group, notify team-lead:
|
|
180
|
+
SendMessage: "Completed: {summary}. Files: {list}. Ready for red team."
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
### 5. Spawn Teammates (ALL IN ONE MESSAGE — parallel)
|
|
184
|
+
|
|
185
|
+
Use the Agent Selection result from Step 1 to determine which agents to spawn.
|
|
186
|
+
|
|
187
|
+
**Spawn if `backend` is in layers:**
|
|
188
|
+
|
|
189
|
+
The `backend` agent is adaptive — it handles Python, Node.js, Go, Rust, Ruby, Java, Elixir,
|
|
190
|
+
and more. It detects the framework at runtime from project files. Always use it for backend work.
|
|
191
|
+
|
|
192
|
+
| Signal Found | subagent_type | Notes |
|
|
193
|
+
|-------------|---------------|-------|
|
|
194
|
+
| Any backend code (Python, Node, Go, Rust, Ruby, Java, Elixir) | `python-backend` | The agent is named python-backend in Claude Code's registry but handles ALL backends. It reads project files to detect the actual framework and adapts. |
|
|
195
|
+
| `.claude/project-profile.md` exists with backend info | `python-backend` | Agent reads the profile for pre-detected framework and conventions |
|
|
196
|
+
| Unknown / ambiguous | `python-backend` | Agent will detect at runtime |
|
|
197
|
+
|
|
198
|
+
Check `.claude/project-profile.md` first (if /calibrate has run). Otherwise the agent auto-detects from project files.
|
|
199
|
+
|
|
200
|
+
- **backend** (subagent_type="{detected-type}", model="sonnet", name="backend")
|
|
201
|
+
- Prompt: "{SHARED_CONTEXT}\n\nYou are the Backend engineer. Implement your assigned tasks. Share endpoint signatures with the frontend teammate via SendMessage BEFORE implementing so they can build against the contract. Run linters and type checkers before marking tasks done. Only modify files in {BACKEND_DIR}."
|
|
202
|
+
|
|
203
|
+
**Spawn if `frontend` is in layers:**
|
|
204
|
+
- **frontend** (subagent_type="frontend", model="sonnet", name="frontend")
|
|
205
|
+
- Prompt: "{SHARED_CONTEXT}\n\nYou are the Frontend engineer. Implement your assigned tasks. If you depend on backend endpoints, wait for the backend teammate to share the API contract via SendMessage. Run type checkers and linters before marking tasks done. Only modify files in {FRONTEND_DIR}."
|
|
206
|
+
|
|
207
|
+
**Always spawn:**
|
|
208
|
+
- **qa** (subagent_type="qa", model="sonnet", name="qa")
|
|
209
|
+
- Prompt: "{SHARED_CONTEXT}\n\nYou are QA. Your job: (1) Review backend and frontend implementations as they complete. (2) Ask teammates 'why did you do X?' when something looks wrong. (3) Run validation checks (linters, type checkers, build commands). (4) Report issues back to the responsible teammate. (5) Mark your tasks done when all checks pass. Do NOT write code — only review and validate."
|
|
210
|
+
|
|
211
|
+
### 5b. Red Team Phase
|
|
212
|
+
|
|
213
|
+
**Skip this entire step if `REDTEAM_MODE=none`.**
|
|
214
|
+
|
|
215
|
+
**Trigger:** A developer sends a SendMessage with "step complete" (or the implementation reaches the end of all steps if `REDTEAM_MODE=once`). For `REDTEAM_MODE=once`: ignore individual "step complete" messages and only trigger Step 5b after ALL implementation steps are done.
|
|
216
|
+
|
|
217
|
+
#### 5b.1: Compute Diff
|
|
218
|
+
|
|
219
|
+
Run `git diff` to capture all changes since the last red team review (or since implementation started if this is the first cycle). Store as `STEP_DIFF`.
|
|
220
|
+
|
|
221
|
+
Track `REDTEAM_CYCLE` (starts at 1, increments after each cycle). Maximum 2 cycles — after cycle 2, remaining HIGHs become warnings rather than blockers.
|
|
222
|
+
|
|
223
|
+
#### 5b.2: Spawn Red Team Agents (parallel)
|
|
224
|
+
|
|
225
|
+
Spawn both agents in a single message:
|
|
226
|
+
|
|
227
|
+
**red-challenger** (subagent_type: "qa-challenger", model: "sonnet", name: "red-challenger"):
|
|
228
|
+
|
|
229
|
+
```
|
|
230
|
+
Prompt:
|
|
231
|
+
You are a security and reliability adversary. Your job is to break this implementation
|
|
232
|
+
before it reaches production.
|
|
233
|
+
|
|
234
|
+
## Step Diff
|
|
235
|
+
{STEP_DIFF}
|
|
236
|
+
|
|
237
|
+
## Implementation Plan
|
|
238
|
+
{PLAN}
|
|
239
|
+
|
|
240
|
+
## Your Task
|
|
241
|
+
Generate 3-5 attack scenarios targeting the code changes above. For each:
|
|
242
|
+
|
|
243
|
+
1. Describe the attack vector or failure mode concretely.
|
|
244
|
+
2. Show the exact input, state, or sequence that triggers it.
|
|
245
|
+
3. Classify severity: CRITICAL / HIGH / MEDIUM / LOW
|
|
246
|
+
- CRITICAL: data loss, auth bypass, security breach, production outage
|
|
247
|
+
- HIGH: wrong behavior under realistic conditions, data corruption, broken contract
|
|
248
|
+
- MEDIUM: edge case failures, degraded UX, performance issue
|
|
249
|
+
- LOW: cosmetic, unlikely edge case, minor inconsistency
|
|
250
|
+
4. Name the file(s) and line(s) affected.
|
|
251
|
+
|
|
252
|
+
Format each finding as:
|
|
253
|
+
ATTACK-{N} [{SEVERITY}]: {title}
|
|
254
|
+
Trigger: {exact scenario}
|
|
255
|
+
Impact: {what breaks}
|
|
256
|
+
Location: {file:line}
|
|
257
|
+
|
|
258
|
+
After generating all attacks, send each HIGH and CRITICAL finding directly to the
|
|
259
|
+
responsible developer via SendMessage with subject "RED TEAM ATTACK".
|
|
260
|
+
Then send your full report to team-lead via SendMessage with subject "RED TEAM REPORT".
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
**red-reviewer** (subagent_type: "code-reviewer", model: "sonnet", name: "red-reviewer"):
|
|
264
|
+
|
|
265
|
+
```
|
|
266
|
+
Prompt:
|
|
267
|
+
You are a plan compliance reviewer. Your job is to verify the implementation matches
|
|
268
|
+
what was planned — no more, no less.
|
|
269
|
+
|
|
270
|
+
## Step Diff
|
|
271
|
+
{STEP_DIFF}
|
|
272
|
+
|
|
273
|
+
## Implementation Plan
|
|
274
|
+
{PLAN}
|
|
275
|
+
|
|
276
|
+
## API Contract
|
|
277
|
+
{API_CONTRACT}
|
|
278
|
+
|
|
279
|
+
## Acceptance Criteria
|
|
280
|
+
{ACCEPTANCE_CRITERIA}
|
|
281
|
+
|
|
282
|
+
## Your Task
|
|
283
|
+
Validate the implementation against the plan:
|
|
284
|
+
|
|
285
|
+
1. Every planned task has corresponding code — flag any gaps.
|
|
286
|
+
2. API contract is honoured — method, path, request/response shape, status codes.
|
|
287
|
+
3. Acceptance criteria are satisfiable by the code as written.
|
|
288
|
+
4. No scope creep — no features added beyond the plan.
|
|
289
|
+
5. No scope gaps — no planned features omitted without explanation.
|
|
290
|
+
|
|
291
|
+
For each finding, classify: CRITICAL / HIGH / MEDIUM / LOW (same scale as attacker).
|
|
292
|
+
|
|
293
|
+
Format each finding as:
|
|
294
|
+
REVIEW-{N} [{SEVERITY}]: {title}
|
|
295
|
+
Expected: {what the plan required}
|
|
296
|
+
Actual: {what the code does}
|
|
297
|
+
Location: {file:line or "missing"}
|
|
298
|
+
|
|
299
|
+
Send HIGH and CRITICAL findings to the responsible developer via SendMessage
|
|
300
|
+
with subject "PLAN COMPLIANCE FINDING".
|
|
301
|
+
Send your full report to team-lead via SendMessage with subject "REVIEW REPORT".
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
#### 5b.3: Challenge-Defend Cycle
|
|
305
|
+
|
|
306
|
+
Developers must reply to each ATTACK and FINDING via SendMessage. Valid responses:
|
|
307
|
+
|
|
308
|
+
- `FIXED: {what you changed}` — code was updated; red team issue is resolved.
|
|
309
|
+
- `DEFENDED: {why not a real issue}` — explains why the attack does not apply.
|
|
310
|
+
- `ACKNOWLEDGED: {risk accepted because...}` — known risk, deliberately not fixed.
|
|
311
|
+
|
|
312
|
+
Track unresolved items: an item is unresolved if the developer has not replied FIXED, DEFENDED, or ACKNOWLEDGED.
|
|
313
|
+
|
|
314
|
+
If a developer completes their next step with 2 or more unresolved items from the previous cycle, the orchestrator sends them a blocking SendMessage: "You have {N} unresolved red team items from the last cycle. Resolve them before proceeding."
|
|
315
|
+
|
|
316
|
+
#### 5b.4: Verdict Gate
|
|
317
|
+
|
|
318
|
+
After all developer responses are received (or timeout), compute:
|
|
319
|
+
|
|
320
|
+
```
|
|
321
|
+
unresolved_criticals = items where severity=CRITICAL AND response != FIXED
|
|
322
|
+
unresolved_highs = items where severity=HIGH AND response not in (FIXED, DEFENDED)
|
|
323
|
+
|
|
324
|
+
block_threshold = 1 if BLOCK_ON_HIGH else 3
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
| Condition | Verdict | Action |
|
|
328
|
+
|-----------|---------|--------|
|
|
329
|
+
| `unresolved_criticals > 0` | BLOCK | Pause. Escalate to user: "Red team found {N} unresolved CRITICAL(s). [fix / override / abort]"<br>- fix: Send unresolved CRITICALs back to developers for another fix attempt<br>- override: Accept risks, mark all unresolved CRITICALs as ACKNOWLEDGED, proceed to PASS<br>- abort: Stop implementation, present findings to user for manual review |
|
|
330
|
+
| `unresolved_highs >= block_threshold` | FIX | Send findings back to developer. Allow up to 2 cycles total. |
|
|
331
|
+
| Otherwise | PASS | Continue to next step or final QA. |
|
|
332
|
+
|
|
333
|
+
If `REDTEAM_CYCLE >= 2` and the verdict would be FIX: downgrade to PASS with warnings — remaining HIGHs are logged but do not block.
|
|
334
|
+
|
|
335
|
+
#### 5b.5: Shutdown Red Team
|
|
336
|
+
|
|
337
|
+
After PASS (or user override of BLOCK):
|
|
338
|
+
- Send shutdown_request to red-challenger and red-reviewer.
|
|
339
|
+
- Store cycle results as `REDTEAM_RESULTS[cycle_N]` for the final report.
|
|
340
|
+
- Increment `REDTEAM_CYCLE`.
|
|
341
|
+
|
|
342
|
+
### 6. Monitor + Coordinate
|
|
343
|
+
|
|
344
|
+
- Watch TaskList for progress.
|
|
345
|
+
- If backend finishes API endpoints, nudge frontend to unblock.
|
|
346
|
+
- If a teammate is stuck, relay context from the other teammate.
|
|
347
|
+
- If teammates disagree on API contract, make a decision.
|
|
348
|
+
- When a developer sends "step complete" via SendMessage, trigger Step 5b (unless `REDTEAM_MODE=none`).
|
|
349
|
+
- If `REDTEAM_MODE=once`, defer Step 5b until all implementation steps are complete.
|
|
350
|
+
- Track `REDTEAM_CYCLE`. If a BLOCK verdict is returned from Step 5b.4, pause all progress and escalate to the user before continuing.
|
|
351
|
+
|
|
352
|
+
### 7. Cleanup Implementation Team
|
|
353
|
+
|
|
354
|
+
- Send shutdown_request to all teammates.
|
|
355
|
+
- TeamDelete after all confirm.
|
|
356
|
+
- Report what was built:
|
|
357
|
+
|
|
358
|
+
```markdown
|
|
359
|
+
# Implementation Complete: {feature-name}
|
|
360
|
+
|
|
361
|
+
## What was built
|
|
362
|
+
- Backend: {summary}
|
|
363
|
+
- Frontend: {summary}
|
|
364
|
+
|
|
365
|
+
## Files Changed
|
|
366
|
+
{list}
|
|
367
|
+
|
|
368
|
+
## Red Team Summary
|
|
369
|
+
- Mode: {Fast / Guarded / Strict}
|
|
370
|
+
- Challenges raised: {N}
|
|
371
|
+
- Critical found and fixed: {N}
|
|
372
|
+
- Plan compliance gaps fixed: {N}
|
|
373
|
+
- Defenses accepted (false positives): {N}
|
|
374
|
+
- Cycles: {N}
|
|
375
|
+
- Key fixes: {list of FIXED items, or "none" if REDTEAM_MODE=none}
|
|
376
|
+
```
|
|
377
|
+
|
|
378
|
+
Omit the Red Team Summary section entirely if `REDTEAM_MODE=none`.
|
|
379
|
+
|
|
380
|
+
Then proceed directly to Step 8 (Post-Implementation Workflow).
|
|
381
|
+
|
|
382
|
+
### 8. Post-Implementation Workflow
|
|
383
|
+
|
|
384
|
+
This is the coordinated handoff from implementation to PR. No redundant QA runs —
|
|
385
|
+
each step has a distinct purpose.
|
|
386
|
+
|
|
387
|
+
#### 8.1: Ask user what QA level to run
|
|
388
|
+
|
|
389
|
+
Use AskUserQuestion:
|
|
390
|
+
|
|
391
|
+
```
|
|
392
|
+
Implementation complete. What level of QA should I run?
|
|
393
|
+
|
|
394
|
+
[1] commit — targeted checks on changed files only (~1-3 min)
|
|
395
|
+
[2] full — comprehensive checks across full codebase (~10-20 min)
|
|
396
|
+
[3] staging — deploy verification against staging environment
|
|
397
|
+
[4] skip — I'll test manually, skip automated QA
|
|
398
|
+
|
|
399
|
+
Default: commit
|
|
400
|
+
```
|
|
401
|
+
|
|
402
|
+
Store the choice as `QA_LEVEL`.
|
|
403
|
+
|
|
404
|
+
#### 8.2: Run /qa at chosen level
|
|
405
|
+
|
|
406
|
+
If user chose `skip`, skip to Step 8.3.
|
|
407
|
+
|
|
408
|
+
Otherwise, invoke `/qa {QA_LEVEL}` via the Skill tool:
|
|
409
|
+
|
|
410
|
+
1. Run `/qa {QA_LEVEL}`
|
|
411
|
+
2. **If QA fails** — show failures. Ask user: "Fix these issues? [yes / skip / abort]"
|
|
412
|
+
- `yes` → fix the issues (re-enter implementation if needed), then re-run QA
|
|
413
|
+
- `skip` → proceed anyway (user takes responsibility)
|
|
414
|
+
- `abort` → stop the workflow
|
|
415
|
+
3. **If QA passes** — continue to Step 8.3
|
|
416
|
+
|
|
417
|
+
Record QA results as `QA_RESULT` for the PR body.
|
|
418
|
+
|
|
419
|
+
#### 8.3: Restart local servers and ask user to test
|
|
420
|
+
|
|
421
|
+
**Check if local services exist** — read CLAUDE.md `## Local Dev Services` table.
|
|
422
|
+
|
|
423
|
+
If the table exists and has entries:
|
|
424
|
+
|
|
425
|
+
```bash
|
|
426
|
+
# Restart services using the Start Command from the Local Dev Services table
|
|
427
|
+
# For each service row in the table:
|
|
428
|
+
# {Start Command} from {Directory}
|
|
429
|
+
|
|
430
|
+
# Example:
|
|
431
|
+
# cd frontend && npm run dev &
|
|
432
|
+
# cd backend && source .venv/bin/activate && uvicorn app.main:app --reload &
|
|
433
|
+
```
|
|
434
|
+
|
|
435
|
+
If the project has a `/restart` skill configured, invoke `/restart` instead.
|
|
436
|
+
|
|
437
|
+
After restart (or if no local services), ask the user:
|
|
438
|
+
|
|
439
|
+
```
|
|
440
|
+
Local servers restarted. Please test the changes manually.
|
|
441
|
+
|
|
442
|
+
When you're done testing, let me know:
|
|
443
|
+
[ready] — looks good, proceed to PR
|
|
444
|
+
[issues] — found problems (describe them)
|
|
445
|
+
```
|
|
446
|
+
|
|
447
|
+
**If user says `issues`**: Address the problems, re-run QA at `commit` level only
|
|
448
|
+
(since the scope is narrow), then ask again.
|
|
449
|
+
|
|
450
|
+
**If user says `ready`**: Proceed to Step 8.4.
|
|
451
|
+
|
|
452
|
+
#### 8.4: Create PR via /pr --skip-qa
|
|
453
|
+
|
|
454
|
+
Invoke `/pr --skip-qa` — this tells /pr to skip its own `/qa commit` step since QA
|
|
455
|
+
already ran in Step 8.2. /pr will only:
|
|
456
|
+
|
|
457
|
+
1. Run a **quick sanity check** (lint + type check — 10 seconds, not a full QA run)
|
|
458
|
+
2. Stage and commit changes
|
|
459
|
+
3. Find or create GitHub issue
|
|
460
|
+
4. Push to feature branch
|
|
461
|
+
5. Open PR with:
|
|
462
|
+
- Summary of changes
|
|
463
|
+
- QA results from Step 8.2 (passed to /pr)
|
|
464
|
+
- User testing confirmation from Step 8.3
|
|
465
|
+
6. Return PR URL
|
|
466
|
+
|
|
467
|
+
#### 8.5: Ask what's next
|
|
468
|
+
|
|
469
|
+
After PR is created:
|
|
470
|
+
|
|
471
|
+
```
|
|
472
|
+
PR #{number} created: {url}
|
|
473
|
+
|
|
474
|
+
What's next?
|
|
475
|
+
[1] Review another PR — /review-pr
|
|
476
|
+
[2] Start next feature — /planning <feature>
|
|
477
|
+
[3] Pick up an issue — /fix #N
|
|
478
|
+
[4] See project status — /onboard
|
|
479
|
+
[5] Done for now
|
|
480
|
+
```
|
|
481
|
+
|
|
482
|
+
If autopilot is active, skip this prompt and continue the autopilot loop.
|
|
483
|
+
|
|
484
|
+
## Cost Optimization
|
|
485
|
+
|
|
486
|
+
| Role | Model | Rationale |
|
|
487
|
+
|------|-------|-----------|
|
|
488
|
+
| backend | sonnet | Code generation, bounded scope |
|
|
489
|
+
| frontend | sonnet | Code generation, bounded scope |
|
|
490
|
+
| qa | sonnet | Needs reasoning for review + orchestrating test agents |
|
|
491
|
+
| red-challenger | sonnet | Adversarial reasoning, needs depth |
|
|
492
|
+
| red-reviewer | sonnet | Plan compliance analysis, needs reasoning |
|
|
493
|
+
|
|
494
|
+
### Mode Cost Estimates
|
|
495
|
+
|
|
496
|
+
| Mode | Flag | Approx. Cost | Red Team |
|
|
497
|
+
|------|------|-------------|----------|
|
|
498
|
+
| Fast | `--no-redteam` | ~31x | None — build only |
|
|
499
|
+
| Guarded | `--redteam-once` | ~40x | +9x for one end-of-run cycle |
|
|
500
|
+
| Strict | (default) | ~49x | +18x for per-step red team (typical 2-step build) |
|
|
501
|
+
| Strict + block on HIGH | `--redteam-strict` | ~49x | Same as Strict, stricter verdict gate |
|
|
502
|
+
|
|
503
|
+
## Common Patterns
|
|
504
|
+
|
|
505
|
+
### Frontend-only change (e.g., UI fix)
|
|
506
|
+
```
|
|
507
|
+
/implement fix-component --frontend-only
|
|
508
|
+
```
|
|
509
|
+
Spawns: frontend + qa only. No backend agent.
|
|
510
|
+
|
|
511
|
+
### Backend-only change (e.g., new endpoint)
|
|
512
|
+
```
|
|
513
|
+
/implement add-api-endpoint --backend-only
|
|
514
|
+
```
|
|
515
|
+
Spawns: backend + qa only. No frontend agent.
|
|
516
|
+
|
|
517
|
+
### Full-stack feature
|
|
518
|
+
```
|
|
519
|
+
/implement new-feature
|
|
520
|
+
```
|
|
521
|
+
Spawns: frontend + backend + qa. Backend shares API contract first.
|
|
522
|
+
|
|
523
|
+
## Continuation (Workflow Chaining)
|
|
524
|
+
|
|
525
|
+
After Step 8.5:
|
|
526
|
+
|
|
527
|
+
**If autopilot is active** (check `.claude/.workflow-state.json` mode == "autopilot"):
|
|
528
|
+
- Update workflow state: `phase: "awaiting_merge"`, `pr_number: N`
|
|
529
|
+
- **STOP HERE** — never merge without human approval
|
|
530
|
+
|
|
531
|
+
**If guided mode** (no autopilot or mode != "autopilot"):
|
|
532
|
+
- Wait for user's choice from Step 8.5 and route accordingly
|