Commit Graph

653 Commits

Author SHA1 Message Date
Lex Christopherson
bdbcbc4787 feat: show Discord invite link in install completion message
Helps new users discover the community right after installation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-23 01:45:03 -06:00
Lex Christopherson
c22aed4d01 1.9.9 2026-01-23 01:43:24 -06:00
Lex Christopherson
0482681fa1 docs: update changelog for v1.9.9 2026-01-23 01:43:20 -06:00
Lex Christopherson
3a43501832 docs: add join-discord to README command table 2026-01-23 01:42:46 -06:00
Lex Christopherson
6e2f46c9e3 feat: add /gsd:join-discord command
Lets users quickly access the GSD Discord community invite link
directly from Claude Code.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-23 01:42:06 -06:00
Lex Christopherson
a558ad277e 1.9.8 2026-01-22 23:26:38 -06:00
Lex Christopherson
58e489dc84 docs: update changelog for v1.9.8 2026-01-22 23:26:34 -06:00
Lex Christopherson
12e6acbf53 feat(installer): add --uninstall flag to remove GSD files
Adds -u/--uninstall option that cleanly removes all GSD-installed files:
- commands/gsd/ directory (Claude Code) or gsd-*.md files (OpenCode)
- get-shit-done/ directory
- gsd-*.md agent files
- GSD hooks (gsd-statusline.js, gsd-check-update.js/sh)
- GSD entries from settings.json (statusline, hooks)
- GSD permissions from opencode.json (OpenCode only)

Usage: npx get-shit-done-cc --claude --global --uninstall

Closes #236

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 20:37:35 -06:00
Lex Christopherson
f059a6cfb3 fix: use *-CONTEXT.md glob for filename variants
Standardize on *-CONTEXT.md glob pattern to match files like
03-CONTEXT.md across all workflows.

Files updated:
- commands/gsd/plan-phase.md
- commands/gsd/research-phase.md
- get-shit-done/workflows/discuss-phase.md
- get-shit-done/workflows/resume-project.md

Closes #219

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 20:32:10 -06:00
Lex Christopherson
8ecb8cd820 1.9.7 2026-01-22 15:02:13 -06:00
Lex Christopherson
5b366210b1 docs: update changelog for v1.9.7 2026-01-22 15:02:09 -06:00
Lex Christopherson
c313f78f6a docs: add CONTRIBUTING.md with project guidelines
Based on PR #222 by @davesienkowski with minor edits.

Co-Authored-By: davesienkowski <davesienkowski@users.noreply.github.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 15:02:02 -06:00
Juliano Farias
707d4b47b0 fix(installer): use correct OpenCode config path (~/.config/opencode) (#233)
OpenCode follows XDG Base Directory spec and expects config at
~/.config/opencode/, not ~/.opencode/. This fix:

- Add getOpencodeGlobalDir() to detect correct path via:
  - OPENCODE_CONFIG_DIR env var
  - OPENCODE_CONFIG env var (uses dirname)
  - XDG_CONFIG_HOME/opencode
  - ~/.config/opencode (default)

- Use 'command/' (singular) instead of 'commands/' (plural)

- Use flat file structure: command/gsd-help.md instead of
  commands/gsd/help.md (invoked as /gsd-help)

- Write permissions to ~/.config/opencode/opencode.json

- Update content conversion to replace ~/.claude with
  ~/.config/opencode and /gsd: with /gsd-

Fixes OpenCode installation which was previously installing to
~/.opencode/ where OpenCode couldn't find the commands.
2026-01-22 15:00:53 -06:00
Lex Christopherson
0d65da1ceb 1.9.6 2026-01-22 12:56:54 -06:00
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