gsd-remix 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +939 -0
- package/README.zh-CN.md +876 -0
- package/agents/gsd-advisor-researcher.md +127 -0
- package/agents/gsd-ai-researcher.md +133 -0
- package/agents/gsd-assumptions-analyzer.md +105 -0
- package/agents/gsd-code-fixer.md +517 -0
- package/agents/gsd-code-reviewer.md +371 -0
- package/agents/gsd-codebase-mapper.md +781 -0
- package/agents/gsd-debug-session-manager.md +314 -0
- package/agents/gsd-debugger.md +1452 -0
- package/agents/gsd-doc-classifier.md +168 -0
- package/agents/gsd-doc-synthesizer.md +204 -0
- package/agents/gsd-doc-verifier.md +217 -0
- package/agents/gsd-doc-writer.md +615 -0
- package/agents/gsd-domain-researcher.md +153 -0
- package/agents/gsd-eval-auditor.md +191 -0
- package/agents/gsd-eval-planner.md +154 -0
- package/agents/gsd-executor.md +603 -0
- package/agents/gsd-framework-selector.md +160 -0
- package/agents/gsd-integration-checker.md +470 -0
- package/agents/gsd-intel-updater.md +334 -0
- package/agents/gsd-nyquist-auditor.md +203 -0
- package/agents/gsd-pattern-mapper.md +335 -0
- package/agents/gsd-phase-researcher.md +841 -0
- package/agents/gsd-plan-checker.md +978 -0
- package/agents/gsd-planner.md +1251 -0
- package/agents/gsd-project-researcher.md +677 -0
- package/agents/gsd-research-synthesizer.md +247 -0
- package/agents/gsd-roadmapper.md +688 -0
- package/agents/gsd-security-auditor.md +155 -0
- package/agents/gsd-ui-auditor.md +495 -0
- package/agents/gsd-ui-checker.md +309 -0
- package/agents/gsd-ui-researcher.md +380 -0
- package/agents/gsd-user-profiler.md +171 -0
- package/agents/gsd-verifier.md +830 -0
- package/bin/install.js +7062 -0
- package/commands/gsd/add-backlog.md +79 -0
- package/commands/gsd/add-phase.md +43 -0
- package/commands/gsd/add-tests.md +41 -0
- package/commands/gsd/add-todo.md +47 -0
- package/commands/gsd/ai-integration-phase.md +36 -0
- package/commands/gsd/analyze-dependencies.md +34 -0
- package/commands/gsd/audit-fix.md +33 -0
- package/commands/gsd/audit-milestone.md +36 -0
- package/commands/gsd/audit-uat.md +24 -0
- package/commands/gsd/autonomous.md +46 -0
- package/commands/gsd/check-todos.md +45 -0
- package/commands/gsd/cleanup.md +23 -0
- package/commands/gsd/code-review-fix.md +52 -0
- package/commands/gsd/code-review.md +55 -0
- package/commands/gsd/complete-milestone.md +136 -0
- package/commands/gsd/debug.md +263 -0
- package/commands/gsd/discuss-phase.md +69 -0
- package/commands/gsd/do.md +30 -0
- package/commands/gsd/docs-update.md +48 -0
- package/commands/gsd/eval-review.md +32 -0
- package/commands/gsd/execute-phase.md +63 -0
- package/commands/gsd/explore.md +27 -0
- package/commands/gsd/extract_learnings.md +22 -0
- package/commands/gsd/fast.md +30 -0
- package/commands/gsd/forensics.md +56 -0
- package/commands/gsd/from-gsd2.md +47 -0
- package/commands/gsd/graphify.md +201 -0
- package/commands/gsd/health.md +22 -0
- package/commands/gsd/help.md +24 -0
- package/commands/gsd/import.md +37 -0
- package/commands/gsd/inbox.md +38 -0
- package/commands/gsd/ingest-docs.md +42 -0
- package/commands/gsd/insert-phase.md +32 -0
- package/commands/gsd/intel.md +179 -0
- package/commands/gsd/join-discord.md +19 -0
- package/commands/gsd/list-phase-assumptions.md +46 -0
- package/commands/gsd/list-workspaces.md +19 -0
- package/commands/gsd/manager.md +40 -0
- package/commands/gsd/map-codebase.md +71 -0
- package/commands/gsd/milestone-summary.md +51 -0
- package/commands/gsd/new-milestone.md +44 -0
- package/commands/gsd/new-project.md +46 -0
- package/commands/gsd/new-workspace.md +44 -0
- package/commands/gsd/next.md +28 -0
- package/commands/gsd/note.md +34 -0
- package/commands/gsd/pause-work.md +38 -0
- package/commands/gsd/plan-milestone-gaps.md +34 -0
- package/commands/gsd/plan-phase.md +52 -0
- package/commands/gsd/plan-review-convergence.md +52 -0
- package/commands/gsd/plant-seed.md +28 -0
- package/commands/gsd/pr-branch.md +25 -0
- package/commands/gsd/profile-user.md +46 -0
- package/commands/gsd/progress.md +25 -0
- package/commands/gsd/quick.md +173 -0
- package/commands/gsd/reapply-patches.md +331 -0
- package/commands/gsd/remove-phase.md +31 -0
- package/commands/gsd/remove-workspace.md +26 -0
- package/commands/gsd/research-phase.md +195 -0
- package/commands/gsd/resume-work.md +40 -0
- package/commands/gsd/review-backlog.md +62 -0
- package/commands/gsd/review.md +40 -0
- package/commands/gsd/scan.md +26 -0
- package/commands/gsd/secure-phase.md +35 -0
- package/commands/gsd/session-report.md +19 -0
- package/commands/gsd/set-profile.md +12 -0
- package/commands/gsd/settings.md +36 -0
- package/commands/gsd/ship.md +23 -0
- package/commands/gsd/sketch-wrap-up.md +31 -0
- package/commands/gsd/sketch.md +49 -0
- package/commands/gsd/spec-phase.md +62 -0
- package/commands/gsd/spike-wrap-up.md +31 -0
- package/commands/gsd/spike.md +46 -0
- package/commands/gsd/stats.md +18 -0
- package/commands/gsd/sync-skills.md +19 -0
- package/commands/gsd/thread.md +227 -0
- package/commands/gsd/ui-phase.md +34 -0
- package/commands/gsd/ui-review.md +32 -0
- package/commands/gsd/ultraplan-phase.md +33 -0
- package/commands/gsd/undo.md +34 -0
- package/commands/gsd/update.md +37 -0
- package/commands/gsd/validate-phase.md +35 -0
- package/commands/gsd/verify-work.md +38 -0
- package/commands/gsd/workstreams.md +69 -0
- package/get-shit-done/bin/gsd-tools.cjs +1263 -0
- package/get-shit-done/bin/lib/artifacts.cjs +52 -0
- package/get-shit-done/bin/lib/audit.cjs +757 -0
- package/get-shit-done/bin/lib/commands.cjs +1023 -0
- package/get-shit-done/bin/lib/config-schema.cjs +79 -0
- package/get-shit-done/bin/lib/config.cjs +463 -0
- package/get-shit-done/bin/lib/core.cjs +1794 -0
- package/get-shit-done/bin/lib/docs.cjs +267 -0
- package/get-shit-done/bin/lib/frontmatter.cjs +379 -0
- package/get-shit-done/bin/lib/graphify.cjs +494 -0
- package/get-shit-done/bin/lib/gsd2-import.cjs +511 -0
- package/get-shit-done/bin/lib/init.cjs +1878 -0
- package/get-shit-done/bin/lib/intel.cjs +639 -0
- package/get-shit-done/bin/lib/learnings.cjs +378 -0
- package/get-shit-done/bin/lib/milestone.cjs +283 -0
- package/get-shit-done/bin/lib/model-profiles.cjs +71 -0
- package/get-shit-done/bin/lib/phase.cjs +1058 -0
- package/get-shit-done/bin/lib/profile-output.cjs +1080 -0
- package/get-shit-done/bin/lib/profile-pipeline.cjs +539 -0
- package/get-shit-done/bin/lib/roadmap.cjs +523 -0
- package/get-shit-done/bin/lib/schema-detect.cjs +238 -0
- package/get-shit-done/bin/lib/security.cjs +504 -0
- package/get-shit-done/bin/lib/state.cjs +1649 -0
- package/get-shit-done/bin/lib/template.cjs +226 -0
- package/get-shit-done/bin/lib/uat.cjs +288 -0
- package/get-shit-done/bin/lib/verify.cjs +1184 -0
- package/get-shit-done/bin/lib/workstream.cjs +495 -0
- package/get-shit-done/bin/repair-sdk.cjs +177 -0
- package/get-shit-done/contexts/dev.md +21 -0
- package/get-shit-done/contexts/research.md +22 -0
- package/get-shit-done/contexts/review.md +22 -0
- package/get-shit-done/references/agent-contracts.md +79 -0
- package/get-shit-done/references/ai-evals.md +156 -0
- package/get-shit-done/references/ai-frameworks.md +186 -0
- package/get-shit-done/references/artifact-types.md +131 -0
- package/get-shit-done/references/autonomous-smart-discuss.md +277 -0
- package/get-shit-done/references/checkpoints.md +808 -0
- package/get-shit-done/references/common-bug-patterns.md +114 -0
- package/get-shit-done/references/context-budget.md +49 -0
- package/get-shit-done/references/continuation-format.md +253 -0
- package/get-shit-done/references/debugger-philosophy.md +76 -0
- package/get-shit-done/references/decimal-phase-calculation.md +64 -0
- package/get-shit-done/references/doc-conflict-engine.md +91 -0
- package/get-shit-done/references/domain-probes.md +125 -0
- package/get-shit-done/references/executor-examples.md +110 -0
- package/get-shit-done/references/few-shot-examples/plan-checker.md +73 -0
- package/get-shit-done/references/few-shot-examples/verifier.md +109 -0
- package/get-shit-done/references/gate-prompts.md +100 -0
- package/get-shit-done/references/gates.md +70 -0
- package/get-shit-done/references/git-integration.md +295 -0
- package/get-shit-done/references/git-planning-commit.md +40 -0
- package/get-shit-done/references/ios-scaffold.md +123 -0
- package/get-shit-done/references/mandatory-initial-read.md +2 -0
- package/get-shit-done/references/model-profile-resolution.md +38 -0
- package/get-shit-done/references/model-profiles.md +145 -0
- package/get-shit-done/references/phase-argument-parsing.md +61 -0
- package/get-shit-done/references/planner-antipatterns.md +89 -0
- package/get-shit-done/references/planner-gap-closure.md +62 -0
- package/get-shit-done/references/planner-reviews.md +39 -0
- package/get-shit-done/references/planner-revision.md +87 -0
- package/get-shit-done/references/planner-source-audit.md +73 -0
- package/get-shit-done/references/planning-config.md +460 -0
- package/get-shit-done/references/project-skills-discovery.md +19 -0
- package/get-shit-done/references/questioning.md +162 -0
- package/get-shit-done/references/revision-loop.md +97 -0
- package/get-shit-done/references/sketch-interactivity.md +41 -0
- package/get-shit-done/references/sketch-theme-system.md +94 -0
- package/get-shit-done/references/sketch-tooling.md +45 -0
- package/get-shit-done/references/sketch-variant-patterns.md +81 -0
- package/get-shit-done/references/tdd.md +330 -0
- package/get-shit-done/references/thinking-models-debug.md +44 -0
- package/get-shit-done/references/thinking-models-execution.md +50 -0
- package/get-shit-done/references/thinking-models-planning.md +62 -0
- package/get-shit-done/references/thinking-models-research.md +50 -0
- package/get-shit-done/references/thinking-models-verification.md +55 -0
- package/get-shit-done/references/thinking-partner.md +96 -0
- package/get-shit-done/references/ui-brand.md +160 -0
- package/get-shit-done/references/universal-anti-patterns.md +63 -0
- package/get-shit-done/references/user-profiling.md +681 -0
- package/get-shit-done/references/verification-overrides.md +227 -0
- package/get-shit-done/references/verification-patterns.md +612 -0
- package/get-shit-done/references/workstream-flag.md +111 -0
- package/get-shit-done/templates/AI-SPEC.md +246 -0
- package/get-shit-done/templates/DEBUG.md +169 -0
- package/get-shit-done/templates/README.md +76 -0
- package/get-shit-done/templates/SECURITY.md +61 -0
- package/get-shit-done/templates/UAT.md +265 -0
- package/get-shit-done/templates/UI-SPEC.md +100 -0
- package/get-shit-done/templates/VALIDATION.md +76 -0
- package/get-shit-done/templates/claude-md.md +145 -0
- package/get-shit-done/templates/codebase/architecture.md +255 -0
- package/get-shit-done/templates/codebase/concerns.md +310 -0
- package/get-shit-done/templates/codebase/conventions.md +307 -0
- package/get-shit-done/templates/codebase/integrations.md +280 -0
- package/get-shit-done/templates/codebase/stack.md +186 -0
- package/get-shit-done/templates/codebase/structure.md +285 -0
- package/get-shit-done/templates/codebase/testing.md +480 -0
- package/get-shit-done/templates/config.json +56 -0
- package/get-shit-done/templates/context.md +352 -0
- package/get-shit-done/templates/continue-here.md +78 -0
- package/get-shit-done/templates/copilot-instructions.md +7 -0
- package/get-shit-done/templates/debug-subagent-prompt.md +91 -0
- package/get-shit-done/templates/dev-preferences.md +21 -0
- package/get-shit-done/templates/discovery.md +146 -0
- package/get-shit-done/templates/discussion-log.md +63 -0
- package/get-shit-done/templates/milestone-archive.md +123 -0
- package/get-shit-done/templates/milestone.md +115 -0
- package/get-shit-done/templates/phase-prompt.md +610 -0
- package/get-shit-done/templates/planner-subagent-prompt.md +117 -0
- package/get-shit-done/templates/project.md +186 -0
- package/get-shit-done/templates/requirements.md +231 -0
- package/get-shit-done/templates/research-project/ARCHITECTURE.md +204 -0
- package/get-shit-done/templates/research-project/FEATURES.md +147 -0
- package/get-shit-done/templates/research-project/PITFALLS.md +200 -0
- package/get-shit-done/templates/research-project/STACK.md +120 -0
- package/get-shit-done/templates/research-project/SUMMARY.md +170 -0
- package/get-shit-done/templates/research.md +592 -0
- package/get-shit-done/templates/retrospective.md +54 -0
- package/get-shit-done/templates/roadmap.md +202 -0
- package/get-shit-done/templates/spec.md +307 -0
- package/get-shit-done/templates/state.md +184 -0
- package/get-shit-done/templates/summary-complex.md +59 -0
- package/get-shit-done/templates/summary-minimal.md +41 -0
- package/get-shit-done/templates/summary-standard.md +48 -0
- package/get-shit-done/templates/summary.md +248 -0
- package/get-shit-done/templates/user-profile.md +146 -0
- package/get-shit-done/templates/user-setup.md +311 -0
- package/get-shit-done/templates/verification-report.md +322 -0
- package/get-shit-done/workflows/add-phase.md +112 -0
- package/get-shit-done/workflows/add-tests.md +354 -0
- package/get-shit-done/workflows/add-todo.md +160 -0
- package/get-shit-done/workflows/ai-integration-phase.md +284 -0
- package/get-shit-done/workflows/analyze-dependencies.md +96 -0
- package/get-shit-done/workflows/audit-fix.md +175 -0
- package/get-shit-done/workflows/audit-milestone.md +340 -0
- package/get-shit-done/workflows/audit-uat.md +109 -0
- package/get-shit-done/workflows/autonomous.md +789 -0
- package/get-shit-done/workflows/check-todos.md +179 -0
- package/get-shit-done/workflows/cleanup.md +154 -0
- package/get-shit-done/workflows/code-review-fix.md +497 -0
- package/get-shit-done/workflows/code-review.md +515 -0
- package/get-shit-done/workflows/complete-milestone.md +847 -0
- package/get-shit-done/workflows/diagnose-issues.md +238 -0
- package/get-shit-done/workflows/discovery-phase.md +291 -0
- package/get-shit-done/workflows/discuss-phase-assumptions.md +670 -0
- package/get-shit-done/workflows/discuss-phase-power.md +308 -0
- package/get-shit-done/workflows/discuss-phase.md +1378 -0
- package/get-shit-done/workflows/do.md +110 -0
- package/get-shit-done/workflows/docs-update.md +1155 -0
- package/get-shit-done/workflows/eval-review.md +155 -0
- package/get-shit-done/workflows/execute-phase.md +1677 -0
- package/get-shit-done/workflows/execute-plan.md +533 -0
- package/get-shit-done/workflows/explore.md +141 -0
- package/get-shit-done/workflows/extract_learnings.md +242 -0
- package/get-shit-done/workflows/fast.md +105 -0
- package/get-shit-done/workflows/forensics.md +265 -0
- package/get-shit-done/workflows/graduation.md +195 -0
- package/get-shit-done/workflows/health.md +314 -0
- package/get-shit-done/workflows/help.md +667 -0
- package/get-shit-done/workflows/import.md +246 -0
- package/get-shit-done/workflows/inbox.md +387 -0
- package/get-shit-done/workflows/ingest-docs.md +328 -0
- package/get-shit-done/workflows/insert-phase.md +130 -0
- package/get-shit-done/workflows/list-phase-assumptions.md +178 -0
- package/get-shit-done/workflows/list-workspaces.md +56 -0
- package/get-shit-done/workflows/manager.md +365 -0
- package/get-shit-done/workflows/map-codebase.md +393 -0
- package/get-shit-done/workflows/milestone-summary.md +223 -0
- package/get-shit-done/workflows/new-milestone.md +611 -0
- package/get-shit-done/workflows/new-project.md +1391 -0
- package/get-shit-done/workflows/new-workspace.md +239 -0
- package/get-shit-done/workflows/next.md +220 -0
- package/get-shit-done/workflows/node-repair.md +92 -0
- package/get-shit-done/workflows/note.md +158 -0
- package/get-shit-done/workflows/pause-work.md +243 -0
- package/get-shit-done/workflows/plan-milestone-gaps.md +273 -0
- package/get-shit-done/workflows/plan-phase.md +1349 -0
- package/get-shit-done/workflows/plan-review-convergence.md +254 -0
- package/get-shit-done/workflows/plant-seed.md +172 -0
- package/get-shit-done/workflows/pr-branch.md +157 -0
- package/get-shit-done/workflows/profile-user.md +452 -0
- package/get-shit-done/workflows/progress.md +619 -0
- package/get-shit-done/workflows/quick.md +970 -0
- package/get-shit-done/workflows/remove-phase.md +155 -0
- package/get-shit-done/workflows/remove-workspace.md +92 -0
- package/get-shit-done/workflows/research-phase.md +89 -0
- package/get-shit-done/workflows/resume-project.md +326 -0
- package/get-shit-done/workflows/review.md +344 -0
- package/get-shit-done/workflows/scan.md +102 -0
- package/get-shit-done/workflows/secure-phase.md +166 -0
- package/get-shit-done/workflows/session-report.md +146 -0
- package/get-shit-done/workflows/settings.md +319 -0
- package/get-shit-done/workflows/ship.md +302 -0
- package/get-shit-done/workflows/sketch-wrap-up.md +283 -0
- package/get-shit-done/workflows/sketch.md +286 -0
- package/get-shit-done/workflows/spec-phase.md +262 -0
- package/get-shit-done/workflows/spike-wrap-up.md +281 -0
- package/get-shit-done/workflows/spike.md +362 -0
- package/get-shit-done/workflows/stats.md +60 -0
- package/get-shit-done/workflows/sync-skills.md +182 -0
- package/get-shit-done/workflows/transition.md +693 -0
- package/get-shit-done/workflows/ui-phase.md +323 -0
- package/get-shit-done/workflows/ui-review.md +190 -0
- package/get-shit-done/workflows/ultraplan-phase.md +189 -0
- package/get-shit-done/workflows/undo.md +314 -0
- package/get-shit-done/workflows/update.md +587 -0
- package/get-shit-done/workflows/validate-phase.md +176 -0
- package/get-shit-done/workflows/verify-phase.md +465 -0
- package/get-shit-done/workflows/verify-work.md +740 -0
- package/hooks/dist/gsd-check-update-worker.js +108 -0
- package/hooks/dist/gsd-check-update.js +64 -0
- package/hooks/dist/gsd-context-monitor.js +192 -0
- package/hooks/dist/gsd-phase-boundary.sh +28 -0
- package/hooks/dist/gsd-prompt-guard.js +97 -0
- package/hooks/dist/gsd-read-guard.js +82 -0
- package/hooks/dist/gsd-read-injection-scanner.js +152 -0
- package/hooks/dist/gsd-session-state.sh +34 -0
- package/hooks/dist/gsd-statusline.js +293 -0
- package/hooks/dist/gsd-validate-commit.sh +48 -0
- package/hooks/dist/gsd-workflow-guard.js +94 -0
- package/hooks/gsd-check-update-worker.js +108 -0
- package/hooks/gsd-check-update.js +64 -0
- package/hooks/gsd-context-monitor.js +192 -0
- package/hooks/gsd-phase-boundary.sh +28 -0
- package/hooks/gsd-prompt-guard.js +97 -0
- package/hooks/gsd-read-guard.js +82 -0
- package/hooks/gsd-read-injection-scanner.js +152 -0
- package/hooks/gsd-session-state.sh +34 -0
- package/hooks/gsd-statusline.js +293 -0
- package/hooks/gsd-validate-commit.sh +48 -0
- package/hooks/gsd-workflow-guard.js +94 -0
- package/package.json +59 -0
- package/scripts/base64-scan.sh +262 -0
- package/scripts/build-hooks.js +95 -0
- package/scripts/gen-inventory-manifest.cjs +109 -0
- package/scripts/prompt-injection-scan.sh +201 -0
- package/scripts/run-tests.cjs +33 -0
- package/scripts/secret-scan.sh +227 -0
- package/sdk/package-lock.json +1998 -0
- package/sdk/package.json +52 -0
- package/sdk/prompts/agents/gsd-executor.md +110 -0
- package/sdk/prompts/agents/gsd-phase-researcher.md +158 -0
- package/sdk/prompts/agents/gsd-plan-checker.md +160 -0
- package/sdk/prompts/agents/gsd-planner.md +214 -0
- package/sdk/prompts/agents/gsd-project-researcher.md +323 -0
- package/sdk/prompts/agents/gsd-research-synthesizer.md +237 -0
- package/sdk/prompts/agents/gsd-roadmapper.md +670 -0
- package/sdk/prompts/agents/gsd-verifier.md +159 -0
- package/sdk/prompts/templates/project.md +186 -0
- package/sdk/prompts/templates/requirements.md +231 -0
- package/sdk/prompts/templates/research-project/ARCHITECTURE.md +204 -0
- package/sdk/prompts/templates/research-project/FEATURES.md +147 -0
- package/sdk/prompts/templates/research-project/PITFALLS.md +200 -0
- package/sdk/prompts/templates/research-project/STACK.md +120 -0
- package/sdk/prompts/templates/research-project/SUMMARY.md +170 -0
- package/sdk/prompts/templates/roadmap.md +202 -0
- package/sdk/prompts/templates/state.md +175 -0
- package/sdk/prompts/workflows/discuss-phase.md +126 -0
- package/sdk/prompts/workflows/execute-plan.md +106 -0
- package/sdk/prompts/workflows/plan-phase.md +84 -0
- package/sdk/prompts/workflows/research-phase.md +45 -0
- package/sdk/prompts/workflows/verify-phase.md +142 -0
- package/sdk/src/assembled-prompts.test.ts +349 -0
- package/sdk/src/cli-transport.test.ts +388 -0
- package/sdk/src/cli-transport.ts +130 -0
- package/sdk/src/cli.test.ts +383 -0
- package/sdk/src/cli.ts +670 -0
- package/sdk/src/config.test.ts +168 -0
- package/sdk/src/config.ts +177 -0
- package/sdk/src/context-engine.test.ts +295 -0
- package/sdk/src/context-engine.ts +170 -0
- package/sdk/src/context-truncation.test.ts +163 -0
- package/sdk/src/context-truncation.ts +233 -0
- package/sdk/src/e2e.integration.test.ts +178 -0
- package/sdk/src/errors.ts +72 -0
- package/sdk/src/event-stream.test.ts +661 -0
- package/sdk/src/event-stream.ts +441 -0
- package/sdk/src/failure-memory.test.ts +457 -0
- package/sdk/src/failure-memory.ts +1324 -0
- package/sdk/src/golden/capture.ts +95 -0
- package/sdk/src/golden/fixtures/generate-slug.golden.json +1 -0
- package/sdk/src/golden/fixtures/profile-sample-sessions/demo-project/sample.jsonl +3 -0
- package/sdk/src/golden/fixtures/summary-extract-sample.md +26 -0
- package/sdk/src/golden/fixtures/uat-render-checkpoint-sample.md +15 -0
- package/sdk/src/golden/golden-integration-covered.ts +30 -0
- package/sdk/src/golden/golden-mutation-covered.ts +7 -0
- package/sdk/src/golden/golden-policy.test.ts +8 -0
- package/sdk/src/golden/golden-policy.ts +112 -0
- package/sdk/src/golden/golden.integration.test.ts +373 -0
- package/sdk/src/golden/init-golden-normalize.ts +15 -0
- package/sdk/src/golden/read-only-golden-rows.ts +77 -0
- package/sdk/src/golden/read-only-parity.integration.test.ts +125 -0
- package/sdk/src/golden/registry-canonical-commands.ts +31 -0
- package/sdk/src/gsd-tools.test.ts +409 -0
- package/sdk/src/gsd-tools.ts +595 -0
- package/sdk/src/headless-prompts.test.ts +159 -0
- package/sdk/src/index.ts +333 -0
- package/sdk/src/init-e2e.integration.test.ts +136 -0
- package/sdk/src/init-runner.test.ts +783 -0
- package/sdk/src/init-runner.ts +735 -0
- package/sdk/src/lifecycle-e2e.integration.test.ts +258 -0
- package/sdk/src/logger.test.ts +149 -0
- package/sdk/src/logger.ts +113 -0
- package/sdk/src/milestone-runner.test.ts +421 -0
- package/sdk/src/phase-prompt.test.ts +538 -0
- package/sdk/src/phase-prompt.ts +264 -0
- package/sdk/src/phase-runner-types.test.ts +421 -0
- package/sdk/src/phase-runner.integration.test.ts +377 -0
- package/sdk/src/phase-runner.test.ts +2333 -0
- package/sdk/src/phase-runner.ts +1203 -0
- package/sdk/src/plan-parser.test.ts +528 -0
- package/sdk/src/plan-parser.ts +427 -0
- package/sdk/src/prompt-builder.test.ts +306 -0
- package/sdk/src/prompt-builder.ts +193 -0
- package/sdk/src/prompt-sanitizer.test.ts +260 -0
- package/sdk/src/prompt-sanitizer.ts +71 -0
- package/sdk/src/query/QUERY-HANDLERS.md +317 -0
- package/sdk/src/query/audit-open.ts +722 -0
- package/sdk/src/query/check-auto-mode.test.ts +77 -0
- package/sdk/src/query/check-auto-mode.ts +50 -0
- package/sdk/src/query/check-completion.test.ts +113 -0
- package/sdk/src/query/check-completion.ts +182 -0
- package/sdk/src/query/check-gates.test.ts +103 -0
- package/sdk/src/query/check-gates.ts +112 -0
- package/sdk/src/query/check-ship-ready.test.ts +77 -0
- package/sdk/src/query/check-ship-ready.ts +103 -0
- package/sdk/src/query/check-verification-status.test.ts +143 -0
- package/sdk/src/query/check-verification-status.ts +160 -0
- package/sdk/src/query/commit.test.ts +202 -0
- package/sdk/src/query/commit.ts +301 -0
- package/sdk/src/query/config-gates.test.ts +89 -0
- package/sdk/src/query/config-gates.ts +69 -0
- package/sdk/src/query/config-mutation.test.ts +365 -0
- package/sdk/src/query/config-mutation.ts +497 -0
- package/sdk/src/query/config-query.test.ts +161 -0
- package/sdk/src/query/config-query.ts +190 -0
- package/sdk/src/query/context-history.test.ts +165 -0
- package/sdk/src/query/context-history.ts +467 -0
- package/sdk/src/query/decomposed-handlers.test.ts +365 -0
- package/sdk/src/query/detect-custom-files.ts +97 -0
- package/sdk/src/query/detect-phase-type.test.ts +105 -0
- package/sdk/src/query/detect-phase-type.ts +141 -0
- package/sdk/src/query/docs-init.ts +257 -0
- package/sdk/src/query/failure-capture.ts +58 -0
- package/sdk/src/query/frontmatter-array.test.ts +14 -0
- package/sdk/src/query/frontmatter-mutation.test.ts +259 -0
- package/sdk/src/query/frontmatter-mutation.ts +343 -0
- package/sdk/src/query/frontmatter.test.ts +281 -0
- package/sdk/src/query/frontmatter.ts +397 -0
- package/sdk/src/query/helpers.test.ts +426 -0
- package/sdk/src/query/helpers.ts +482 -0
- package/sdk/src/query/index.ts +586 -0
- package/sdk/src/query/init-complex.test.ts +232 -0
- package/sdk/src/query/init-complex.ts +578 -0
- package/sdk/src/query/init.test.ts +522 -0
- package/sdk/src/query/init.ts +1046 -0
- package/sdk/src/query/intel.test.ts +90 -0
- package/sdk/src/query/intel.ts +404 -0
- package/sdk/src/query/normalize-query-command.test.ts +50 -0
- package/sdk/src/query/normalize-query-command.ts +56 -0
- package/sdk/src/query/phase-lifecycle.test.ts +1126 -0
- package/sdk/src/query/phase-lifecycle.ts +1799 -0
- package/sdk/src/query/phase-list-queries.test.ts +88 -0
- package/sdk/src/query/phase-list-queries.ts +152 -0
- package/sdk/src/query/phase-ready.test.ts +65 -0
- package/sdk/src/query/phase-ready.ts +158 -0
- package/sdk/src/query/phase.test.ts +307 -0
- package/sdk/src/query/phase.ts +340 -0
- package/sdk/src/query/pipeline.test.ts +169 -0
- package/sdk/src/query/pipeline.ts +243 -0
- package/sdk/src/query/plan-execution-route.test.ts +166 -0
- package/sdk/src/query/plan-execution-route.ts +209 -0
- package/sdk/src/query/plan-task-structure.test.ts +65 -0
- package/sdk/src/query/plan-task-structure.ts +63 -0
- package/sdk/src/query/profile-extract-messages.ts +247 -0
- package/sdk/src/query/profile-output.ts +908 -0
- package/sdk/src/query/profile-questionnaire-data.ts +181 -0
- package/sdk/src/query/profile-sample.ts +184 -0
- package/sdk/src/query/profile-scan-sessions.ts +174 -0
- package/sdk/src/query/profile.test.ts +74 -0
- package/sdk/src/query/profile.ts +337 -0
- package/sdk/src/query/progress.test.ts +156 -0
- package/sdk/src/query/progress.ts +566 -0
- package/sdk/src/query/registry.test.ts +216 -0
- package/sdk/src/query/registry.ts +174 -0
- package/sdk/src/query/requirements-extract-from-plans.test.ts +58 -0
- package/sdk/src/query/requirements-extract-from-plans.ts +86 -0
- package/sdk/src/query/roadmap-update-plan-progress.ts +132 -0
- package/sdk/src/query/roadmap.test.ts +359 -0
- package/sdk/src/query/roadmap.ts +591 -0
- package/sdk/src/query/route-next-action.test.ts +61 -0
- package/sdk/src/query/route-next-action.ts +345 -0
- package/sdk/src/query/runtime-health.ts +7 -0
- package/sdk/src/query/schema-detect.ts +189 -0
- package/sdk/src/query/skill-manifest.ts +214 -0
- package/sdk/src/query/skills.test.ts +80 -0
- package/sdk/src/query/skills.ts +62 -0
- package/sdk/src/query/state-mutation.test.ts +450 -0
- package/sdk/src/query/state-mutation.ts +1444 -0
- package/sdk/src/query/state-project-load.ts +109 -0
- package/sdk/src/query/state.test.ts +347 -0
- package/sdk/src/query/state.ts +397 -0
- package/sdk/src/query/summary.test.ts +95 -0
- package/sdk/src/query/summary.ts +296 -0
- package/sdk/src/query/template.test.ts +180 -0
- package/sdk/src/query/template.ts +242 -0
- package/sdk/src/query/uat.test.ts +77 -0
- package/sdk/src/query/uat.ts +314 -0
- package/sdk/src/query/utils.test.ts +82 -0
- package/sdk/src/query/utils.ts +92 -0
- package/sdk/src/query/validate.test.ts +656 -0
- package/sdk/src/query/validate.ts +807 -0
- package/sdk/src/query/verify.test.ts +414 -0
- package/sdk/src/query/verify.ts +645 -0
- package/sdk/src/query/websearch.test.ts +31 -0
- package/sdk/src/query/websearch.ts +82 -0
- package/sdk/src/query/workspace.test.ts +119 -0
- package/sdk/src/query/workspace.ts +131 -0
- package/sdk/src/query/workstream.test.ts +51 -0
- package/sdk/src/query/workstream.ts +434 -0
- package/sdk/src/research-gate.test.ts +190 -0
- package/sdk/src/research-gate.ts +94 -0
- package/sdk/src/runtime-health.test.ts +176 -0
- package/sdk/src/runtime-health.ts +387 -0
- package/sdk/src/session-runner.test.ts +98 -0
- package/sdk/src/session-runner.ts +299 -0
- package/sdk/src/tool-scoping.test.ts +160 -0
- package/sdk/src/tool-scoping.ts +61 -0
- package/sdk/src/types.ts +917 -0
- package/sdk/src/workstream-utils.ts +33 -0
- package/sdk/src/ws-flag.test.ts +285 -0
- package/sdk/src/ws-transport.test.ts +161 -0
- package/sdk/src/ws-transport.ts +93 -0
- package/sdk/tsconfig.json +20 -0
package/sdk/package.json
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@gsd-remix/sdk",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "GSD Remix SDK — programmatic interface for running GSD Remix plans via the Agent SDK",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"import": "./dist/index.js",
|
|
11
|
+
"types": "./dist/index.d.ts"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"bin": {
|
|
15
|
+
"gsd-remix-sdk": "./dist/cli.js"
|
|
16
|
+
},
|
|
17
|
+
"files": [
|
|
18
|
+
"dist",
|
|
19
|
+
"prompts"
|
|
20
|
+
],
|
|
21
|
+
"repository": {
|
|
22
|
+
"type": "git",
|
|
23
|
+
"url": "git+https://github.com/gsd-build/get-shit-done.git",
|
|
24
|
+
"directory": "sdk"
|
|
25
|
+
},
|
|
26
|
+
"homepage": "https://github.com/gsd-build/get-shit-done/tree/main/sdk",
|
|
27
|
+
"bugs": {
|
|
28
|
+
"url": "https://github.com/gsd-build/get-shit-done/issues"
|
|
29
|
+
},
|
|
30
|
+
"author": "TÂCHES",
|
|
31
|
+
"license": "MIT",
|
|
32
|
+
"engines": {
|
|
33
|
+
"node": ">=22.0.0"
|
|
34
|
+
},
|
|
35
|
+
"scripts": {
|
|
36
|
+
"build": "tsc",
|
|
37
|
+
"prepublishOnly": "npm run build",
|
|
38
|
+
"test": "vitest run",
|
|
39
|
+
"test:unit": "vitest run --project unit",
|
|
40
|
+
"test:integration": "vitest run --project integration"
|
|
41
|
+
},
|
|
42
|
+
"dependencies": {
|
|
43
|
+
"@anthropic-ai/claude-agent-sdk": "^0.2.84",
|
|
44
|
+
"ws": "^8.20.0"
|
|
45
|
+
},
|
|
46
|
+
"devDependencies": {
|
|
47
|
+
"@types/node": "^22.0.0",
|
|
48
|
+
"@types/ws": "^8.18.1",
|
|
49
|
+
"typescript": "^5.7.0",
|
|
50
|
+
"vitest": "^3.1.1"
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-executor
|
|
3
|
+
description: Executes GSD plans with deviation handling and state management. Headless SDK variant — runs autonomously without interactive checkpoints.
|
|
4
|
+
tools: Read, Write, Edit, Bash, Grep, Glob
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
<role>
|
|
8
|
+
You are a GSD plan executor. You execute PLAN.md files, handling deviations automatically, and producing SUMMARY.md files.
|
|
9
|
+
|
|
10
|
+
Your job: Execute the plan completely, create SUMMARY.md.
|
|
11
|
+
|
|
12
|
+
**CRITICAL: Mandatory Initial Read**
|
|
13
|
+
If the prompt contains a `<files_to_read>` block, you MUST read every file listed there before performing any other actions. This is your primary context.
|
|
14
|
+
</role>
|
|
15
|
+
|
|
16
|
+
<project_context>
|
|
17
|
+
Before executing, discover project context:
|
|
18
|
+
|
|
19
|
+
**Project instructions:** Read `./CLAUDE.md` if it exists in the working directory. Follow all project-specific guidelines.
|
|
20
|
+
|
|
21
|
+
**Project skills:** Check `.claude/skills/` or `.agents/skills/` directory if either exists:
|
|
22
|
+
1. List available skills (subdirectories)
|
|
23
|
+
2. Read `SKILL.md` for each skill
|
|
24
|
+
3. Follow skill rules relevant to your current task
|
|
25
|
+
</project_context>
|
|
26
|
+
|
|
27
|
+
<execution_flow>
|
|
28
|
+
|
|
29
|
+
<step name="load_plan">
|
|
30
|
+
Read the plan file provided in your prompt context.
|
|
31
|
+
|
|
32
|
+
Parse: frontmatter (phase, plan, type, autonomous, wave, depends_on), objective, context references, tasks with types, verification/success criteria, output spec.
|
|
33
|
+
|
|
34
|
+
**If plan references CONTEXT.md:** Honor user's vision throughout execution.
|
|
35
|
+
</step>
|
|
36
|
+
|
|
37
|
+
<step name="execute_tasks">
|
|
38
|
+
For each task:
|
|
39
|
+
|
|
40
|
+
1. **If `type="auto"`:**
|
|
41
|
+
- Check for `tdd="true"` — follow TDD execution flow
|
|
42
|
+
- Execute task, apply deviation rules as needed
|
|
43
|
+
- Run verification, confirm done criteria
|
|
44
|
+
- Track completion for Summary
|
|
45
|
+
|
|
46
|
+
2. **If `type="checkpoint:*"`:**
|
|
47
|
+
- In headless mode: handle autonomously
|
|
48
|
+
- human-verify: run automated verification, log results, continue
|
|
49
|
+
- decision: select recommended option (first option), log choice, continue
|
|
50
|
+
- human-action: if requires credentials/auth, log as blocker; otherwise continue
|
|
51
|
+
|
|
52
|
+
3. After all tasks: run overall verification, confirm success criteria, document deviations
|
|
53
|
+
</step>
|
|
54
|
+
|
|
55
|
+
</execution_flow>
|
|
56
|
+
|
|
57
|
+
<deviation_rules>
|
|
58
|
+
**While executing, you WILL discover unplanned work.** Apply these rules automatically.
|
|
59
|
+
|
|
60
|
+
**RULE 1: Auto-fix bugs** — Code doesn't work as intended. Fix inline, track as `[Rule 1 - Bug]`.
|
|
61
|
+
|
|
62
|
+
**RULE 2: Auto-add missing critical** — Missing error handling, validation, auth. Add inline, track as `[Rule 2 - Missing Critical]`.
|
|
63
|
+
|
|
64
|
+
**RULE 3: Auto-fix blocking issues** — Prevents completing current task. Fix blocker, track as `[Rule 3 - Blocking]`.
|
|
65
|
+
|
|
66
|
+
**RULE 4: Report architectural changes** — Structural changes (new DB table, schema change, new service). Log as blocker event; do NOT proceed with architectural changes autonomously.
|
|
67
|
+
|
|
68
|
+
**Priority:** Rule 4 (report) > Rules 1-3 (auto) > unsure: Rule 4
|
|
69
|
+
|
|
70
|
+
**Scope boundary:** Only auto-fix issues DIRECTLY caused by the current task's changes. Pre-existing issues are out of scope.
|
|
71
|
+
|
|
72
|
+
**Fix attempt limit:** After 3 auto-fix attempts on a single task, document remaining issues and continue.
|
|
73
|
+
</deviation_rules>
|
|
74
|
+
|
|
75
|
+
<authentication_gates>
|
|
76
|
+
Auth errors are interaction points, not failures.
|
|
77
|
+
|
|
78
|
+
**Headless protocol:**
|
|
79
|
+
1. Recognize auth gate
|
|
80
|
+
2. Log the authentication requirement as a blocker
|
|
81
|
+
3. Continue with remaining non-blocked tasks
|
|
82
|
+
4. Report blocked tasks in summary
|
|
83
|
+
</authentication_gates>
|
|
84
|
+
|
|
85
|
+
<tdd_execution>
|
|
86
|
+
When executing task with `tdd="true"`:
|
|
87
|
+
|
|
88
|
+
1. **RED:** Read `<behavior>`, create failing tests, verify they fail
|
|
89
|
+
2. **GREEN:** Implement minimal code to pass, verify tests pass
|
|
90
|
+
3. **REFACTOR:** Clean up, verify tests still pass
|
|
91
|
+
</tdd_execution>
|
|
92
|
+
|
|
93
|
+
<summary_creation>
|
|
94
|
+
After all tasks complete, create SUMMARY.md:
|
|
95
|
+
|
|
96
|
+
**Frontmatter:** phase, plan, subsystem, tags, dependency graph, tech-stack, key-files, decisions, metrics.
|
|
97
|
+
|
|
98
|
+
**One-liner must be substantive:** "JWT auth with refresh rotation using jose library" not "Authentication implemented"
|
|
99
|
+
|
|
100
|
+
**Include:** task completion, deviation documentation, auth gates (if any), blocked items.
|
|
101
|
+
</summary_creation>
|
|
102
|
+
|
|
103
|
+
<success_criteria>
|
|
104
|
+
Plan execution complete when:
|
|
105
|
+
- All tasks executed (or blocked items documented)
|
|
106
|
+
- Each deviation documented
|
|
107
|
+
- Authentication gates handled and documented
|
|
108
|
+
- SUMMARY.md created with substantive content
|
|
109
|
+
- Completion status returned
|
|
110
|
+
</success_criteria>
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-phase-researcher
|
|
3
|
+
description: Researches how to implement a phase before planning. Produces RESEARCH.md consumed by the planner. Headless SDK variant — runs autonomously.
|
|
4
|
+
tools: Read, Write, Bash, Grep, Glob
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
<role>
|
|
8
|
+
You are a GSD phase researcher. You answer "What do I need to know to PLAN this phase well?" and produce a single RESEARCH.md that the planner consumes.
|
|
9
|
+
|
|
10
|
+
**CRITICAL: Mandatory Initial Read**
|
|
11
|
+
If the prompt contains a `<files_to_read>` block, you MUST read every file listed there before performing any other actions. This is your primary context.
|
|
12
|
+
|
|
13
|
+
**Core responsibilities:**
|
|
14
|
+
- Investigate the phase's technical domain
|
|
15
|
+
- Identify standard stack, patterns, and pitfalls
|
|
16
|
+
- Document findings with confidence levels (HIGH/MEDIUM/LOW)
|
|
17
|
+
- Write RESEARCH.md with sections the planner expects
|
|
18
|
+
- Return structured result
|
|
19
|
+
</role>
|
|
20
|
+
|
|
21
|
+
<project_context>
|
|
22
|
+
Before researching, discover project context:
|
|
23
|
+
|
|
24
|
+
**Project instructions:** Read `./CLAUDE.md` if it exists. Follow all project-specific guidelines.
|
|
25
|
+
|
|
26
|
+
**Project skills:** Check `.claude/skills/` or `.agents/skills/` directory if either exists. Research should account for project skill patterns.
|
|
27
|
+
</project_context>
|
|
28
|
+
|
|
29
|
+
<upstream_input>
|
|
30
|
+
**CONTEXT.md** (if exists) — User decisions that constrain research.
|
|
31
|
+
|
|
32
|
+
| Section | How You Use It |
|
|
33
|
+
|---------|----------------|
|
|
34
|
+
| Decisions | Locked choices — research THESE, not alternatives |
|
|
35
|
+
| Discretion | Your freedom areas — research options, recommend |
|
|
36
|
+
| Deferred Ideas | Out of scope — ignore completely |
|
|
37
|
+
</upstream_input>
|
|
38
|
+
|
|
39
|
+
<downstream_consumer>
|
|
40
|
+
Your RESEARCH.md is consumed by the planner:
|
|
41
|
+
|
|
42
|
+
| Section | How Planner Uses It |
|
|
43
|
+
|---------|---------------------|
|
|
44
|
+
| User Constraints | Planner MUST honor these — copied from CONTEXT.md |
|
|
45
|
+
| Standard Stack | Plans use these libraries, not alternatives |
|
|
46
|
+
| Architecture Patterns | Task structure follows these patterns |
|
|
47
|
+
| Don't Hand-Roll | Tasks NEVER build custom solutions for listed problems |
|
|
48
|
+
| Common Pitfalls | Verification steps check for these |
|
|
49
|
+
| Code Examples | Task actions reference these patterns |
|
|
50
|
+
|
|
51
|
+
**Be prescriptive, not exploratory.** "Use X" not "Consider X or Y."
|
|
52
|
+
</downstream_consumer>
|
|
53
|
+
|
|
54
|
+
<philosophy>
|
|
55
|
+
## Claude's Training as Hypothesis
|
|
56
|
+
|
|
57
|
+
Training data may be stale. Treat pre-existing knowledge as hypothesis, not fact.
|
|
58
|
+
|
|
59
|
+
**The discipline:**
|
|
60
|
+
1. Verify before asserting — check official docs when possible
|
|
61
|
+
2. Flag uncertainty — LOW confidence when only training data supports a claim
|
|
62
|
+
3. Report honestly — "I couldn't find X" is valuable information
|
|
63
|
+
</philosophy>
|
|
64
|
+
|
|
65
|
+
<execution_flow>
|
|
66
|
+
|
|
67
|
+
<step name="receive_scope">
|
|
68
|
+
Load phase context from injected files. Extract: phase number, name, description, goal, requirements, constraints, output path.
|
|
69
|
+
|
|
70
|
+
If CONTEXT.md exists, it constrains research: locked decisions are non-negotiable, discretion areas are open for recommendation.
|
|
71
|
+
</step>
|
|
72
|
+
|
|
73
|
+
<step name="identify_domains">
|
|
74
|
+
Based on phase description, identify what needs investigating:
|
|
75
|
+
- Core Technology: Primary framework, current version, standard setup
|
|
76
|
+
- Ecosystem/Stack: Paired libraries, standard combinations
|
|
77
|
+
- Patterns: Expert structure, design patterns, recommended organization
|
|
78
|
+
- Pitfalls: Common mistakes, gotchas
|
|
79
|
+
- Don't Hand-Roll: Existing solutions for deceptively complex problems
|
|
80
|
+
</step>
|
|
81
|
+
|
|
82
|
+
<step name="execute_research">
|
|
83
|
+
For each domain: investigate using available tools (file reading, grep, web search if available). Document findings with confidence levels.
|
|
84
|
+
</step>
|
|
85
|
+
|
|
86
|
+
<step name="write_research">
|
|
87
|
+
Write RESEARCH.md with standard sections:
|
|
88
|
+
- Summary (executive overview + primary recommendation)
|
|
89
|
+
- Standard Stack (libraries with versions and purposes)
|
|
90
|
+
- Architecture Patterns (project structure, patterns, anti-patterns)
|
|
91
|
+
- Don't Hand-Roll (problems with existing solutions)
|
|
92
|
+
- Common Pitfalls (what goes wrong and how to avoid it)
|
|
93
|
+
- Code Examples (verified patterns)
|
|
94
|
+
- Sources (with confidence levels)
|
|
95
|
+
</step>
|
|
96
|
+
|
|
97
|
+
<step name="return_result">
|
|
98
|
+
Return structured result: phase, confidence, key findings, file path, open questions.
|
|
99
|
+
</step>
|
|
100
|
+
|
|
101
|
+
</execution_flow>
|
|
102
|
+
|
|
103
|
+
<output_format>
|
|
104
|
+
## RESEARCH.md Structure
|
|
105
|
+
|
|
106
|
+
Location: phase directory
|
|
107
|
+
|
|
108
|
+
```markdown
|
|
109
|
+
# Phase [X]: [Name] - Research
|
|
110
|
+
|
|
111
|
+
**Researched:** [date]
|
|
112
|
+
**Domain:** [primary technology/problem domain]
|
|
113
|
+
**Confidence:** [HIGH/MEDIUM/LOW]
|
|
114
|
+
|
|
115
|
+
## Summary
|
|
116
|
+
[2-3 paragraph executive summary]
|
|
117
|
+
**Primary recommendation:** [one-liner actionable guidance]
|
|
118
|
+
|
|
119
|
+
## Standard Stack
|
|
120
|
+
### Core
|
|
121
|
+
| Library | Version | Purpose | Why Standard |
|
|
122
|
+
|---------|---------|---------|--------------|
|
|
123
|
+
|
|
124
|
+
### Supporting
|
|
125
|
+
| Library | Version | Purpose | When to Use |
|
|
126
|
+
|---------|---------|---------|-------------|
|
|
127
|
+
|
|
128
|
+
## Architecture Patterns
|
|
129
|
+
### Recommended Project Structure
|
|
130
|
+
### Anti-Patterns to Avoid
|
|
131
|
+
|
|
132
|
+
## Don't Hand-Roll
|
|
133
|
+
| Problem | Don't Build | Use Instead | Why |
|
|
134
|
+
|
|
135
|
+
## Common Pitfalls
|
|
136
|
+
### Pitfall 1: [Name]
|
|
137
|
+
**What goes wrong / Why / How to avoid / Warning signs**
|
|
138
|
+
|
|
139
|
+
## Code Examples
|
|
140
|
+
[Verified patterns from reliable sources]
|
|
141
|
+
|
|
142
|
+
## Sources
|
|
143
|
+
### Primary (HIGH confidence)
|
|
144
|
+
### Secondary (MEDIUM confidence)
|
|
145
|
+
### Tertiary (LOW confidence)
|
|
146
|
+
```
|
|
147
|
+
</output_format>
|
|
148
|
+
|
|
149
|
+
<success_criteria>
|
|
150
|
+
- Phase domain understood
|
|
151
|
+
- Standard stack identified with versions
|
|
152
|
+
- Architecture patterns documented
|
|
153
|
+
- Don't-hand-roll items listed
|
|
154
|
+
- Common pitfalls catalogued
|
|
155
|
+
- All findings have confidence levels
|
|
156
|
+
- RESEARCH.md created in correct format
|
|
157
|
+
- Structured return provided
|
|
158
|
+
</success_criteria>
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-plan-checker
|
|
3
|
+
description: Verifies plans will achieve phase goal before execution. Goal-backward analysis of plan quality. Headless SDK variant — runs autonomously.
|
|
4
|
+
tools: Read, Bash, Glob, Grep
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
<role>
|
|
8
|
+
A set of phase plans has been submitted for pre-execution review. Verify they WILL achieve the phase goal — do not credit effort or intent, only verifiable coverage.
|
|
9
|
+
|
|
10
|
+
Goal-backward verification of PLANS before execution. Start from what the phase SHOULD deliver, verify plans address it.
|
|
11
|
+
|
|
12
|
+
**CRITICAL: Mandatory Initial Read**
|
|
13
|
+
If the prompt contains a `<files_to_read>` block, you MUST read every file listed there before performing any other actions. This is your primary context.
|
|
14
|
+
|
|
15
|
+
**Critical mindset:** Plans describe intent. You verify they deliver. A plan can have all tasks filled in but still miss the goal if:
|
|
16
|
+
- Key requirements have no tasks
|
|
17
|
+
- Dependencies are broken or circular
|
|
18
|
+
- Artifacts are planned but wiring between them isn't
|
|
19
|
+
- Scope exceeds context budget
|
|
20
|
+
</role>
|
|
21
|
+
|
|
22
|
+
<adversarial_stance>
|
|
23
|
+
**FORCE stance:** Assume every plan set is flawed until evidence proves otherwise. Your starting hypothesis: these plans will not deliver the phase goal. Surface what disqualifies them.
|
|
24
|
+
|
|
25
|
+
**Common failure modes — how plan checkers go soft:**
|
|
26
|
+
- Accepting a plausible-sounding task list without tracing each task back to a phase requirement
|
|
27
|
+
- Crediting a decision reference without verifying the task delivers the full decision scope
|
|
28
|
+
- Treating scope reduction ("v1", "static for now") as acceptable when full delivery was required
|
|
29
|
+
- Letting dimensions that pass anchor judgment — a plan can pass 6 of 7 dimensions and still miss the goal
|
|
30
|
+
|
|
31
|
+
**Required finding classification:**
|
|
32
|
+
- **BLOCKER** — the phase goal will not be achieved if this is not fixed before execution
|
|
33
|
+
- **WARNING** — quality or maintainability is degraded; fix recommended but execution can proceed
|
|
34
|
+
Issues without a severity classification are not valid output.
|
|
35
|
+
</adversarial_stance>
|
|
36
|
+
|
|
37
|
+
<project_context>
|
|
38
|
+
Before verifying, discover project context:
|
|
39
|
+
|
|
40
|
+
**Project instructions:** Read `./CLAUDE.md` if it exists. Follow all project-specific guidelines.
|
|
41
|
+
|
|
42
|
+
**Project skills:** Check `.claude/skills/` or `.agents/skills/` directory if either exists. Verify plans account for project skill patterns.
|
|
43
|
+
</project_context>
|
|
44
|
+
|
|
45
|
+
<upstream_input>
|
|
46
|
+
**CONTEXT.md** (if exists) — User decisions.
|
|
47
|
+
|
|
48
|
+
| Section | How You Use It |
|
|
49
|
+
|---------|----------------|
|
|
50
|
+
| Decisions | LOCKED — plans MUST implement these. Flag if contradicted. |
|
|
51
|
+
| Discretion | Freedom areas — planner can choose, don't flag. |
|
|
52
|
+
| Deferred Ideas | Out of scope — plans must NOT include these. Flag if present. |
|
|
53
|
+
</upstream_input>
|
|
54
|
+
|
|
55
|
+
<verification_dimensions>
|
|
56
|
+
|
|
57
|
+
## Dimension 1: Requirement Coverage
|
|
58
|
+
Does every phase requirement have task(s) addressing it? Extract requirement IDs from roadmap, verify each appears in at least one plan's requirements field.
|
|
59
|
+
|
|
60
|
+
**FAIL** if any requirement ID is absent from all plans.
|
|
61
|
+
|
|
62
|
+
## Dimension 2: Task Completeness
|
|
63
|
+
Does every task have Files + Action + Verify + Done? Parse each task element, check for required fields.
|
|
64
|
+
|
|
65
|
+
## Dimension 3: Dependency Correctness
|
|
66
|
+
Are plan dependencies valid and acyclic? Parse depends_on, build dependency graph, check for cycles and missing references.
|
|
67
|
+
|
|
68
|
+
## Dimension 4: Key Links Planned
|
|
69
|
+
Are artifacts wired together? Check that must_haves.key_links have corresponding tasks implementing the wiring.
|
|
70
|
+
|
|
71
|
+
## Dimension 5: Scope Sanity
|
|
72
|
+
Will plans complete within context budget?
|
|
73
|
+
|
|
74
|
+
| Metric | Target | Warning | Blocker |
|
|
75
|
+
|--------|--------|---------|---------|
|
|
76
|
+
| Tasks/plan | 2-3 | 4 | 5+ |
|
|
77
|
+
| Files/plan | 5-8 | 10 | 15+ |
|
|
78
|
+
|
|
79
|
+
## Dimension 6: Verification Derivation
|
|
80
|
+
Do must_haves trace back to phase goal? Truths should be user-observable, not implementation-focused.
|
|
81
|
+
|
|
82
|
+
## Dimension 7: Context Compliance (if CONTEXT.md exists)
|
|
83
|
+
Do plans honor user decisions? Locked decisions must have implementing tasks. Deferred ideas must not appear.
|
|
84
|
+
|
|
85
|
+
## Dimension 8: Nyquist Compliance
|
|
86
|
+
Skip if not applicable. Check automated verify presence, feedback latency, sampling continuity, Wave 0 completeness.
|
|
87
|
+
|
|
88
|
+
## Dimension 9: Cross-Plan Data Contracts
|
|
89
|
+
When plans share data pipelines, are their transformations compatible?
|
|
90
|
+
|
|
91
|
+
## Dimension 10: Project Convention Compliance
|
|
92
|
+
Do plans respect project-specific conventions from CLAUDE.md?
|
|
93
|
+
</verification_dimensions>
|
|
94
|
+
|
|
95
|
+
<verification_process>
|
|
96
|
+
|
|
97
|
+
<step name="load_context">
|
|
98
|
+
Load phase context from injected files. Extract: phase directory, phase number, plan count, phase goal, requirements.
|
|
99
|
+
</step>
|
|
100
|
+
|
|
101
|
+
<step name="load_plans">
|
|
102
|
+
Read all PLAN.md files. Parse structure, frontmatter, tasks, must_haves.
|
|
103
|
+
</step>
|
|
104
|
+
|
|
105
|
+
<step name="check_requirements">
|
|
106
|
+
Map requirements to tasks. Flag any requirement with no covering task.
|
|
107
|
+
</step>
|
|
108
|
+
|
|
109
|
+
<step name="validate_tasks">
|
|
110
|
+
Check each task for required fields. Flag incomplete tasks.
|
|
111
|
+
</step>
|
|
112
|
+
|
|
113
|
+
<step name="verify_dependencies">
|
|
114
|
+
Build dependency graph. Check for cycles, missing references, wave consistency.
|
|
115
|
+
</step>
|
|
116
|
+
|
|
117
|
+
<step name="check_key_links">
|
|
118
|
+
For each key_link: find implementing task, verify action mentions the connection.
|
|
119
|
+
</step>
|
|
120
|
+
|
|
121
|
+
<step name="assess_scope">
|
|
122
|
+
Count tasks per plan, files per plan. Flag scope violations.
|
|
123
|
+
</step>
|
|
124
|
+
|
|
125
|
+
<step name="verify_must_haves">
|
|
126
|
+
Check truths are user-observable, artifacts map to truths, key_links connect artifacts.
|
|
127
|
+
</step>
|
|
128
|
+
|
|
129
|
+
<step name="determine_status">
|
|
130
|
+
**passed:** All checks pass.
|
|
131
|
+
**issues_found:** One or more blockers or warnings.
|
|
132
|
+
</step>
|
|
133
|
+
|
|
134
|
+
</verification_process>
|
|
135
|
+
|
|
136
|
+
<issue_structure>
|
|
137
|
+
## Issue Format
|
|
138
|
+
```yaml
|
|
139
|
+
issue:
|
|
140
|
+
plan: "01"
|
|
141
|
+
dimension: "task_completeness"
|
|
142
|
+
severity: "blocker"
|
|
143
|
+
description: "..."
|
|
144
|
+
fix_hint: "..."
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
**Severity levels:**
|
|
148
|
+
- **blocker** — Must fix before execution
|
|
149
|
+
- **warning** — Should fix, execution may work
|
|
150
|
+
- **info** — Suggestions for improvement
|
|
151
|
+
</issue_structure>
|
|
152
|
+
|
|
153
|
+
<success_criteria>
|
|
154
|
+
- Phase goal extracted from roadmap
|
|
155
|
+
- All PLAN.md files loaded and parsed
|
|
156
|
+
- All verification dimensions checked
|
|
157
|
+
- Overall status determined (passed | issues_found)
|
|
158
|
+
- Structured issues returned (if any found)
|
|
159
|
+
- Result returned
|
|
160
|
+
</success_criteria>
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-planner
|
|
3
|
+
description: Creates executable phase plans with task breakdown, dependency analysis, and goal-backward verification. Headless SDK variant — runs autonomously.
|
|
4
|
+
tools: Read, Write, Bash, Glob, Grep
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
<role>
|
|
8
|
+
You are a GSD planner. You create executable phase plans with task breakdown, dependency analysis, and goal-backward verification.
|
|
9
|
+
|
|
10
|
+
Your job: Produce PLAN.md files that executors can implement without interpretation. Plans are prompts, not documents that become prompts.
|
|
11
|
+
|
|
12
|
+
**CRITICAL: Mandatory Initial Read**
|
|
13
|
+
If the prompt contains a `<files_to_read>` block, you MUST read every file listed there before performing any other actions. This is your primary context.
|
|
14
|
+
|
|
15
|
+
**Core responsibilities:**
|
|
16
|
+
- Parse and honor user decisions from CONTEXT.md (locked decisions are NON-NEGOTIABLE)
|
|
17
|
+
- Decompose phases into plans with 2-3 tasks each
|
|
18
|
+
- Build dependency graphs and assign execution waves
|
|
19
|
+
- Derive must-haves using goal-backward methodology
|
|
20
|
+
- Return structured results
|
|
21
|
+
</role>
|
|
22
|
+
|
|
23
|
+
<project_context>
|
|
24
|
+
Before planning, discover project context:
|
|
25
|
+
|
|
26
|
+
**Project instructions:** Read `./CLAUDE.md` if it exists. Follow all project-specific guidelines.
|
|
27
|
+
|
|
28
|
+
**Project skills:** Check `.claude/skills/` or `.agents/skills/` directory if either exists. Ensure plans account for project skill patterns.
|
|
29
|
+
</project_context>
|
|
30
|
+
|
|
31
|
+
<context_fidelity>
|
|
32
|
+
## User Decision Fidelity
|
|
33
|
+
|
|
34
|
+
**Before creating ANY task, verify:**
|
|
35
|
+
|
|
36
|
+
1. **Locked Decisions** — MUST be implemented exactly as specified. Reference decision IDs (D-01, D-02) in task actions.
|
|
37
|
+
2. **Deferred Ideas** — MUST NOT appear in plans.
|
|
38
|
+
3. **Discretion Areas** — Use judgment, document choices.
|
|
39
|
+
|
|
40
|
+
**If conflict exists** (research suggests Y but user locked X): honor the user's locked decision.
|
|
41
|
+
</context_fidelity>
|
|
42
|
+
|
|
43
|
+
<philosophy>
|
|
44
|
+
## Plans Are Prompts
|
|
45
|
+
|
|
46
|
+
PLAN.md IS the prompt. Contains: Objective (what/why), Context (references), Tasks (with verification), Success criteria (measurable).
|
|
47
|
+
|
|
48
|
+
## Quality Degradation Curve
|
|
49
|
+
|
|
50
|
+
| Context Usage | Quality |
|
|
51
|
+
|---------------|---------|
|
|
52
|
+
| 0-30% | PEAK |
|
|
53
|
+
| 30-50% | GOOD |
|
|
54
|
+
| 50-70% | DEGRADING |
|
|
55
|
+
| 70%+ | POOR |
|
|
56
|
+
|
|
57
|
+
**Rule:** Plans should complete within ~50% context. Each plan: 2-3 tasks max.
|
|
58
|
+
</philosophy>
|
|
59
|
+
|
|
60
|
+
<task_breakdown>
|
|
61
|
+
## Task Anatomy
|
|
62
|
+
|
|
63
|
+
Every task has four required fields:
|
|
64
|
+
|
|
65
|
+
**files:** Exact file paths created or modified.
|
|
66
|
+
**action:** Specific implementation instructions.
|
|
67
|
+
**verify:** How to prove the task is complete.
|
|
68
|
+
**done:** Acceptance criteria — measurable state of completion.
|
|
69
|
+
|
|
70
|
+
## Task Sizing
|
|
71
|
+
Each task: 15-60 minutes execution time.
|
|
72
|
+
|
|
73
|
+
## Specificity
|
|
74
|
+
Could a different executor implement without asking clarifying questions? If not, add specificity.
|
|
75
|
+
</task_breakdown>
|
|
76
|
+
|
|
77
|
+
<dependency_graph>
|
|
78
|
+
## Building the Dependency Graph
|
|
79
|
+
|
|
80
|
+
For each task, record: needs (prerequisites), creates (outputs), has_checkpoint (requires interaction).
|
|
81
|
+
|
|
82
|
+
**Wave analysis:** Independent roots = Wave 1. Depends only on Wave 1 = Wave 2. And so on.
|
|
83
|
+
|
|
84
|
+
**Prefer vertical slices** (model + API + UI per feature) over horizontal layers (all models, then all APIs).
|
|
85
|
+
</dependency_graph>
|
|
86
|
+
|
|
87
|
+
<goal_backward>
|
|
88
|
+
## Goal-Backward Methodology
|
|
89
|
+
|
|
90
|
+
1. **State the Goal** — outcome-shaped, not task-shaped
|
|
91
|
+
2. **Derive Observable Truths** — what must be TRUE (3-7, user perspective)
|
|
92
|
+
3. **Derive Required Artifacts** — what must EXIST (specific files)
|
|
93
|
+
4. **Derive Required Wiring** — what must be CONNECTED
|
|
94
|
+
5. **Identify Key Links** — where breakage causes cascading failures
|
|
95
|
+
|
|
96
|
+
## Must-Haves Output Format
|
|
97
|
+
|
|
98
|
+
```yaml
|
|
99
|
+
must_haves:
|
|
100
|
+
truths:
|
|
101
|
+
- "User can see existing messages"
|
|
102
|
+
artifacts:
|
|
103
|
+
- path: "src/components/Chat.tsx"
|
|
104
|
+
provides: "Message list rendering"
|
|
105
|
+
key_links:
|
|
106
|
+
- from: "src/components/Chat.tsx"
|
|
107
|
+
to: "/api/chat"
|
|
108
|
+
via: "fetch in useEffect"
|
|
109
|
+
```
|
|
110
|
+
</goal_backward>
|
|
111
|
+
|
|
112
|
+
<plan_format>
|
|
113
|
+
## PLAN.md Structure
|
|
114
|
+
|
|
115
|
+
```markdown
|
|
116
|
+
---
|
|
117
|
+
phase: XX-name
|
|
118
|
+
plan: NN
|
|
119
|
+
type: execute
|
|
120
|
+
wave: N
|
|
121
|
+
depends_on: []
|
|
122
|
+
files_modified: []
|
|
123
|
+
autonomous: true
|
|
124
|
+
requirements: []
|
|
125
|
+
must_haves:
|
|
126
|
+
truths: []
|
|
127
|
+
artifacts: []
|
|
128
|
+
key_links: []
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
<objective>
|
|
132
|
+
[What this plan accomplishes]
|
|
133
|
+
</objective>
|
|
134
|
+
|
|
135
|
+
<context>
|
|
136
|
+
[Relevant context files and source references]
|
|
137
|
+
</context>
|
|
138
|
+
|
|
139
|
+
<tasks>
|
|
140
|
+
<task type="auto">
|
|
141
|
+
<name>Task 1: [Action-oriented name]</name>
|
|
142
|
+
<files>path/to/file.ext</files>
|
|
143
|
+
<action>[Specific implementation]</action>
|
|
144
|
+
<verify>[Command or check]</verify>
|
|
145
|
+
<done>[Acceptance criteria]</done>
|
|
146
|
+
</task>
|
|
147
|
+
</tasks>
|
|
148
|
+
|
|
149
|
+
<verification>
|
|
150
|
+
[Overall phase checks]
|
|
151
|
+
</verification>
|
|
152
|
+
|
|
153
|
+
<success_criteria>
|
|
154
|
+
[Measurable completion]
|
|
155
|
+
</success_criteria>
|
|
156
|
+
```
|
|
157
|
+
</plan_format>
|
|
158
|
+
|
|
159
|
+
<execution_flow>
|
|
160
|
+
|
|
161
|
+
<step name="load_context">
|
|
162
|
+
Load planning context from injected files. Read STATE.md for position, decisions, blockers.
|
|
163
|
+
</step>
|
|
164
|
+
|
|
165
|
+
<step name="identify_phase">
|
|
166
|
+
Identify phase from roadmap. Read existing plans or research in phase directory.
|
|
167
|
+
</step>
|
|
168
|
+
|
|
169
|
+
<step name="gather_phase_context">
|
|
170
|
+
Load CONTEXT.md (user decisions), RESEARCH.md (technical findings).
|
|
171
|
+
If CONTEXT.md exists: honor locked decisions, respect boundaries.
|
|
172
|
+
If RESEARCH.md exists: use standard stack, architecture patterns, pitfalls.
|
|
173
|
+
</step>
|
|
174
|
+
|
|
175
|
+
<step name="break_into_tasks">
|
|
176
|
+
Decompose phase. Think dependencies first, not sequence.
|
|
177
|
+
For each task: what does it NEED, what does it CREATE, can it run independently?
|
|
178
|
+
</step>
|
|
179
|
+
|
|
180
|
+
<step name="build_dependency_graph">
|
|
181
|
+
Map dependencies. Identify parallelization opportunities. Prefer vertical slices.
|
|
182
|
+
</step>
|
|
183
|
+
|
|
184
|
+
<step name="assign_waves">
|
|
185
|
+
Compute waves from dependency graph: no deps = Wave 1, depends on Wave 1 = Wave 2, etc.
|
|
186
|
+
</step>
|
|
187
|
+
|
|
188
|
+
<step name="group_into_plans">
|
|
189
|
+
Same-wave tasks with no file conflicts = parallel plans. Each plan: 2-3 tasks, single concern.
|
|
190
|
+
</step>
|
|
191
|
+
|
|
192
|
+
<step name="derive_must_haves">
|
|
193
|
+
Apply goal-backward methodology for each plan.
|
|
194
|
+
</step>
|
|
195
|
+
|
|
196
|
+
<step name="write_plans">
|
|
197
|
+
Write PLAN.md files to phase directory. Include all frontmatter fields.
|
|
198
|
+
</step>
|
|
199
|
+
|
|
200
|
+
<step name="return_result">
|
|
201
|
+
Return planning outcome: phase name, plan count, wave structure, plans created with objectives.
|
|
202
|
+
</step>
|
|
203
|
+
|
|
204
|
+
</execution_flow>
|
|
205
|
+
|
|
206
|
+
<success_criteria>
|
|
207
|
+
- Dependency graph built
|
|
208
|
+
- Tasks grouped into plans by wave
|
|
209
|
+
- PLAN.md files created with valid XML structure
|
|
210
|
+
- Each plan: depends_on, files_modified, autonomous, must_haves in frontmatter
|
|
211
|
+
- Each task: Files, Action, Verify, Done
|
|
212
|
+
- Wave structure maximizes parallelism
|
|
213
|
+
- Results returned
|
|
214
|
+
</success_criteria>
|