gsd-antigravity-kit 2.0.1 → 2.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/.agent/skills/gsd/SKILL.md +26 -4
- package/.agent/skills/gsd/VERSION +1 -1
- package/.agent/skills/gsd/assets/templates/AI-SPEC.md +246 -0
- package/.agent/skills/gsd/assets/templates/DEBUG.md +7 -2
- package/.agent/skills/gsd/assets/templates/config.json +56 -48
- package/.agent/skills/gsd/assets/templates/research.md +40 -0
- package/.agent/skills/gsd/assets/templates/spec.md +307 -0
- package/.agent/skills/gsd/assets/templates/state.md +8 -0
- package/.agent/skills/gsd/bin/gsd-tools.cjs +212 -11
- package/.agent/skills/gsd/bin/help-manifest.json +8 -2
- package/.agent/skills/gsd/bin/hooks/gsd-check-update-worker.js +108 -0
- package/.agent/skills/gsd/bin/hooks/gsd-check-update.js +14 -89
- package/.agent/skills/gsd/bin/hooks/gsd-context-monitor.js +34 -5
- package/.agent/skills/gsd/bin/hooks/gsd-phase-boundary.sh +1 -0
- package/.agent/skills/gsd/bin/hooks/gsd-prompt-guard.js +1 -1
- package/.agent/skills/gsd/bin/hooks/gsd-read-guard.js +6 -1
- package/.agent/skills/gsd/bin/hooks/gsd-session-state.sh +1 -0
- package/.agent/skills/gsd/bin/hooks/gsd-statusline.js +150 -16
- package/.agent/skills/gsd/bin/hooks/gsd-validate-commit.sh +1 -0
- package/.agent/skills/gsd/bin/hooks/gsd-workflow-guard.js +1 -1
- package/.agent/skills/gsd/bin/lib/audit.cjs +757 -0
- package/.agent/skills/gsd/bin/lib/commands.cjs +17 -7
- package/.agent/skills/gsd/bin/lib/config.cjs +66 -20
- package/.agent/skills/gsd/bin/lib/core.cjs +212 -12
- package/.agent/skills/gsd/bin/lib/frontmatter.cjs +6 -8
- package/.agent/skills/gsd/bin/lib/graphify.cjs +494 -0
- package/.agent/skills/gsd/bin/lib/gsd2-import.cjs +511 -0
- package/.agent/skills/gsd/bin/lib/init.cjs +371 -18
- package/.agent/skills/gsd/bin/lib/intel.cjs +9 -30
- package/.agent/skills/gsd/bin/lib/milestone.cjs +18 -17
- package/.agent/skills/gsd/bin/lib/model-profiles.cjs +1 -0
- package/.agent/skills/gsd/bin/lib/phase.cjs +225 -98
- package/.agent/skills/gsd/bin/lib/profile-output.cjs +17 -5
- package/.agent/skills/gsd/bin/lib/roadmap.cjs +12 -5
- package/.agent/skills/gsd/bin/lib/state.cjs +394 -129
- package/.agent/skills/gsd/bin/lib/template.cjs +8 -4
- package/.agent/skills/gsd/bin/lib/uat.cjs +2 -1
- package/.agent/skills/gsd/bin/lib/verify.cjs +111 -42
- package/.agent/skills/gsd/migration_report.md +2 -2
- package/.agent/skills/gsd/references/agents/gsd-advisor-researcher.md +23 -0
- package/.agent/skills/gsd/references/agents/gsd-ai-researcher.md +133 -0
- package/.agent/skills/gsd/references/agents/gsd-code-fixer.md +11 -10
- package/.agent/skills/gsd/references/agents/gsd-code-reviewer.md +2 -2
- package/.agent/skills/gsd/references/agents/gsd-codebase-mapper.md +13 -2
- package/.agent/skills/gsd/references/agents/gsd-debug-session-manager.md +314 -0
- package/.agent/skills/gsd/references/agents/gsd-debugger.md +147 -76
- package/.agent/skills/gsd/references/agents/gsd-doc-verifier.md +1 -1
- package/.agent/skills/gsd/references/agents/gsd-doc-writer.md +615 -602
- package/.agent/skills/gsd/references/agents/gsd-domain-researcher.md +153 -0
- package/.agent/skills/gsd/references/agents/gsd-eval-auditor.md +175 -0
- package/.agent/skills/gsd/references/agents/gsd-eval-planner.md +154 -0
- package/.agent/skills/gsd/references/agents/gsd-executor.md +108 -38
- package/.agent/skills/gsd/references/agents/gsd-framework-selector.md +160 -0
- package/.agent/skills/gsd/references/agents/gsd-integration-checker.md +454 -443
- package/.agent/skills/gsd/references/agents/gsd-intel-updater.md +40 -20
- package/.agent/skills/gsd/references/agents/gsd-nyquist-auditor.md +187 -176
- package/.agent/skills/gsd/references/agents/gsd-pattern-mapper.md +335 -0
- package/.agent/skills/gsd/references/agents/gsd-phase-researcher.md +112 -13
- package/.agent/skills/gsd/references/agents/gsd-plan-checker.md +104 -10
- package/.agent/skills/gsd/references/agents/gsd-planner.md +125 -167
- package/.agent/skills/gsd/references/agents/gsd-project-researcher.md +25 -2
- package/.agent/skills/gsd/references/agents/gsd-research-synthesizer.md +3 -3
- package/.agent/skills/gsd/references/agents/gsd-roadmapper.md +12 -1
- package/.agent/skills/gsd/references/agents/gsd-security-auditor.md +139 -128
- package/.agent/skills/gsd/references/agents/gsd-ui-auditor.md +3 -3
- package/.agent/skills/gsd/references/agents/gsd-ui-checker.md +11 -2
- package/.agent/skills/gsd/references/agents/gsd-ui-researcher.md +27 -4
- package/.agent/skills/gsd/references/agents/gsd-verifier.md +13 -19
- package/.agent/skills/gsd/references/commands/atomic/add-todo.md +2 -2
- package/.agent/skills/gsd/references/commands/atomic/check-todos.md +2 -2
- package/.agent/skills/gsd/references/commands/atomic/cleanup.md +2 -2
- package/.agent/skills/gsd/references/commands/atomic/do.md +2 -2
- package/.agent/skills/gsd/references/commands/atomic/help.md +2 -2
- package/.agent/skills/gsd/references/commands/atomic/join-discord.md +2 -2
- package/.agent/skills/gsd/references/commands/atomic/note.md +2 -2
- package/.agent/skills/gsd/references/commands/atomic/session-report.md +2 -2
- package/.agent/skills/gsd/references/commands/atomic/ship.md +2 -2
- package/.agent/skills/gsd/references/commands/atomic/stats.md +2 -2
- package/.agent/skills/gsd/references/commands/atomic/thread.md +141 -41
- package/.agent/skills/gsd/references/commands/atomic/undo.md +2 -2
- package/.agent/skills/gsd/references/commands/milestone/add-backlog.md +15 -12
- package/.agent/skills/gsd/references/commands/milestone/audit-milestone.md +2 -2
- package/.agent/skills/gsd/references/commands/milestone/complete-milestone.md +2 -2
- package/.agent/skills/gsd/references/commands/milestone/milestone-summary.md +2 -2
- package/.agent/skills/gsd/references/commands/milestone/new-milestone.md +2 -2
- package/.agent/skills/gsd/references/commands/milestone/plan-milestone-gaps.md +2 -2
- package/.agent/skills/gsd/references/commands/milestone/plant-seed.md +2 -2
- package/.agent/skills/gsd/references/commands/milestone/review-backlog.md +4 -4
- package/.agent/skills/gsd/references/commands/misc/ai-integration-phase.md +38 -0
- package/.agent/skills/gsd/references/commands/misc/audit-fix.md +2 -2
- package/.agent/skills/gsd/references/commands/misc/audit-uat.md +2 -2
- package/.agent/skills/gsd/references/commands/misc/eval-review.md +34 -0
- package/.agent/skills/gsd/references/commands/misc/extract_learnings.md +24 -0
- package/.agent/skills/gsd/references/commands/misc/from-gsd2.md +49 -0
- package/.agent/skills/gsd/references/commands/misc/graphify.md +203 -0
- package/.agent/skills/gsd/references/commands/misc/inbox.md +40 -0
- package/.agent/skills/gsd/references/commands/misc/next.md +5 -3
- package/.agent/skills/gsd/references/commands/misc/progress.md +4 -3
- package/.agent/skills/gsd/references/commands/misc/sketch-wrap-up.md +33 -0
- package/.agent/skills/gsd/references/commands/misc/sketch.md +47 -0
- package/.agent/skills/gsd/references/commands/misc/spec-phase.md +64 -0
- package/.agent/skills/gsd/references/commands/misc/spike-wrap-up.md +33 -0
- package/.agent/skills/gsd/references/commands/misc/spike.md +43 -0
- package/.agent/skills/gsd/references/commands/misc/verify-work.md +2 -2
- package/.agent/skills/gsd/references/commands/phase/add-phase.md +2 -2
- package/.agent/skills/gsd/references/commands/phase/add-tests.md +2 -2
- package/.agent/skills/gsd/references/commands/phase/discuss-phase.md +5 -5
- package/.agent/skills/gsd/references/commands/phase/execute-phase.md +4 -4
- package/.agent/skills/gsd/references/commands/phase/insert-phase.md +2 -2
- package/.agent/skills/gsd/references/commands/phase/list-phase-assumptions.md +2 -2
- package/.agent/skills/gsd/references/commands/phase/plan-phase.md +3 -3
- package/.agent/skills/gsd/references/commands/phase/remove-phase.md +2 -2
- package/.agent/skills/gsd/references/commands/phase/research-phase.md +5 -5
- package/.agent/skills/gsd/references/commands/phase/secure-phase.md +2 -2
- package/.agent/skills/gsd/references/commands/phase/ui-phase.md +2 -2
- package/.agent/skills/gsd/references/commands/phase/ui-review.md +2 -2
- package/.agent/skills/gsd/references/commands/phase/validate-phase.md +2 -2
- package/.agent/skills/gsd/references/commands/phase/workstreams.md +9 -9
- package/.agent/skills/gsd/references/commands/project/analyze-dependencies.md +2 -2
- package/.agent/skills/gsd/references/commands/project/explore.md +2 -2
- package/.agent/skills/gsd/references/commands/project/import.md +2 -2
- package/.agent/skills/gsd/references/commands/project/intel.md +10 -10
- package/.agent/skills/gsd/references/commands/project/list-workspaces.md +2 -2
- package/.agent/skills/gsd/references/commands/project/map-codebase.md +2 -2
- package/.agent/skills/gsd/references/commands/project/new-project.md +2 -2
- package/.agent/skills/gsd/references/commands/project/new-workspace.md +2 -2
- package/.agent/skills/gsd/references/commands/project/remove-workspace.md +2 -2
- package/.agent/skills/gsd/references/commands/project/scan.md +2 -2
- package/.agent/skills/gsd/references/commands/system/autonomous.md +4 -3
- package/.agent/skills/gsd/references/commands/system/code-review-fix.md +3 -3
- package/.agent/skills/gsd/references/commands/system/code-review.md +3 -3
- package/.agent/skills/gsd/references/commands/system/debug.md +177 -100
- package/.agent/skills/gsd/references/commands/system/docs-update.md +2 -2
- package/.agent/skills/gsd/references/commands/system/fast.md +2 -2
- package/.agent/skills/gsd/references/commands/system/forensics.md +2 -2
- package/.agent/skills/gsd/references/commands/system/gsd-tools.md +153 -6
- package/.agent/skills/gsd/references/commands/system/health.md +2 -2
- package/.agent/skills/gsd/references/commands/system/manager.md +3 -3
- package/.agent/skills/gsd/references/commands/system/pause-work.md +2 -2
- package/.agent/skills/gsd/references/commands/system/pr-branch.md +2 -2
- package/.agent/skills/gsd/references/commands/system/profile-user.md +2 -2
- package/.agent/skills/gsd/references/commands/system/quick.md +127 -3
- package/.agent/skills/gsd/references/commands/system/reapply-patches.md +45 -6
- package/.agent/skills/gsd/references/commands/system/resume-work.md +2 -2
- package/.agent/skills/gsd/references/commands/system/review.md +6 -4
- package/.agent/skills/gsd/references/commands/system/set-profile.md +3 -3
- package/.agent/skills/gsd/references/commands/system/settings.md +2 -2
- package/.agent/skills/gsd/references/commands/system/update.md +2 -2
- package/.agent/skills/gsd/references/docs/ai-evals.md +156 -0
- package/.agent/skills/gsd/references/docs/ai-frameworks.md +186 -0
- package/.agent/skills/gsd/references/docs/artifact-types.md +18 -0
- package/.agent/skills/gsd/references/docs/autonomous-smart-discuss.md +277 -0
- package/.agent/skills/gsd/references/docs/checkpoints.md +30 -0
- package/.agent/skills/gsd/references/docs/common-bug-patterns.md +49 -49
- package/.agent/skills/gsd/references/docs/continuation-format.md +11 -7
- package/.agent/skills/gsd/references/docs/debugger-philosophy.md +76 -0
- package/.agent/skills/gsd/references/docs/decimal-phase-calculation.md +64 -64
- package/.agent/skills/gsd/references/docs/executor-examples.md +110 -0
- package/.agent/skills/gsd/references/docs/git-integration.md +4 -4
- package/.agent/skills/gsd/references/docs/git-planning-commit.md +40 -38
- package/.agent/skills/gsd/references/docs/ios-scaffold.md +123 -0
- package/.agent/skills/gsd/references/docs/mandatory-initial-read.md +2 -0
- package/.agent/skills/gsd/references/docs/phase-argument-parsing.md +61 -61
- package/.agent/skills/gsd/references/docs/planner-antipatterns.md +89 -0
- package/.agent/skills/gsd/references/docs/planner-revision.md +87 -87
- package/.agent/skills/gsd/references/docs/planner-source-audit.md +73 -0
- package/.agent/skills/gsd/references/docs/planning-config.md +33 -8
- package/.agent/skills/gsd/references/docs/project-skills-discovery.md +19 -0
- package/.agent/skills/gsd/references/docs/sketch-interactivity.md +41 -0
- package/.agent/skills/gsd/references/docs/sketch-theme-system.md +94 -0
- package/.agent/skills/gsd/references/docs/sketch-tooling.md +45 -0
- package/.agent/skills/gsd/references/docs/sketch-variant-patterns.md +81 -0
- package/.agent/skills/gsd/references/docs/tdd.md +67 -0
- package/.agent/skills/gsd/references/docs/universal-anti-patterns.md +5 -0
- package/.agent/skills/gsd/references/docs/workstream-flag.md +11 -11
- package/.agent/skills/gsd/references/mapping.md +1 -1
- package/.agent/skills/gsd/references/workflows/add-phase.md +112 -112
- package/.agent/skills/gsd/references/workflows/add-tests.md +6 -3
- package/.agent/skills/gsd/references/workflows/add-todo.md +5 -3
- package/.agent/skills/gsd/references/workflows/ai-integration-phase.md +284 -0
- package/.agent/skills/gsd/references/workflows/audit-fix.md +157 -157
- package/.agent/skills/gsd/references/workflows/audit-milestone.md +340 -340
- package/.agent/skills/gsd/references/workflows/audit-uat.md +109 -109
- package/.agent/skills/gsd/references/workflows/autonomous.md +20 -288
- package/.agent/skills/gsd/references/workflows/check-todos.md +4 -2
- package/.agent/skills/gsd/references/workflows/cleanup.md +3 -1
- package/.agent/skills/gsd/references/workflows/code-review-fix.md +497 -497
- package/.agent/skills/gsd/references/workflows/code-review.md +515 -515
- package/.agent/skills/gsd/references/workflows/complete-milestone.md +97 -24
- package/.agent/skills/gsd/references/workflows/diagnose-issues.md +238 -238
- package/.agent/skills/gsd/references/workflows/discovery-phase.md +2 -0
- package/.agent/skills/gsd/references/workflows/discuss-phase-assumptions.md +11 -11
- package/.agent/skills/gsd/references/workflows/discuss-phase.md +143 -19
- package/.agent/skills/gsd/references/workflows/do.md +8 -2
- package/.agent/skills/gsd/references/workflows/docs-update.md +5 -3
- package/.agent/skills/gsd/references/workflows/eval-review.md +155 -0
- package/.agent/skills/gsd/references/workflows/execute-phase.md +338 -54
- package/.agent/skills/gsd/references/workflows/execute-plan.md +80 -104
- package/.agent/skills/gsd/references/workflows/explore.md +3 -1
- package/.agent/skills/gsd/references/workflows/extract_learnings.md +232 -0
- package/.agent/skills/gsd/references/workflows/forensics.md +3 -3
- package/.agent/skills/gsd/references/workflows/health.md +2 -2
- package/.agent/skills/gsd/references/workflows/help.md +59 -1
- package/.agent/skills/gsd/references/workflows/import.md +3 -1
- package/.agent/skills/gsd/references/workflows/inbox.md +387 -384
- package/.agent/skills/gsd/references/workflows/insert-phase.md +130 -130
- package/.agent/skills/gsd/references/workflows/list-workspaces.md +56 -56
- package/.agent/skills/gsd/references/workflows/manager.md +5 -3
- package/.agent/skills/gsd/references/workflows/map-codebase.md +19 -5
- package/.agent/skills/gsd/references/workflows/milestone-summary.md +6 -6
- package/.agent/skills/gsd/references/workflows/new-milestone.md +63 -9
- package/.agent/skills/gsd/references/workflows/new-project.md +126 -22
- package/.agent/skills/gsd/references/workflows/new-workspace.md +6 -4
- package/.agent/skills/gsd/references/workflows/next.md +220 -153
- package/.agent/skills/gsd/references/workflows/note.md +2 -0
- package/.agent/skills/gsd/references/workflows/pause-work.md +11 -7
- package/.agent/skills/gsd/references/workflows/plan-milestone-gaps.md +273 -273
- package/.agent/skills/gsd/references/workflows/plan-phase.md +281 -62
- package/.agent/skills/gsd/references/workflows/plant-seed.md +4 -1
- package/.agent/skills/gsd/references/workflows/pr-branch.md +41 -13
- package/.agent/skills/gsd/references/workflows/profile-user.md +15 -13
- package/.agent/skills/gsd/references/workflows/progress.md +133 -21
- package/.agent/skills/gsd/references/workflows/quick.md +67 -27
- package/.agent/skills/gsd/references/workflows/remove-phase.md +155 -155
- package/.agent/skills/gsd/references/workflows/remove-workspace.md +4 -2
- package/.agent/skills/gsd/references/workflows/research-phase.md +3 -3
- package/.agent/skills/gsd/references/workflows/resume-project.md +3 -3
- package/.agent/skills/gsd/references/workflows/review.md +71 -8
- package/.agent/skills/gsd/references/workflows/scan.md +102 -102
- package/.agent/skills/gsd/references/workflows/secure-phase.md +7 -5
- package/.agent/skills/gsd/references/workflows/settings.md +24 -7
- package/.agent/skills/gsd/references/workflows/ship.md +71 -6
- package/.agent/skills/gsd/references/workflows/sketch-wrap-up.md +283 -0
- package/.agent/skills/gsd/references/workflows/sketch.md +263 -0
- package/.agent/skills/gsd/references/workflows/spec-phase.md +262 -0
- package/.agent/skills/gsd/references/workflows/spike-wrap-up.md +273 -0
- package/.agent/skills/gsd/references/workflows/spike.md +270 -0
- package/.agent/skills/gsd/references/workflows/stats.md +60 -60
- package/.agent/skills/gsd/references/workflows/transition.md +671 -671
- package/.agent/skills/gsd/references/workflows/ui-phase.md +33 -12
- package/.agent/skills/gsd/references/workflows/ui-review.md +6 -4
- package/.agent/skills/gsd/references/workflows/undo.md +3 -1
- package/.agent/skills/gsd/references/workflows/update.md +113 -2
- package/.agent/skills/gsd/references/workflows/validate-phase.md +7 -5
- package/.agent/skills/gsd/references/workflows/verify-phase.md +93 -10
- package/.agent/skills/gsd/references/workflows/verify-work.md +50 -10
- package/.agent/skills/gsd-converter/references/mapping.md +1 -1
- package/.agent/skills/gsd-converter/scripts/convert.py +36 -17
- package/.agent/skills/gsd-converter/scripts/regression_test.py +68 -33
- package/README.md +3 -2
- package/package.json +1 -1
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# Planner Anti-Patterns and Specificity Examples
|
|
2
|
+
|
|
3
|
+
> Reference file for gsd-planner agent. Loaded on-demand via `@` reference.
|
|
4
|
+
> For sub-200K context windows, this content is stripped from the agent prompt and available here for on-demand loading.
|
|
5
|
+
|
|
6
|
+
## Checkpoint Anti-Patterns
|
|
7
|
+
|
|
8
|
+
### Bad — Asking human to automate
|
|
9
|
+
|
|
10
|
+
```xml
|
|
11
|
+
<task type="checkpoint:human-action">
|
|
12
|
+
<action>Deploy to Vercel</action>
|
|
13
|
+
<instructions>Visit vercel.com, import repo, click deploy...</instructions>
|
|
14
|
+
</task>
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
**Why bad:** Vercel has a CLI. Antigravity should run `vercel --yes`. Never ask the user to do what Antigravity can automate via CLI/API.
|
|
18
|
+
|
|
19
|
+
### Bad — Too many checkpoints
|
|
20
|
+
|
|
21
|
+
```xml
|
|
22
|
+
<task type="auto">Create schema</task>
|
|
23
|
+
<task type="checkpoint:human-verify">Check schema</task>
|
|
24
|
+
<task type="auto">Create API</task>
|
|
25
|
+
<task type="checkpoint:human-verify">Check API</task>
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
**Why bad:** Verification fatigue. Users should not be asked to verify every small step. Combine into one checkpoint at the end of meaningful work.
|
|
29
|
+
|
|
30
|
+
### Good — Single verification checkpoint
|
|
31
|
+
|
|
32
|
+
```xml
|
|
33
|
+
<task type="auto">Create schema</task>
|
|
34
|
+
<task type="auto">Create API</task>
|
|
35
|
+
<task type="auto">Create UI</task>
|
|
36
|
+
<task type="checkpoint:human-verify">
|
|
37
|
+
<what-built>Complete auth flow (schema + API + UI)</what-built>
|
|
38
|
+
<how-to-verify>Test full flow: register, login, access protected page</how-to-verify>
|
|
39
|
+
</task>
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### Bad — Mixing checkpoints with implementation
|
|
43
|
+
|
|
44
|
+
A plan should not interleave multiple checkpoint types with implementation tasks. Checkpoints belong at natural verification boundaries, not scattered throughout.
|
|
45
|
+
|
|
46
|
+
## Specificity Examples
|
|
47
|
+
|
|
48
|
+
| TOO VAGUE | JUST RIGHT |
|
|
49
|
+
|-----------|------------|
|
|
50
|
+
| "Add authentication" | "Add JWT auth with refresh rotation using jose library, store in httpOnly cookie, 15min access / 7day refresh" |
|
|
51
|
+
| "Create the API" | "Create POST /api/projects endpoint accepting {name, description}, validates name length 3-50 chars, returns 201 with project object" |
|
|
52
|
+
| "Style the dashboard" | "Add Tailwind classes to Dashboard.tsx: grid layout (3 cols on lg, 1 on mobile), card shadows, hover states on action buttons" |
|
|
53
|
+
| "Handle errors" | "Wrap API calls in try/catch, return {error: string} on 4xx/5xx, show toast via sonner on client" |
|
|
54
|
+
| "Set up the database" | "Add User and Project models to schema.prisma with UUID ids, email unique constraint, createdAt/updatedAt timestamps, run prisma db push" |
|
|
55
|
+
|
|
56
|
+
**Specificity test:** Could a different Antigravity instance execute the task without asking clarifying questions? If not, add more detail.
|
|
57
|
+
|
|
58
|
+
## Context Section Anti-Patterns
|
|
59
|
+
|
|
60
|
+
### Bad — Reflexive SUMMARY chaining
|
|
61
|
+
|
|
62
|
+
```markdown
|
|
63
|
+
<context>
|
|
64
|
+
@.planning/phases/01-foundation/01-01-SUMMARY.md
|
|
65
|
+
@.planning/phases/01-foundation/01-02-SUMMARY.md <!-- Does Plan 02 actually need Plan 01's output? -->
|
|
66
|
+
@.planning/phases/01-foundation/01-03-SUMMARY.md <!-- Chain grows, context bloats -->
|
|
67
|
+
</context>
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
**Why bad:** Plans are often independent. Reflexive chaining (02 refs 01, 03 refs 02...) wastes context. Only reference prior SUMMARY files when the plan genuinely uses types/exports from that prior plan or a decision from it affects the current plan.
|
|
71
|
+
|
|
72
|
+
### Good — Selective context
|
|
73
|
+
|
|
74
|
+
```markdown
|
|
75
|
+
<context>
|
|
76
|
+
@.planning/PROJECT.md
|
|
77
|
+
@.planning/STATE.md
|
|
78
|
+
@.planning/phases/01-foundation/01-01-SUMMARY.md <!-- Uses User type defined in Plan 01 -->
|
|
79
|
+
</context>
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Scope Reduction Anti-Patterns
|
|
83
|
+
|
|
84
|
+
**Prohibited language in task actions:**
|
|
85
|
+
- "v1", "v2", "simplified version", "static for now", "hardcoded for now"
|
|
86
|
+
- "future enhancement", "placeholder", "basic version", "minimal implementation"
|
|
87
|
+
- "will be wired later", "dynamic in future phase", "skip for now"
|
|
88
|
+
|
|
89
|
+
If a decision from CONTEXT.md says "display cost calculated from billing table in impulses", the plan must deliver exactly that. Not "static label /min" as a "v1". If the phase is too complex, recommend a phase split instead of silently reducing scope.
|
|
@@ -1,87 +1,87 @@
|
|
|
1
|
-
# Revision Mode — Planner Reference
|
|
2
|
-
|
|
3
|
-
Triggered when orchestrator provides `<revision_context>` with checker issues. NOT starting fresh — making targeted updates to existing plans.
|
|
4
|
-
|
|
5
|
-
**Mindset:** Surgeon, not architect. Minimal changes for specific issues.
|
|
6
|
-
|
|
7
|
-
### Step 1: Load Existing Plans
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
cat .planning/phases/$PHASE-*/$PHASE-*-PLAN.md
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
Build mental model of current plan structure, existing tasks, must_haves.
|
|
14
|
-
|
|
15
|
-
### Step 2: Parse Checker Issues
|
|
16
|
-
|
|
17
|
-
Issues come in structured format:
|
|
18
|
-
|
|
19
|
-
```yaml
|
|
20
|
-
issues:
|
|
21
|
-
- plan: "16-01"
|
|
22
|
-
dimension: "task_completeness"
|
|
23
|
-
severity: "blocker"
|
|
24
|
-
description: "Task 2 missing <verify> element"
|
|
25
|
-
fix_hint: "Add verification command for build output"
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
Group by plan, dimension, severity.
|
|
29
|
-
|
|
30
|
-
### Step 3: Revision Strategy
|
|
31
|
-
|
|
32
|
-
| Dimension | Strategy |
|
|
33
|
-
|-----------|----------|
|
|
34
|
-
| requirement_coverage | Add task(s) for missing requirement |
|
|
35
|
-
| task_completeness | Add missing elements to existing task |
|
|
36
|
-
| dependency_correctness | Fix depends_on, recompute waves |
|
|
37
|
-
| key_links_planned | Add wiring task or update action |
|
|
38
|
-
| scope_sanity | Split into multiple plans |
|
|
39
|
-
| must_haves_derivation | Derive and add must_haves to frontmatter |
|
|
40
|
-
|
|
41
|
-
### Step 4: Make Targeted Updates
|
|
42
|
-
|
|
43
|
-
**DO:** Edit specific flagged sections, preserve working parts, update waves if dependencies change.
|
|
44
|
-
|
|
45
|
-
**DO NOT:** Rewrite entire plans for minor issues, add unnecessary tasks, break existing working plans.
|
|
46
|
-
|
|
47
|
-
### Step 5: Validate Changes
|
|
48
|
-
|
|
49
|
-
- [ ] All flagged issues addressed
|
|
50
|
-
- [ ] No new issues introduced
|
|
51
|
-
- [ ] Wave numbers still valid
|
|
52
|
-
- [ ] Dependencies still correct
|
|
53
|
-
- [ ] Files on disk updated
|
|
54
|
-
|
|
55
|
-
### Step 6: Commit
|
|
56
|
-
|
|
57
|
-
```bash
|
|
58
|
-
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
### Step 7: Return Revision Summary
|
|
62
|
-
|
|
63
|
-
```markdown
|
|
64
|
-
## REVISION COMPLETE
|
|
65
|
-
|
|
66
|
-
**Issues addressed:** {N}/{M}
|
|
67
|
-
|
|
68
|
-
### Changes Made
|
|
69
|
-
|
|
70
|
-
| Plan | Change | Issue Addressed |
|
|
71
|
-
|------|--------|-----------------|
|
|
72
|
-
| 16-01 | Added <verify> to Task 2 | task_completeness |
|
|
73
|
-
| 16-02 | Added logout task | requirement_coverage (AUTH-02) |
|
|
74
|
-
|
|
75
|
-
### Files Updated
|
|
76
|
-
|
|
77
|
-
- .planning/phases/16-xxx/16-01-PLAN.md
|
|
78
|
-
- .planning/phases/16-xxx/16-02-PLAN.md
|
|
79
|
-
|
|
80
|
-
{If any issues NOT addressed:}
|
|
81
|
-
|
|
82
|
-
### Unaddressed Issues
|
|
83
|
-
|
|
84
|
-
| Issue | Reason |
|
|
85
|
-
|-------|--------|
|
|
86
|
-
| {issue} | {why - needs user input, architectural change, etc.} |
|
|
87
|
-
```
|
|
1
|
+
# Revision Mode — Planner Reference
|
|
2
|
+
|
|
3
|
+
Triggered when orchestrator provides `<revision_context>` with checker issues. NOT starting fresh — making targeted updates to existing plans.
|
|
4
|
+
|
|
5
|
+
**Mindset:** Surgeon, not architect. Minimal changes for specific issues.
|
|
6
|
+
|
|
7
|
+
### Step 1: Load Existing Plans
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
cat .planning/phases/$PHASE-*/$PHASE-*-PLAN.md
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Build mental model of current plan structure, existing tasks, must_haves.
|
|
14
|
+
|
|
15
|
+
### Step 2: Parse Checker Issues
|
|
16
|
+
|
|
17
|
+
Issues come in structured format:
|
|
18
|
+
|
|
19
|
+
```yaml
|
|
20
|
+
issues:
|
|
21
|
+
- plan: "16-01"
|
|
22
|
+
dimension: "task_completeness"
|
|
23
|
+
severity: "blocker"
|
|
24
|
+
description: "Task 2 missing <verify> element"
|
|
25
|
+
fix_hint: "Add verification command for build output"
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Group by plan, dimension, severity.
|
|
29
|
+
|
|
30
|
+
### Step 3: Revision Strategy
|
|
31
|
+
|
|
32
|
+
| Dimension | Strategy |
|
|
33
|
+
|-----------|----------|
|
|
34
|
+
| requirement_coverage | Add task(s) for missing requirement |
|
|
35
|
+
| task_completeness | Add missing elements to existing task |
|
|
36
|
+
| dependency_correctness | Fix depends_on, recompute waves |
|
|
37
|
+
| key_links_planned | Add wiring task or update action |
|
|
38
|
+
| scope_sanity | Split into multiple plans |
|
|
39
|
+
| must_haves_derivation | Derive and add must_haves to frontmatter |
|
|
40
|
+
|
|
41
|
+
### Step 4: Make Targeted Updates
|
|
42
|
+
|
|
43
|
+
**DO:** Edit specific flagged sections, preserve working parts, update waves if dependencies change.
|
|
44
|
+
|
|
45
|
+
**DO NOT:** Rewrite entire plans for minor issues, add unnecessary tasks, break existing working plans.
|
|
46
|
+
|
|
47
|
+
### Step 5: Validate Changes
|
|
48
|
+
|
|
49
|
+
- [ ] All flagged issues addressed
|
|
50
|
+
- [ ] No new issues introduced
|
|
51
|
+
- [ ] Wave numbers still valid
|
|
52
|
+
- [ ] Dependencies still correct
|
|
53
|
+
- [ ] Files on disk updated
|
|
54
|
+
|
|
55
|
+
### Step 6: Commit
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
gsd-sdk query commit "fix($PHASE): revise plans based on checker feedback" .planning/phases/$PHASE-*/$PHASE-*-PLAN.md
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Step 7: Return Revision Summary
|
|
62
|
+
|
|
63
|
+
```markdown
|
|
64
|
+
## REVISION COMPLETE
|
|
65
|
+
|
|
66
|
+
**Issues addressed:** {N}/{M}
|
|
67
|
+
|
|
68
|
+
### Changes Made
|
|
69
|
+
|
|
70
|
+
| Plan | Change | Issue Addressed |
|
|
71
|
+
|------|--------|-----------------|
|
|
72
|
+
| 16-01 | Added <verify> to Task 2 | task_completeness |
|
|
73
|
+
| 16-02 | Added logout task | requirement_coverage (AUTH-02) |
|
|
74
|
+
|
|
75
|
+
### Files Updated
|
|
76
|
+
|
|
77
|
+
- .planning/phases/16-xxx/16-01-PLAN.md
|
|
78
|
+
- .planning/phases/16-xxx/16-02-PLAN.md
|
|
79
|
+
|
|
80
|
+
{If any issues NOT addressed:}
|
|
81
|
+
|
|
82
|
+
### Unaddressed Issues
|
|
83
|
+
|
|
84
|
+
| Issue | Reason |
|
|
85
|
+
|-------|--------|
|
|
86
|
+
| {issue} | {why - needs user input, architectural change, etc.} |
|
|
87
|
+
```
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# Planner Source Audit & Authority Limits
|
|
2
|
+
|
|
3
|
+
Reference for `agents/gsd-planner.md` — extended rules for multi-source coverage audits and planner authority constraints.
|
|
4
|
+
|
|
5
|
+
## Multi-Source Coverage Audit Format
|
|
6
|
+
|
|
7
|
+
Before finalizing plans, produce a **source audit** covering ALL four artifact types:
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
SOURCE | ID | Feature/Requirement | Plan | Status | Notes
|
|
11
|
+
--------- | ------- | ---------------------------- | ----- | --------- | ------
|
|
12
|
+
GOAL | — | {phase goal from ROADMAP.md} | 01-03 | COVERED |
|
|
13
|
+
REQ | REQ-14 | OAuth login with Google + GH | 02 | COVERED |
|
|
14
|
+
REQ | REQ-22 | Email verification flow | 03 | COVERED |
|
|
15
|
+
RESEARCH | — | Rate limiting on auth routes | 01 | COVERED |
|
|
16
|
+
RESEARCH | — | Refresh token rotation | NONE | ⚠ MISSING | No plan covers this
|
|
17
|
+
CONTEXT | D-01 | Use jose library for JWT | 02 | COVERED |
|
|
18
|
+
CONTEXT | D-04 | 15min access / 7day refresh | 02 | COVERED |
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### Four Source Types
|
|
22
|
+
|
|
23
|
+
1. **GOAL** — The `goal:` field from ROADMAP.md for this phase. The primary success condition.
|
|
24
|
+
2. **REQ** — Every REQ-ID in `phase_req_ids`. Cross-reference REQUIREMENTS.md for descriptions.
|
|
25
|
+
3. **RESEARCH** — Technical approaches, discovered constraints, and features identified in RESEARCH.md. Exclude items explicitly marked "out of scope" or "future work" by the researcher.
|
|
26
|
+
4. **CONTEXT** — Every D-XX decision from CONTEXT.md `<decisions>` section.
|
|
27
|
+
|
|
28
|
+
### What is NOT a Gap
|
|
29
|
+
|
|
30
|
+
Do not flag these as MISSING:
|
|
31
|
+
- Items in `## Deferred Ideas` in CONTEXT.md — developer chose to defer these
|
|
32
|
+
- Items scoped to a different phase via `phase_req_ids` — not assigned to this phase
|
|
33
|
+
- Items in RESEARCH.md explicitly marked "out of scope" or "future work" by the researcher
|
|
34
|
+
|
|
35
|
+
### Handling MISSING Items
|
|
36
|
+
|
|
37
|
+
If ANY row is `⚠ MISSING`, do NOT finalize the plan set silently. Return to the orchestrator:
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
## ⚠ Source Audit: Unplanned Items Found
|
|
41
|
+
|
|
42
|
+
The following items from source artifacts have no corresponding plan:
|
|
43
|
+
|
|
44
|
+
1. **{SOURCE}: {item description}** (from {artifact file}, section "{section}")
|
|
45
|
+
- {why this was identified as required}
|
|
46
|
+
|
|
47
|
+
Options:
|
|
48
|
+
A) Add a plan to cover this item
|
|
49
|
+
B) Split phase: move to a sub-phase
|
|
50
|
+
C) Defer explicitly: add to backlog with developer confirmation
|
|
51
|
+
|
|
52
|
+
→ Awaiting developer decision before finalizing plan set.
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
If ALL rows are COVERED → return `## PLANNING COMPLETE` as normal.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Authority Limits — Constraint Examples
|
|
60
|
+
|
|
61
|
+
The planner's only legitimate reasons to split or flag a feature are **constraints**, not judgments about difficulty:
|
|
62
|
+
|
|
63
|
+
**Valid (constraints):**
|
|
64
|
+
- ✓ "This task touches 9 files and would consume ~45% context — split into two tasks"
|
|
65
|
+
- ✓ "No API key or endpoint is defined in any source artifact — need developer input"
|
|
66
|
+
- ✓ "This feature depends on the auth system built in Phase 03, which is not yet complete"
|
|
67
|
+
|
|
68
|
+
**Invalid (difficulty judgments):**
|
|
69
|
+
- ✗ "This is complex and would be difficult to implement correctly"
|
|
70
|
+
- ✗ "Integrating with an external service could take a long time"
|
|
71
|
+
- ✗ "This is a challenging feature that might be better left to a future phase"
|
|
72
|
+
|
|
73
|
+
If a feature has none of the three legitimate constraints (context cost, missing information, dependency conflict), it gets planned. Period.
|
|
@@ -35,6 +35,7 @@ Configuration options for `.planning/` directory behavior.
|
|
|
35
35
|
| `git.quick_branch_template` | `null` | Optional branch template for quick-task runs |
|
|
36
36
|
| `workflow.use_worktrees` | `true` | Whether executor agents run in isolated git worktrees. Set to `false` to disable worktrees — agents execute sequentially on the main working tree instead. Recommended for solo developers or when worktree merges cause issues. |
|
|
37
37
|
| `workflow.subagent_timeout` | `300000` | Timeout in milliseconds for parallel subagent tasks (e.g. codebase mapping). Increase for large codebases or slower models. Default: 300000 (5 minutes). |
|
|
38
|
+
| `workflow.inline_plan_threshold` | `2` | Plans with this many tasks or fewer execute inline (Pattern C) instead of spawning a subagent. Avoids ~14K token spawn overhead for small plans. Set to `0` to always spawn subagents. |
|
|
38
39
|
| `manager.flags.discuss` | `""` | Flags passed to `/gsd-discuss-phase` when dispatched from manager (e.g. `"--auto --analyze"`) |
|
|
39
40
|
| `manager.flags.plan` | `""` | Flags passed to plan workflow when dispatched from manager |
|
|
40
41
|
| `manager.flags.execute` | `""` | Flags passed to execute workflow when dispatched from manager |
|
|
@@ -57,15 +58,15 @@ Configuration options for `.planning/` directory behavior.
|
|
|
57
58
|
|
|
58
59
|
```bash
|
|
59
60
|
# Commit with automatic commit_docs + gitignore checks:
|
|
60
|
-
|
|
61
|
+
gsd-sdk query commit "docs: update state" .planning/STATE.md
|
|
61
62
|
|
|
62
63
|
# Load config via state load (returns JSON):
|
|
63
|
-
|
|
64
|
+
INIT=$(gsd-sdk query state.load)
|
|
64
65
|
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
65
66
|
# commit_docs is available in the JSON output
|
|
66
67
|
|
|
67
68
|
# Or use init commands which include commit_docs:
|
|
68
|
-
|
|
69
|
+
INIT=$(gsd-sdk query init.execute-phase "1")
|
|
69
70
|
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
70
71
|
# commit_docs is included in all init command outputs
|
|
71
72
|
```
|
|
@@ -75,7 +76,7 @@ if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
|
75
76
|
**Commit via CLI (handles checks automatically):**
|
|
76
77
|
|
|
77
78
|
```bash
|
|
78
|
-
|
|
79
|
+
gsd-sdk query commit "docs: update state" .planning/STATE.md
|
|
79
80
|
```
|
|
80
81
|
|
|
81
82
|
The CLI checks `commit_docs` config and gitignore status internally — no manual conditionals needed.
|
|
@@ -163,14 +164,14 @@ To use uncommitted mode:
|
|
|
163
164
|
|
|
164
165
|
Use `init execute-phase` which returns all config as JSON:
|
|
165
166
|
```bash
|
|
166
|
-
|
|
167
|
+
INIT=$(gsd-sdk query init.execute-phase "1")
|
|
167
168
|
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
168
169
|
# JSON output includes: branching_strategy, phase_branch_template, milestone_branch_template
|
|
169
170
|
```
|
|
170
171
|
|
|
171
172
|
Or use `state load` for the config values:
|
|
172
173
|
```bash
|
|
173
|
-
|
|
174
|
+
INIT=$(gsd-sdk query state.load)
|
|
174
175
|
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
175
176
|
# Parse branching_strategy, phase_branch_template, milestone_branch_template from JSON
|
|
176
177
|
```
|
|
@@ -225,7 +226,7 @@ Generated from `CONFIG_DEFAULTS` (core.cjs) and `VALID_CONFIG_KEYS` (config.cjs)
|
|
|
225
226
|
| Key | Type | Default | Allowed Values | Description |
|
|
226
227
|
|-----|------|---------|----------------|-------------|
|
|
227
228
|
| `model_profile` | string | `"balanced"` | `"quality"`, `"balanced"`, `"budget"`, `"inherit"` | Model selection preset for subagents |
|
|
228
|
-
| `mode` | string |
|
|
229
|
+
| `mode` | string | `"interactive"` | `"interactive"`, `"yolo"` | Operation mode: `"interactive"` shows gates and confirmations; `"yolo"` runs autonomously without prompts |
|
|
229
230
|
| `granularity` | string | (none) | `"coarse"`, `"standard"`, `"fine"` | Planning depth for phase plans (migrated from deprecated `depth`) |
|
|
230
231
|
| `commit_docs` | boolean | `true` | `true`, `false` | Commit .planning/ artifacts to git (auto-false if .planning/ is gitignored) |
|
|
231
232
|
| `search_gitignored` | boolean | `false` | `true`, `false` | Include gitignored paths in broad rg searches via `--no-ignore` |
|
|
@@ -234,6 +235,8 @@ Generated from `CONFIG_DEFAULTS` (core.cjs) and `VALID_CONFIG_KEYS` (config.cjs)
|
|
|
234
235
|
| `response_language` | string\|null | `null` | Any language name | Language for user-facing prompts (e.g., `"Portuguese"`, `"Japanese"`) |
|
|
235
236
|
| `context_window` | number | `200000` | `200000`, `1000000` | Context window size; set `1000000` for 1M-context models |
|
|
236
237
|
| `resolve_model_ids` | boolean\|string | `false` | `false`, `true`, `"omit"` | Map model aliases to full Antigravity IDs; `"omit"` returns empty string |
|
|
238
|
+
| `context` | string\|null | `null` | `"dev"`, `"research"`, `"review"` | Execution context profile that adjusts agent behavior: `"dev"` for development tasks, `"research"` for investigation/exploration, `"review"` for code review workflows |
|
|
239
|
+
| `review.models.<cli>` | string\|null | `null` | Any model ID string | Per-CLI model override for /gsd-review (e.g., `review.models.gemini`). Falls back to CLI default when null. |
|
|
237
240
|
|
|
238
241
|
### Workflow Fields
|
|
239
242
|
|
|
@@ -245,17 +248,22 @@ Set via `workflow.*` namespace in config.json (e.g., `"workflow": { "research":
|
|
|
245
248
|
| `workflow.plan_check` | boolean | `true` | `true`, `false` | Run plan-checker agent to validate plans. _Alias:_ `plan_checker` is the flat-key form used in `CONFIG_DEFAULTS`; `workflow.plan_check` is the canonical namespaced form. |
|
|
246
249
|
| `workflow.verifier` | boolean | `true` | `true`, `false` | Run verifier agent after execution |
|
|
247
250
|
| `workflow.nyquist_validation` | boolean | `true` | `true`, `false` | Enable Nyquist-inspired validation gates |
|
|
251
|
+
| `workflow.auto_prune_state` | boolean | `false` | `true`, `false` | Automatically prune old STATE.md entries on phase completion (keeps 3 most recent phases) |
|
|
248
252
|
| `workflow.auto_advance` | boolean | `false` | `true`, `false` | Auto-advance to next phase after completion |
|
|
249
253
|
| `workflow.node_repair` | boolean | `true` | `true`, `false` | Attempt automatic repair of failed plan nodes |
|
|
250
254
|
| `workflow.node_repair_budget` | number | `2` | Any positive integer | Max repair retries per failed node |
|
|
255
|
+
| `workflow.ai_integration_phase` | boolean | `true` | `true`, `false` | Run /gsd-ai-integration-phase before planning AI system phases |
|
|
251
256
|
| `workflow.ui_phase` | boolean | `true` | `true`, `false` | Generate UI-SPEC.md for frontend phases |
|
|
252
257
|
| `workflow.ui_safety_gate` | boolean | `true` | `true`, `false` | Require safety gate approval for UI changes |
|
|
253
258
|
| `workflow.text_mode` | boolean | `false` | `true`, `false` | Use plain-text numbered lists instead of AskUserQuestion menus |
|
|
254
259
|
| `workflow.research_before_questions` | boolean | `false` | `true`, `false` | Run research before interactive questions in discuss phase |
|
|
255
|
-
| `workflow.discuss_mode` | string | `"discuss"` | `"discuss"`, `"
|
|
260
|
+
| `workflow.discuss_mode` | string | `"discuss"` | `"discuss"`, `"assumptions"` | Default mode for discuss-phase: `"discuss"` runs interactive questioning; `"assumptions"` analyzes codebase and surfaces assumptions instead |
|
|
256
261
|
| `workflow.skip_discuss` | boolean | `false` | `true`, `false` | Skip discuss phase entirely |
|
|
257
262
|
| `workflow.use_worktrees` | boolean | `true` | `true`, `false` | Run executor agents in isolated git worktrees |
|
|
258
263
|
| `workflow.subagent_timeout` | number | `300000` | Any positive integer (ms) | Timeout for parallel subagent tasks (default: 5 minutes) |
|
|
264
|
+
| `workflow.inline_plan_threshold` | number | `2` | `0`–`10` | Plans with ≤N tasks execute inline instead of spawning a subagent |
|
|
265
|
+
| `workflow.code_review` | boolean | `true` | `true`, `false` | Enable built-in code review step in the ship workflow |
|
|
266
|
+
| `workflow.code_review_depth` | string | `"standard"` | `"light"`, `"standard"`, `"deep"` | Depth level for code review analysis in the ship workflow |
|
|
259
267
|
| `workflow._auto_chain_active` | boolean | `false` | `true`, `false` | Internal: tracks whether autonomous chaining is active |
|
|
260
268
|
|
|
261
269
|
### Git Fields
|
|
@@ -287,6 +295,7 @@ Set via `features.*` namespace (e.g., `"features": { "thinking_partner": true }`
|
|
|
287
295
|
| Key | Type | Default | Allowed Values | Description |
|
|
288
296
|
|-----|------|---------|----------------|-------------|
|
|
289
297
|
| `features.thinking_partner` | boolean | `false` | `true`, `false` | Enable conditional extended thinking at workflow decision points (used by discuss-phase and plan-phase for architectural tradeoff analysis) |
|
|
298
|
+
| `features.global_learnings` | boolean | `false` | `true`, `false` | Enable injection of global learnings from `~/.gsd/learnings/` into agent prompts |
|
|
290
299
|
|
|
291
300
|
### Hook Fields
|
|
292
301
|
|
|
@@ -296,6 +305,22 @@ Set via `hooks.*` namespace (e.g., `"hooks": { "context_warnings": true }`).
|
|
|
296
305
|
|-----|------|---------|----------------|-------------|
|
|
297
306
|
| `hooks.context_warnings` | boolean | `true` | `true`, `false` | Show warnings when context budget is exceeded |
|
|
298
307
|
|
|
308
|
+
### Learnings Fields
|
|
309
|
+
|
|
310
|
+
Set via `learnings.*` namespace (e.g., `"learnings": { "max_inject": 5 }`). Used together with `features.global_learnings`.
|
|
311
|
+
|
|
312
|
+
| Key | Type | Default | Allowed Values | Description |
|
|
313
|
+
|-----|------|---------|----------------|-------------|
|
|
314
|
+
| `learnings.max_inject` | number | `10` | Any positive integer | Maximum number of global learning entries to inject into agent prompts per session |
|
|
315
|
+
|
|
316
|
+
### Intel Fields
|
|
317
|
+
|
|
318
|
+
Set via `intel.*` namespace (e.g., `"intel": { "enabled": true }`). Controls the queryable codebase intelligence system consumed by `/gsd-intel`.
|
|
319
|
+
|
|
320
|
+
| Key | Type | Default | Allowed Values | Description |
|
|
321
|
+
|-----|------|---------|----------------|-------------|
|
|
322
|
+
| `intel.enabled` | boolean | `false` | `true`, `false` | Enable queryable codebase intelligence system. When `true`, `/gsd-intel` commands build and query a JSON index in `.planning/intel/`. |
|
|
323
|
+
|
|
299
324
|
### Manager Fields
|
|
300
325
|
|
|
301
326
|
Set via `manager.*` namespace (e.g., `"manager": { "flags": { "discuss": "--auto" } }`).
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Project Skills Discovery
|
|
2
|
+
|
|
3
|
+
Before execution, check for project-defined skills and apply their rules.
|
|
4
|
+
|
|
5
|
+
**Discovery steps (shared across all GSD agents):**
|
|
6
|
+
1. Check `.antigravity/skills/` or `.agents/skills/` directory — if neither exists, skip.
|
|
7
|
+
2. List available skills (subdirectories).
|
|
8
|
+
3. Read `SKILL.md` for each skill (lightweight index, typically ~130 lines).
|
|
9
|
+
4. Load specific `rules/*.md` files only as needed during the current task.
|
|
10
|
+
5. Do NOT load full `AGENTS.md` files — they are large (100KB+) and cost significant context.
|
|
11
|
+
|
|
12
|
+
**Application** — how to apply the loaded rules depends on the calling agent:
|
|
13
|
+
- Planners account for project skill patterns and conventions in the plan.
|
|
14
|
+
- Executors follow skill rules relevant to the task being implemented.
|
|
15
|
+
- Researchers ensure research output accounts for project skill patterns.
|
|
16
|
+
- Verifiers apply skill rules when scanning for anti-patterns and verifying quality.
|
|
17
|
+
- Debuggers follow skill rules relevant to the bug being investigated and the fix being applied.
|
|
18
|
+
|
|
19
|
+
The caller's agent file should specify which application applies.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Making Sketches Feel Alive
|
|
2
|
+
|
|
3
|
+
Static mockups are barely better than screenshots. Every interactive element in a sketch must respond to interaction.
|
|
4
|
+
|
|
5
|
+
## Required Interactivity
|
|
6
|
+
|
|
7
|
+
| Element | Must Have |
|
|
8
|
+
|---------|-----------|
|
|
9
|
+
| Buttons | Click handler with visible feedback (state change, animation, toast) |
|
|
10
|
+
| Forms | Input validation on blur, submit handler that shows success state |
|
|
11
|
+
| Lists | Add/remove items, empty state, populated state |
|
|
12
|
+
| Toggles/switches | Working toggle with visible state change |
|
|
13
|
+
| Tabs/nav | Click to switch content |
|
|
14
|
+
| Modals/drawers | Open/close with transition |
|
|
15
|
+
| Hover states | Every clickable element needs a hover effect |
|
|
16
|
+
| Dropdowns | Open/close, item selection |
|
|
17
|
+
|
|
18
|
+
## Transitions
|
|
19
|
+
|
|
20
|
+
Add `transition: all 0.15s ease` as a baseline to interactive elements. Subtle motion makes the sketch feel real and helps judge whether the interaction pattern works.
|
|
21
|
+
|
|
22
|
+
## Fake the Backend
|
|
23
|
+
|
|
24
|
+
If the sketch shows a "Save" button, clicking it should show a brief loading state then a success message. If it shows a search bar, typing should filter hardcoded results. The goal is to feel the full interaction loop, not just see the resting state.
|
|
25
|
+
|
|
26
|
+
## State Cycling
|
|
27
|
+
|
|
28
|
+
If the sketch has multiple states (empty, loading, populated, error), include buttons to cycle through them. Label each state clearly. This lets the user experience how the design handles different data conditions.
|
|
29
|
+
|
|
30
|
+
## Implementation
|
|
31
|
+
|
|
32
|
+
Use vanilla JS in inline `<script>` tags. No frameworks, no build step. Keep it simple:
|
|
33
|
+
|
|
34
|
+
```html
|
|
35
|
+
<script>
|
|
36
|
+
// Toggle a panel
|
|
37
|
+
document.querySelector('.panel-toggle').addEventListener('click', (e) => {
|
|
38
|
+
e.target.closest('.panel').classList.toggle('collapsed');
|
|
39
|
+
});
|
|
40
|
+
</script>
|
|
41
|
+
```
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
# Shared Theme System
|
|
2
|
+
|
|
3
|
+
All sketches share a CSS variable theme so design decisions compound across sketches.
|
|
4
|
+
|
|
5
|
+
## Setup
|
|
6
|
+
|
|
7
|
+
On the first sketch, create `.planning/sketches/themes/` with a default theme:
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
.planning/sketches/
|
|
11
|
+
themes/
|
|
12
|
+
default.css <- all sketches link to this
|
|
13
|
+
001-dashboard-layout/
|
|
14
|
+
index.html <- links to ../themes/default.css
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Theme File Structure
|
|
18
|
+
|
|
19
|
+
Each theme defines CSS custom properties only — no component styles, no layout rules. Just the visual vocabulary:
|
|
20
|
+
|
|
21
|
+
```css
|
|
22
|
+
:root {
|
|
23
|
+
/* Colors */
|
|
24
|
+
--color-bg: #fafafa;
|
|
25
|
+
--color-surface: #ffffff;
|
|
26
|
+
--color-border: #e5e5e5;
|
|
27
|
+
--color-text: #1a1a1a;
|
|
28
|
+
--color-text-muted: #6b6b6b;
|
|
29
|
+
--color-primary: #2563eb;
|
|
30
|
+
--color-primary-hover: #1d4ed8;
|
|
31
|
+
--color-accent: #f59e0b;
|
|
32
|
+
--color-danger: #ef4444;
|
|
33
|
+
--color-success: #22c55e;
|
|
34
|
+
|
|
35
|
+
/* Typography */
|
|
36
|
+
--font-sans: 'Inter', system-ui, sans-serif;
|
|
37
|
+
--font-mono: 'JetBrains Mono', monospace;
|
|
38
|
+
--text-xs: 0.75rem;
|
|
39
|
+
--text-sm: 0.875rem;
|
|
40
|
+
--text-base: 1rem;
|
|
41
|
+
--text-lg: 1.125rem;
|
|
42
|
+
--text-xl: 1.25rem;
|
|
43
|
+
--text-2xl: 1.5rem;
|
|
44
|
+
--text-3xl: 1.875rem;
|
|
45
|
+
|
|
46
|
+
/* Spacing */
|
|
47
|
+
--space-1: 4px;
|
|
48
|
+
--space-2: 8px;
|
|
49
|
+
--space-3: 12px;
|
|
50
|
+
--space-4: 16px;
|
|
51
|
+
--space-6: 24px;
|
|
52
|
+
--space-8: 32px;
|
|
53
|
+
--space-12: 48px;
|
|
54
|
+
|
|
55
|
+
/* Shapes */
|
|
56
|
+
--radius-sm: 4px;
|
|
57
|
+
--radius-md: 8px;
|
|
58
|
+
--radius-lg: 12px;
|
|
59
|
+
--radius-full: 9999px;
|
|
60
|
+
|
|
61
|
+
/* Shadows */
|
|
62
|
+
--shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
|
|
63
|
+
--shadow-md: 0 4px 6px rgba(0,0,0,0.07);
|
|
64
|
+
--shadow-lg: 0 10px 15px rgba(0,0,0,0.1);
|
|
65
|
+
}
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Adapt the default theme to match the mood/direction established during intake. The values above are a starting point — change colors, fonts, spacing, and shapes to match the agreed aesthetic.
|
|
69
|
+
|
|
70
|
+
## Linking
|
|
71
|
+
|
|
72
|
+
Every sketch links to the theme:
|
|
73
|
+
|
|
74
|
+
```html
|
|
75
|
+
<link rel="stylesheet" href="../themes/default.css">
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Creating New Themes
|
|
79
|
+
|
|
80
|
+
When a sketch reveals an aesthetic fork ("should this feel clinical or warm?"), create both as theme files rather than arguing about it. The user can switch and feel the difference.
|
|
81
|
+
|
|
82
|
+
Name themes descriptively: `midnight.css`, `warm-minimal.css`, `brutalist.css`.
|
|
83
|
+
|
|
84
|
+
## Theme Switcher
|
|
85
|
+
|
|
86
|
+
Include in every sketch (part of the sketch toolbar):
|
|
87
|
+
|
|
88
|
+
```html
|
|
89
|
+
<select id="theme-switcher" onchange="document.querySelector('link[href*=themes]').href='../themes/'+this.value+'.css'">
|
|
90
|
+
<option value="default">Default</option>
|
|
91
|
+
</select>
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Dynamically populate options by listing available theme files, or hardcode the known themes.
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Sketch Toolbar
|
|
2
|
+
|
|
3
|
+
Include a small floating toolbar in every sketch. It provides utilities without competing with the actual design.
|
|
4
|
+
|
|
5
|
+
## Implementation
|
|
6
|
+
|
|
7
|
+
A small `<div>` fixed to the bottom-right, semi-transparent, expands on hover:
|
|
8
|
+
|
|
9
|
+
```html
|
|
10
|
+
<div id="sketch-tools" style="position:fixed;bottom:12px;right:12px;z-index:9999;font-family:system-ui;font-size:12px;background:rgba(0,0,0,0.7);color:white;padding:8px 12px;border-radius:8px;opacity:0.4;transition:opacity 0.2s;" onmouseenter="this.style.opacity='1'" onmouseleave="this.style.opacity='0.4'">
|
|
11
|
+
<!-- Theme switcher -->
|
|
12
|
+
<!-- Viewport buttons -->
|
|
13
|
+
<!-- Annotation toggle -->
|
|
14
|
+
</div>
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Components
|
|
18
|
+
|
|
19
|
+
### Theme Switcher
|
|
20
|
+
|
|
21
|
+
A dropdown that swaps the theme CSS file at runtime:
|
|
22
|
+
|
|
23
|
+
```html
|
|
24
|
+
<select onchange="document.querySelector('link[href*=themes]').href='../themes/'+this.value+'.css'">
|
|
25
|
+
<option value="default">Default</option>
|
|
26
|
+
</select>
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### Viewport Preview
|
|
30
|
+
|
|
31
|
+
Three buttons that constrain the sketch content area to standard widths:
|
|
32
|
+
|
|
33
|
+
- Phone: 375px
|
|
34
|
+
- Tablet: 768px
|
|
35
|
+
- Desktop: 1280px (or full width)
|
|
36
|
+
|
|
37
|
+
Implemented by wrapping sketch content in a container and adjusting its `max-width`.
|
|
38
|
+
|
|
39
|
+
### Annotation Mode
|
|
40
|
+
|
|
41
|
+
A toggle that overlays spacing values, color hex codes, and font sizes on hover. Implemented as a JS snippet that reads computed styles and shows them in a tooltip. Helps understand visual decisions without opening dev tools.
|
|
42
|
+
|
|
43
|
+
## Styling
|
|
44
|
+
|
|
45
|
+
The toolbar should be unobtrusive — small, dark, semi-transparent. It should never compete with the sketch visually. Style it independently of the theme (hardcoded dark background, white text).
|