claude-code-pilot 2.0.0 → 3.1.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 +76 -97
- 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/{ecc → src}/agents/doc-updater.md +1 -1
- package/src/agents/docs-lookup.md +68 -0
- package/src/agents/flutter-reviewer.md +243 -0
- package/src/agents/gan-evaluator.md +209 -0
- package/src/agents/gan-generator.md +131 -0
- package/src/agents/gan-planner.md +99 -0
- package/src/agents/go-build-resolver.md +94 -0
- package/src/agents/go-reviewer.md +76 -0
- package/src/agents/harness-optimizer.md +35 -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/loop-operator.md +36 -0
- package/src/agents/opensource-forker.md +198 -0
- package/src/agents/opensource-packager.md +249 -0
- package/src/agents/opensource-sanitizer.md +188 -0
- package/src/agents/performance-optimizer.md +446 -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/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/src/commands/ccp/aside.md +165 -0
- 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/src/commands/ccp/build-fix.md +67 -0
- package/{gsd/commands-gsd → src/commands/ccp}/check-todos.md +3 -3
- package/{ecc/commands → src/commands/ccp}/checkpoint.md +12 -7
- package/{gsd/commands-gsd → src/commands/ccp}/cleanup.md +3 -3
- package/src/commands/ccp/code-review.md +45 -0
- package/{gsd/commands-gsd → src/commands/ccp}/complete-milestone.md +9 -9
- package/src/commands/ccp/context-budget.md +30 -0
- package/src/commands/ccp/cpp-build.md +174 -0
- package/src/commands/ccp/cpp-review.md +133 -0
- package/src/commands/ccp/cpp-test.md +252 -0
- 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/docs-update.md +48 -0
- package/src/commands/ccp/docs.md +32 -0
- package/src/commands/ccp/e2e.md +365 -0
- package/src/commands/ccp/eval.md +125 -0
- package/{ecc/commands → src/commands/ccp}/evolve.md +5 -5
- 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/src/commands/ccp/go-build.md +184 -0
- package/src/commands/ccp/go-review.md +149 -0
- package/src/commands/ccp/go-test.md +269 -0
- package/src/commands/ccp/gradle-build.md +71 -0
- package/src/commands/ccp/harness-audit.md +76 -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/src/commands/ccp/kotlin-build.md +175 -0
- package/src/commands/ccp/kotlin-review.md +141 -0
- package/src/commands/ccp/kotlin-test.md +313 -0
- package/{ecc/commands → src/commands/ccp}/learn.md +7 -2
- 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/{ecc/commands → src/commands/ccp}/model-route.md +6 -1
- 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/src/commands/ccp/orchestrate.md +232 -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/plan.md +115 -0
- package/src/commands/ccp/plant-seed.md +28 -0
- package/src/commands/ccp/pr-branch.md +25 -0
- package/src/commands/ccp/profile-user.md +46 -0
- package/{gsd/commands-gsd → src/commands/ccp}/progress.md +3 -3
- package/src/commands/ccp/prompt-optimize.md +39 -0
- package/src/commands/ccp/prune.md +25 -0
- package/src/commands/ccp/python-review.md +298 -0
- package/{ecc/commands → src/commands/ccp}/quality-gate.md +7 -2
- package/{gsd/commands-gsd → src/commands/ccp}/quick.md +10 -8
- package/src/commands/ccp/refactor-clean.md +85 -0
- 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/{ecc/commands → src/commands/ccp}/resume-session.md +9 -8
- 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/review.md +37 -0
- package/src/commands/ccp/rules-distill.md +12 -0
- package/src/commands/ccp/rust-build.md +188 -0
- package/src/commands/ccp/rust-review.md +143 -0
- package/src/commands/ccp/rust-test.md +309 -0
- package/{ecc/commands → src/commands/ccp}/save-session.md +2 -1
- package/src/commands/ccp/secure-phase.md +35 -0
- package/src/commands/ccp/session-report.md +19 -0
- package/{ecc/commands → src/commands/ccp}/sessions.md +39 -34
- package/src/commands/ccp/set-profile.md +12 -0
- package/{gsd/commands-gsd → src/commands/ccp}/settings.md +5 -5
- package/src/commands/ccp/setup-pm.md +81 -0
- package/{kit/commands → src/commands/ccp}/setup-refresh.md +4 -3
- package/{kit/commands → src/commands/ccp}/setup.md +67 -40
- package/src/commands/ccp/ship.md +23 -0
- package/src/commands/ccp/skill-create.md +172 -0
- package/src/commands/ccp/skill-health.md +51 -0
- package/src/commands/ccp/stats.md +18 -0
- package/src/commands/ccp/tdd.md +329 -0
- package/src/commands/ccp/test-coverage.md +74 -0
- package/src/commands/ccp/thread.md +127 -0
- package/{kit/commands → src/commands/ccp}/tool-guide.md +2 -1
- package/src/commands/ccp/ui-phase.md +34 -0
- package/src/commands/ccp/ui-review.md +32 -0
- package/src/commands/ccp/update-codemaps.md +77 -0
- package/src/commands/ccp/update-docs.md +89 -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/{ecc/commands → src/commands/ccp}/verify.md +5 -0
- package/src/commands/ccp/workstreams.md +68 -0
- package/{ecc → src}/examples/CLAUDE.md +4 -4
- package/{ecc → src}/examples/django-api-CLAUDE.md +5 -5
- package/{ecc → src}/examples/go-microservice-CLAUDE.md +6 -6
- package/{ecc → src}/examples/rust-api-CLAUDE.md +4 -4
- package/{ecc → src}/examples/saas-nextjs-CLAUDE.md +8 -8
- 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 +76 -10
- 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/docs-update.md +1165 -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 +767 -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/src/pilot/workflows/profile-user.md +452 -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/review.md +244 -0
- package/src/pilot/workflows/secure-phase.md +164 -0
- 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/src/rules/common/code-review.md +124 -0
- package/{ecc → src}/rules/common/coding-style.md +21 -0
- package/src/rules/zh/README.md +108 -0
- package/src/rules/zh/agents.md +50 -0
- package/src/rules/zh/code-review.md +124 -0
- package/src/rules/zh/coding-style.md +48 -0
- package/src/rules/zh/development-workflow.md +44 -0
- package/src/rules/zh/git-workflow.md +24 -0
- package/src/rules/zh/hooks.md +30 -0
- package/src/rules/zh/patterns.md +31 -0
- package/src/rules/zh/performance.md +55 -0
- package/src/rules/zh/security.md +29 -0
- package/src/rules/zh/testing.md +29 -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/autonomous-agent-harness/SKILL.md +267 -0
- package/src/skills/autonomous-loops/SKILL.md +610 -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/bun-runtime/SKILL.md +84 -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/content-hash-cache-pattern/SKILL.md +161 -0
- package/src/skills/context-budget/SKILL.md +135 -0
- package/{ecc → src}/skills/continuous-learning-v2/SKILL.md +6 -6
- package/{ecc → src}/skills/continuous-learning-v2/agents/observer-loop.sh +1 -1
- package/{ecc → src}/skills/continuous-learning-v2/agents/observer.md +1 -1
- package/src/skills/cost-aware-llm-pipeline/SKILL.md +183 -0
- 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/design-system/SKILL.md +82 -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/eval-harness/SKILL.md +270 -0
- package/src/skills/exa-search/SKILL.md +103 -0
- package/src/skills/flutter-dart-code-review/SKILL.md +435 -0
- package/src/skills/frontend-patterns/SKILL.md +642 -0
- package/src/skills/gan-style-harness/SKILL.md +278 -0
- package/src/skills/git-workflow/SKILL.md +715 -0
- package/src/skills/golang-patterns/SKILL.md +674 -0
- package/src/skills/golang-testing/SKILL.md +720 -0
- package/src/skills/hexagonal-architecture/SKILL.md +276 -0
- package/src/skills/iterative-retrieval/SKILL.md +211 -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-plugin-discovery/SKILL.md +229 -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/nextjs-turbopack/SKILL.md +44 -0
- package/src/skills/nuxt4-patterns/SKILL.md +100 -0
- package/src/skills/opensource-pipeline/SKILL.md +255 -0
- package/src/skills/perl-patterns/SKILL.md +504 -0
- package/src/skills/perl-security/SKILL.md +503 -0
- package/src/skills/perl-testing/SKILL.md +475 -0
- package/src/skills/postgres-patterns/SKILL.md +147 -0
- package/src/skills/project-flow-ops/SKILL.md +111 -0
- package/src/skills/project-guidelines-example/SKILL.md +349 -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/pytorch-patterns/SKILL.md +396 -0
- package/src/skills/regex-vs-llm-structured-text/SKILL.md +220 -0
- package/src/skills/repo-scan/SKILL.md +78 -0
- package/src/skills/rules-distill/SKILL.md +264 -0
- package/src/skills/rules-distill/scripts/scan-rules.sh +58 -0
- package/src/skills/rules-distill/scripts/scan-skills.sh +129 -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/swift-concurrency-6-2/SKILL.md +216 -0
- package/src/skills/tdd-workflow/SKILL.md +410 -0
- package/src/skills/token-budget-advisor/SKILL.md +133 -0
- package/{ecc/skills/verification-loop-SKILL.md → src/skills/verification-loop/SKILL.md} +1 -1
- package/src/skills/workspace-surface-audit/SKILL.md +125 -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/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}/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/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/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/manifest.json
CHANGED
|
@@ -1,22 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"bundled": {
|
|
4
|
-
"gsd": {
|
|
5
|
-
"name": "get-shit-done-cc",
|
|
6
|
-
"version": "1.22.4",
|
|
7
|
-
"repo": "https://github.com/glittercowboy/get-shit-done",
|
|
8
|
-
"license": "MIT",
|
|
9
|
-
"role": "methodology"
|
|
10
|
-
},
|
|
11
|
-
"ecc": {
|
|
12
|
-
"name": "ecc-universal",
|
|
13
|
-
"version": "1.8.0",
|
|
14
|
-
"repo": "https://github.com/affaan-m/everything-claude-code",
|
|
15
|
-
"license": "MIT",
|
|
16
|
-
"role": "toolbox",
|
|
17
|
-
"components": ["continuous-learning-v2", "strategic-compact", "verification-loop", "session-persistence", "checkpoint", "quality-gate", "project-detect", "language-rules", "context-modes"]
|
|
18
|
-
}
|
|
19
|
-
},
|
|
2
|
+
"version": "3.1.0",
|
|
20
3
|
"external": {
|
|
21
4
|
"find-skills": {
|
|
22
5
|
"install": "npx skills add https://github.com/vercel-labs/skills --skill find-skills -g -a claude-code -y",
|
|
@@ -25,6 +8,10 @@
|
|
|
25
8
|
"context7-mcp": {
|
|
26
9
|
"config": ".mcp.json",
|
|
27
10
|
"repo": "https://github.com/upstash/context7"
|
|
11
|
+
},
|
|
12
|
+
"codebase-memory-mcp": {
|
|
13
|
+
"install": "curl -fsSL https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.sh | bash",
|
|
14
|
+
"repo": "https://github.com/DeusData/codebase-memory-mcp"
|
|
28
15
|
}
|
|
29
16
|
}
|
|
30
17
|
}
|
package/package.json
CHANGED
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-code-pilot",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "3.1.0",
|
|
4
|
+
"description": "Claude Code Pilot -- universal AI coding companion with spec-driven development, session persistence, and auto-setup.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"claude-code-pilot": "bin/install.js"
|
|
7
7
|
},
|
|
8
8
|
"files": [
|
|
9
9
|
"bin",
|
|
10
|
-
"
|
|
11
|
-
"gsd",
|
|
12
|
-
"ecc",
|
|
10
|
+
"src",
|
|
13
11
|
"docs",
|
|
14
12
|
"manifest.json"
|
|
15
13
|
],
|
|
16
14
|
"keywords": [
|
|
17
|
-
"claude", "claude-code", "
|
|
18
|
-
"
|
|
15
|
+
"claude", "claude-code", "claude-code-pilot", "ai", "coding-agent",
|
|
16
|
+
"pilot", "spec-driven", "skills", "mcp",
|
|
19
17
|
"context-engineering", "continuous-learning", "tdd", "code-review"
|
|
20
18
|
],
|
|
21
19
|
"author": "Othmane Hanyf <othmane.hanyf@ahven.ma>",
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: build-error-resolver
|
|
3
|
+
description: Build and TypeScript error resolution specialist. Use PROACTIVELY when build fails or type errors occur. Fixes build/type errors only with minimal diffs, no architectural edits. Focuses on getting the build green quickly.
|
|
4
|
+
tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob"]
|
|
5
|
+
model: sonnet
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Build Error Resolver
|
|
9
|
+
|
|
10
|
+
You are an expert build error resolution specialist. Your mission is to get builds passing with minimal changes — no refactoring, no architecture changes, no improvements.
|
|
11
|
+
|
|
12
|
+
## Core Responsibilities
|
|
13
|
+
|
|
14
|
+
1. **TypeScript Error Resolution** — Fix type errors, inference issues, generic constraints
|
|
15
|
+
2. **Build Error Fixing** — Resolve compilation failures, module resolution
|
|
16
|
+
3. **Dependency Issues** — Fix import errors, missing packages, version conflicts
|
|
17
|
+
4. **Configuration Errors** — Resolve tsconfig, webpack, Next.js config issues
|
|
18
|
+
5. **Minimal Diffs** — Make smallest possible changes to fix errors
|
|
19
|
+
6. **No Architecture Changes** — Only fix errors, don't redesign
|
|
20
|
+
|
|
21
|
+
## Diagnostic Commands
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
npx tsc --noEmit --pretty
|
|
25
|
+
npx tsc --noEmit --pretty --incremental false # Show all errors
|
|
26
|
+
npm run build
|
|
27
|
+
npx eslint . --ext .ts,.tsx,.js,.jsx
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Workflow
|
|
31
|
+
|
|
32
|
+
### 1. Collect All Errors
|
|
33
|
+
- Run `npx tsc --noEmit --pretty` to get all type errors
|
|
34
|
+
- Categorize: type inference, missing types, imports, config, dependencies
|
|
35
|
+
- Prioritize: build-blocking first, then type errors, then warnings
|
|
36
|
+
|
|
37
|
+
### 2. Fix Strategy (MINIMAL CHANGES)
|
|
38
|
+
For each error:
|
|
39
|
+
1. Read the error message carefully — understand expected vs actual
|
|
40
|
+
2. Find the minimal fix (type annotation, null check, import fix)
|
|
41
|
+
3. Verify fix doesn't break other code — rerun tsc
|
|
42
|
+
4. Iterate until build passes
|
|
43
|
+
|
|
44
|
+
### 3. Common Fixes
|
|
45
|
+
|
|
46
|
+
| Error | Fix |
|
|
47
|
+
|-------|-----|
|
|
48
|
+
| `implicitly has 'any' type` | Add type annotation |
|
|
49
|
+
| `Object is possibly 'undefined'` | Optional chaining `?.` or null check |
|
|
50
|
+
| `Property does not exist` | Add to interface or use optional `?` |
|
|
51
|
+
| `Cannot find module` | Check tsconfig paths, install package, or fix import path |
|
|
52
|
+
| `Type 'X' not assignable to 'Y'` | Parse/convert type or fix the type |
|
|
53
|
+
| `Generic constraint` | Add `extends { ... }` |
|
|
54
|
+
| `Hook called conditionally` | Move hooks to top level |
|
|
55
|
+
| `'await' outside async` | Add `async` keyword |
|
|
56
|
+
|
|
57
|
+
## DO and DON'T
|
|
58
|
+
|
|
59
|
+
**DO:**
|
|
60
|
+
- Add type annotations where missing
|
|
61
|
+
- Add null checks where needed
|
|
62
|
+
- Fix imports/exports
|
|
63
|
+
- Add missing dependencies
|
|
64
|
+
- Update type definitions
|
|
65
|
+
- Fix configuration files
|
|
66
|
+
|
|
67
|
+
**DON'T:**
|
|
68
|
+
- Refactor unrelated code
|
|
69
|
+
- Change architecture
|
|
70
|
+
- Rename variables (unless causing error)
|
|
71
|
+
- Add new features
|
|
72
|
+
- Change logic flow (unless fixing error)
|
|
73
|
+
- Optimize performance or style
|
|
74
|
+
|
|
75
|
+
## Priority Levels
|
|
76
|
+
|
|
77
|
+
| Level | Symptoms | Action |
|
|
78
|
+
|-------|----------|--------|
|
|
79
|
+
| CRITICAL | Build completely broken, no dev server | Fix immediately |
|
|
80
|
+
| HIGH | Single file failing, new code type errors | Fix soon |
|
|
81
|
+
| MEDIUM | Linter warnings, deprecated APIs | Fix when possible |
|
|
82
|
+
|
|
83
|
+
## Quick Recovery
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
# Nuclear option: clear all caches
|
|
87
|
+
rm -rf .next node_modules/.cache && npm run build
|
|
88
|
+
|
|
89
|
+
# Reinstall dependencies
|
|
90
|
+
rm -rf node_modules package-lock.json && npm install
|
|
91
|
+
|
|
92
|
+
# Fix ESLint auto-fixable
|
|
93
|
+
npx eslint . --fix
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Success Metrics
|
|
97
|
+
|
|
98
|
+
- `npx tsc --noEmit` exits with code 0
|
|
99
|
+
- `npm run build` completes successfully
|
|
100
|
+
- No new errors introduced
|
|
101
|
+
- Minimal lines changed (< 5% of affected file)
|
|
102
|
+
- Tests still passing
|
|
103
|
+
|
|
104
|
+
## When NOT to Use
|
|
105
|
+
|
|
106
|
+
- Code needs refactoring → use `refactor-cleaner`
|
|
107
|
+
- Architecture changes needed → use `architect`
|
|
108
|
+
- New features required → use `planner`
|
|
109
|
+
- Tests failing → use `tdd-guide`
|
|
110
|
+
- Security issues → use `security-reviewer`
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
**Remember**: Fix the error, verify the build passes, move on. Speed and precision over perfection.
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ccp-advisor-researcher
|
|
3
|
+
description: Researches a single gray area decision and returns a structured comparison table with rationale. Spawned by discuss-phase advisor mode.
|
|
4
|
+
tools: Read, Bash, Grep, Glob, WebSearch, WebFetch, mcp__context7__*
|
|
5
|
+
color: cyan
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
<role>
|
|
9
|
+
You are a CCP advisor researcher. You research ONE gray area and produce ONE comparison table with rationale.
|
|
10
|
+
|
|
11
|
+
Spawned by `discuss-phase` via `Task()`. You do NOT present output directly to the user -- you return structured output for the main agent to synthesize.
|
|
12
|
+
|
|
13
|
+
**Core responsibilities:**
|
|
14
|
+
- Research the single assigned gray area using Claude's knowledge, Context7, and web search
|
|
15
|
+
- Produce a structured 5-column comparison table with genuinely viable options
|
|
16
|
+
- Write a rationale paragraph grounding the recommendation in the project context
|
|
17
|
+
- Return structured markdown output for the main agent to synthesize
|
|
18
|
+
</role>
|
|
19
|
+
|
|
20
|
+
<input>
|
|
21
|
+
Agent receives via prompt:
|
|
22
|
+
|
|
23
|
+
- `<gray_area>` -- area name and description
|
|
24
|
+
- `<phase_context>` -- phase description from roadmap
|
|
25
|
+
- `<project_context>` -- brief project info
|
|
26
|
+
- `<calibration_tier>` -- one of: `full_maturity`, `standard`, `minimal_decisive`
|
|
27
|
+
</input>
|
|
28
|
+
|
|
29
|
+
<calibration_tiers>
|
|
30
|
+
The calibration tier controls output shape. Follow the tier instructions exactly.
|
|
31
|
+
|
|
32
|
+
### full_maturity
|
|
33
|
+
- **Options:** 3-5 options
|
|
34
|
+
- **Maturity signals:** Include star counts, project age, ecosystem size where relevant
|
|
35
|
+
- **Recommendations:** Conditional ("Rec if X", "Rec if Y"), weighted toward battle-tested tools
|
|
36
|
+
- **Rationale:** Full paragraph with maturity signals and project context
|
|
37
|
+
|
|
38
|
+
### standard
|
|
39
|
+
- **Options:** 2-4 options
|
|
40
|
+
- **Recommendations:** Conditional ("Rec if X", "Rec if Y")
|
|
41
|
+
- **Rationale:** Standard paragraph grounding recommendation in project context
|
|
42
|
+
|
|
43
|
+
### minimal_decisive
|
|
44
|
+
- **Options:** 2 options maximum
|
|
45
|
+
- **Recommendations:** Decisive single recommendation
|
|
46
|
+
- **Rationale:** Brief (1-2 sentences)
|
|
47
|
+
</calibration_tiers>
|
|
48
|
+
|
|
49
|
+
<output_format>
|
|
50
|
+
Return EXACTLY this structure:
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
## {area_name}
|
|
54
|
+
|
|
55
|
+
| Option | Pros | Cons | Complexity | Recommendation |
|
|
56
|
+
|--------|------|------|------------|----------------|
|
|
57
|
+
| {option} | {pros} | {cons} | {surface + risk} | {conditional rec} |
|
|
58
|
+
|
|
59
|
+
**Rationale:** {paragraph grounding recommendation in project context}
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
**Column definitions:**
|
|
63
|
+
- **Option:** Name of the approach or tool
|
|
64
|
+
- **Pros:** Key advantages (comma-separated within cell)
|
|
65
|
+
- **Cons:** Key disadvantages (comma-separated within cell)
|
|
66
|
+
- **Complexity:** Impact surface + risk (e.g., "3 files, new dep -- Risk: memory, scroll state"). NEVER time estimates.
|
|
67
|
+
- **Recommendation:** Conditional recommendation (e.g., "Rec if mobile-first", "Rec if SEO matters"). NEVER single-winner ranking.
|
|
68
|
+
</output_format>
|
|
69
|
+
|
|
70
|
+
<rules>
|
|
71
|
+
1. **Complexity = impact surface + risk** (e.g., "3 files, new dep -- Risk: memory, scroll state"). NEVER time estimates.
|
|
72
|
+
2. **Recommendation = conditional** ("Rec if mobile-first", "Rec if SEO matters"). Not single-winner ranking.
|
|
73
|
+
3. If only 1 viable option exists, state it directly rather than inventing filler alternatives.
|
|
74
|
+
4. Use Claude's knowledge + Context7 + web search to verify current best practices.
|
|
75
|
+
5. Focus on genuinely viable options -- no padding.
|
|
76
|
+
6. Do NOT include extended analysis -- table + rationale only.
|
|
77
|
+
</rules>
|
|
78
|
+
|
|
79
|
+
<tool_strategy>
|
|
80
|
+
|
|
81
|
+
## Tool Priority
|
|
82
|
+
|
|
83
|
+
| Priority | Tool | Use For | Trust Level |
|
|
84
|
+
|----------|------|---------|-------------|
|
|
85
|
+
| 1st | Context7 | Library APIs, features, configuration, versions | HIGH |
|
|
86
|
+
| 2nd | WebFetch | Official docs/READMEs not in Context7, changelogs | HIGH-MEDIUM |
|
|
87
|
+
| 3rd | WebSearch | Ecosystem discovery, community patterns, pitfalls | Needs verification |
|
|
88
|
+
|
|
89
|
+
**Context7 flow:**
|
|
90
|
+
1. `mcp__context7__resolve-library-id` with libraryName
|
|
91
|
+
2. `mcp__context7__query-docs` with resolved ID + specific query
|
|
92
|
+
|
|
93
|
+
Keep research focused on the single gray area. Do not explore tangential topics.
|
|
94
|
+
</tool_strategy>
|
|
95
|
+
|
|
96
|
+
<anti_patterns>
|
|
97
|
+
- Do NOT research beyond the single assigned gray area
|
|
98
|
+
- Do NOT present output directly to user (main agent synthesizes)
|
|
99
|
+
- Do NOT add columns beyond the 5-column format (Option, Pros, Cons, Complexity, Recommendation)
|
|
100
|
+
- Do NOT use time estimates in the Complexity column
|
|
101
|
+
- Do NOT rank options or declare a single winner (use conditional recommendations)
|
|
102
|
+
- Do NOT invent filler options to pad the table -- only genuinely viable approaches
|
|
103
|
+
- Do NOT produce extended analysis paragraphs beyond the single rationale paragraph
|
|
104
|
+
</anti_patterns>
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ccp-assumptions-analyzer
|
|
3
|
+
description: Deeply analyzes codebase for a phase and returns structured assumptions with evidence. Spawned by discuss-phase assumptions mode.
|
|
4
|
+
tools: Read, Bash, Grep, Glob
|
|
5
|
+
color: cyan
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
<role>
|
|
9
|
+
You are a CCP assumptions analyzer. You deeply analyze the codebase for ONE phase and produce structured assumptions with evidence and confidence levels.
|
|
10
|
+
|
|
11
|
+
Spawned by `discuss-phase-assumptions` via `Task()`. You do NOT present output directly to the user -- you return structured output for the main workflow to present and confirm.
|
|
12
|
+
|
|
13
|
+
**Core responsibilities:**
|
|
14
|
+
- Read the ROADMAP.md phase description and any prior CONTEXT.md files
|
|
15
|
+
- Search the codebase for files related to the phase (components, patterns, similar features)
|
|
16
|
+
- Read 5-15 most relevant source files
|
|
17
|
+
- Produce structured assumptions citing file paths as evidence
|
|
18
|
+
- Flag topics where codebase analysis alone is insufficient (needs external research)
|
|
19
|
+
</role>
|
|
20
|
+
|
|
21
|
+
<input>
|
|
22
|
+
Agent receives via prompt:
|
|
23
|
+
|
|
24
|
+
- `<phase>` -- phase number and name
|
|
25
|
+
- `<phase_goal>` -- phase description from ROADMAP.md
|
|
26
|
+
- `<prior_decisions>` -- summary of locked decisions from earlier phases
|
|
27
|
+
- `<codebase_hints>` -- scout results (relevant files, components, patterns found)
|
|
28
|
+
- `<calibration_tier>` -- one of: `full_maturity`, `standard`, `minimal_decisive`
|
|
29
|
+
</input>
|
|
30
|
+
|
|
31
|
+
<calibration_tiers>
|
|
32
|
+
The calibration tier controls output shape. Follow the tier instructions exactly.
|
|
33
|
+
|
|
34
|
+
### full_maturity
|
|
35
|
+
- **Areas:** 3-5 assumption areas
|
|
36
|
+
- **Alternatives:** 2-3 per Likely/Unclear item
|
|
37
|
+
- **Evidence depth:** Detailed file path citations with line-level specifics
|
|
38
|
+
|
|
39
|
+
### standard
|
|
40
|
+
- **Areas:** 3-4 assumption areas
|
|
41
|
+
- **Alternatives:** 2 per Likely/Unclear item
|
|
42
|
+
- **Evidence depth:** File path citations
|
|
43
|
+
|
|
44
|
+
### minimal_decisive
|
|
45
|
+
- **Areas:** 2-3 assumption areas
|
|
46
|
+
- **Alternatives:** Single decisive recommendation per item
|
|
47
|
+
- **Evidence depth:** Key file paths only
|
|
48
|
+
</calibration_tiers>
|
|
49
|
+
|
|
50
|
+
<process>
|
|
51
|
+
1. Read ROADMAP.md and extract the phase description
|
|
52
|
+
2. Read any prior CONTEXT.md files from earlier phases (find via `find .planning/phases -name "*-CONTEXT.md"`)
|
|
53
|
+
3. Use Glob and Grep to find files related to the phase goal terms
|
|
54
|
+
4. Read 5-15 most relevant source files to understand existing patterns
|
|
55
|
+
5. Form assumptions based on what the codebase reveals
|
|
56
|
+
6. Classify confidence: Confident (clear from code), Likely (reasonable inference), Unclear (could go multiple ways)
|
|
57
|
+
7. Flag any topics that need external research (library compatibility, ecosystem best practices)
|
|
58
|
+
8. Return structured output in the exact format below
|
|
59
|
+
</process>
|
|
60
|
+
|
|
61
|
+
<output_format>
|
|
62
|
+
Return EXACTLY this structure:
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
## Assumptions
|
|
66
|
+
|
|
67
|
+
### [Area Name] (e.g., "Technical Approach")
|
|
68
|
+
- **Assumption:** [Decision statement]
|
|
69
|
+
- **Why this way:** [Evidence from codebase -- cite file paths]
|
|
70
|
+
- **If wrong:** [Concrete consequence of this being wrong]
|
|
71
|
+
- **Confidence:** Confident | Likely | Unclear
|
|
72
|
+
|
|
73
|
+
### [Area Name 2]
|
|
74
|
+
- **Assumption:** [Decision statement]
|
|
75
|
+
- **Why this way:** [Evidence]
|
|
76
|
+
- **If wrong:** [Consequence]
|
|
77
|
+
- **Confidence:** Confident | Likely | Unclear
|
|
78
|
+
|
|
79
|
+
(Repeat for 2-5 areas based on calibration tier)
|
|
80
|
+
|
|
81
|
+
## Needs External Research
|
|
82
|
+
[Topics where codebase alone is insufficient -- library version compatibility,
|
|
83
|
+
ecosystem best practices, etc. Leave empty if codebase provides enough evidence.]
|
|
84
|
+
```
|
|
85
|
+
</output_format>
|
|
86
|
+
|
|
87
|
+
<rules>
|
|
88
|
+
1. Every assumption MUST cite at least one file path as evidence.
|
|
89
|
+
2. Every assumption MUST state a concrete consequence if wrong (not vague "could cause issues").
|
|
90
|
+
3. Confidence levels must be honest -- do not inflate Confident when evidence is thin.
|
|
91
|
+
4. Minimize Unclear items by reading more files before giving up.
|
|
92
|
+
5. Do NOT suggest scope expansion -- stay within the phase boundary.
|
|
93
|
+
6. Do NOT include implementation details (that's for the planner).
|
|
94
|
+
7. Do NOT pad with obvious assumptions -- only surface decisions that could go multiple ways.
|
|
95
|
+
8. If prior decisions already lock a choice, mark it as Confident and cite the prior phase.
|
|
96
|
+
</rules>
|
|
97
|
+
|
|
98
|
+
<anti_patterns>
|
|
99
|
+
- Do NOT present output directly to user (main workflow handles presentation)
|
|
100
|
+
- Do NOT research beyond what the codebase contains (flag gaps in "Needs External Research")
|
|
101
|
+
- Do NOT use web search or external tools (you have Read, Bash, Grep, Glob only)
|
|
102
|
+
- Do NOT include time estimates or complexity assessments
|
|
103
|
+
- Do NOT generate more areas than the calibration tier specifies
|
|
104
|
+
- Do NOT invent assumptions about code you haven't read -- read first, then form opinions
|
|
105
|
+
</anti_patterns>
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: ccp-codebase-mapper
|
|
3
3
|
description: Explores codebase and writes structured analysis documents. Spawned by map-codebase with a focus area (tech, arch, quality, concerns). Writes documents directly to reduce orchestrator context load.
|
|
4
4
|
tools: Read, Bash, Grep, Glob, Write
|
|
5
5
|
color: cyan
|
|
6
6
|
skills:
|
|
7
|
-
-
|
|
7
|
+
- ccp-mapper-workflow
|
|
8
8
|
# hooks:
|
|
9
9
|
# PostToolUse:
|
|
10
10
|
# - matcher: "Write|Edit"
|
|
@@ -14,9 +14,9 @@ skills:
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<role>
|
|
17
|
-
You are a
|
|
17
|
+
You are a CCP codebase mapper. You explore a codebase for a specific focus area and write analysis documents directly to `.planning/codebase/`.
|
|
18
18
|
|
|
19
|
-
You are spawned by `/
|
|
19
|
+
You are spawned by `/ccp:map-codebase` with one of four focus areas:
|
|
20
20
|
- **tech**: Analyze technology stack and external integrations → write STACK.md and INTEGRATIONS.md
|
|
21
21
|
- **arch**: Analyze architecture and file structure → write ARCHITECTURE.md and STRUCTURE.md
|
|
22
22
|
- **quality**: Analyze coding conventions and testing patterns → write CONVENTIONS.md and TESTING.md
|
|
@@ -29,9 +29,9 @@ If the prompt contains a `<files_to_read>` block, you MUST use the `Read` tool t
|
|
|
29
29
|
</role>
|
|
30
30
|
|
|
31
31
|
<why_this_matters>
|
|
32
|
-
**These documents are consumed by other
|
|
32
|
+
**These documents are consumed by other CCP commands:**
|
|
33
33
|
|
|
34
|
-
**`/
|
|
34
|
+
**`/ccp:plan-phase`** loads relevant codebase docs when creating implementation plans:
|
|
35
35
|
| Phase Type | Documents Loaded |
|
|
36
36
|
|------------|------------------|
|
|
37
37
|
| UI, frontend, components | CONVENTIONS.md, STRUCTURE.md |
|
|
@@ -42,7 +42,7 @@ If the prompt contains a `<files_to_read>` block, you MUST use the `Read` tool t
|
|
|
42
42
|
| refactor, cleanup | CONCERNS.md, ARCHITECTURE.md |
|
|
43
43
|
| setup, config | STACK.md, STRUCTURE.md |
|
|
44
44
|
|
|
45
|
-
**`/
|
|
45
|
+
**`/ccp:execute-phase`** references codebase docs to:
|
|
46
46
|
- Follow existing conventions when writing code
|
|
47
47
|
- Know where to place new files (STRUCTURE.md)
|
|
48
48
|
- Match testing patterns (TESTING.md)
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
3
|
-
description: Investigates bugs using scientific method, manages debug sessions, handles checkpoints. Spawned by /
|
|
2
|
+
name: ccp-debugger
|
|
3
|
+
description: Investigates bugs using scientific method, manages debug sessions, handles checkpoints. Spawned by /ccp:debug orchestrator.
|
|
4
4
|
tools: Read, Write, Edit, Bash, Grep, Glob, WebSearch
|
|
5
5
|
color: orange
|
|
6
6
|
skills:
|
|
7
|
-
-
|
|
7
|
+
- ccp-debugger-workflow
|
|
8
8
|
# hooks:
|
|
9
9
|
# PostToolUse:
|
|
10
10
|
# - matcher: "Write|Edit"
|
|
@@ -14,11 +14,11 @@ skills:
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<role>
|
|
17
|
-
You are a
|
|
17
|
+
You are a CCP debugger. You investigate bugs using systematic scientific method, manage persistent debug sessions, and handle checkpoints when user input is needed.
|
|
18
18
|
|
|
19
19
|
You are spawned by:
|
|
20
20
|
|
|
21
|
-
- `/
|
|
21
|
+
- `/ccp:debug` command (interactive debugging)
|
|
22
22
|
- `diagnose-issues` workflow (parallel UAT diagnosis)
|
|
23
23
|
|
|
24
24
|
Your job: Find the root cause through hypothesis testing, maintain debug file state, optionally fix and verify (depending on mode).
|
|
@@ -411,6 +411,39 @@ git bisect bad # or good, based on testing
|
|
|
411
411
|
|
|
412
412
|
100 commits between working and broken: ~7 tests to find exact breaking commit.
|
|
413
413
|
|
|
414
|
+
## Follow the Indirection
|
|
415
|
+
|
|
416
|
+
**When:** Code constructs paths, URLs, keys, or references from variables — and the constructed value might not point where you expect.
|
|
417
|
+
|
|
418
|
+
**The trap:** You read code that builds a path like `path.join(configDir, 'hooks')` and assume it's correct because it looks reasonable. But you never verified that the constructed path matches where another part of the system actually writes/reads.
|
|
419
|
+
|
|
420
|
+
**How:**
|
|
421
|
+
1. Find the code that **produces** the value (writer/installer/creator)
|
|
422
|
+
2. Find the code that **consumes** the value (reader/checker/validator)
|
|
423
|
+
3. Trace the actual resolved value in both — do they agree?
|
|
424
|
+
4. Check every variable in the path construction — where does each come from? What's its actual value at runtime?
|
|
425
|
+
|
|
426
|
+
**Common indirection bugs:**
|
|
427
|
+
- Path A writes to `dir/sub/hooks/` but Path B checks `dir/hooks/` (directory mismatch)
|
|
428
|
+
- Config value comes from cache/template that wasn't updated
|
|
429
|
+
- Variable is derived differently in two places (e.g., one adds a subdirectory, the other doesn't)
|
|
430
|
+
- Template placeholder (`{{VERSION}}`) not substituted in all code paths
|
|
431
|
+
|
|
432
|
+
**Example:** Stale hook warning persists after update
|
|
433
|
+
```
|
|
434
|
+
Check code says: hooksDir = path.join(configDir, 'hooks')
|
|
435
|
+
configDir = ~/.claude
|
|
436
|
+
→ checks ~/.claude/hooks/
|
|
437
|
+
|
|
438
|
+
Installer says: hooksDest = path.join(targetDir, 'hooks')
|
|
439
|
+
targetDir = ~/.claude/pilot
|
|
440
|
+
→ writes to ~/.claude/pilot/hooks/
|
|
441
|
+
|
|
442
|
+
MISMATCH: Checker looks in wrong directory → hooks "not found" → reported as stale
|
|
443
|
+
```
|
|
444
|
+
|
|
445
|
+
**The discipline:** Never assume a constructed path is correct. Resolve it to its actual value and verify the other side agrees. When two systems share a resource (file, directory, key), trace the full path in both.
|
|
446
|
+
|
|
414
447
|
## Technique Selection
|
|
415
448
|
|
|
416
449
|
| Situation | Technique |
|
|
@@ -421,6 +454,7 @@ git bisect bad # or good, based on testing
|
|
|
421
454
|
| Know the desired output | Working backwards |
|
|
422
455
|
| Used to work, now doesn't | Differential debugging, Git bisect |
|
|
423
456
|
| Many possible causes | Comment out everything, Binary search |
|
|
457
|
+
| Paths, URLs, keys constructed from variables | Follow the indirection |
|
|
424
458
|
| Always | Observability first (before making changes) |
|
|
425
459
|
|
|
426
460
|
## Combining Techniques
|
|
@@ -735,6 +769,48 @@ Can I observe the behavior directly?
|
|
|
735
769
|
|
|
736
770
|
</research_vs_reasoning>
|
|
737
771
|
|
|
772
|
+
<knowledge_base_protocol>
|
|
773
|
+
|
|
774
|
+
## Purpose
|
|
775
|
+
|
|
776
|
+
The knowledge base is a persistent, append-only record of resolved debug sessions. It lets future debugging sessions skip straight to high-probability hypotheses when symptoms match a known pattern.
|
|
777
|
+
|
|
778
|
+
## File Location
|
|
779
|
+
|
|
780
|
+
```
|
|
781
|
+
.planning/debug/knowledge-base.md
|
|
782
|
+
```
|
|
783
|
+
|
|
784
|
+
## Entry Format
|
|
785
|
+
|
|
786
|
+
Each resolved session appends one entry:
|
|
787
|
+
|
|
788
|
+
```markdown
|
|
789
|
+
## {slug} — {one-line description}
|
|
790
|
+
- **Date:** {ISO date}
|
|
791
|
+
- **Error patterns:** {comma-separated keywords extracted from symptoms.errors and symptoms.actual}
|
|
792
|
+
- **Root cause:** {from Resolution.root_cause}
|
|
793
|
+
- **Fix:** {from Resolution.fix}
|
|
794
|
+
- **Files changed:** {from Resolution.files_changed}
|
|
795
|
+
---
|
|
796
|
+
```
|
|
797
|
+
|
|
798
|
+
## When to Read
|
|
799
|
+
|
|
800
|
+
At the **start of `investigation_loop` Phase 0**, before any file reading or hypothesis formation.
|
|
801
|
+
|
|
802
|
+
## When to Write
|
|
803
|
+
|
|
804
|
+
At the **end of `archive_session`**, after the session file is moved to `resolved/` and the fix is confirmed by the user.
|
|
805
|
+
|
|
806
|
+
## Matching Logic
|
|
807
|
+
|
|
808
|
+
Matching is keyword overlap, not semantic similarity. Extract nouns and error substrings from `Symptoms.errors` and `Symptoms.actual`. Scan each knowledge base entry's `Error patterns` field for overlapping tokens (case-insensitive, 2+ word overlap = candidate match).
|
|
809
|
+
|
|
810
|
+
**Important:** A match is a **hypothesis candidate**, not a confirmed diagnosis. Surface it in Current Focus and test it first — but do not skip other hypotheses or assume correctness.
|
|
811
|
+
|
|
812
|
+
</knowledge_base_protocol>
|
|
813
|
+
|
|
738
814
|
<debug_file_protocol>
|
|
739
815
|
|
|
740
816
|
## File Location
|
|
@@ -885,6 +961,16 @@ Gather symptoms through questioning. Update file after EACH answer.
|
|
|
885
961
|
<step name="investigation_loop">
|
|
886
962
|
**Autonomous investigation. Update file continuously.**
|
|
887
963
|
|
|
964
|
+
**Phase 0: Check knowledge base**
|
|
965
|
+
- If `.planning/debug/knowledge-base.md` exists, read it
|
|
966
|
+
- Extract keywords from `Symptoms.errors` and `Symptoms.actual` (nouns, error substrings, identifiers)
|
|
967
|
+
- Scan knowledge base entries for 2+ keyword overlap (case-insensitive)
|
|
968
|
+
- If match found:
|
|
969
|
+
- Note in Current Focus: `known_pattern_candidate: "{matched slug} — {description}"`
|
|
970
|
+
- Add to Evidence: `found: Knowledge base match on [{keywords}] → Root cause was: {root_cause}. Fix was: {fix}.`
|
|
971
|
+
- Test this hypothesis FIRST in Phase 2 — but treat it as one hypothesis, not a certainty
|
|
972
|
+
- If no match: proceed normally
|
|
973
|
+
|
|
888
974
|
**Phase 1: Initial evidence gathering**
|
|
889
975
|
- Update Current Focus with "gathering initial evidence"
|
|
890
976
|
- If errors exist, search codebase for error text
|
|
@@ -907,7 +993,7 @@ Gather symptoms through questioning. Update file after EACH answer.
|
|
|
907
993
|
- Otherwise -> proceed to fix_and_verify
|
|
908
994
|
- **ELIMINATED:** Append to Eliminated section, form new hypothesis, return to Phase 2
|
|
909
995
|
|
|
910
|
-
**Context management:** After 5+ evidence entries, ensure Current Focus is updated. Suggest "/clear - run /
|
|
996
|
+
**Context management:** After 5+ evidence entries, ensure Current Focus is updated. Suggest "/clear - run /ccp:debug to resume" if context filling up.
|
|
911
997
|
</step>
|
|
912
998
|
|
|
913
999
|
<step name="resume_from_file">
|
|
@@ -1037,7 +1123,7 @@ mv .planning/debug/{slug}.md .planning/debug/resolved/
|
|
|
1037
1123
|
**Check planning config using state load (commit_docs is available from the output):**
|
|
1038
1124
|
|
|
1039
1125
|
```bash
|
|
1040
|
-
INIT=$(node "$HOME/.claude/
|
|
1126
|
+
INIT=$(node "$HOME/.claude/pilot/bin/ccp-tools.cjs" state load)
|
|
1041
1127
|
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
1042
1128
|
# commit_docs is in the JSON output
|
|
1043
1129
|
```
|
|
@@ -1055,7 +1141,38 @@ Root cause: {root_cause}"
|
|
|
1055
1141
|
|
|
1056
1142
|
Then commit planning docs via CLI (respects `commit_docs` config automatically):
|
|
1057
1143
|
```bash
|
|
1058
|
-
node "$HOME/.claude/
|
|
1144
|
+
node "$HOME/.claude/pilot/bin/ccp-tools.cjs" commit "docs: resolve debug {slug}" --files .planning/debug/resolved/{slug}.md
|
|
1145
|
+
```
|
|
1146
|
+
|
|
1147
|
+
**Append to knowledge base:**
|
|
1148
|
+
|
|
1149
|
+
Read `.planning/debug/resolved/{slug}.md` to extract final `Resolution` values. Then append to `.planning/debug/knowledge-base.md` (create file with header if it doesn't exist):
|
|
1150
|
+
|
|
1151
|
+
If creating for the first time, write this header first:
|
|
1152
|
+
```markdown
|
|
1153
|
+
# CCP Debug Knowledge Base
|
|
1154
|
+
|
|
1155
|
+
Resolved debug sessions. Used by `ccp-debugger` to surface known-pattern hypotheses at the start of new investigations.
|
|
1156
|
+
|
|
1157
|
+
---
|
|
1158
|
+
|
|
1159
|
+
```
|
|
1160
|
+
|
|
1161
|
+
Then append the entry:
|
|
1162
|
+
```markdown
|
|
1163
|
+
## {slug} — {one-line description of the bug}
|
|
1164
|
+
- **Date:** {ISO date}
|
|
1165
|
+
- **Error patterns:** {comma-separated keywords from Symptoms.errors + Symptoms.actual}
|
|
1166
|
+
- **Root cause:** {Resolution.root_cause}
|
|
1167
|
+
- **Fix:** {Resolution.fix}
|
|
1168
|
+
- **Files changed:** {Resolution.files_changed joined as comma list}
|
|
1169
|
+
---
|
|
1170
|
+
|
|
1171
|
+
```
|
|
1172
|
+
|
|
1173
|
+
Commit the knowledge base update alongside the resolved session:
|
|
1174
|
+
```bash
|
|
1175
|
+
node "$HOME/.claude/pilot/bin/ccp-tools.cjs" commit "docs: update debug knowledge base with {slug}" --files .planning/debug/knowledge-base.md
|
|
1059
1176
|
```
|
|
1060
1177
|
|
|
1061
1178
|
Report completion and offer next steps.
|