Commit Graph

2813 Commits

Author SHA1 Message Date
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
Lex Christopherson
92b48937e0 fix: correct agent name in research-phase heading
The heading said gsd-researcher but the actual Task call uses
gsd-phase-researcher. Aligns with PR #180's cleanup.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 14:40:31 -06:00
Lex Christopherson
d21f2d9092 docs: create roadmap (3 phases)
Phases:
1. Core Command: CMD-01-05, EXEC-01-04, STATE-01-03
2. Resume Integration: RESUME-01-02
3. Documentation: DOCS-01-03

All v1 requirements mapped to phases.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 14:40:19 -06:00
Lex Christopherson
535b316e17 docs: define v1 requirements
17 requirements across 5 categories
0 requirements deferred to v2

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 14:40:19 -06:00
Lex Christopherson
eac1503139 chore: add project config
Mode: yolo
Depth: quick
Parallelization: enabled

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 14:40:19 -06:00
Lex Christopherson
922debfcb1 docs: initialize project
Fast-path /gsd:quick command — same guarantees, 50-70% fewer tokens for simple tasks

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 14:40:19 -06:00
Lex Christopherson
6ad1d0a318 fix(agents): remove hardcoded 2025 year from search query examples
Researcher agents were using literal "2025" in query template examples,
causing Claude to copy them verbatim instead of using the actual current
year. Changed to [current year] placeholder with explicit instruction to
check today's date.

Fixes #164

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 14:40:19 -06:00
Lex Christopherson
694bd1510e feat: add gsd-meta subagent for instant GSD expertise
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 14:40:19 -06:00