get-shit-done-cc 1.7.1 → 1.8.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/agents/gsd-debugger.md +20 -1
- package/agents/gsd-executor.md +15 -0
- package/agents/gsd-phase-researcher.md +9 -0
- package/agents/gsd-planner.md +19 -0
- package/agents/gsd-research-synthesizer.md +9 -0
- package/commands/gsd/add-todo.md +11 -0
- package/commands/gsd/check-todos.md +11 -0
- package/commands/gsd/execute-phase.md +3 -1
- package/commands/gsd/help.md +27 -0
- package/commands/gsd/new-milestone.md +246 -262
- package/commands/gsd/new-project.md +15 -2
- package/commands/gsd/pause-work.md +11 -0
- package/commands/gsd/plan-milestone-gaps.md +11 -0
- package/commands/gsd/progress.md +6 -0
- package/commands/gsd/remove-phase.md +11 -0
- package/get-shit-done/references/planning-config.md +94 -0
- package/get-shit-done/templates/config.json +4 -0
- package/get-shit-done/workflows/complete-milestone.md +11 -0
- package/get-shit-done/workflows/diagnose-issues.md +11 -0
- package/get-shit-done/workflows/discuss-phase.md +11 -0
- package/get-shit-done/workflows/execute-phase.md +23 -0
- package/get-shit-done/workflows/execute-plan.md +23 -0
- package/get-shit-done/workflows/map-codebase.md +11 -0
- package/get-shit-done/workflows/verify-work.md +11 -0
- package/package.json +1 -1
package/agents/gsd-debugger.md
CHANGED
|
@@ -979,7 +979,16 @@ mkdir -p .planning/debug/resolved
|
|
|
979
979
|
mv .planning/debug/{slug}.md .planning/debug/resolved/
|
|
980
980
|
```
|
|
981
981
|
|
|
982
|
-
|
|
982
|
+
**Check planning config:**
|
|
983
|
+
|
|
984
|
+
```bash
|
|
985
|
+
COMMIT_PLANNING_DOCS=$(cat .planning/config.json 2>/dev/null | grep -o '"commit_docs"[[:space:]]*:[[:space:]]*[^,}]*' | grep -o 'true\|false' || echo "true")
|
|
986
|
+
git check-ignore -q .planning 2>/dev/null && COMMIT_PLANNING_DOCS=false
|
|
987
|
+
```
|
|
988
|
+
|
|
989
|
+
**Commit the fix:**
|
|
990
|
+
|
|
991
|
+
If `COMMIT_PLANNING_DOCS=true` (default):
|
|
983
992
|
```bash
|
|
984
993
|
git add -A
|
|
985
994
|
git commit -m "fix: {brief description}
|
|
@@ -988,6 +997,16 @@ Root cause: {root_cause}
|
|
|
988
997
|
Debug session: .planning/debug/resolved/{slug}.md"
|
|
989
998
|
```
|
|
990
999
|
|
|
1000
|
+
If `COMMIT_PLANNING_DOCS=false`:
|
|
1001
|
+
```bash
|
|
1002
|
+
# Only commit code changes, exclude .planning/
|
|
1003
|
+
git add -A
|
|
1004
|
+
git reset .planning/
|
|
1005
|
+
git commit -m "fix: {brief description}
|
|
1006
|
+
|
|
1007
|
+
Root cause: {root_cause}"
|
|
1008
|
+
```
|
|
1009
|
+
|
|
991
1010
|
Report completion and offer next steps.
|
|
992
1011
|
</step>
|
|
993
1012
|
|
package/agents/gsd-executor.md
CHANGED
|
@@ -39,6 +39,17 @@ Options:
|
|
|
39
39
|
```
|
|
40
40
|
|
|
41
41
|
**If .planning/ doesn't exist:** Error - project not initialized.
|
|
42
|
+
|
|
43
|
+
**Load planning config:**
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
# Check if planning docs should be committed (default: true)
|
|
47
|
+
COMMIT_PLANNING_DOCS=$(cat .planning/config.json 2>/dev/null | grep -o '"commit_docs"[[:space:]]*:[[:space:]]*[^,}]*' | grep -o 'true\|false' || echo "true")
|
|
48
|
+
# Auto-detect gitignored (overrides config)
|
|
49
|
+
git check-ignore -q .planning 2>/dev/null && COMMIT_PLANNING_DOCS=false
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Store `COMMIT_PLANNING_DOCS` for use in git operations.
|
|
42
53
|
</step>
|
|
43
54
|
|
|
44
55
|
<step name="load_plan">
|
|
@@ -692,6 +703,10 @@ Resume file: [path to .continue-here if exists, else "None"]
|
|
|
692
703
|
<final_commit>
|
|
693
704
|
After SUMMARY.md and STATE.md updates:
|
|
694
705
|
|
|
706
|
+
**If `COMMIT_PLANNING_DOCS=false`:** Skip git operations for planning files, log "Skipping planning docs commit (commit_docs: false)"
|
|
707
|
+
|
|
708
|
+
**If `COMMIT_PLANNING_DOCS=true` (default):**
|
|
709
|
+
|
|
695
710
|
**1. Stage execution artifacts:**
|
|
696
711
|
|
|
697
712
|
```bash
|
|
@@ -450,6 +450,11 @@ PHASE_DIR=$(ls -d .planning/phases/${PADDED_PHASE}-* .planning/phases/${PHASE}-*
|
|
|
450
450
|
|
|
451
451
|
# Read CONTEXT.md if exists (from /gsd:discuss-phase)
|
|
452
452
|
cat "${PHASE_DIR}"/*-CONTEXT.md 2>/dev/null
|
|
453
|
+
|
|
454
|
+
# Check if planning docs should be committed (default: true)
|
|
455
|
+
COMMIT_PLANNING_DOCS=$(cat .planning/config.json 2>/dev/null | grep -o '"commit_docs"[[:space:]]*:[[:space:]]*[^,}]*' | grep -o 'true\|false' || echo "true")
|
|
456
|
+
# Auto-detect gitignored (overrides config)
|
|
457
|
+
git check-ignore -q .planning 2>/dev/null && COMMIT_PLANNING_DOCS=false
|
|
453
458
|
```
|
|
454
459
|
|
|
455
460
|
**If CONTEXT.md exists**, it contains user decisions that MUST constrain your research:
|
|
@@ -526,6 +531,10 @@ Where `PHASE_DIR` is the full path (e.g., `.planning/phases/01-foundation`)
|
|
|
526
531
|
|
|
527
532
|
## Step 6: Commit Research
|
|
528
533
|
|
|
534
|
+
**If `COMMIT_PLANNING_DOCS=false`:** Skip git operations, log "Skipping planning docs commit (commit_docs: false)"
|
|
535
|
+
|
|
536
|
+
**If `COMMIT_PLANNING_DOCS=true` (default):**
|
|
537
|
+
|
|
529
538
|
```bash
|
|
530
539
|
git add "${PHASE_DIR}/${PADDED_PHASE}-RESEARCH.md"
|
|
531
540
|
git commit -m "docs(${PHASE}): research phase domain
|
package/agents/gsd-planner.md
CHANGED
|
@@ -953,6 +953,10 @@ After making edits, self-check:
|
|
|
953
953
|
|
|
954
954
|
### Step 6: Commit Revised Plans
|
|
955
955
|
|
|
956
|
+
**If `COMMIT_PLANNING_DOCS=false`:** Skip git operations, log "Skipping planning docs commit (commit_docs: false)"
|
|
957
|
+
|
|
958
|
+
**If `COMMIT_PLANNING_DOCS=true` (default):**
|
|
959
|
+
|
|
956
960
|
```bash
|
|
957
961
|
git add .planning/phases/${PHASE}-*/${PHASE}-*-PLAN.md
|
|
958
962
|
git commit -m "fix(${PHASE}): revise plans based on checker feedback"
|
|
@@ -998,6 +1002,17 @@ Read `.planning/STATE.md` and parse:
|
|
|
998
1002
|
- Blockers/concerns (things this phase may address)
|
|
999
1003
|
|
|
1000
1004
|
If STATE.md missing but .planning/ exists, offer to reconstruct or continue without.
|
|
1005
|
+
|
|
1006
|
+
**Load planning config:**
|
|
1007
|
+
|
|
1008
|
+
```bash
|
|
1009
|
+
# Check if planning docs should be committed (default: true)
|
|
1010
|
+
COMMIT_PLANNING_DOCS=$(cat .planning/config.json 2>/dev/null | grep -o '"commit_docs"[[:space:]]*:[[:space:]]*[^,}]*' | grep -o 'true\|false' || echo "true")
|
|
1011
|
+
# Auto-detect gitignored (overrides config)
|
|
1012
|
+
git check-ignore -q .planning 2>/dev/null && COMMIT_PLANNING_DOCS=false
|
|
1013
|
+
```
|
|
1014
|
+
|
|
1015
|
+
Store `COMMIT_PLANNING_DOCS` for use in git operations.
|
|
1001
1016
|
</step>
|
|
1002
1017
|
|
|
1003
1018
|
<step name="load_codebase_context">
|
|
@@ -1209,6 +1224,10 @@ Update ROADMAP.md to finalize phase placeholders created by add-phase or insert-
|
|
|
1209
1224
|
<step name="git_commit">
|
|
1210
1225
|
Commit phase plan(s) and updated roadmap:
|
|
1211
1226
|
|
|
1227
|
+
**If `COMMIT_PLANNING_DOCS=false`:** Skip git operations, log "Skipping planning docs commit (commit_docs: false)"
|
|
1228
|
+
|
|
1229
|
+
**If `COMMIT_PLANNING_DOCS=true` (default):**
|
|
1230
|
+
|
|
1212
1231
|
```bash
|
|
1213
1232
|
git add .planning/phases/${PHASE}-*/${PHASE}-*-PLAN.md .planning/ROADMAP.md
|
|
1214
1233
|
git commit -m "docs(${PHASE}): create phase plan
|
|
@@ -48,6 +48,11 @@ cat .planning/research/STACK.md
|
|
|
48
48
|
cat .planning/research/FEATURES.md
|
|
49
49
|
cat .planning/research/ARCHITECTURE.md
|
|
50
50
|
cat .planning/research/PITFALLS.md
|
|
51
|
+
|
|
52
|
+
# Check if planning docs should be committed (default: true)
|
|
53
|
+
COMMIT_PLANNING_DOCS=$(cat .planning/config.json 2>/dev/null | grep -o '"commit_docs"[[:space:]]*:[[:space:]]*[^,}]*' | grep -o 'true\|false' || echo "true")
|
|
54
|
+
# Auto-detect gitignored (overrides config)
|
|
55
|
+
git check-ignore -q .planning 2>/dev/null && COMMIT_PLANNING_DOCS=false
|
|
51
56
|
```
|
|
52
57
|
|
|
53
58
|
Parse each file to extract:
|
|
@@ -125,6 +130,10 @@ Write to `.planning/research/SUMMARY.md`
|
|
|
125
130
|
|
|
126
131
|
The 4 parallel researcher agents write files but do NOT commit. You commit everything together.
|
|
127
132
|
|
|
133
|
+
**If `COMMIT_PLANNING_DOCS=false`:** Skip git operations, log "Skipping planning docs commit (commit_docs: false)"
|
|
134
|
+
|
|
135
|
+
**If `COMMIT_PLANNING_DOCS=true` (default):**
|
|
136
|
+
|
|
128
137
|
```bash
|
|
129
138
|
git add .planning/research/
|
|
130
139
|
git commit -m "docs: complete project research
|
package/commands/gsd/add-todo.md
CHANGED
|
@@ -126,6 +126,17 @@ If `.planning/STATE.md` exists:
|
|
|
126
126
|
<step name="git_commit">
|
|
127
127
|
Commit the todo and any updated state:
|
|
128
128
|
|
|
129
|
+
**Check planning config:**
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
COMMIT_PLANNING_DOCS=$(cat .planning/config.json 2>/dev/null | grep -o '"commit_docs"[[:space:]]*:[[:space:]]*[^,}]*' | grep -o 'true\|false' || echo "true")
|
|
133
|
+
git check-ignore -q .planning 2>/dev/null && COMMIT_PLANNING_DOCS=false
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
**If `COMMIT_PLANNING_DOCS=false`:** Skip git operations, log "Todo saved (not committed - commit_docs: false)"
|
|
137
|
+
|
|
138
|
+
**If `COMMIT_PLANNING_DOCS=true` (default):**
|
|
139
|
+
|
|
129
140
|
```bash
|
|
130
141
|
git add .planning/todos/pending/[filename]
|
|
131
142
|
[ -f .planning/STATE.md ] && git add .planning/STATE.md
|
|
@@ -177,6 +177,17 @@ Update STATE.md "### Pending Todos" section if exists.
|
|
|
177
177
|
<step name="git_commit">
|
|
178
178
|
If todo was moved to done/, commit the change:
|
|
179
179
|
|
|
180
|
+
**Check planning config:**
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
COMMIT_PLANNING_DOCS=$(cat .planning/config.json 2>/dev/null | grep -o '"commit_docs"[[:space:]]*:[[:space:]]*[^,}]*' | grep -o 'true\|false' || echo "true")
|
|
184
|
+
git check-ignore -q .planning 2>/dev/null && COMMIT_PLANNING_DOCS=false
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
**If `COMMIT_PLANNING_DOCS=false`:** Skip git operations, log "Todo moved (not committed - commit_docs: false)"
|
|
188
|
+
|
|
189
|
+
**If `COMMIT_PLANNING_DOCS=true` (default):**
|
|
190
|
+
|
|
180
191
|
```bash
|
|
181
192
|
git add .planning/todos/done/[filename]
|
|
182
193
|
git rm --cached .planning/todos/pending/[filename] 2>/dev/null || true
|
|
@@ -99,7 +99,9 @@ Phase: $ARGUMENTS
|
|
|
99
99
|
- Skip if: REQUIREMENTS.md doesn't exist, or phase has no Requirements line
|
|
100
100
|
|
|
101
101
|
10. **Commit phase completion**
|
|
102
|
-
|
|
102
|
+
Check `COMMIT_PLANNING_DOCS` from config.json (default: true).
|
|
103
|
+
If false: Skip git operations for .planning/ files.
|
|
104
|
+
If true: Bundle all phase metadata updates in one commit:
|
|
103
105
|
- Stage: `git add .planning/ROADMAP.md .planning/STATE.md`
|
|
104
106
|
- Stage REQUIREMENTS.md if updated: `git add .planning/REQUIREMENTS.md`
|
|
105
107
|
- Commit: `docs({phase}): complete {phase-name} phase`
|
package/commands/gsd/help.md
CHANGED
|
@@ -337,6 +337,33 @@ Set during `/gsd:new-project`:
|
|
|
337
337
|
|
|
338
338
|
Change anytime by editing `.planning/config.json`
|
|
339
339
|
|
|
340
|
+
## Planning Configuration
|
|
341
|
+
|
|
342
|
+
Configure how planning artifacts are managed in `.planning/config.json`:
|
|
343
|
+
|
|
344
|
+
**`planning.commit_docs`** (default: `true`)
|
|
345
|
+
- `true`: Planning artifacts committed to git (standard workflow)
|
|
346
|
+
- `false`: Planning artifacts kept local-only, not committed
|
|
347
|
+
|
|
348
|
+
When `commit_docs: false`:
|
|
349
|
+
- Add `.planning/` to your `.gitignore`
|
|
350
|
+
- Useful for OSS contributions, client projects, or keeping planning private
|
|
351
|
+
- All planning files still work normally, just not tracked in git
|
|
352
|
+
|
|
353
|
+
**`planning.search_gitignored`** (default: `false`)
|
|
354
|
+
- `true`: Add `--no-ignore` to broad ripgrep searches
|
|
355
|
+
- Only needed when `.planning/` is gitignored and you want project-wide searches to include it
|
|
356
|
+
|
|
357
|
+
Example config:
|
|
358
|
+
```json
|
|
359
|
+
{
|
|
360
|
+
"planning": {
|
|
361
|
+
"commit_docs": false,
|
|
362
|
+
"search_gitignored": true
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
```
|
|
366
|
+
|
|
340
367
|
## Common Workflows
|
|
341
368
|
|
|
342
369
|
**Starting a new project:**
|