Commit Graph

570 Commits

Author SHA1 Message Date
Lex Christopherson
9d129efaf6 docs(03-03): add codebase intelligence section to GSD-STYLE.md
- Document intel files and their purposes
- Add index.json schema reference
- Explain convention detection thresholds
- Document PostToolUse and SessionStart hook patterns
- Reference /gsd:analyze-codebase command

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 00:11:28 -06:00
Lex Christopherson
0898a705c5 docs(03-03): add analyze-codebase command to help.md
- Add /gsd:analyze-codebase command reference
- Add intel/ directory to Files & Structure section
- Document PostToolUse hook incremental learning

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 00:11:05 -06:00
Lex Christopherson
9c239e4b15 docs(03-03): add codebase intelligence section to README
- Add Codebase Intelligence section explaining automatic learning
- Document convention detection and context injection
- Add /gsd:analyze-codebase to Brownfield commands table
- List intel files and their purposes

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 00:10:42 -06:00
Lex Christopherson
4b686d17f4 feat(03-01): add summary.md generation to intel-index hook
- Add generateSummary() function for context injection content
- Write summary.md alongside conventions.json on every update
- Target < 500 tokens (top 5 dirs, top 3 suffixes)
- Exclude 'default' from export count
2026-01-20 00:07:08 -06:00
Lex Christopherson
8bb9cc7466 feat(03-02): add codebase intelligence to subagent prompts
- Add load_codebase_intelligence step to gsd-planner.md
- Add load_codebase_intelligence step to gsd-executor.md
- Include .planning/intel/summary.md in plan context template
- Subagents now use detected conventions during planning/execution
2026-01-20 00:06:57 -06:00
Lex Christopherson
02a9a614c7 feat(03-01): create /gsd:analyze-codebase command
- Standalone codebase scanning for brownfield projects
- Uses same extraction patterns as intel-index.js hook
- Produces index.json, conventions.json, summary.md
- Excludes node_modules, dist, build, .git, vendor, coverage
2026-01-20 00:06:28 -06:00
Lex Christopherson
df222be569 feat(03-02): add intel directory creation to new-project
- Create .planning/intel/ during Phase 1 setup
- Document intel directory in Creates and Output sections
- Directory prepared for PostToolUse hook population
2026-01-20 00:06:23 -06:00
Lex Christopherson
e5c9abaa55 feat(03-02): register intel hooks in install.js
- Add intel-index PostToolUse hook for codebase indexing
- Add intel-session SessionStart hook for context injection
- Hooks registered conditionally (skip if already exists)
2026-01-20 00:05:54 -06:00
Lex Christopherson
fbd5068b90 feat(new-project): add workflow agent settings to project init
- Split Phase 5 into two rounds of questions
- Round 1: core settings (mode, depth, parallel, git tracking)
- Round 2: workflow agents (researcher, plan checker, verifier)
- Add explainer table before workflow questions
- Include workflow section in config.json schema
- Note that /gsd:settings can update later

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 23:57:02 -06:00
Lex Christopherson
a3521161cd feat(02-02): create SessionStart context injection hook
- Read session metadata from stdin
- Check for startup/resume source
- Read index.json and conventions.json from .planning/intel/
- Silent exit if no intel files present
2026-01-19 23:44:07 -06:00
Lex Christopherson
d0db04f32f chore: stop tracking .planning/ (already gitignored)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 23:43:55 -06:00
Lex Christopherson
cffb3f24cd feat(settings): add /gsd:settings command for workflow toggles
Adds interactive settings command to toggle workflow agents:
- Plan Researcher (workflow.research)
- Plan Checker (workflow.plan_check)
- Execution Verifier (workflow.verifier)

Updates plan-phase.md and execute-phase.md to check config before
spawning these agents. Flags still override config per-invocation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 23:42:48 -06:00
Lex Christopherson
d77141e985 feat(02-01): integrate convention detection into index update flow
- Call detectConventions() after every index.json write
- Write conventions.json alongside index.json
- No staleness check needed - detection is fast, always regenerated
2026-01-19 23:40:51 -06:00
Lex Christopherson
06ac420326 feat(02-01): add convention detection functions
- Add detectCase() to identify naming conventions (camelCase, PascalCase, snake_case, kebab-case, SCREAMING_SNAKE)
- Add detectConventions() to analyze index for patterns
- Add DIRECTORY_PURPOSES and SUFFIX_PURPOSES lookup tables
- Add MIN_SAMPLES (5) and MIN_MATCH_RATE (0.70) thresholds
2026-01-19 23:40:13 -06:00
Lex Christopherson
eeebde660a docs(phase-1): complete Foundation & Learning phase
Phase 1 verified: 6/6 must-haves passed.
- INDEX-01 through INDEX-05: Complete
- CONV-06: Complete

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 23:21:43 -06:00
Lex Christopherson
992040fa87 feat(01-02): create intel-index.js PostToolUse hook
- Indexes file exports/imports when Claude writes or edits JS/TS files
- Extracts ES6 imports, CommonJS require, side-effect imports
- Extracts named exports, default exports, declaration exports, TypeScript types
- Updates .planning/intel/index.json incrementally
- Silent failure on errors (always exits 0)
2026-01-19 23:13:52 -06:00
Lex Christopherson
ce4fc96ff7 fix(orchestrators): inline file contents in Task prompts
The @ file reference syntax does not expand across Task() boundaries.
Subagents receive literal @path strings instead of file contents.

Changed orchestrator→subagent handoffs to explicitly read files and
inline content before spawning:

- plan-phase → gsd-planner: STATE, ROADMAP, REQUIREMENTS, CONTEXT, RESEARCH
- plan-phase → gsd-plan-checker: PLAN files, REQUIREMENTS
- plan-phase → gsd-planner (revision): PLAN files
- execute-phase → gsd-executor: PLAN, STATE, config

Fixes #182

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 23:11:09 -06:00
Lex Christopherson
fb397df9b2 docs: create v1.9.0 roadmap (3 phases)
Phases:
1. Foundation & Learning: Index store, PostToolUse hook
2. Context Injection: Convention detection, SessionStart hook
3. Brownfield & Integration: analyze-codebase, GSD integration, docs

All 29 v1 requirements mapped to phases.
2026-01-19 22:58:46 -06:00
Lex Christopherson
cef51336c0 docs: start milestone v1.9.0 Codebase Intelligence System
Living knowledge system that learns codebase structure and conventions,
injecting understanding into every Claude session automatically.
2026-01-19 22:41:25 -06:00
Lex Christopherson
f616bb06b3 chore: complete v1.8.0 Quick Mode milestone
Archived:
- milestones/v1.8.0-ROADMAP.md
- milestones/v1.8.0-REQUIREMENTS.md

Deleted (fresh for next milestone):
- ROADMAP.md
- REQUIREMENTS.md

Updated:
- MILESTONES.md (new entry)
- PROJECT.md (requirements → Validated)
- STATE.md (reset for next milestone)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 19:03:32 -06:00
Lex Christopherson
7692ebd346 1.8.0 2026-01-19 16:51:49 -06:00
Lex Christopherson
052c495b52 docs: update changelog for v1.8.0 2026-01-19 16:51:45 -06:00
Lex Christopherson
a1935c2d6b feat(new-project): add commit_docs option to workflow preferences
Adds 4th question to initial config asking whether to commit planning
docs to git. When user selects "No", sets planning.commit_docs: false
and adds .planning/ to .gitignore.

Builds on #107 (uncommitted planning mode) by surfacing the option
during project initialization.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 16:49:44 -06:00
dan bachelder
1f18ec8907 feat: add uncommitted planning mode (#107)
* feat: add uncommitted planning mode

Add config option to keep planning docs local-only (not committed to git).
Useful for OSS contributions, client projects, or keeping planning private.

Config options in .planning/config.json:
- planning.commit_docs: true/false (default: true)
- planning.search_gitignored: true/false (default: false)

When commit_docs=false:
- All git operations for .planning/ files are skipped
- User should add .planning/ to .gitignore
- Planning system works normally, just not tracked

Updated files:
- config.json template: added planning section
- execute-plan.md: conditional git commits
- execute-phase.md: conditional git commits
- create-roadmap.md: conditional git commits
- help.md: documented new config options
- planning-config.md: reference doc for config behavior

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat: extend commit_docs check to all agents/commands/workflows

Add COMMIT_PLANNING_DOCS config check to all files that commit
.planning/ artifacts, ensuring consistent behavior when
commit_docs=false is set in config.json.

Updated:
- 5 agents (planner, executor, debugger, phase-researcher, synthesizer)
- 8 commands (add-todo, check-todos, execute-phase, new-milestone,
  pause-work, plan-milestone-gaps, remove-phase, research-project)
- 7 workflows (complete-milestone, create-milestone, define-requirements,
  diagnose-issues, discuss-phase, map-codebase, verify-work)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix(progress): use Bash instead of Glob for .planning/ check

Glob respects .gitignore, so projects with gitignored .planning/
directories would fail with "No planning structure found."

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix(new-milestone): integrate full research/requirements/roadmap flow

Previously routed to non-existent /gsd:research-project and
/gsd:define-requirements commands. Now handles the full flow inline
like new-project does:

- Phase 7: Research Decision (spawns 4 milestone-aware researchers)
- Phase 8: Define Requirements (scopes features, creates REQUIREMENTS.md)
- Phase 9: Create Roadmap (continues phase numbering from previous milestone)
- Phase 10: Done

Key adaptations for milestones:
- Research focuses on NEW features only
- Requirements add to existing, don't start fresh
- Phase numbering continues from previous milestone

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 16:49:05 -06:00
Lex Christopherson
f8096792cc 1.7.1 2026-01-19 16:22:07 -06:00
Lex Christopherson
d6a27b009b docs: update changelog for v1.7.1 2026-01-19 16:22:03 -06:00
Lex Christopherson
125b97784e chore: gitignore commands.html
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 16:20:41 -06:00
Lex Christopherson
c1727a3b60 fix(quick): use numbered prefix for PLAN and SUMMARY files
Quick tasks now use `{NNN}-PLAN.md` and `{NNN}-SUMMARY.md` naming
(e.g., `001-PLAN.md`, `001-SUMMARY.md`) matching the convention
used by regular phase plans (`01-01-PLAN.md`, `01-01-SUMMARY.md`).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 16:19:50 -06:00
Lex Christopherson
fc3287c8cb feat(quick-002): create 90s-style HTML command reference page
- 383-line HTML with authentic 90s web aesthetic
- Garish lime green checkered background
- Comic Sans, Times New Roman, Courier mixed fonts
- Marquee tags for scrolling headers/footers
- Blink animation via CSS keyframes
- All 25 GSD commands organized in bordered tables
- Fake hit counter, guestbook link, webmaster email
- 'Under construction' banner and Y2K compliance badge
- Best viewed in Netscape Navigator disclaimer
2026-01-19 16:17:07 -06:00
Lex Christopherson
01f232375f 1.7.0 2026-01-19 15:59:29 -06:00
Lex Christopherson
7cb7b684c9 docs: update changelog for v1.7.0 2026-01-19 15:59:29 -06:00
Lex Christopherson
9539c9643a chore: remove test files (gsd-meta agent, commands.html)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 15:59:29 -06:00
Lex Christopherson
1af8f934fe docs(02-01): add Quick Mode Patterns section to GSD-STYLE.md
- Add when-to-use guidance (quick vs full planning)
- Document quick task directory structure
- Document STATE.md tracking convention
- Document orchestration flow and commit convention
2026-01-19 15:59:29 -06:00
Lex Christopherson
2dc7d47d10 docs(02-01): add Quick Mode section to README.md
- Add Quick Mode section in How It Works after Repeat section
- Add /gsd:quick entry to Utilities command table
- Document usage examples and output files
2026-01-19 15:59:29 -06:00
Lex Christopherson
d673b8caf5 docs(02-01): add Quick Mode section to help.md
- Add /gsd:quick command documentation
- Place between Execution and Roadmap Management sections
- Document usage, purpose, and output files
2026-01-19 15:59:29 -06:00
Lex Christopherson
eed4e57456 docs(quick-001): create GSD commands HTML reference page
Quick task completed.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 15:59:29 -06:00
Lex Christopherson
deec75c8af feat(quick-001): create GSD commands HTML reference page
- Lists all 25 GSD commands with descriptions
- Organized into logical groups (Setup, Planning, Execution, etc.)
- Mobile-friendly responsive design
- Single-file with inline CSS, no dependencies
2026-01-19 15:59:29 -06:00
Lex Christopherson
942e65916d feat(01-02): implement final commit and completion output
- Add Step 8 with artifact staging and commit
- Use quick task commit format: docs(quick-NNN): description
- Display GSD-style completion output
- Clean up execution_context placeholder
2026-01-19 15:59:29 -06:00
Lex Christopherson
2dbc802fbd feat(01-02): implement STATE.md Quick Tasks Completed table update
- Add Step 7 with table creation/update logic
- Check for existing Quick Tasks Completed section
- Create section after Blockers/Concerns if missing
- Append row with task number, description, date, commit, directory link
- Update Last activity line
2026-01-19 15:59:29 -06:00
Lex Christopherson
563bcdf765 feat(01-02): implement gsd-executor spawn for quick mode
- Add Step 6 with gsd-executor Task spawn
- Include plan reference and constraints
- Verify SUMMARY.md creation after executor returns
- Note wave execution support for multi-plan cases
2026-01-19 15:59:29 -06:00
Lex Christopherson
58bd646219 feat(01-02): implement gsd-planner spawn for quick mode
- Add Step 5 with gsd-planner Task spawn
- Include quick mode context and constraints
- Verify PLAN.md creation after planner returns
2026-01-19 15:59:29 -06:00
Lex Christopherson
2b36394f35 feat(01-01): create quick.md command file with structure
- Add frontmatter with name, description, allowed-tools
- Include objective explaining quick mode purpose
- Add process section with steps 1-7 (orchestration deferred to Plan 02)
- Include success criteria for full quick task flow

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 15:59:29 -06:00
Lex Christopherson
6d0a9a0543 docs(01): research phase domain
Phase 1: Core Command
- Standard stack identified (gsd-planner quick mode, gsd-executor)
- Architecture patterns documented (.planning/quick/ structure, STATE.md table)
- Pitfalls catalogued (ROADMAP updates, decimal phases, flags - all rejected by CONTEXT.md)
2026-01-19 15:59:29 -06:00
Lex Christopherson
ae43baccd2 docs(01): capture phase context
Phase 01: Core Command
- Implementation decisions documented
- Phase boundary established
- Quick tasks use .planning/quick/ directory structure

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 15:59:29 -06:00
Santeri Helminen
c033a85e4a fix(hooks): update check now finds VERSION in local project installs (#166)
The update check script always looked for VERSION in ~/.claude/get-shit-done/,
but GSD can be installed locally in ./.claude/get-shit-done/. This caused
false "update available" notifications when using local installations.

Changes:
- Check project directory first, then fall back to global
- Remove unused execSync import
2026-01-19 14:52:36 -06:00
superresistant
3fb6bfbb50 fix(hooks): prevent console window flash on Windows (#167)
On Windows, the detached spawn option creates a visible console window.
Combined with npm (which is a .cmd batch file), this causes a brief
window flash that steals focus from the user's terminal.

- Remove detached: true (not needed, child.unref() handles non-blocking)
- Add windowsHide: true to both spawn() and inner execSync()
2026-01-19 14:50:30 -06:00
Joshua Shanks
99362f1e5f fix: clamp progress bar value to 0-100 range (#176)
Prevents visual glitches if context usage reports unexpected values
outside the expected 0-100 percentage range.
2026-01-19 14:47:49 -06:00
Joshua Shanks
80414a785b fix: validate empty --config-dir value (#177)
Reject --config-dir= with empty value with a clear error message
instead of silently failing. Helps users catch typos.
2026-01-19 14:45:33 -06:00
Joshua Shanks
4b7d1e16e6 chore: add homepage and bugs fields to package.json (#178)
Improves npm discoverability and helps users find documentation
and report issues directly from the npm package page.
2026-01-19 14:44:53 -06:00
Joshua Shanks
76cba3bff1 fix: use consistent allowed-tools YAML format (#179)
Convert inline array format to list format in discuss-phase.md
to match all other command files in the codebase.

Before: allowed-tools: [Read, Write, Bash, ...]
After:  allowed-tools:
          - Read
          - Write
          - Bash
          ...
2026-01-19 14:44:16 -06:00