All notable changes to GSD Hermes will be documented in this file.
Format follows Keep a Changelog.
GSD Hermes uses an independent downstream package version line. Each release should
record both the gsd-hermes package version and the upstream GSD base version it
syncs from.
GSD Hermes package version: 1.16.0
Upstream GSD base: upstream/main@cb154569 (post v1.42.1 development line)
Previous downstream package version: 1.15.0
Previous upstream base: upstream/main@d2412271
- Sync downstream
gsd-hermesto upstreamgsd-build/get-shit-done@cb154569. Adopts upstream surface/layout module work (#3663, #3666),/gsd:→/gsd-normalization (#3677, #3683), executorcommit_docs:falsehonoring (#3678), Windows nested worktree detection fixes, and assorted installer/surface fixes through v1.42.1. - Preserve Hermes-first routing semantics: model_overrides and Hermes-prefixed model ids continue to route through the configured Hermes/provider surface, and unknown-agent model resolution stays fail-fast (no silent Claude fallback).
- Preserve Hermes project-linked install semantics — installer does not claim a true native local Hermes skills install path.
GSD Hermes package version: 1.14.0
Upstream GSD base: upstream/main@73f7ad33 / upstream get-shit-done-cc@1.50.0-canary.0 development line after the v1.41.0 release
Previous downstream package version: 1.13.0
Previous upstream base: upstream/main@3579a48d
- Routine upstream sync to
upstream/main@73f7ad33— imports 72 upstream commits since3579a48d, including GSD v1.41.0 maintenance, atomic hook builds, Homebrew Node path hardening, milestone archive layout support, MVP/TDD workflow additions, canary stream documentation, workflow/docs updates, and expanded regression coverage.
- Kept downstream package identity as
gsd-hermesand release workflows targetinggsd-hermes. - Preserved strict
model_overridesrouting:hermes/*remains Hermes-native with no--providerflag, directopenai/*/anthropic/*remain provider-CLI routed, and unavailable direct bindings fail fast instead of falling back to the wrong CLI. - Preserved Hermes project-linked install semantics:
./.gsd-hermes/skillsplus Hermesskills.external_dirs, not a false native per-project skills root.
- Added release notes:
docs/releases/v1.14.0-upstream-73f7ad33-sync.md.
node --test tests/hermes-install.test.cjs tests/hermes-provider-routing-regression.test.cjs tests/provider-cli-dispatch.test.cjs tests/agent-execution-router.test.cjs tests/runtime-model-parity.test.cjs
GSD Hermes package version: 1.13.0
Upstream GSD base: upstream/main@3579a48d / upstream get-shit-done-cc@1.39.0-rc.4 development line
Previous downstream package version: 1.12.0
Previous upstream base: upstream/main@42ed7cee
- Routine upstream sync to
upstream/main@3579a48d— imports 135 upstream commits since42ed7cee, including SDK runtime bridge seams, command contract validation, executor worktree path safety, state/milestone hardening, restored backlog routing, update/install guidance, and expanded regression coverage.
- Kept downstream package identity as
gsd-hermesand release workflows targetinggsd-hermes. - Preserved strict
model_overridesrouting:hermes/*remains Hermes-native with no--providerflag, directopenai/*/anthropic/*remain provider-CLI routed, and unavailable direct bindings fail fast instead of falling back to the wrong CLI.
- Added release notes:
docs/releases/v1.13.0-upstream-3579a48d-sync.md.
npm run build:sdknode --test tests/hermes-provider-routing-regression.test.cjs tests/provider-cli-dispatch.test.cjs tests/agent-execution-router.test.cjs tests/runtime-model-parity.test.cjs tests/feat-3023-phase-type-models.test.cjs tests/feat-3024-dynamic-routing.test.cjs
GSD Hermes package version: 1.12.0
Upstream GSD base: upstream/main@42ed7cee / upstream get-shit-done-cc@1.40.0 release line
Previous downstream package version: 1.11.1
Previous upstream base: upstream/main@f2decefe
- Routine upstream sync to
upstream/main@42ed7cee— imports 24 upstream commits sincef2decefe, including per-phase-type model mappings, dynamic routing escalation, install shell PATH probing, help passthrough fixes, Codex hook hardening, Gemini duplicate-command avoidance, and query/dispatch seam refactors.
- Kept downstream package identity as
gsd-hermesand release workflows targetinggsd-hermes. - Preserved Hermes-first install semantics plus strict
model_overridesrouting:hermes/*remains Hermes-native, directopenai/*/anthropic/*remain provider-CLI routed, andcross_ai_executionstays lower-priority fallback.
- Added release notes:
docs/releases/v1.12.0-upstream-42ed7cee-sync.md.
npm run build:sdknode --test tests/hermes-provider-routing-regression.test.cjs tests/provider-cli-dispatch.test.cjs tests/agent-execution-router.test.cjs tests/runtime-model-parity.test.cjs tests/feat-3023-phase-type-models.test.cjs tests/feat-3024-dynamic-routing.test.cjs
GSD Hermes package version: 1.11.1
Upstream GSD base: upstream/main@f2decefe / upstream get-shit-done-cc@1.40.0-rc.1 development line
- Canonicalized Hermes-native GPT examples to
hermes/gpt-5.5;hermes/gpt-5-5remains a tested backward-compatible alias. - Hermes-native strict execution now passes unqualified model tokens such as
gpt-5.5orclaude-opus-4-7tohermes chatwithout--provider, so provider selection comes from the currently configured Hermes provider.
- Added release notes:
docs/releases/v1.11.1-canonical-hermes-gpt-provider.md.
GSD Hermes package version: 1.11.0
Upstream GSD base: upstream/main@f2decefe / upstream get-shit-done-cc@1.40.0-rc.1 development line
- Hermes model-prefix routing —
model_overridesvalues such ashermes/gpt-5.5andhermes/claude-opus-4-7now auto-select Hermes-nativehermes chatexecution without requiringworkflow.agent_execution_routerorworkflow.agent_execution_driverin normal project config. - Per-agent mixed routing safety —
hermes/*routes through Hermes while plainopenai/*andanthropic/*overrides in the same phase continue to use Codex CLI and Claude Code CLI respectively.
- Simplified README, configuration, command, and execute-phase workflow docs so the primary UX is model-string-first instead of
agent_execution_*-first. - Hermes command rendering now omits
--provider ...; Hermes receives a fully qualified model token such asopenai/gpt-5.5oranthropic/claude-opus-4-7and resolves provider handling through its own config/model handling rather than through GSD-specific provider CLI fallback.
- Added release notes:
docs/releases/v1.11.0-hermes-model-prefix-routing.md.
npm run build:sdknode --test tests/agent-execution-router.test.cjs tests/provider-cli-dispatch.test.cjs
GSD Hermes package version: 1.10.0
Upstream GSD base: upstream/main@f2decefe / upstream get-shit-done-cc@1.40.0-rc.1 development line
Previous downstream package version: 1.9.1
- Hermes-native provider routing —
workflow.agent_execution_drivernow acceptshermes-chatandhermes-terminal-tool, rendering stricthermes chat --model ... --provider ...commands from explicitmodel_overridesinstead of falling back to provider-specific CLIs. - Driver preference receipts —
agent_execution_bindings.driver_preferencerecords whether a phase is using default provider CLI routing or an explicit Hermes-native execution surface. - Hermes dispatcher preflight — provider-routed command rendering now fails fast when the requested
hermesCLI is unavailable and keeps missing-driver diagnostics actionable.
- Refreshed README and configuration docs with lightweight visual cues and explicit Hermes-native routing examples.
- Updated execute-phase workflow guidance so provider-routed dispatch supports
claude-cli,codex-cli,hermes-chat, andhermes-terminal-toolwithout silent fallback.
- Added release notes:
docs/releases/v1.10.0-hermes-native-provider-routing.md.
- Local validation passed: conflict-marker scan,
git diff --check,npm run build:sdk,node --test tests/agent-execution-router.test.cjs tests/provider-cli-dispatch.test.cjs,npm run test:hermes,npm test(6869/6869),npm run lint:tests, andnpm pack --dry-run --json.
GSD Hermes package version: 1.9.1
Upstream GSD base: upstream/main@f2decefe / upstream get-shit-done-cc@1.40.0-rc.1 development line
Previous downstream package version: 1.9.0
Previous upstream base: upstream/main@de25400b
- Upstream sync to
upstream/main@f2decefe— imports upstream maintenance fixes for SDK diagnostics, typed-IR test coverage, and/gsd-update --reapplyrecovery messaging while preserving downstreamgsd-hermespackage identity.
- Kept SDK fail-fast repair hints pointed at
gsd-hermes, not upstream package names. - Preserved strict Hermes/provider-routing invariants and dash-form command discovery while accepting upstream-owned
/gsd:regression tests.
- Added release notes:
docs/releases/v1.9.1-upstream-f2decefe-sync.md.
- Local and PR validation passed:
npm run test:hermes,npm test,npm run lint:tests, andnpm pack --dry-run --json.
GSD Hermes package version: 1.9.0
Upstream GSD base: upstream/main@de25400b / upstream get-shit-done-cc@1.40.0-rc.1 development line
Previous downstream package version: 1.8.0
- Upstream sync to
upstream/main@de25400b— imports the latest GSD command consolidation, Hermes Agent skill-layout hardening, workstream/session locking, release-flow updates, SDK query routers, and test coverage while preserving downstreamgsd-hermespackage identity.
- Hermes-first positioning — documentation now presents
gsd-hermesas a Hermes-first distribution of Get Shit Done rather than a fork whose only purpose is adding basic Hermes support. - Strict provider-routed execution remains first-class —
workflow.agent_execution_router: "provider-cli"keeps routing OpenAI/GPT model overrides tocodex exec --model ...and Anthropic/Claude overrides toclaude -p --model ..., with unsupported bindings failing fast.
- Reconciled upstream Hermes Agent improvements with downstream project-linked install semantics: global installs target
~/.hermes, local installs use./.gsd-hermesplusskills.external_dirs. - Refreshed README, command docs, inventory docs, and release notes around Hermes-first usage and strict model/provider routing.
- See release PR checks for focused Hermes/provider-routing regressions,
npm run test:hermes,npm test,npm run lint:tests, andnpm pack --dry-run --json.
GSD Hermes package version: 1.8.0
Upstream GSD base: upstream/main@eeaf9c55 / get-shit-done-cc@1.39.0-rc.5
Previous downstream package version: 1.7.0
- Provider-routed agent execution —
workflow.agent_execution_router: "provider-cli"turns explicitmodel_overridesinto strict per-agent CLI bindings: OpenAI/GPT-family models route tocodex exec --model ..., and Anthropic/Claude-family models route toclaude -p --model .... - Execution binding receipts — execute-phase init payloads now include
agent_execution_bindingsalongside existingmodel_binding_receipts, making provider family, execution driver, normalized CLI model, and fail-fast diagnostics visible before dispatch. - Strict regression coverage — Hermes validation now covers provider-routing fixtures, negative fallback guards, command-rendering proof, and workflow static checks so
openai/gpt-5.5cannot silently regress toclaude -p.
workflow.cross_ai_executionis documented as a lower-priority legacy whole-plan fallback; valid provider-cli bindings take priority unless the operator explicitly bypasses provider routing.
- Added release notes:
docs/releases/v1.8.0-provider-routed-agent-execution.md.
- Local validation passed:
npm run test:hermes,npm test(5942/5942),npm run lint:tests, andnpm pack --dry-run --json.
GSD Hermes package version: 1.7.0
Upstream GSD base: upstream/main@eeaf9c55 / get-shit-done-cc@1.39.0-rc.5
Previous upstream base: upstream/main@9472f343 / get-shit-done-cc@1.38.5
- Upstream sync to
upstream/main@eeaf9c55— merges the upstream changes from9472f343..eeaf9c55while preserving downstreamgsd-hermespackage identity, Hermes install semantics, dash-form command discovery, and strict runtime/model binding receipt contracts.
- Imported upstream
gsd-toolsbin alias and SDK workstream environment support. - Imported upstream execute-phase per-plan worktree gate documentation and latest workflow/agent prompt hardening.
- Imported upstream
v1.39.0-rc.4andv1.39.0-rc.5release notes as upstream-base reference docs.
- Imported upstream fixes for fenced-code milestone parsing, archived phase fallback, audit-UAT frontmatter parsing, config-get
--default, context window config validation, ingest-docs init dispatch, skill hyphen naming, OpenCode model profile overrides, update cache clearing, and roadmap phase argument parsing. - Preserved downstream
gsd-hermesnpm identity and repository metadata instead of adopting upstreamget-shit-done-ccpackage identity. - Preserved Hermes runtime/model binding SDK contract while accepting upstream config-get missing-key exit semantics.
- Local validation passed:
npm run test:hermes,npm test(5921/5921),npm run lint:tests, andnpm pack --dry-run --json.
GSD Hermes package version: 1.6.0
Upstream GSD base: upstream/main@9472f343 / get-shit-done-cc@1.38.5
Previous upstream base: upstream/main@f3685d91
- Upstream sync to
upstream/main@9472f343— merges the upstream changes fromf3685d91..9472f343while preserving downstreamgsd-hermespackage identity, Hermes install semantics, dash-form command discovery, and strict runtime/model binding receipt contracts.
- Imported upstream
--minimal/--core-onlyinstall profile support, which installs only the main-loop core skills and records install manifest mode as"minimal"or"full". - Imported upstream
/gsd-edit-phasecommand support. - Imported upstream post-merge build/test gate workflow coverage.
- Imported upstream runtime profile map expansion for Gemini, Qwen, OpenCode, and Copilot plus settings-advanced UI updates.
- Imported upstream discuss-phase lazy import/performance work and explicit wait-for-subagent orchestration instructions.
- Imported upstream USER-GUIDE walkthrough documentation updates without replacing the concise downstream README.
- Imported upstream workstream query/config threading fixes, including root config inheritance and model resolver workstream handling.
- Imported upstream Codex install format fixes for hooks/agents.
- Imported upstream roadmap/phase lifecycle parsing hardening, graphify CLI invocation fix, review model config coverage, LM Studio model identity validation, nested config preservation, model alias update, and parser fixes for quoted/colon-containing values.
- Local validation passed:
npm run test:hermes,npm test,npm run lint:tests, andnpm pack --dry-run --json. - PR CI pending after branch push.
1.5.0 — 2026-04-26
GSD Hermes package version: 1.5.0
Upstream GSD base: upstream/main@f3685d91 / get-shit-done-cc@1.38.5
Tracker: #35
- Upstream sync to
get-shit-done-cc@1.38.5— merges 24 upstream commits fromcd057255..f3685d91while preserving downstreamgsd-hermespackage identity, Hermes install semantics, and strict runtime/model binding receipt contracts. - Imported upstream fixes for SDK executor
phaseDirsummary placement, full installed prompt loading, executor plan-content loading,/gsd-<cmd>routing suggestions, parent.planning/root resolution for sub-repos, shell hook version substitution/detection, lint protection against source-grep tests, markdown anchor discovery, codebase map refresh output, and installer local SDK-check skip. - Updated release/package metadata for
gsd-hermes@1.5.0with clean PR and release notes that keep.planning/artifacts out of the shipping branch.
- Preserved SDK/CJS config parity for structured
parallelizationobjects so project config retains{ enabled: false }instead of flattening to booleanfalse. - Added
inheritto CJS and SDK valid model-profile selectors so config mutation, SDK schema, and runtime model binding contracts agree. - Optimized the base64 security scanner to avoid per-line process spawning on large upstream docs/scripts while preserving decoded prompt-injection detection.
npm ci --ignore-scriptson Nodev22.19.0npm run build:sdknpm run lint:testsnode --test tests/init.test.cjs tests/runtime-model-parity.test.cjs tests/model-profiles.test.cjs tests/bug-2601-inherit-model-profile.test.cjs tests/core.test.cjs tests/security-scan.test.cjs tests/hermes-docs.test.cjs tests/install.test.cjscd sdk && npx vitest run src/query/init.test.ts src/query/config-query.test.ts src/golden/golden.integration.test.tsnpm test(5652/5652)scripts/secret-scan.sh --diff origin/mainscripts/base64-scan.sh --diff origin/mainscripts/prompt-injection-scan.sh --diff origin/mainnpm pack --dry-run --jsonplus tarball install smoke forgsd-hermesandgsd-sdkbin entries.
1.4.30 — 2026-04-26
GSD Hermes package version: 1.4.30
Upstream GSD base: upstream/main@cd057255
Tracker: #32
- Hermes runtime model binding receipts — plan-phase and execute-phase init payloads now include structured
model_binding_receiptsthat show resolver decision, configured model, resolved token, binding source, runtime binding channel, and proof boundary for each participating GSD agent while preserving legacy flat*_modelfields. - Hermes child binding channel evidence — direct
delegate_task(model=...)and batchtasks[].modelare the canonical Hermes per-agent binding seams; tests verify GSD planner/executor overrides reach childAIAgent(model=...)construction. - Safe provider diagnostics — sanitized provider metadata helpers can record model/provider/proof-source fields without retaining raw headers, request bodies, messages, credentials, API keys, tokens, passwords, client secrets, or credential-bearing URLs.
- No silent fallback for explicit Hermes model overrides — unsupported explicit bindings now fail before spawn with actionable diagnostics instead of allowing a child agent to inherit the parent/default model.
- Runtime/model proof boundaries documented — README, command reference, configuration reference, Hermes compatibility docs, PR checklist, and release notes now distinguish resolver proof, workflow handoff, Hermes child-construction proof, provider diagnostics, and live provider wire-level proof.
npm run build:sdkcd sdk && npx vitest run src/query/init.test.ts src/query/config-query.test.tsnode --test tests/init.test.cjs tests/runtime-model-parity.test.cjs tests/workflow-size-budget.test.cjs tests/hermes-docs.test.cjsnpm run test:hermesnpm test- Hermes Agent targeted pytest/py_compile gates recorded in the Phase 12/13 planning artifacts.
1.4.0 — 2026-04-25
GSD Hermes package version: 1.4.0
Upstream GSD base: upstream/main@cd057255 (25 commits after the v1.3.0 base upstream/main@0a049149)
- Upstream sync to
upstream/main@cd057255— brings in the post-v1.3 upstream fixes and enhancements while preserving the independentgsd-hermespackage identity, Hermes runtime adapter, and downstream release policy.
- Release tarball guardrails from upstream — release and smoke workflows now build SDK dist artifacts and verify
sdk/dist/cli.jsships in the published tarball so fresh installs do not depend on build-from-source behavior. - SDK query/config regression coverage — imports upstream coverage for config-schema parity, state mutation, roadmap handling, init progress precedence, sub-repo root resolution, and workflow-agent skill consistency.
- Installer fail-fast when SDK dist is missing — preserves the upstream no-nested-install guard while keeping Hermes-specific package guidance.
- Codex/OpenCode runtime model override propagation — imports upstream fix for passing per-agent model overrides through non-Claude transports.
- Workstream and roadmap state synchronization — imports upstream fixes for
--wsquery dispatch, ROADMAP checkbox precedence, state frontmatter writes, and insert-phase roadmap evolution. - Hermes skill frontmatter compatibility during upstream colon-form sync — keeps Hermes command-discovery frontmatter hyphenated while allowing upstream-owned Claude/Qwen colon-form behavior in the imported tests and paths.
1.3.0 — 2026-04-24
GSD Hermes package version: 1.3.0
Upstream GSD base: upstream/main@0a049149 (97 commits above v1.38.2 / 7397f580)
- Upstream sync to
upstream/main@0a049149— 97 commits merged from upstream into the Hermes fork, preserving independentgsd-hermespackage identity, Hermes runtime support, and downstream release policy. Per-hunk classification recorded indocs/sync-logs/2026-04-sync-0a049149.md. - Runtime-aware model profiles (upstream #2517) — Upstream runtime-aware resolver composed with the Hermes v1.2
model-profiles.cjsadapter via the shared parity matrix (extended from 5 → 13 rows intests/runtime-model-parity.test.cjs). /gsd:colon-form slash syntax (upstream #2543) — Coexists with Hermes-owned legacy/gsd-<cmd>command paths under a dual-track policy recorded indocs/hermes-compatibility.md §Slash Command Inventory.
- Hermes adapter wraps upstream runtime-aware resolver —
resolveModelInternalgains anoptions.initContextprojection flag that distinguishes init-context callers from general callers while preserving a single source of truth (Phase 7.1 Plan 02). sdk/dist/cli.jschmod 0o755 hardened —sdk/package.json::prepublishOnlyuseschmod +x(upstream alignment; publish-time umask 022 → 0o755); a newpostbuildhook adds absolutechmod 755 dist/cli.jsto defend against developer umask 002.bin/install.jsretains install-time chmod (three-layer execute-bit defense per Phase 7.1 INST-02 / Phase 7.2 Cat D).- SDK install decoupled from build-from-source (upstream #2441) —
bin/install.js::installSdkIfNeededreplaced with upstream dist-verify + chmod-in-place body (net −97 lines; Phase 7.2 Plan 04). Rootpackage.jsonnow declares abin.gsd-sdkentry and shipssdk/distin the tarball sonpm install gsd-hermeslandsgsd-sdkonPATHwithout rebuilding from source.
- PROFILE-03 init-context inherit projection —
resolveModelInternalnow returns''(not the literal'inherit') whenoptions.initContext === true, sotests/bug-2516-inherit-model-execute-phase.test.cjssubtest 5 goes green (Phase 7.1 Plan 02). - INST-02 chmod 0o755 regression —
sdk/dist/cli.jsis now 0o755 on fresh builds via the absolutepostbuildhook (Phase 7.1 Plan 01). - Parity test silent-rot in sync branch —
resolveModelBindingInternalre-exported fromcore.cjs; parity matrix enrolled inscripts/validate-hermes-compat.cjs::testFiles[]so future drift is caught bynpm run test:hermes(Phase 7 Plan 01). - 16
npm testfailures across 5 categories — Cat A:docs/ARCHITECTURE.mdnumeric count drift (6 failures); Cat B:resolveModelInternalunknown-agent tests aligned to''contract (3 failures + 2 rollups); Cat C: upstream #2441 SDK-decouple test updates (5 failures); Cat D: #2453 chmod test refresh for post-#2441 contract (1 failure); Cat E:/gsd:colon-scan allowlist for upstream-owned paths (1 failure).npm testnow exits 0 at 5505/5505 (Phase 7.2).
docs/hermes-compatibility.md §Runtime-Model Composition+§Slash Command Inventory— New sections document the 4 binding paths, HERM-04 fallback, SDK/CJS asymmetry contract, and the 6-row Hermes-owned slash command inventory with dual-track rationale (Phase 7 Plan 03).docs/sync-logs/2026-04-sync-0a049149.md— Per-hunk sync log with 56bin/install.jshunk rows, 226 per-file category rows, 6package.jsonrows, plus Verification Evidence and Operator Notes (Phase 6 Plans 03–04).docs/upstream-sync.mdcross-reference todocs/sync-logs/— Closes the governance feedback loop for future syncs (Phase 6 Plan 04).ws@^8.20.0direct-dep correction — Recorded as a direct root dependency (not transitive via@anthropic-ai/claude-agent-sdkas initially hypothesized;docs/hermes-compatibility.md §Known Gaps).
1.2.0 — 2026-04-22
GSD Hermes package version: 1.2.0
Upstream GSD base: get-shit-done-cc@1.38.2
- Cross-Provider Agent Execution release messaging — README, CHANGELOG, release draft, and canonical operator docs now present the upcoming
gsd-hermes@1.2.0release as a downstream capability milestone centered on strict per-agent runtime/model binding, Hermes mixed-provider direct execution, and explicitcross_ai_executionfallback semantics. /gsd-ingest-docscommand — Scan a repo containing mixed ADRs, PRDs, SPECs, and DOCs and bootstrap or merge the full.planning/setup from them in a single pass. Parallel classification (gsd-doc-classifier), synthesis with precedence rules and cycle detection (gsd-doc-synthesizer), three-bucket conflicts report (INGEST-CONFLICTS.md: auto-resolved, competing-variants, unresolved-blockers), and hard-block on LOCKED-vs-LOCKED ADR contradictions in both new and merge modes. Supports directory-convention discovery and--manifest <file>YAML override with per-doc precedence. v1 caps at 50 docs per invocation;--resolve interactiveis reserved. Extracts shared conflict-detection contract intoreferences/doc-conflict-engine.mdwhich/gsd-importnow also consumes (#2387)
- SDK
checkAgentsInstalledis now runtime-aware —sdk/src/query/init.ts::checkAgentsInstalledonly knew where Claude Code put agents (~/.claude/agents). Users running GSD on Codex, OpenCode, Gemini, Kilo, Copilot, Antigravity, Cursor, Windsurf, Augment, Trae, Qwen, CodeBuddy, or Cline gotagents_installed: falseeven with a complete install, which hard-blocked any workflow that gates subagent spawning on that flag.sdk/src/query/helpers.tsnow resolves the right directory via three-tier detection (GSD_RUNTIMEenv →config.runtime→claudefallback) and mirrorsbin/install.js::getGlobalDir()for all 14 runtimes.GSD_AGENTS_DIRstill short-circuits the chain.init-runner.tsstays Claude-only by design (#2402) initquery agents-installed check looks at the correct directory —checkAgentsInstalledinsdk/src/query/init.tsdefaulted to~/.claude/get-shit-done/agents/, but the installer writes GSD agents to~/.claude/agents/. Every init query therefore reportedagents_installed: falseon clean installs, which made workflows refuse to spawngsd-executorand other parallel subagents. The default now matchessdk/src/init-runner.tsand the installer (#2400)- Installer now installs
@gsd-build/sdkautomatically sogsd-sdklands on PATH. Resolvescommand not found: gsd-sdkerrors that affected every/gsd-*command after a fresh install or/gsd-updateto 1.36+. Adds--no-sdkto opt out and--sdkto force reinstall. Implements the--sdkflag that was previously documented in README but never wired up (#2385)
1.1.0 - 2026-04-22
GSD Hermes package version: 1.1.0
Upstream GSD base: get-shit-done-cc@1.38.2
- Upstream sync to
get-shit-done-cc@1.38.2— Merged the stable upstream1.38.2base into the Hermes fork while preserving the independentgsd-hermespackage identity, Hermes runtime support, and downstream release policy. - Release metadata now records the new upstream base — README and changelog now identify this downstream release as
gsd-hermes@1.1.0based on upstreamget-shit-done-cc@1.38.2, instead of mirroring upstream package versions.
- Hermes compatibility gate expanded after upstream sync —
npm run test:hermesnow includes deterministic installer, runtime selection, SDK install fallback, and SDK model config coverage so Hermes global/project-linked installs andresolve_model_ids: "omit"behavior stay covered. - Hermes non-Claude model override docs clarified — Configuration docs now include Hermes in the non-Claude runtime guidance and use fully-qualified
model_overridesexamples.
1.0.1 - 2026-04-20
GSD Hermes package version: 1.0.1
Upstream GSD base: get-shit-done-cc@1.37.1
- SDK install no longer requires sudo on root-owned npm prefixes — When
npm install -g .fails while building the bundled SDK, the installer now retries with a user-writable npm prefix at~/.local. This fixesEACCES: permission denied, mkdir '/usr/lib/node_modules/@gsd-build'duringnpx gsd-hermes --hermes --globalon machines whose npm global prefix points to/usr.
1.0.0 - 2026-04-19
GSD Hermes package version: 1.0.0
Upstream GSD base: get-shit-done-cc@1.37.1
- Initial public GSD Hermes release — Independent
gsd-hermespackage line for a Hermes-focused downstream fork. Based on upstreamget-shit-done-cc@1.37.1, with first-class Hermes Agent install support and the upstream GSD workflow preserved.
- Installer rebuilds stale SDK binaries — The installer now checks whether an existing
gsd-sdkonPATHsupportsgsd-sdk query ...before skipping SDK installation. This fixes Hermes sessions that found an old global@gsd-build/sdk@0.1.0binary and fell back to filesystem-only workflow checks.
1.37.1 - 2026-04-17
- UI-p
... [OUTPUT TRUNCATED - 7006 chars omitted out of 57006 total] ...
artif
... [OUTPUT TRUNCATED - 85011 chars omitted out of 135011 total] ...
1.5.5] - 2025-01-15
- README now documents the
research-project→define-requirementsflow (optional but recommended beforecreate-roadmap) - Commands section reorganized into 7 grouped tables (Setup, Execution, Verification, Milestones, Phase Management, Session, Utilities) for easier scanning
- Context Engineering table now includes
research/andREQUIREMENTS.md
1.5.4 - 2025-01-15
- Research phase now loads REQUIREMENTS.md to focus research on concrete requirements (e.g., "email verification") rather than just high-level roadmap descriptions
1.5.3 - 2025-01-15
- execute-phase narration: Orchestrator now describes what each wave builds before spawning agents, and summarizes what was built after completion. No more staring at opaque status updates.
- new-project flow: Now offers two paths — research first (recommended) or define requirements directly (fast path for familiar domains)
- define-requirements: Works without prior research. Gathers requirements through conversation when FEATURES.md doesn't exist.
- Dead
/gsd:statuscommand (referenced abandoned background agent model) - Unused
agent-history.mdtemplate _archive/directory with old execute-phase version
1.5.2 - 2026-01-15
- Requirements traceability: roadmap phases now include
Requirements:field listing which REQ-IDs they cover - plan-phase loads REQUIREMENTS.md and shows phase-specific requirements before planning
- Requirements automatically marked Complete when phase finishes
- Workflow preferences (mode, depth, parallelization) now asked in single prompt instead of 3 separate questions
- define-requirements shows full requirements list inline before commit (not just counts)
- Research-project and workflow aligned to both point to define-requirements as next step
- Requirements status now updated by orchestrator (commands) instead of subagent workflow, which couldn't determine phase completion
1.5.1 - 2026-01-14
- Research agents write their own files directly (STACK.md, FEATURES.md, ARCHITECTURE.md, PITFALLS.md) instead of returning results to orchestrator
- Slimmed principles.md and load it dynamically in core commands
1.5.0 - 2026-01-14
- New
/gsd:research-projectcommand for pre-roadmap ecosystem research — spawns parallel agents to investigate stack, features, architecture, and pitfalls before you commit to a roadmap - New
/gsd:define-requirementscommand for scoping v1 requirements from research findings — transforms "what exists in this domain" into "what we're building" - Requirements traceability: phases now map to specific requirement IDs with 100% coverage validation
- BREAKING: New project flow is now:
new-project → research-project → define-requirements → create-roadmap - Roadmap creation now requires REQUIREMENTS.md and validates all v1 requirements are mapped to phases
- Simplified questioning in new-project to four essentials (vision, core priority, boundaries, constraints)
1.4.29 - 2026-01-14
- Deleted obsolete
_archive/execute-phase.mdandstatus.mdcommands
1.4.28 - 2026-01-14
- Restored comprehensive checkpoint documentation with full examples for verification, decisions, and auth gates
- Fixed execute-plan command to use fresh continuation agents instead of broken resume pattern
- Rich checkpoint presentation formats now documented for all three checkpoint types
- Slimmed execute-phase command to properly delegate checkpoint handling to workflow
1.4.27 - 2025-01-14
- Restored "what to do next" commands after plan/phase execution completes — orchestrator pattern conversion had inadvertently removed the copy/paste-ready next-step routing
1.4.26 - 2026-01-14
- Full changelog history backfilled from git (66 historical versions from 1.0.0 to 1.4.23)
1.4.25 - 2026-01-14
- New
/gsd:whats-newcommand shows changes since your installed version - VERSION file written during installation for version tracking
- CHANGELOG.md now included in package installation
1.4.24 - 2026-01-14
- USER-SETUP.md template for external service configuration
- BREAKING: ISSUES.md system (replaced by phase-scoped UAT issues and TODOs)
1.4.23 - 2026-01-14
- Removed dead ISSUES.md system code
1.4.22 - 2026-01-14
- Subagent isolation for debug investigations with checkpoint support
- DEBUG_DIR path constant to prevent typos in debug workflow
1.4.21 - 2026-01-14
- SlashCommand tool added to plan-fix allowed-tools
1.4.20 - 2026-01-14
- Standardized debug file naming convention
- Debug workflow now invokes execute-plan correctly
1.4.19 - 2026-01-14
- Auto-diagnose issues instead of offering choice in plan-fix
1.4.18 - 2026-01-14
- Parallel diagnosis before plan-fix execution
1.4.17 - 2026-01-14
- Redesigned verify-work as conversational UAT with persistent state
1.4.16 - 2026-01-13
- Pre-execution summary for interactive mode in execute-plan
- Pre-computed wave numbers at plan time
1.4.15 - 2026-01-13
- Context rot explanation to README header
1.4.14 - 2026-01-13
- YOLO mode is now recommended default in new-project
1.4.13 - 2026-01-13
- Brownfield flow documentation
- Removed deprecated resume-task references
1.4.12 - 2026-01-13
- execute-phase is now recommended as primary execution command
1.4.11 - 2026-01-13
- Checkpoints now use fresh continuation agents instead of resume
1.4.10 - 2026-01-13
- execute-plan converted to orchestrator pattern for performance
1.4.9 - 2026-01-13
- Removed subagent-only context from execute-phase orchestrator
- Removed "what's out of scope" question from discuss-phase
1.4.8 - 2026-01-13
- TDD reasoning explanation restored to plan-phase docs
1.4.7 - 2026-01-13
- Project state loading before execution in execute-phase
- Parallel execution marked as recommended, not experimental
1.4.6 - 2026-01-13
- Checkpoint pause/resume for spawned agents
- Deviation rules, commit rules, and workflow references to execute-phase
1.4.5 - 2026-01-13
- Parallel-first planning with dependency graphs
- Checkpoint-resume capability for long-running phases
.claude/rules/directory for auto-loaded contribution rules
- execute-phase uses wave-based blocking execution
1.4.4 - 2026-01-13
- Inline listing for multiple active debug sessions
1.4.3 - 2026-01-13
/gsd:debugcommand for systematic debugging with persistent state
1.4.2 - 2026-01-13
- Installation verification step clarification
1.4.1 - 2026-01-13
- Parallel phase execution via
/gsd:execute-phase - Parallel-aware planning in
/gsd:plan-phase /gsd:statuscommand for parallel agent monitoring- Parallelization configuration in config.json
- Wave-based parallel execution with dependency graphs
- Renamed
execute-phase.mdworkflow toexecute-plan.mdfor clarity - Plan frontmatter now includes
wave,depends_on,files_modified,autonomous
1.4.0 - 2026-01-12
- Full parallel phase execution system
- Parallelization frontmatter in plan templates
- Dependency analysis for parallel task scheduling
- Agent history schema v1.2 with parallel execution support
- Plans can now specify wave numbers and dependencies
- execute-phase orchestrates multiple subagents in waves
1.3.34 - 2026-01-11
/gsd:add-todoand/gsd:check-todosfor mid-session idea capture
1.3.33 - 2026-01-11
- Consistent zero-padding for decimal phase numbers (e.g., 01.1)
- Removed obsolete .claude-plugin directory
1.3.32 - 2026-01-10
/gsd:resume-taskfor resuming interrupted subagent executions
1.3.31 - 2026-01-08
- Planning principles for security, performance, and observability
- Pro patterns section in README
1.3.30 - 2026-01-08
- verify-work option surfaces after plan execution
1.3.29 - 2026-01-08
/gsd:verify-workfor conversational UAT validation/gsd:plan-fixfor fixing UAT issues- UAT issues template
1.3.28 - 2026-01-07
--config-dirCLI argument for multi-account setups/gsd:remove-phasecommand
- Validation for --config-dir edge cases
1.3.27 - 2026-01-07
- Recommended permissions mode documentation
- Mandatory verification enforced before phase/milestone completion routing
1.3.26 - 2026-01-06
- Claude Code marketplace plugin support
- Phase artifacts now committed when created
1.3.25 - 2026-01-06
- Milestone discussion context persists across /clear
1.3.24 - 2026-01-06
CLAUDE_CONFIG_DIRenvironment variable support
1.3.23 - 2026-01-06
- Non-interactive install flags (
--global,--local) for Docker/CI
1.3.22 - 2026-01-05
- Removed unused auto.md command
1.3.21 - 2026-01-05
- TDD features use dedicated plans for full context quality
1.3.20 - 2026-01-05
- Per-task atomic commits for better AI observability
1.3.19 - 2026-01-05
- Clarified create-milestone.md file locations with explicit instructions
1.3.18 - 2026-01-05
- YAML frontmatter schema with dependency graph metadata
- Intelligent context assembly via frontmatter dependency graph
1.3.17 - 2026-01-04
- Clarified depth controls compression, not inflation in planning
1.3.16 - 2026-01-04
- Depth parameter for planning thoroughness (
--depth=1-5)
1.3.15 - 2026-01-01
- TDD reference loaded directly in commands
1.3.14 - 2025-12-31
- TDD integration with detection, annotation, and execution flow
1.3.13 - 2025-12-29
- Restored deterministic bash commands
- Removed redundant decision_gate
1.3.12 - 2025-12-29
- Restored plan-format.md as output template
1.3.11 - 2025-12-29
- 70% context reduction for plan-phase workflow
- Merged CLI automation into checkpoints
- Compressed scope-estimation (74% reduction) and plan-phase.md (66% reduction)
1.3.10 - 2025-12-29
- Explicit plan count check in offer_next step
1.3.9 - 2025-12-27
- Evolutionary PROJECT.md system with incremental updates
1.3.8 - 2025-12-18
- Brownfield/existing projects section in README
1.3.7 - 2025-12-18
- Improved incremental codebase map updates
1.3.6 - 2025-12-18
- File paths included in codebase mapping output
1.3.5 - 2025-12-17
- Removed arbitrary 100-line limit from codebase mapping
1.3.4 - 2025-12-17
- Inline code for Next Up commands (avoids nesting ambiguity)
1.3.3 - 2025-12-17
- Check PROJECT.md not .planning/ directory for existing project detection
1.3.2 - 2025-12-17
- Git commit step to map-codebase workflow
1.3.1 - 2025-12-17
/gsd:map-codebasedocumentation in help and README
1.3.0 - 2025-12-17
/gsd:map-codebasecommand for brownfield project analysis- Codebase map templates (stack, architecture, structure, conventions, testing, integrations, concerns)
- Parallel Explore agent orchestration for codebase analysis
- Brownfield integration into GSD workflows
- Improved continuation UI with context and visual hierarchy
- Permission errors for non-DSP users (removed shell context)
- First question is now freeform, not AskUserQuestion
1.2.13 - 2025-12-17
- Improved continuation UI with context and visual hierarchy
1.2.12 - 2025-12-17
- First question should be freeform, not AskUserQuestion
1.2.11 - 2025-12-17
- Permission errors for non-DSP users (removed shell context)
1.2.10 - 2025-12-16
- Inline command invocation replaced with clear-then-paste pattern
1.2.9 - 2025-12-16
- Git init runs in current directory
1.2.8 - 2025-12-16
- Phase count derived from work scope, not arbitrary limits
1.2.7 - 2025-12-16
- AskUserQuestion mandated for all exploration questions
1.2.6 - 2025-12-16
- Internal refactoring
1.2.5 - 2025-12-16
<if mode>tags for yolo/interactive branching
1.2.4 - 2025-12-16
- Stale CONTEXT.md references updated to new vision structure
1.2.3 - 2025-12-16
- Enterprise language removed from help and discuss-milestone
1.2.2 - 2025-12-16
- new-project completion presented inline instead of as question
1.2.1 - 2025-12-16
- AskUserQuestion restored for decision gate in questioning flow
1.2.0 - 2025-12-15
- Research workflow implemented as Claude Code context injection
1.1.2 - 2025-12-15
- YOLO mode now skips confirmation gates in plan-phase
1.1.1 - 2025-12-15
- README documentation for new research workflow
1.1.0 - 2025-12-15
- Pre-roadmap research workflow
/gsd:research-phasefor niche domain ecosystem discovery/gsd:research-projectcommand with workflow and templates/gsd:create-roadmapcommand with research-aware workflow- Research subagent prompt templates
- new-project split to only create PROJECT.md + config.json
- Questioning rewritten as thinking partner, not interviewer
1.0.11 - 2025-12-15
/gsd:research-phasefor niche domain ecosystem discovery
1.0.10 - 2025-12-15
- Scope creep prevention in discuss-phase command
1.0.9 - 2025-12-15
- Phase CONTEXT.md loaded in plan-phase command
1.0.8 - 2025-12-15
- PLAN.md included in phase completion commits
1.0.7 - 2025-12-15
- Path replacement for local installs
1.0.6 - 2025-12-15
- Internal improvements
1.0.5 - 2025-12-15
- Global/local install prompt during setup
- Bin path fixed (removed ./)
- .DS_Store ignored
1.0.4 - 2025-12-15
- Bin name and circular dependency removed
1.0.3 - 2025-12-15
- TDD guidance in planning workflow
1.0.2 - 2025-12-15
- Issue triage system to prevent deferred issue pile-up
1.0.1 - 2025-12-15
- Initial npm package release
1.0.0 - 2025-12-14
- Initial release of GSD (Get Shit Done) meta-prompting system
- Core slash commands:
/gsd:new-project,/gsd:discuss-phase,/gsd:plan-phase,/gsd:execute-phase - PROJECT.md and STATE.md templates
- Phase-based development workflow
- YOLO mode for autonomous execution
- Interactive mode with checkpoints