claude-code-pilot 2.0.0 → 3.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/bin/install.js +267 -250
- package/manifest.json +5 -18
- package/package.json +5 -7
- package/src/agents/build-error-resolver.md +114 -0
- package/src/agents/ccp-advisor-researcher.md +104 -0
- package/src/agents/ccp-assumptions-analyzer.md +105 -0
- package/{gsd/agents/gsd-codebase-mapper.md → src/agents/ccp-codebase-mapper.md} +7 -7
- package/{gsd/agents/gsd-debugger.md → src/agents/ccp-debugger.md} +125 -8
- package/{gsd/agents/gsd-executor.md → src/agents/ccp-executor.md} +31 -20
- package/{gsd/agents/gsd-integration-checker.md → src/agents/ccp-integration-checker.md} +2 -2
- package/{gsd/agents/gsd-nyquist-auditor.md → src/agents/ccp-nyquist-auditor.md} +3 -3
- package/{gsd/agents/gsd-phase-researcher.md → src/agents/ccp-phase-researcher.md} +127 -13
- package/{gsd/agents/gsd-plan-checker.md → src/agents/ccp-plan-checker.md} +57 -21
- package/{gsd/agents/gsd-planner.md → src/agents/ccp-planner.md} +61 -23
- package/{gsd/agents/gsd-project-researcher.md → src/agents/ccp-project-researcher.md} +33 -6
- package/{gsd/agents/gsd-research-synthesizer.md → src/agents/ccp-research-synthesizer.md} +11 -11
- package/{gsd/agents/gsd-roadmapper.md → src/agents/ccp-roadmapper.md} +39 -10
- package/src/agents/ccp-ui-auditor.md +439 -0
- package/src/agents/ccp-ui-checker.md +300 -0
- package/src/agents/ccp-ui-researcher.md +357 -0
- package/{gsd/agents/gsd-verifier.md → src/agents/ccp-verifier.md} +81 -15
- package/src/agents/cpp-build-resolver.md +90 -0
- package/src/agents/cpp-reviewer.md +72 -0
- package/src/agents/database-reviewer.md +91 -0
- package/src/agents/docs-lookup.md +68 -0
- package/src/agents/flutter-reviewer.md +243 -0
- package/src/agents/go-build-resolver.md +94 -0
- package/src/agents/go-reviewer.md +76 -0
- package/src/agents/java-build-resolver.md +153 -0
- package/src/agents/java-reviewer.md +92 -0
- package/src/agents/kotlin-build-resolver.md +118 -0
- package/src/agents/kotlin-reviewer.md +159 -0
- package/src/agents/planner.md +212 -0
- package/src/agents/python-reviewer.md +98 -0
- package/src/agents/pytorch-build-resolver.md +120 -0
- package/src/agents/refactor-cleaner.md +85 -0
- package/src/agents/rust-build-resolver.md +148 -0
- package/src/agents/rust-reviewer.md +94 -0
- package/src/agents/typescript-reviewer.md +112 -0
- package/src/available-rules/README.md +80 -0
- package/src/available-rules/cpp/coding-style.md +44 -0
- package/src/available-rules/cpp/hooks.md +39 -0
- package/src/available-rules/cpp/patterns.md +51 -0
- package/src/available-rules/cpp/security.md +51 -0
- package/src/available-rules/cpp/testing.md +44 -0
- package/src/available-rules/csharp/coding-style.md +72 -0
- package/src/available-rules/csharp/hooks.md +25 -0
- package/src/available-rules/csharp/patterns.md +50 -0
- package/src/available-rules/csharp/security.md +58 -0
- package/src/available-rules/csharp/testing.md +46 -0
- package/src/available-rules/java/coding-style.md +114 -0
- package/src/available-rules/java/hooks.md +18 -0
- package/src/available-rules/java/patterns.md +146 -0
- package/src/available-rules/java/security.md +100 -0
- package/src/available-rules/java/testing.md +131 -0
- package/src/available-rules/kotlin/hooks.md +17 -0
- package/src/available-rules/rust/coding-style.md +151 -0
- package/src/available-rules/rust/hooks.md +16 -0
- package/src/available-rules/rust/patterns.md +168 -0
- package/src/available-rules/rust/security.md +141 -0
- package/src/available-rules/rust/testing.md +154 -0
- package/src/commands/aside.md +164 -0
- package/src/commands/build-fix.md +62 -0
- package/src/commands/ccp/add-backlog.md +76 -0
- package/{gsd/commands-gsd → src/commands/ccp}/add-phase.md +3 -3
- package/{gsd/commands-gsd → src/commands/ccp}/add-tests.md +5 -5
- package/{gsd/commands-gsd → src/commands/ccp}/add-todo.md +4 -4
- package/{gsd/commands-gsd → src/commands/ccp}/audit-milestone.md +3 -3
- package/src/commands/ccp/audit-uat.md +24 -0
- package/src/commands/ccp/autonomous.md +41 -0
- package/{gsd/commands-gsd → src/commands/ccp}/check-todos.md +3 -3
- package/{gsd/commands-gsd → src/commands/ccp}/cleanup.md +3 -3
- package/{gsd/commands-gsd → src/commands/ccp}/complete-milestone.md +9 -9
- package/{gsd/commands-gsd → src/commands/ccp}/debug.md +14 -9
- package/src/commands/ccp/discuss-phase.md +64 -0
- package/src/commands/ccp/do.md +30 -0
- package/src/commands/ccp/execute-phase.md +59 -0
- package/src/commands/ccp/fast.md +30 -0
- package/src/commands/ccp/forensics.md +56 -0
- package/{gsd/commands-gsd → src/commands/ccp}/health.md +3 -3
- package/{gsd/commands-gsd → src/commands/ccp}/help.md +5 -5
- package/{gsd/commands-gsd → src/commands/ccp}/insert-phase.md +3 -3
- package/{gsd/commands-gsd → src/commands/ccp}/list-phase-assumptions.md +2 -2
- package/src/commands/ccp/manager.md +39 -0
- package/{gsd/commands-gsd → src/commands/ccp}/map-codebase.md +7 -7
- package/src/commands/ccp/milestone-summary.md +51 -0
- package/{gsd/commands-gsd → src/commands/ccp}/new-milestone.md +8 -8
- package/{gsd/commands-gsd → src/commands/ccp}/new-project.md +8 -8
- package/src/commands/ccp/next.md +24 -0
- package/src/commands/ccp/note.md +34 -0
- package/{gsd/commands-gsd → src/commands/ccp}/pause-work.md +3 -3
- package/{gsd/commands-gsd → src/commands/ccp}/plan-milestone-gaps.md +5 -5
- package/{gsd/commands-gsd → src/commands/ccp}/plan-phase.md +9 -7
- package/src/commands/ccp/plant-seed.md +28 -0
- package/src/commands/ccp/pr-branch.md +25 -0
- package/{gsd/commands-gsd → src/commands/ccp}/progress.md +3 -3
- package/{gsd/commands-gsd → src/commands/ccp}/quick.md +10 -8
- package/{gsd/commands-gsd → src/commands/ccp}/remove-phase.md +3 -3
- package/{gsd/commands-gsd → src/commands/ccp}/research-phase.md +17 -12
- package/{gsd/commands-gsd → src/commands/ccp}/resume-work.md +3 -3
- package/src/commands/ccp/review-backlog.md +61 -0
- package/src/commands/ccp/session-report.md +19 -0
- package/src/commands/ccp/set-profile.md +12 -0
- package/{gsd/commands-gsd → src/commands/ccp}/settings.md +5 -5
- package/src/commands/ccp/ship.md +23 -0
- package/src/commands/ccp/stats.md +18 -0
- package/src/commands/ccp/thread.md +127 -0
- package/src/commands/ccp/ui-phase.md +34 -0
- package/src/commands/ccp/ui-review.md +32 -0
- package/{gsd/commands-gsd → src/commands/ccp}/update.md +5 -5
- package/{gsd/commands-gsd → src/commands/ccp}/validate-phase.md +3 -3
- package/{gsd/commands-gsd → src/commands/ccp}/verify-work.md +5 -5
- package/src/commands/code-review.md +40 -0
- package/src/commands/context-budget.md +29 -0
- package/src/commands/cpp-build.md +173 -0
- package/src/commands/cpp-review.md +132 -0
- package/src/commands/cpp-test.md +251 -0
- package/src/commands/docs.md +31 -0
- package/src/commands/e2e.md +364 -0
- package/src/commands/eval.md +120 -0
- package/{ecc → src}/commands/evolve.md +2 -2
- package/src/commands/go-build.md +183 -0
- package/src/commands/go-review.md +148 -0
- package/src/commands/go-test.md +268 -0
- package/src/commands/gradle-build.md +70 -0
- package/src/commands/harness-audit.md +71 -0
- package/src/commands/kotlin-build.md +174 -0
- package/src/commands/kotlin-review.md +140 -0
- package/src/commands/kotlin-test.md +312 -0
- package/src/commands/orchestrate.md +231 -0
- package/src/commands/plan.md +114 -0
- package/src/commands/prompt-optimize.md +38 -0
- package/src/commands/prune.md +25 -0
- package/src/commands/python-review.md +297 -0
- package/{ecc → src}/commands/quality-gate.md +1 -1
- package/src/commands/refactor-clean.md +80 -0
- package/src/commands/rules-distill.md +11 -0
- package/src/commands/rust-build.md +187 -0
- package/src/commands/rust-review.md +142 -0
- package/src/commands/rust-test.md +308 -0
- package/{ecc → src}/commands/sessions.md +10 -10
- package/src/commands/setup-pm.md +80 -0
- package/{kit → src}/commands/setup.md +45 -19
- package/src/commands/skill-create.md +172 -0
- package/src/commands/skill-health.md +51 -0
- package/src/commands/tdd.md +328 -0
- package/src/commands/test-coverage.md +69 -0
- package/src/commands/update-codemaps.md +72 -0
- package/src/commands/update-docs.md +84 -0
- package/{gsd/hooks/gsd-context-monitor.js → src/hooks/ccp-context-monitor.js} +3 -3
- package/src/hooks/ccp-prompt-guard.js +96 -0
- package/{gsd/hooks/gsd-statusline.js → src/hooks/ccp-statusline.js} +7 -7
- package/src/hooks/ccp-workflow-guard.js +94 -0
- package/src/hooks/config-protection.js +141 -0
- package/{kit → src}/hooks/kit-check-update.js +7 -4
- package/src/hooks/mcp-health-check.js +620 -0
- package/{ecc/scripts → src}/hooks/run-with-flags-shell.sh +1 -1
- package/{ecc/scripts → src}/hooks/run-with-flags.js +74 -13
- package/src/hooks/session-end-marker.js +29 -0
- package/{ecc/scripts → src}/hooks/session-end.js +83 -40
- package/{ecc/scripts → src}/hooks/session-start.js +75 -9
- package/{ecc/scripts → src}/lib/hook-flags.js +8 -4
- package/{ecc/scripts → src}/lib/project-detect.js +2 -1
- package/{ecc/scripts → src}/lib/session-manager.d.ts +5 -1
- package/{ecc/scripts → src}/lib/session-manager.js +202 -92
- package/{ecc/scripts → src}/lib/utils.d.ts +23 -1
- package/{ecc/scripts → src}/lib/utils.js +91 -3
- package/{gsd/get-shit-done/bin/gsd-tools.cjs → src/pilot/bin/ccp-tools.cjs} +257 -86
- package/{gsd/get-shit-done → src/pilot}/bin/lib/commands.cjs +1 -1
- package/src/pilot/bin/lib/config.cjs +444 -0
- package/src/pilot/bin/lib/core.cjs +1190 -0
- package/src/pilot/bin/lib/init.cjs +1281 -0
- package/src/pilot/bin/lib/model-profiles.cjs +67 -0
- package/{gsd/get-shit-done → src/pilot}/bin/lib/phase.cjs +2 -2
- package/src/pilot/bin/lib/security.cjs +382 -0
- package/{gsd/get-shit-done → src/pilot}/bin/lib/state.cjs +1 -1
- package/src/pilot/bin/lib/uat.cjs +282 -0
- package/{gsd/get-shit-done → src/pilot}/bin/lib/verify.cjs +10 -10
- package/{gsd/get-shit-done → src/pilot}/references/continuation-format.md +16 -16
- package/{gsd/get-shit-done → src/pilot}/references/decimal-phase-calculation.md +5 -5
- package/{gsd/get-shit-done → src/pilot}/references/git-integration.md +5 -5
- package/{gsd/get-shit-done → src/pilot}/references/git-planning-commit.md +4 -4
- package/src/pilot/references/mcp-servers.json +153 -0
- package/{gsd/get-shit-done → src/pilot}/references/model-profile-resolution.md +2 -2
- package/{gsd/get-shit-done → src/pilot}/references/model-profiles.md +20 -20
- package/{gsd/get-shit-done → src/pilot}/references/phase-argument-parsing.md +4 -4
- package/{gsd/get-shit-done → src/pilot}/references/planning-config.md +15 -15
- package/{gsd/get-shit-done → src/pilot}/references/ui-brand.md +5 -5
- package/{gsd/get-shit-done → src/pilot}/references/verification-patterns.md +1 -1
- package/{gsd/get-shit-done → src/pilot}/templates/DEBUG.md +1 -1
- package/{gsd/get-shit-done → src/pilot}/templates/UAT.md +3 -3
- package/src/pilot/templates/UI-SPEC.md +100 -0
- package/{gsd/get-shit-done → src/pilot}/templates/VALIDATION.md +1 -1
- package/src/pilot/templates/claude-md.md +122 -0
- package/{gsd/get-shit-done → src/pilot}/templates/codebase/architecture.md +2 -2
- package/{gsd/get-shit-done → src/pilot}/templates/codebase/structure.md +13 -13
- package/{gsd/get-shit-done → src/pilot}/templates/context.md +4 -4
- package/src/pilot/templates/copilot-instructions.md +7 -0
- package/{gsd/get-shit-done → src/pilot}/templates/debug-subagent-prompt.md +4 -4
- package/src/pilot/templates/dev-preferences.md +21 -0
- package/{gsd/get-shit-done → src/pilot}/templates/discovery.md +2 -2
- package/src/pilot/templates/discussion-log.md +63 -0
- package/{gsd/get-shit-done → src/pilot}/templates/phase-prompt.md +12 -12
- package/{gsd/get-shit-done → src/pilot}/templates/planner-subagent-prompt.md +7 -7
- package/{gsd/get-shit-done → src/pilot}/templates/project.md +1 -1
- package/{gsd/get-shit-done → src/pilot}/templates/research.md +2 -2
- package/{gsd/get-shit-done → src/pilot}/templates/state.md +2 -2
- package/{gsd/get-shit-done → src/pilot}/templates/summary-complex.md +1 -1
- package/{gsd/get-shit-done → src/pilot}/workflows/add-phase.md +11 -11
- package/{gsd/get-shit-done → src/pilot}/workflows/add-tests.md +15 -15
- package/{gsd/get-shit-done → src/pilot}/workflows/add-todo.md +7 -7
- package/{gsd/get-shit-done → src/pilot}/workflows/audit-milestone.md +24 -16
- package/src/pilot/workflows/audit-uat.md +109 -0
- package/src/pilot/workflows/autonomous.md +891 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/check-todos.md +10 -10
- package/{gsd/get-shit-done → src/pilot}/workflows/cleanup.md +3 -3
- package/{gsd/get-shit-done → src/pilot}/workflows/complete-milestone.md +19 -16
- package/{gsd/get-shit-done → src/pilot}/workflows/diagnose-issues.md +9 -4
- package/{gsd/get-shit-done → src/pilot}/workflows/discovery-phase.md +8 -8
- package/src/pilot/workflows/discuss-phase-assumptions.md +653 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/discuss-phase.md +407 -49
- package/src/pilot/workflows/do.md +104 -0
- package/src/pilot/workflows/execute-phase.md +821 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/execute-plan.md +79 -28
- package/src/pilot/workflows/fast.md +105 -0
- package/src/pilot/workflows/forensics.md +265 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/health.md +34 -11
- package/src/pilot/workflows/help.md +775 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/insert-phase.md +10 -10
- package/{gsd/get-shit-done → src/pilot}/workflows/list-phase-assumptions.md +4 -4
- package/src/pilot/workflows/manager.md +362 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/map-codebase.md +27 -17
- package/src/pilot/workflows/milestone-summary.md +223 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/new-milestone.md +135 -33
- package/{gsd/get-shit-done → src/pilot}/workflows/new-project.md +152 -79
- package/src/pilot/workflows/next.md +97 -0
- package/src/pilot/workflows/node-repair.md +92 -0
- package/src/pilot/workflows/note.md +156 -0
- package/src/pilot/workflows/pause-work.md +177 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/plan-milestone-gaps.md +10 -11
- package/src/pilot/workflows/plan-phase.md +859 -0
- package/src/pilot/workflows/plant-seed.md +169 -0
- package/src/pilot/workflows/pr-branch.md +129 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/progress.md +95 -34
- package/{gsd/get-shit-done → src/pilot}/workflows/quick.md +33 -21
- package/{gsd/get-shit-done → src/pilot}/workflows/remove-phase.md +14 -14
- package/{gsd/get-shit-done → src/pilot}/workflows/research-phase.md +18 -10
- package/{gsd/get-shit-done → src/pilot}/workflows/resume-project.md +37 -18
- package/src/pilot/workflows/session-report.md +146 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/set-profile.md +7 -7
- package/{gsd/get-shit-done → src/pilot}/workflows/settings.md +75 -22
- package/src/pilot/workflows/ship.md +228 -0
- package/src/pilot/workflows/stats.md +60 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/transition.md +57 -17
- package/src/pilot/workflows/ui-phase.md +302 -0
- package/src/pilot/workflows/ui-review.md +165 -0
- package/{gsd/get-shit-done → src/pilot}/workflows/update.md +88 -58
- package/{gsd/get-shit-done → src/pilot}/workflows/validate-phase.md +24 -17
- package/{gsd/get-shit-done → src/pilot}/workflows/verify-phase.md +26 -15
- package/{gsd/get-shit-done → src/pilot}/workflows/verify-work.md +89 -37
- package/{ecc → src}/rules/common/agents.md +1 -0
- package/{ecc → src}/rules/common/coding-style.md +21 -0
- package/src/skills/agentic-engineering/SKILL.md +63 -0
- package/src/skills/ai-first-engineering/SKILL.md +51 -0
- package/src/skills/ai-regression-testing/SKILL.md +385 -0
- package/src/skills/api-design/SKILL.md +523 -0
- package/src/skills/architecture-decision-records/SKILL.md +179 -0
- package/src/skills/backend-patterns/SKILL.md +598 -0
- package/src/skills/benchmark/SKILL.md +87 -0
- package/src/skills/blueprint/SKILL.md +90 -0
- package/src/skills/browser-qa/SKILL.md +81 -0
- package/src/skills/claude-api/SKILL.md +337 -0
- package/src/skills/codebase-onboarding/SKILL.md +233 -0
- package/src/skills/coding-standards/SKILL.md +530 -0
- package/src/skills/context-budget/SKILL.md +135 -0
- package/{ecc → src}/skills/continuous-learning-v2/SKILL.md +2 -2
- package/{ecc → src}/skills/continuous-learning-v2/agents/observer-loop.sh +1 -1
- package/src/skills/cpp-coding-standards/SKILL.md +723 -0
- package/src/skills/cpp-testing/SKILL.md +324 -0
- package/src/skills/database-migrations/SKILL.md +429 -0
- package/src/skills/deep-research/SKILL.md +155 -0
- package/src/skills/deployment-patterns/SKILL.md +427 -0
- package/src/skills/django-patterns/SKILL.md +734 -0
- package/src/skills/django-security/SKILL.md +593 -0
- package/src/skills/django-tdd/SKILL.md +729 -0
- package/src/skills/django-verification/SKILL.md +469 -0
- package/src/skills/docker-patterns/SKILL.md +364 -0
- package/src/skills/documentation-lookup/SKILL.md +90 -0
- package/src/skills/e2e-testing/SKILL.md +326 -0
- package/src/skills/exa-search/SKILL.md +103 -0
- package/src/skills/frontend-patterns/SKILL.md +642 -0
- package/src/skills/golang-patterns/SKILL.md +674 -0
- package/src/skills/golang-testing/SKILL.md +720 -0
- package/src/skills/java-coding-standards/SKILL.md +147 -0
- package/src/skills/jpa-patterns/SKILL.md +151 -0
- package/src/skills/kotlin-coroutines-flows/SKILL.md +284 -0
- package/src/skills/kotlin-exposed-patterns/SKILL.md +719 -0
- package/src/skills/kotlin-ktor-patterns/SKILL.md +689 -0
- package/src/skills/kotlin-patterns/SKILL.md +711 -0
- package/src/skills/kotlin-testing/SKILL.md +824 -0
- package/src/skills/laravel-patterns/SKILL.md +415 -0
- package/src/skills/laravel-security/SKILL.md +285 -0
- package/src/skills/laravel-tdd/SKILL.md +283 -0
- package/src/skills/laravel-verification/SKILL.md +179 -0
- package/src/skills/mcp-server-patterns/SKILL.md +67 -0
- package/src/skills/perl-patterns/SKILL.md +504 -0
- package/src/skills/perl-testing/SKILL.md +475 -0
- package/src/skills/postgres-patterns/SKILL.md +147 -0
- package/src/skills/prompt-optimizer/SKILL.md +397 -0
- package/src/skills/python-patterns/SKILL.md +750 -0
- package/src/skills/python-testing/SKILL.md +816 -0
- package/src/skills/rust-patterns/SKILL.md +499 -0
- package/src/skills/rust-testing/SKILL.md +500 -0
- package/src/skills/safety-guard/SKILL.md +69 -0
- package/src/skills/search-first/SKILL.md +161 -0
- package/src/skills/security-review/SKILL.md +495 -0
- package/src/skills/security-review/cloud-infrastructure-security.md +361 -0
- package/src/skills/security-scan/SKILL.md +165 -0
- package/src/skills/springboot-patterns/SKILL.md +314 -0
- package/src/skills/springboot-security/SKILL.md +272 -0
- package/src/skills/springboot-tdd/SKILL.md +158 -0
- package/src/skills/springboot-verification/SKILL.md +231 -0
- package/src/skills/tdd-workflow/SKILL.md +410 -0
- package/ecc/scripts/hooks/session-end-marker.js +0 -15
- package/gsd/LICENSE +0 -21
- package/gsd/commands-gsd/discuss-phase.md +0 -90
- package/gsd/commands-gsd/execute-phase.md +0 -41
- package/gsd/commands-gsd/join-discord.md +0 -18
- package/gsd/commands-gsd/reapply-patches.md +0 -123
- package/gsd/commands-gsd/set-profile.md +0 -34
- package/gsd/get-shit-done/bin/lib/config.cjs +0 -169
- package/gsd/get-shit-done/bin/lib/core.cjs +0 -492
- package/gsd/get-shit-done/bin/lib/init.cjs +0 -710
- package/gsd/get-shit-done/workflows/execute-phase.md +0 -459
- package/gsd/get-shit-done/workflows/help.md +0 -489
- package/gsd/get-shit-done/workflows/pause-work.md +0 -122
- package/gsd/get-shit-done/workflows/plan-phase.md +0 -560
- package/gsd/hooks/gsd-check-update.js +0 -81
- package/kit/CLAUDE.md +0 -43
- package/kit/commands/kit/update.md +0 -46
- package/kit/mcp.json +0 -10
- package/kit/rules/code-style.md +0 -24
- /package/{ecc → src}/agents/architect.md +0 -0
- /package/{ecc → src}/agents/code-reviewer.md +0 -0
- /package/{ecc → src}/agents/doc-updater.md +0 -0
- /package/{ecc → src}/agents/e2e-runner.md +0 -0
- /package/{ecc → src}/agents/security-reviewer.md +0 -0
- /package/{ecc → src}/agents/tdd-guide.md +0 -0
- /package/{ecc/rules → src/available-rules}/golang/coding-style.md +0 -0
- /package/{ecc/rules → src/available-rules}/golang/hooks.md +0 -0
- /package/{ecc/rules → src/available-rules}/golang/patterns.md +0 -0
- /package/{ecc/rules → src/available-rules}/golang/security.md +0 -0
- /package/{ecc/rules → src/available-rules}/golang/testing.md +0 -0
- /package/{ecc/rules → src/available-rules}/kotlin/coding-style.md +0 -0
- /package/{ecc/rules → src/available-rules}/kotlin/patterns.md +0 -0
- /package/{ecc/rules → src/available-rules}/kotlin/security.md +0 -0
- /package/{ecc/rules → src/available-rules}/kotlin/testing.md +0 -0
- /package/{ecc/rules → src/available-rules}/perl/coding-style.md +0 -0
- /package/{ecc/rules → src/available-rules}/perl/hooks.md +0 -0
- /package/{ecc/rules → src/available-rules}/perl/patterns.md +0 -0
- /package/{ecc/rules → src/available-rules}/perl/security.md +0 -0
- /package/{ecc/rules → src/available-rules}/perl/testing.md +0 -0
- /package/{ecc/rules → src/available-rules}/php/coding-style.md +0 -0
- /package/{ecc/rules → src/available-rules}/php/hooks.md +0 -0
- /package/{ecc/rules → src/available-rules}/php/patterns.md +0 -0
- /package/{ecc/rules → src/available-rules}/php/security.md +0 -0
- /package/{ecc/rules → src/available-rules}/php/testing.md +0 -0
- /package/{ecc/rules → src/available-rules}/python/coding-style.md +0 -0
- /package/{ecc/rules → src/available-rules}/python/hooks.md +0 -0
- /package/{ecc/rules → src/available-rules}/python/patterns.md +0 -0
- /package/{ecc/rules → src/available-rules}/python/security.md +0 -0
- /package/{ecc/rules → src/available-rules}/python/testing.md +0 -0
- /package/{ecc/rules → src/available-rules}/swift/coding-style.md +0 -0
- /package/{ecc/rules → src/available-rules}/swift/hooks.md +0 -0
- /package/{ecc/rules → src/available-rules}/swift/patterns.md +0 -0
- /package/{ecc/rules → src/available-rules}/swift/security.md +0 -0
- /package/{ecc/rules → src/available-rules}/swift/testing.md +0 -0
- /package/{ecc/rules → src/available-rules}/typescript/coding-style.md +0 -0
- /package/{ecc/rules → src/available-rules}/typescript/hooks.md +0 -0
- /package/{ecc/rules → src/available-rules}/typescript/patterns.md +0 -0
- /package/{ecc/rules → src/available-rules}/typescript/security.md +0 -0
- /package/{ecc/rules → src/available-rules}/typescript/testing.md +0 -0
- /package/{ecc → src}/commands/checkpoint.md +0 -0
- /package/{ecc → src}/commands/learn.md +0 -0
- /package/{ecc → src}/commands/model-route.md +0 -0
- /package/{ecc → src}/commands/resume-session.md +0 -0
- /package/{ecc → src}/commands/save-session.md +0 -0
- /package/{kit → src}/commands/setup-refresh.md +0 -0
- /package/{kit → src}/commands/tool-guide.md +0 -0
- /package/{ecc → src}/commands/verify.md +0 -0
- /package/{ecc → src}/contexts/dev.md +0 -0
- /package/{ecc → src}/contexts/research.md +0 -0
- /package/{ecc → src}/contexts/review.md +0 -0
- /package/{ecc → src}/examples/CLAUDE.md +0 -0
- /package/{ecc → src}/examples/django-api-CLAUDE.md +0 -0
- /package/{ecc → src}/examples/go-microservice-CLAUDE.md +0 -0
- /package/{ecc → src}/examples/rust-api-CLAUDE.md +0 -0
- /package/{ecc → src}/examples/saas-nextjs-CLAUDE.md +0 -0
- /package/{ecc → src}/examples/user-CLAUDE.md +0 -0
- /package/{ecc/scripts → src}/hooks/check-hook-enabled.js +0 -0
- /package/{ecc/scripts → src}/hooks/evaluate-session.js +0 -0
- /package/{ecc/scripts → src}/hooks/pre-compact.js +0 -0
- /package/{ecc/scripts → src}/hooks/suggest-compact.js +0 -0
- /package/{ecc/scripts → src}/lib/package-manager.d.ts +0 -0
- /package/{ecc/scripts → src}/lib/package-manager.js +0 -0
- /package/{ecc/scripts → src}/lib/resolve-formatter.js +0 -0
- /package/{ecc/scripts → src}/lib/session-aliases.d.ts +0 -0
- /package/{ecc/scripts → src}/lib/session-aliases.js +0 -0
- /package/{ecc/scripts → src}/lib/shell-split.js +0 -0
- /package/{gsd/get-shit-done → src/pilot}/bin/lib/frontmatter.cjs +0 -0
- /package/{gsd/get-shit-done → src/pilot}/bin/lib/milestone.cjs +0 -0
- /package/{gsd/get-shit-done → src/pilot}/bin/lib/roadmap.cjs +0 -0
- /package/{gsd/get-shit-done → src/pilot}/bin/lib/template.cjs +0 -0
- /package/{gsd/get-shit-done → src/pilot}/references/checkpoints.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/references/questioning.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/references/tdd.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/codebase/concerns.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/codebase/conventions.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/codebase/integrations.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/codebase/stack.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/codebase/testing.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/config.json +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/continue-here.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/milestone-archive.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/milestone.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/requirements.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/research-project/ARCHITECTURE.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/research-project/FEATURES.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/research-project/PITFALLS.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/research-project/STACK.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/research-project/SUMMARY.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/retrospective.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/roadmap.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/summary-minimal.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/summary-standard.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/summary.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/user-setup.md +0 -0
- /package/{gsd/get-shit-done → src/pilot}/templates/verification-report.md +0 -0
- /package/{ecc → src}/rules/common/development-workflow.md +0 -0
- /package/{ecc → src}/rules/common/git-workflow.md +0 -0
- /package/{ecc → src}/rules/common/hooks.md +0 -0
- /package/{ecc → src}/rules/common/patterns.md +0 -0
- /package/{ecc → src}/rules/common/performance.md +0 -0
- /package/{ecc → src}/rules/common/security.md +0 -0
- /package/{ecc → src}/rules/common/testing.md +0 -0
- /package/{ecc → src}/skills/continuous-learning-v2/agents/observer.md +0 -0
- /package/{ecc → src}/skills/continuous-learning-v2/agents/start-observer.sh +0 -0
- /package/{ecc → src}/skills/continuous-learning-v2/config.json +0 -0
- /package/{ecc → src}/skills/continuous-learning-v2/hooks/observe.sh +0 -0
- /package/{ecc → src}/skills/continuous-learning-v2/scripts/detect-project.sh +0 -0
- /package/{ecc → src}/skills/continuous-learning-v2/scripts/instinct-cli.py +0 -0
- /package/{ecc → src}/skills/continuous-learning-v2/scripts/test_parse_instinct.py +0 -0
- /package/{ecc → src}/skills/strategic-compact/SKILL.md +0 -0
- /package/{ecc → src}/skills/strategic-compact/suggest-compact.sh +0 -0
- /package/{ecc/skills/verification-loop-SKILL.md → src/skills/verification-loop/SKILL.md} +0 -0
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
<purpose>
|
|
2
|
-
Validate built features through conversational testing with persistent state. Creates UAT.md that tracks test progress, survives /clear, and feeds gaps into /
|
|
2
|
+
Validate built features through conversational testing with persistent state. Creates UAT.md that tracks test progress, survives /clear, and feeds gaps into /ccp:plan-phase --gaps.
|
|
3
3
|
|
|
4
4
|
User tests, Claude records. One test at a time. Plain text responses.
|
|
5
5
|
</purpose>
|
|
6
6
|
|
|
7
|
+
<available_agent_types>
|
|
8
|
+
Valid CCP subagent types (use exact names — do not fall back to 'general-purpose'):
|
|
9
|
+
- ccp-planner — Creates detailed plans from phase scope
|
|
10
|
+
- ccp-plan-checker — Reviews plan quality before execution
|
|
11
|
+
</available_agent_types>
|
|
12
|
+
|
|
7
13
|
<philosophy>
|
|
8
14
|
**Show expected, ask if reality matches.**
|
|
9
15
|
|
|
@@ -15,7 +21,7 @@ No Pass/Fail buttons. No severity questions. Just: "Here's what should happen. D
|
|
|
15
21
|
</philosophy>
|
|
16
22
|
|
|
17
23
|
<template>
|
|
18
|
-
@~/.claude/
|
|
24
|
+
@~/.claude/pilot/templates/UAT.md
|
|
19
25
|
</template>
|
|
20
26
|
|
|
21
27
|
<process>
|
|
@@ -24,11 +30,13 @@ No Pass/Fail buttons. No severity questions. Just: "Here's what should happen. D
|
|
|
24
30
|
If $ARGUMENTS contains a phase number, load context:
|
|
25
31
|
|
|
26
32
|
```bash
|
|
27
|
-
INIT=$(node "$HOME/.claude/
|
|
33
|
+
INIT=$(node "$HOME/.claude/pilot/bin/ccp-tools.cjs" init verify-work "${PHASE_ARG}")
|
|
28
34
|
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
35
|
+
AGENT_SKILLS_PLANNER=$(node "$HOME/.claude/pilot/bin/ccp-tools.cjs" agent-skills ccp-planner 2>/dev/null)
|
|
36
|
+
AGENT_SKILLS_CHECKER=$(node "$HOME/.claude/pilot/bin/ccp-tools.cjs" agent-skills ccp-checker 2>/dev/null)
|
|
29
37
|
```
|
|
30
38
|
|
|
31
|
-
Parse JSON for: `planner_model`, `checker_model`, `commit_docs`, `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `has_verification`.
|
|
39
|
+
Parse JSON for: `planner_model`, `checker_model`, `commit_docs`, `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `has_verification`, `uat_path`.
|
|
32
40
|
</step>
|
|
33
41
|
|
|
34
42
|
<step name="check_active_session">
|
|
@@ -70,7 +78,7 @@ If no, continue to `create_uat_file`.
|
|
|
70
78
|
```
|
|
71
79
|
No active UAT sessions.
|
|
72
80
|
|
|
73
|
-
Provide a phase number to start testing (e.g., /
|
|
81
|
+
Provide a phase number to start testing (e.g., /ccp:verify-work 4)
|
|
74
82
|
```
|
|
75
83
|
|
|
76
84
|
**If no active sessions AND $ARGUMENTS provided:**
|
|
@@ -186,23 +194,22 @@ Proceed to `present_test`.
|
|
|
186
194
|
<step name="present_test">
|
|
187
195
|
**Present current test to user:**
|
|
188
196
|
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
Display using checkpoint box format:
|
|
197
|
+
Render the checkpoint from the structured UAT file instead of composing it freehand:
|
|
192
198
|
|
|
199
|
+
```bash
|
|
200
|
+
CHECKPOINT=$(node "$HOME/.claude/pilot/bin/ccp-tools.cjs" uat render-checkpoint --file "$uat_path" --raw)
|
|
201
|
+
if [[ "$CHECKPOINT" == @file:* ]]; then CHECKPOINT=$(cat "${CHECKPOINT#@file:}"); fi
|
|
193
202
|
```
|
|
194
|
-
╔══════════════════════════════════════════════════════════════╗
|
|
195
|
-
║ CHECKPOINT: Verification Required ║
|
|
196
|
-
╚══════════════════════════════════════════════════════════════╝
|
|
197
203
|
|
|
198
|
-
|
|
204
|
+
Display the returned checkpoint EXACTLY as-is:
|
|
199
205
|
|
|
200
|
-
{expected}
|
|
201
|
-
|
|
202
|
-
──────────────────────────────────────────────────────────────
|
|
203
|
-
→ Type "pass" or describe what's wrong
|
|
204
|
-
──────────────────────────────────────────────────────────────
|
|
205
206
|
```
|
|
207
|
+
{CHECKPOINT}
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
**Critical response hygiene:**
|
|
211
|
+
- Your entire response MUST equal `{CHECKPOINT}` byte-for-byte.
|
|
212
|
+
- Do NOT add commentary before or after the block.
|
|
206
213
|
|
|
207
214
|
Wait for user response (plain text, no AskUserQuestion).
|
|
208
215
|
</step>
|
|
@@ -231,6 +238,29 @@ result: skipped
|
|
|
231
238
|
reason: [user's reason if provided]
|
|
232
239
|
```
|
|
233
240
|
|
|
241
|
+
**If response indicates blocked:**
|
|
242
|
+
- "blocked", "can't test - server not running", "need physical device", "need release build"
|
|
243
|
+
- Or any response containing: "server", "blocked", "not running", "physical device", "release build"
|
|
244
|
+
|
|
245
|
+
Infer blocked_by tag from response:
|
|
246
|
+
- Contains: server, not running, gateway, API → `server`
|
|
247
|
+
- Contains: physical, device, hardware, real phone → `physical-device`
|
|
248
|
+
- Contains: release, preview, build → `release-build`
|
|
249
|
+
- Contains: stripe, twilio, third-party, configure → `third-party`
|
|
250
|
+
- Contains: depends on, prior phase, prerequisite → `prior-phase`
|
|
251
|
+
- Default: `other`
|
|
252
|
+
|
|
253
|
+
Update Tests section:
|
|
254
|
+
```
|
|
255
|
+
### {N}. {name}
|
|
256
|
+
expected: {expected}
|
|
257
|
+
result: blocked
|
|
258
|
+
blocked_by: {inferred tag}
|
|
259
|
+
reason: "{verbatim user response}"
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
Note: Blocked tests do NOT go into the Gaps section (they aren't code issues -- they're prerequisite gates).
|
|
263
|
+
|
|
234
264
|
**If response is anything else:**
|
|
235
265
|
- Treat as issue description
|
|
236
266
|
|
|
@@ -293,8 +323,24 @@ Proceed to `present_test`.
|
|
|
293
323
|
<step name="complete_session">
|
|
294
324
|
**Complete testing and commit:**
|
|
295
325
|
|
|
326
|
+
**Determine final status:**
|
|
327
|
+
|
|
328
|
+
Count results:
|
|
329
|
+
- `pending_count`: tests with `result: [pending]`
|
|
330
|
+
- `blocked_count`: tests with `result: blocked`
|
|
331
|
+
- `skipped_no_reason`: tests with `result: skipped` and no `reason` field
|
|
332
|
+
|
|
333
|
+
```
|
|
334
|
+
if pending_count > 0 OR blocked_count > 0 OR skipped_no_reason > 0:
|
|
335
|
+
status: partial
|
|
336
|
+
# Session ended but not all tests resolved
|
|
337
|
+
else:
|
|
338
|
+
status: complete
|
|
339
|
+
# All tests have a definitive result (pass, issue, or skipped-with-reason)
|
|
340
|
+
```
|
|
341
|
+
|
|
296
342
|
Update frontmatter:
|
|
297
|
-
- status:
|
|
343
|
+
- status: {computed status}
|
|
298
344
|
- updated: [now]
|
|
299
345
|
|
|
300
346
|
Clear Current Test section:
|
|
@@ -306,7 +352,7 @@ Clear Current Test section:
|
|
|
306
352
|
|
|
307
353
|
Commit the UAT file:
|
|
308
354
|
```bash
|
|
309
|
-
node "$HOME/.claude/
|
|
355
|
+
node "$HOME/.claude/pilot/bin/ccp-tools.cjs" commit "test({phase_num}): complete UAT - {passed} passed, {issues} issues" --files ".planning/phases/XX-name/{phase_num}-UAT.md"
|
|
310
356
|
```
|
|
311
357
|
|
|
312
358
|
Present summary:
|
|
@@ -331,8 +377,8 @@ Present summary:
|
|
|
331
377
|
```
|
|
332
378
|
All tests passed. Ready to continue.
|
|
333
379
|
|
|
334
|
-
- `/
|
|
335
|
-
- `/
|
|
380
|
+
- `/ccp:plan-phase {next}` — Plan next phase
|
|
381
|
+
- `/ccp:execute-phase {next}` — Execute next phase
|
|
336
382
|
```
|
|
337
383
|
</step>
|
|
338
384
|
|
|
@@ -348,7 +394,7 @@ Spawning parallel debug agents to investigate each issue.
|
|
|
348
394
|
```
|
|
349
395
|
|
|
350
396
|
- Load diagnose-issues workflow
|
|
351
|
-
- Follow @~/.claude/
|
|
397
|
+
- Follow @~/.claude/pilot/workflows/diagnose-issues.md
|
|
352
398
|
- Spawn parallel debug agents for each issue
|
|
353
399
|
- Collect root causes
|
|
354
400
|
- Update UAT.md with root causes
|
|
@@ -363,13 +409,13 @@ Diagnosis runs automatically - no user prompt. Parallel agents investigate simul
|
|
|
363
409
|
Display:
|
|
364
410
|
```
|
|
365
411
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
366
|
-
|
|
412
|
+
Pilot ► PLANNING FIXES
|
|
367
413
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
368
414
|
|
|
369
415
|
◆ Spawning planner for gap closure...
|
|
370
416
|
```
|
|
371
417
|
|
|
372
|
-
Spawn
|
|
418
|
+
Spawn ccp-planner in --gaps mode:
|
|
373
419
|
|
|
374
420
|
```
|
|
375
421
|
Task(
|
|
@@ -385,14 +431,16 @@ Task(
|
|
|
385
431
|
- .planning/ROADMAP.md (Roadmap)
|
|
386
432
|
</files_to_read>
|
|
387
433
|
|
|
434
|
+
${AGENT_SKILLS_PLANNER}
|
|
435
|
+
|
|
388
436
|
</planning_context>
|
|
389
437
|
|
|
390
438
|
<downstream_consumer>
|
|
391
|
-
Output consumed by /
|
|
439
|
+
Output consumed by /ccp:execute-phase
|
|
392
440
|
Plans must be executable prompts.
|
|
393
441
|
</downstream_consumer>
|
|
394
442
|
""",
|
|
395
|
-
subagent_type="
|
|
443
|
+
subagent_type="ccp-planner",
|
|
396
444
|
model="{planner_model}",
|
|
397
445
|
description="Plan gap fixes for Phase {phase}"
|
|
398
446
|
)
|
|
@@ -409,7 +457,7 @@ On return:
|
|
|
409
457
|
Display:
|
|
410
458
|
```
|
|
411
459
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
412
|
-
|
|
460
|
+
Pilot ► VERIFYING FIX PLANS
|
|
413
461
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
414
462
|
|
|
415
463
|
◆ Spawning plan checker...
|
|
@@ -417,7 +465,7 @@ Display:
|
|
|
417
465
|
|
|
418
466
|
Initialize: `iteration_count = 1`
|
|
419
467
|
|
|
420
|
-
Spawn
|
|
468
|
+
Spawn ccp-plan-checker:
|
|
421
469
|
|
|
422
470
|
```
|
|
423
471
|
Task(
|
|
@@ -431,6 +479,8 @@ Task(
|
|
|
431
479
|
- {phase_dir}/*-PLAN.md (Plans to verify)
|
|
432
480
|
</files_to_read>
|
|
433
481
|
|
|
482
|
+
${AGENT_SKILLS_CHECKER}
|
|
483
|
+
|
|
434
484
|
</verification_context>
|
|
435
485
|
|
|
436
486
|
<expected_output>
|
|
@@ -439,7 +489,7 @@ Return one of:
|
|
|
439
489
|
- ## ISSUES FOUND — structured issue list
|
|
440
490
|
</expected_output>
|
|
441
491
|
""",
|
|
442
|
-
subagent_type="
|
|
492
|
+
subagent_type="ccp-plan-checker",
|
|
443
493
|
model="{checker_model}",
|
|
444
494
|
description="Verify Phase {phase} fix plans"
|
|
445
495
|
)
|
|
@@ -457,7 +507,7 @@ On return:
|
|
|
457
507
|
|
|
458
508
|
Display: `Sending back to planner for revision... (iteration {N}/3)`
|
|
459
509
|
|
|
460
|
-
Spawn
|
|
510
|
+
Spawn ccp-planner with revision context:
|
|
461
511
|
|
|
462
512
|
```
|
|
463
513
|
Task(
|
|
@@ -471,6 +521,8 @@ Task(
|
|
|
471
521
|
- {phase_dir}/*-PLAN.md (Existing plans)
|
|
472
522
|
</files_to_read>
|
|
473
523
|
|
|
524
|
+
${AGENT_SKILLS_PLANNER}
|
|
525
|
+
|
|
474
526
|
**Checker issues:**
|
|
475
527
|
{structured_issues_from_checker}
|
|
476
528
|
|
|
@@ -481,7 +533,7 @@ Read existing PLAN.md files. Make targeted updates to address checker issues.
|
|
|
481
533
|
Do NOT replan from scratch unless issues are fundamental.
|
|
482
534
|
</instructions>
|
|
483
535
|
""",
|
|
484
|
-
subagent_type="
|
|
536
|
+
subagent_type="ccp-planner",
|
|
485
537
|
model="{planner_model}",
|
|
486
538
|
description="Revise Phase {phase} plans"
|
|
487
539
|
)
|
|
@@ -497,7 +549,7 @@ Display: `Max iterations reached. {N} issues remain.`
|
|
|
497
549
|
Offer options:
|
|
498
550
|
1. Force proceed (execute despite issues)
|
|
499
551
|
2. Provide guidance (user gives direction, retry)
|
|
500
|
-
3. Abandon (exit, user runs /
|
|
552
|
+
3. Abandon (exit, user runs /ccp:plan-phase manually)
|
|
501
553
|
|
|
502
554
|
Wait for user response.
|
|
503
555
|
</step>
|
|
@@ -507,7 +559,7 @@ Wait for user response.
|
|
|
507
559
|
|
|
508
560
|
```
|
|
509
561
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
510
|
-
|
|
562
|
+
Pilot ► FIXES READY ✓
|
|
511
563
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
512
564
|
|
|
513
565
|
**Phase {X}: {Name}** — {N} gap(s) diagnosed, {M} fix plan(s) created
|
|
@@ -525,7 +577,7 @@ Plans verified and ready for execution.
|
|
|
525
577
|
|
|
526
578
|
**Execute fixes** — run fix plans
|
|
527
579
|
|
|
528
|
-
`/clear` then `/
|
|
580
|
+
`/clear` then `/ccp:execute-phase {phase} --gaps-only`
|
|
529
581
|
|
|
530
582
|
───────────────────────────────────────────────────────────────
|
|
531
583
|
```
|
|
@@ -576,8 +628,8 @@ Default to **major** if unclear. User can correct if needed.
|
|
|
576
628
|
- [ ] Batched writes: on issue, every 5 passes, or completion
|
|
577
629
|
- [ ] Committed on completion
|
|
578
630
|
- [ ] If issues: parallel debug agents diagnose root causes
|
|
579
|
-
- [ ] If issues:
|
|
580
|
-
- [ ] If issues:
|
|
631
|
+
- [ ] If issues: ccp-planner creates fix plans (gap_closure mode)
|
|
632
|
+
- [ ] If issues: ccp-plan-checker verifies fix plans
|
|
581
633
|
- [ ] If issues: revision loop until plans pass (max 3 iterations)
|
|
582
|
-
- [ ] Ready for `/
|
|
634
|
+
- [ ] Ready for `/ccp:execute-phase --gaps-only` when complete
|
|
583
635
|
</success_criteria>
|
|
@@ -15,6 +15,7 @@ Located in `~/.claude/agents/`:
|
|
|
15
15
|
| e2e-runner | E2E testing | Critical user flows |
|
|
16
16
|
| refactor-cleaner | Dead code cleanup | Code maintenance |
|
|
17
17
|
| doc-updater | Documentation | Updating docs |
|
|
18
|
+
| rust-reviewer | Rust code review | Rust projects |
|
|
18
19
|
|
|
19
20
|
## Immediate Agent Usage
|
|
20
21
|
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# Coding Style
|
|
2
2
|
|
|
3
|
+
Check `CLAUDE.md` for which linting/formatting tools are configured. Run the lint command -- don't guess.
|
|
4
|
+
|
|
3
5
|
## Immutability (CRITICAL)
|
|
4
6
|
|
|
5
7
|
ALWAYS create new objects, NEVER mutate existing ones:
|
|
@@ -12,6 +14,15 @@ CORRECT: update(original, field, value) → returns new copy with change
|
|
|
12
14
|
|
|
13
15
|
Rationale: Immutable data prevents hidden side effects, makes debugging easier, and enables safe concurrency.
|
|
14
16
|
|
|
17
|
+
## Naming Conventions
|
|
18
|
+
|
|
19
|
+
Follow conventions already in the codebase:
|
|
20
|
+
- Components/Classes: PascalCase
|
|
21
|
+
- Functions/variables: camelCase (JS/TS), snake_case (Python/Go)
|
|
22
|
+
- Files: Match existing convention
|
|
23
|
+
- Constants: UPPER_SNAKE_CASE
|
|
24
|
+
- Database columns: snake_case
|
|
25
|
+
|
|
15
26
|
## File Organization
|
|
16
27
|
|
|
17
28
|
MANY SMALL FILES > FEW LARGE FILES:
|
|
@@ -20,6 +31,10 @@ MANY SMALL FILES > FEW LARGE FILES:
|
|
|
20
31
|
- Extract utilities from large modules
|
|
21
32
|
- Organize by feature/domain, not by type
|
|
22
33
|
|
|
34
|
+
## Imports
|
|
35
|
+
|
|
36
|
+
Order: external -> internal/aliased -> relative. Blank line between groups.
|
|
37
|
+
|
|
23
38
|
## Error Handling
|
|
24
39
|
|
|
25
40
|
ALWAYS handle errors comprehensively:
|
|
@@ -36,6 +51,12 @@ ALWAYS validate at system boundaries:
|
|
|
36
51
|
- Fail fast with clear error messages
|
|
37
52
|
- Never trust external data (API responses, user input, file content)
|
|
38
53
|
|
|
54
|
+
## Patterns
|
|
55
|
+
|
|
56
|
+
- Composition over inheritance
|
|
57
|
+
- Early returns to reduce nesting
|
|
58
|
+
- No TODO/FIXME without a ticket reference
|
|
59
|
+
|
|
39
60
|
## Code Quality Checklist
|
|
40
61
|
|
|
41
62
|
Before marking work complete:
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agentic-engineering
|
|
3
|
+
description: Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Agentic Engineering
|
|
8
|
+
|
|
9
|
+
Use this skill for engineering workflows where AI agents perform most implementation work and humans enforce quality and risk controls.
|
|
10
|
+
|
|
11
|
+
## Operating Principles
|
|
12
|
+
|
|
13
|
+
1. Define completion criteria before execution.
|
|
14
|
+
2. Decompose work into agent-sized units.
|
|
15
|
+
3. Route model tiers by task complexity.
|
|
16
|
+
4. Measure with evals and regression checks.
|
|
17
|
+
|
|
18
|
+
## Eval-First Loop
|
|
19
|
+
|
|
20
|
+
1. Define capability eval and regression eval.
|
|
21
|
+
2. Run baseline and capture failure signatures.
|
|
22
|
+
3. Execute implementation.
|
|
23
|
+
4. Re-run evals and compare deltas.
|
|
24
|
+
|
|
25
|
+
## Task Decomposition
|
|
26
|
+
|
|
27
|
+
Apply the 15-minute unit rule:
|
|
28
|
+
- each unit should be independently verifiable
|
|
29
|
+
- each unit should have a single dominant risk
|
|
30
|
+
- each unit should expose a clear done condition
|
|
31
|
+
|
|
32
|
+
## Model Routing
|
|
33
|
+
|
|
34
|
+
- Haiku: classification, boilerplate transforms, narrow edits
|
|
35
|
+
- Sonnet: implementation and refactors
|
|
36
|
+
- Opus: architecture, root-cause analysis, multi-file invariants
|
|
37
|
+
|
|
38
|
+
## Session Strategy
|
|
39
|
+
|
|
40
|
+
- Continue session for closely-coupled units.
|
|
41
|
+
- Start fresh session after major phase transitions.
|
|
42
|
+
- Compact after milestone completion, not during active debugging.
|
|
43
|
+
|
|
44
|
+
## Review Focus for AI-Generated Code
|
|
45
|
+
|
|
46
|
+
Prioritize:
|
|
47
|
+
- invariants and edge cases
|
|
48
|
+
- error boundaries
|
|
49
|
+
- security and auth assumptions
|
|
50
|
+
- hidden coupling and rollout risk
|
|
51
|
+
|
|
52
|
+
Do not waste review cycles on style-only disagreements when automated format/lint already enforce style.
|
|
53
|
+
|
|
54
|
+
## Cost Discipline
|
|
55
|
+
|
|
56
|
+
Track per task:
|
|
57
|
+
- model
|
|
58
|
+
- token estimate
|
|
59
|
+
- retries
|
|
60
|
+
- wall-clock time
|
|
61
|
+
- success/failure
|
|
62
|
+
|
|
63
|
+
Escalate model tier only when lower tier fails with a clear reasoning gap.
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ai-first-engineering
|
|
3
|
+
description: Engineering operating model for teams where AI agents generate a large share of implementation output.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# AI-First Engineering
|
|
8
|
+
|
|
9
|
+
Use this skill when designing process, reviews, and architecture for teams shipping with AI-assisted code generation.
|
|
10
|
+
|
|
11
|
+
## Process Shifts
|
|
12
|
+
|
|
13
|
+
1. Planning quality matters more than typing speed.
|
|
14
|
+
2. Eval coverage matters more than anecdotal confidence.
|
|
15
|
+
3. Review focus shifts from syntax to system behavior.
|
|
16
|
+
|
|
17
|
+
## Architecture Requirements
|
|
18
|
+
|
|
19
|
+
Prefer architectures that are agent-friendly:
|
|
20
|
+
- explicit boundaries
|
|
21
|
+
- stable contracts
|
|
22
|
+
- typed interfaces
|
|
23
|
+
- deterministic tests
|
|
24
|
+
|
|
25
|
+
Avoid implicit behavior spread across hidden conventions.
|
|
26
|
+
|
|
27
|
+
## Code Review in AI-First Teams
|
|
28
|
+
|
|
29
|
+
Review for:
|
|
30
|
+
- behavior regressions
|
|
31
|
+
- security assumptions
|
|
32
|
+
- data integrity
|
|
33
|
+
- failure handling
|
|
34
|
+
- rollout safety
|
|
35
|
+
|
|
36
|
+
Minimize time spent on style issues already covered by automation.
|
|
37
|
+
|
|
38
|
+
## Hiring and Evaluation Signals
|
|
39
|
+
|
|
40
|
+
Strong AI-first engineers:
|
|
41
|
+
- decompose ambiguous work cleanly
|
|
42
|
+
- define measurable acceptance criteria
|
|
43
|
+
- produce high-signal prompts and evals
|
|
44
|
+
- enforce risk controls under delivery pressure
|
|
45
|
+
|
|
46
|
+
## Testing Standard
|
|
47
|
+
|
|
48
|
+
Raise testing bar for generated code:
|
|
49
|
+
- required regression coverage for touched domains
|
|
50
|
+
- explicit edge-case assertions
|
|
51
|
+
- integration checks for interface boundaries
|