Commit Graph

3539 Commits

Author SHA1 Message Date
Lex Christopherson
faa3648d81 docs: update changelog for v1.9.6 2026-01-22 12:56:46 -06:00
Lex Christopherson
820f1086ce feat(installer): add interactive runtime selection prompt
Users can now choose to install for Claude Code, OpenCode, or both
when running the installer interactively. New CLI flags:
- --claude: Install for Claude Code only
- --opencode: Install for OpenCode only
- --both: Install for both runtimes

The installer prompts for runtime first, then location. Backward
compatible - existing --global and --local flags still work.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 12:53:46 -06:00
TÂCHES
527c663ae2 Merge pull request #232 from dbachelder/oc-perms
feat(opencode): auto-configure read permissions for GSD docs
2026-01-22 12:48:24 -06:00
Lex Christopherson
6f069c6b8a feat(assets): add 2000x2000 GSD logo for Moonshot
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 12:40:03 -06:00
dan
cfb9e261a2 feat(opencode): auto-configure read permissions for GSD docs
When installing with --opencode, the installer now adds read and
external_directory permissions for ~/.opencode/get-shit-done/* to
~/.opencode.json. This prevents OpenCode from prompting for permission
every time GSD commands access reference docs.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 10:28:35 -08:00
Lex Christopherson
1cf197517c fix(ci): commit package-lock.json for reproducible builds
Remove package-lock.json from .gitignore so CI can use npm caching.
This fixes the "Dependencies lock file is not found" error in GitHub Actions.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 11:41:08 -06:00
TÂCHES
6e30261062 Merge pull request #224 from dbachelder/opencode
feat(opencode): make installer work for opencode
2026-01-22 11:35:26 -06:00
Lex Christopherson
7e9b8decf1 docs: add community ports section to README
Link to gsd-opencode and gsd-gemini community adaptations.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 11:24:51 -06:00
Lex Christopherson
81e48f963d 1.9.5 2026-01-22 11:12:52 -06:00
Lex Christopherson
a45a14361b docs: update changelog for v1.9.5 2026-01-22 11:12:34 -06:00
Lex Christopherson
7ba5dbd412 refactor: condense verbose explanations in templates and workflows
Trim redundant documentation while preserving actionable instructions.
-173 lines of prose that restated what templates already show.

Kept: size constraints, mandatory fields, security guidance.
Removed: "when to create/read/update" lifecycle prose, section
descriptions that duplicate template structure.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 11:11:16 -06:00
Lex Christopherson
314916bae9 fix: use general-purpose agent for MCP-dependent subagents
Custom subagents cannot access MCP tools due to Claude Code bug #13898.
This affects gsd-phase-researcher, gsd-project-researcher, and gsd-planner
which need Context7 for documentation lookups.

Fix: Switch to general-purpose agent (which has MCP access) and have it
read the agent instruction file as its first action. The specialized
behavior comes from the prompt, not the agent definition.

Closes #161

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 10:58:08 -06:00
Lex Christopherson
a3a16be296 feat: add CI/CD and release automation
- Add GitHub Actions CI for cross-platform testing (ubuntu/windows/macos × node 18/20/22)
- Add release workflow that auto-creates GitHub Releases and publishes to npm on tag push
- Add CONTRIBUTING.md with branching strategy (maintainers direct commit, contributors PR)
- Add MAINTAINERS.md with release workflows and recovery procedures
- Add PR template for contributors

Closes #221

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 10:37:22 -06:00
Lex Christopherson
460f0d9963 fix: remove backticks from slash commands in new-project output
Backticks prevented commands from rendering as clickable elements.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 10:37:22 -06:00
Lex Christopherson
67201cb039 fix(install): escape/Ctrl+C cancels instead of installing globally
Previously, closing the readline (via Escape, Ctrl+C, or stdin closure)
would default to global install. Now it cancels the installation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 10:37:22 -06:00
dan
bf73de8946 feat(opencode): make installer work for opencode 2026-01-21 21:23:13 -08:00
superresistant
a1d60b7160 fix(install): use absolute paths for hook commands on Windows (#207)
Replace $HOME with actual resolved path in hook command strings.
$HOME is a Unix shell variable that is not expanded by cmd.exe or
PowerShell on Windows, causing hooks to fail with MODULE_NOT_FOUND.

The fix uses a new buildHookCommand() helper that:
- Uses the actual claudeDir path instead of $HOME
- Normalizes backslashes to forward slashes for Node.js compatibility
2026-01-21 12:43:03 -06:00
Lex Christopherson
e4155f4cc2 1.9.4 2026-01-21 10:56:57 -06:00
Lex Christopherson
d01bd2a93c docs: update changelog for v1.9.4 2026-01-21 10:56:53 -06:00
TÂCHES
67b064d534 Reduce manual verification in checkpoint system (#220)
* docs: enforce automation-first checkpoint verification

Checkpoints should never ask users to run CLI commands that Claude Code
can execute. This update reinforces the automation-first principle:

Key changes:
- Add golden rules: Claude runs CLI, users only visit URLs
- Add dev server automation patterns (start before checkpoint)
- Add environment variable CLI patterns (Convex, Vercel, etc.)
- Add anti-patterns: asking user to run npm, add dashboard env vars
- Update all examples to show Claude starting servers
- Add comprehensive "Never Ask Users To" and "Users Only Do" lists
- Update gsd-executor with pre-checkpoint automation requirements

The core principle: if Claude CAN automate it, Claude MUST automate it.
Users only do what requires human judgment (visual verification, UX).

* refactor: DRY checkpoint automation with server lifecycle and error handling

Changes:
- checkpoints.md is now single source of truth for automation-first patterns
- Added server lifecycle protocol (start, port conflicts, cleanup)
- Added CLI installation handling (auto-install matrix)
- Added pre-checkpoint failure handling (fix before checkpoint)
- Removed ~93 lines of duplication from verification-patterns.md
- Replaced inline examples in phase-prompt.md with references
- Slimmed gsd-executor.md checkpoint section to reference checkpoints.md

Net effect: -23 lines while adding 3 new capabilities (server lifecycle,
CLI install, error handling). Single place to update automation patterns.

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

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-01-21 10:52:30 -06:00
Lex Christopherson
d58ae52b54 1.9.3 2026-01-21 10:35:02 -06:00
Lex Christopherson
e10a87ac65 fix: clean up removed intel hooks from settings.json on install 2026-01-21 10:34:58 -06:00
Lex Christopherson
66a01a72a1 1.9.2 2026-01-21 10:30:15 -06:00
Lex Christopherson
7ea18a1636 docs: update changelog for v1.9.2 2026-01-21 10:30:11 -06:00
Lex Christopherson
d1fda80c7f revert: remove codebase intelligence system
Rolled back the intel system due to overengineering concerns:
- 1200+ line hook with SQLite graph database
- 21MB sql.js dependency
- Entity generation spawning additional Claude calls
- Complex system with unclear value

Removed:
- /gsd:analyze-codebase command
- /gsd:query-intel command
- gsd-intel-index.js, gsd-intel-session.js, gsd-intel-prune.js hooks
- gsd-entity-generator, gsd-indexer agents
- entity.md template
- sql.js dependency

Preserved:
- Model profiles feature
- Statusline hook
- All other v1.9.x improvements

-3,065 lines removed

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 10:28:53 -06:00
Lex Christopherson
93b963c3fe chore: remove old planning files 2026-01-21 10:17:14 -06:00
Lex Christopherson
e7ceaf6483 fix(new-project): add model_profile config and clarify workflow questions
- Add model_profile question (balanced/quality/budget) to Round 2
- Add model_profile to config.json schema
- Reword agent questions to be clearer:
  - "Spawn Plan Researcher?" → "Research before planning each phase?"
  - "Spawn Plan Checker?" → "Verify plans will achieve their goals?"
  - "Spawn Execution Verifier?" → "Verify work satisfies requirements after each phase?"
- Update descriptions to explain value, not mechanics

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:44:12 -06:00
Lex Christopherson
f64e066892 refactor(05-04): delegate indexing to gsd-indexer subagent
- Replace inline file reading in Steps 2-3 with subagent spawn
- Step 2 now outputs file_paths array (no content reading)
- Step 3 spawns gsd-indexer with Task tool
- Step 5 reads index.json written by subagent (not writes it)
- Add context section documenting indexing subagent delegation
- Prevents context exhaustion on 500+ file codebases

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:31:29 -06:00
Lex Christopherson
955eaa52ef docs(05-03): complete gsd-indexer plan
Tasks completed: 1/1
- Create gsd-indexer agent definition

SUMMARY: .planning/phases/05-subagent-codebase-analysis/05-03-SUMMARY.md

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:28:20 -06:00
Lex Christopherson
5d03e14f89 feat(05-03): add gsd-indexer subagent definition
- Create indexer agent for Steps 2-3 file indexing
- Uses exact regex patterns from analyze-codebase Step 3
- Writes index.json directly to disk (context preservation)
- Returns statistics only to orchestrator

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 09:27:14 -06:00
Lex Christopherson
a686d28669 docs(05): create gap closure plans for Steps 2-3 subagent delegation
Phase 05: Subagent Codebase Analysis
- 05-03: gsd-indexer subagent for file reading and export/import extraction
- 05-04: Refactor analyze-codebase Steps 2-3 to use indexer subagent

Gap closure addresses context exhaustion during indexing phase (Steps 2-3),
not just entity generation (Step 9).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 21:46:14 -06:00
Lex Christopherson
6027b5e4d8 1.9.1 2026-01-20 12:11:12 -06:00
Lex Christopherson
cdad7b8ad7 fix: update build script to use gsd-statusline.js
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 12:11:08 -06:00
Lex Christopherson
c0330e48f8 refactor(05-02): replace batch entity generation with subagent delegation
- Step 9.3 now spawns gsd-entity-generator subagent instead of Task batches
- Subagent receives file paths only (preserves orchestrator context)
- Subagent reads files in fresh 200k context, writes entities to disk
- Returns statistics only (not entity contents)
- Updated context section to document subagent execution model
- Fixed slug examples to use single hyphen format (matches hook)
- Simplified Steps 9.4-9.5 for new flow
2026-01-20 12:08:47 -06:00
Lex Christopherson
84a633f487 docs(05-01): complete gsd-entity-generator plan
Tasks completed: 1/1
- Create gsd-entity-generator agent definition

SUMMARY: .planning/phases/05-subagent-codebase-analysis/05-01-SUMMARY.md
2026-01-20 12:06:31 -06:00
Lex Christopherson
f4c5817838 feat(05-01): create gsd-entity-generator subagent definition
- Add agent for semantic entity generation from source files
- Include entity template with frontmatter, purpose, exports, deps
- Define type heuristics table for module classification
- Specify wiki-link rules for internal vs external dependencies
- Agent writes directly to .planning/intel/entities/
- Returns statistics only (not entity contents)
2026-01-20 12:05:27 -06:00
Lex Christopherson
d7754b9066 1.9.0 2026-01-20 11:56:13 -06:00
Lex Christopherson
900fc95efc fix: rename statusline.js to gsd-statusline.js for consistent hook naming
All GSD hooks now use gsd- prefix. Installer updated to clean up old
statusline.js file and hook registration from previous installs.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 11:55:59 -06:00
Lex Christopherson
9a3a394f79 docs: update changelog and documentation for v1.9.0 2026-01-20 11:53:21 -06:00
Lex Christopherson
6e757aaa77 fix(05): revise plan 05-02 based on checker feedback
- Reframe must_haves truths to outcome-focused (scalability, UX)
- Add instruction to fix outdated slug documentation (-- to -)
- Add slug verification to task verify checklist

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 11:47:43 -06:00
Lex Christopherson
d994732a45 docs(05): create phase plan for subagent codebase analysis
Phase 05: Subagent Codebase Analysis
- 2 plans in 2 waves
- Plan 05-01: Create gsd-entity-generator subagent (Wave 1)
- Plan 05-02: Refactor analyze-codebase to use subagent (Wave 2)
- Ready for execution

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 11:44:32 -06:00
Lex Christopherson
701b10d5f9 docs(05): research subagent codebase analysis
Phase 5: Subagent Codebase Analysis
- Refactor entity generation from main context to subagent delegation
- Follow gsd-codebase-mapper pattern
- Prevent context exhaustion on 500+ file codebases
- Single subagent with full file list (not multiple batches)
- Subagent writes entities directly, returns statistics only
2026-01-20 11:40:58 -06:00
Lex Christopherson
aa63054dd3 feat(04): add /gsd:query-intel command
Exposes graph database queries to users:
- dependents <file> - what depends on this file (blast radius)
- hotspots - most-depended-on files

Closes tech debt item from v1.9.0 audit.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 10:58:10 -06:00
Lex Christopherson
c1a86cadee fix(04): address tech debt from milestone audit
- Wrap intel content in <codebase-intel> tags in plan-phase.md
- Use ENTITY_DIR constant in isEntityFile() instead of hardcoded path

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 10:42:43 -06:00
Lex Christopherson
1c746a548a docs(04-05): complete intel injection into planner plan
Tasks completed: 2/2
- Add intel file read to Step 7
- Add intel section to planner prompt template

SUMMARY: .planning/phases/04-semantic-intelligence/04-05-SUMMARY.md

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 10:25:35 -06:00
Lex Christopherson
61d1e91013 feat(04-05): wire codebase intel injection into planner
- Read .planning/intel/summary.md into INTEL_CONTENT in Step 7
- Add {intel_content} placeholder to planning_context in Step 8
- Planner now receives dependency hotspots, module types at planning time

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 10:24:09 -06:00
Lex Christopherson
fe72ca41bd docs(04-04): complete CLI query interface plan
Tasks completed: 2/2
- Add query action routing to stdin handler
- Add usage documentation as code comment

SUMMARY: .planning/phases/04-semantic-intelligence/04-04-SUMMARY.md
2026-01-20 10:15:00 -06:00
Lex Christopherson
791265af29 docs(04-04): add CLI query interface documentation
- Document query interface in file header
- Include usage examples for dependents and hotspots queries
- List available options and output format
2026-01-20 10:13:35 -06:00
Lex Christopherson
f46327a4bf feat(04-04): add CLI query interface to graph database
- Add handleQuery() function to route query actions
- Support dependents and hotspots query types
- Route query actions via stdin handler before Write/Edit
- Return JSON results to stdout for Claude consumption
2026-01-20 10:13:15 -06:00
Lex Christopherson
04d296471d docs(04): create gap closure plan for CLI query interface
Phase 04-04: Expose orphaned getDependents() function
- Add handleQuery() routing for stdin query actions
- Enable "what uses this file?" queries via CLI
- Closes verification gap for INTEL-05

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 10:09:31 -06:00