diff --git a/agents/gsd-debugger.md b/agents/gsd-debugger.md index 635bca32c..d73a1834f 100644 --- a/agents/gsd-debugger.md +++ b/agents/gsd-debugger.md @@ -1038,6 +1038,7 @@ mv .planning/debug/{slug}.md .planning/debug/resolved/ ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" state load) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi # commit_docs is in the JSON output ``` diff --git a/agents/gsd-executor.md b/agents/gsd-executor.md index e5989f648..ded630d09 100644 --- a/agents/gsd-executor.md +++ b/agents/gsd-executor.md @@ -46,6 +46,7 @@ Load execution context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init execute-phase "${PHASE}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `executor_model`, `commit_docs`, `phase_dir`, `plans`, `incomplete_plans`. diff --git a/agents/gsd-phase-researcher.md b/agents/gsd-phase-researcher.md index dc722a399..f68d5d721 100644 --- a/agents/gsd-phase-researcher.md +++ b/agents/gsd-phase-researcher.md @@ -368,6 +368,7 @@ Orchestrator provides: phase number/name, description/goal, requirements, constr Load phase context using init command: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init phase-op "${PHASE}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `phase_dir`, `padded_phase`, `phase_number`, `commit_docs`. diff --git a/agents/gsd-plan-checker.md b/agents/gsd-plan-checker.md index 392927e3a..b59438639 100644 --- a/agents/gsd-plan-checker.md +++ b/agents/gsd-plan-checker.md @@ -381,6 +381,7 @@ If FAIL: return to planner with specific fixes. Same revision loop as other dime Load phase operation context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init phase-op "${PHASE_ARG}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `phase_dir`, `phase_number`, `has_plans`, `plan_count`. diff --git a/agents/gsd-planner.md b/agents/gsd-planner.md index cd1782e75..770d4166e 100644 --- a/agents/gsd-planner.md +++ b/agents/gsd-planner.md @@ -973,6 +973,7 @@ Load planning context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init plan-phase "${PHASE}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `planner_model`, `researcher_model`, `checker_model`, `commit_docs`, `research_enabled`, `phase_dir`, `phase_number`, `has_research`, `has_context`. diff --git a/commands/gsd/debug.md b/commands/gsd/debug.md index 4dc1bde79..cc2bfabd5 100644 --- a/commands/gsd/debug.md +++ b/commands/gsd/debug.md @@ -32,6 +32,7 @@ ls .planning/debug/*.md 2>/dev/null | grep -v resolved | head -5 ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" state load) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract `commit_docs` from init JSON. Resolve debugger model: diff --git a/commands/gsd/research-phase.md b/commands/gsd/research-phase.md index ac8634eda..d7458c0bd 100644 --- a/commands/gsd/research-phase.md +++ b/commands/gsd/research-phase.md @@ -35,6 +35,7 @@ Normalize phase input in step 1 before any directory lookups. ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init phase-op "$ARGUMENTS") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `phase_dir`, `phase_number`, `phase_name`, `phase_found`, `commit_docs`, `has_research`, `state_path`, `requirements_path`, `context_path`, `research_path`. diff --git a/get-shit-done/references/planning-config.md b/get-shit-done/references/planning-config.md index 946f5aaea..3bb884377 100644 --- a/get-shit-done/references/planning-config.md +++ b/get-shit-done/references/planning-config.md @@ -44,10 +44,12 @@ node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" commit "docs: update state" # Load config via state load (returns JSON): INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" state load) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi # commit_docs is available in the JSON output # Or use init commands which include commit_docs: INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init execute-phase "1") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi # commit_docs is included in all init command outputs ``` @@ -145,12 +147,14 @@ To use uncommitted mode: Use `init execute-phase` which returns all config as JSON: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init execute-phase "1") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi # JSON output includes: branching_strategy, phase_branch_template, milestone_branch_template ``` Or use `state load` for the config values: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" state load) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi # Parse branching_strategy, phase_branch_template, milestone_branch_template from JSON ``` diff --git a/get-shit-done/workflows/add-phase.md b/get-shit-done/workflows/add-phase.md index 56eb41868..9e2260641 100644 --- a/get-shit-done/workflows/add-phase.md +++ b/get-shit-done/workflows/add-phase.md @@ -30,6 +30,7 @@ Load phase operation context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init phase-op "0") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Check `roadmap_exists` from init JSON. If false: diff --git a/get-shit-done/workflows/add-tests.md b/get-shit-done/workflows/add-tests.md index 6dfc03bd6..f2687da94 100644 --- a/get-shit-done/workflows/add-tests.md +++ b/get-shit-done/workflows/add-tests.md @@ -34,6 +34,7 @@ Load phase operation context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init phase-op "${PHASE_ARG}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `phase_dir`, `phase_number`, `phase_name`. diff --git a/get-shit-done/workflows/add-todo.md b/get-shit-done/workflows/add-todo.md index cd15cc8a9..b030a4edb 100644 --- a/get-shit-done/workflows/add-todo.md +++ b/get-shit-done/workflows/add-todo.md @@ -13,6 +13,7 @@ Load todo context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init todos) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `commit_docs`, `date`, `timestamp`, `todo_count`, `todos`, `pending_dir`, `todos_dir_exists`. diff --git a/get-shit-done/workflows/audit-milestone.md b/get-shit-done/workflows/audit-milestone.md index 65086799a..7aff0145c 100644 --- a/get-shit-done/workflows/audit-milestone.md +++ b/get-shit-done/workflows/audit-milestone.md @@ -12,6 +12,7 @@ Read all files referenced by the invoking prompt's execution_context before star ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init milestone-op) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `milestone_version`, `milestone_name`, `phase_count`, `completed_phases`, `commit_docs`. diff --git a/get-shit-done/workflows/check-todos.md b/get-shit-done/workflows/check-todos.md index 43598fc71..1fe48e5cb 100644 --- a/get-shit-done/workflows/check-todos.md +++ b/get-shit-done/workflows/check-todos.md @@ -13,6 +13,7 @@ Load todo context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init todos) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `todo_count`, `todos`, `pending_dir`. diff --git a/get-shit-done/workflows/complete-milestone.md b/get-shit-done/workflows/complete-milestone.md index d1a77b6c5..0d5915697 100644 --- a/get-shit-done/workflows/complete-milestone.md +++ b/get-shit-done/workflows/complete-milestone.md @@ -529,6 +529,7 @@ Use `init milestone-op` for context, or load config directly: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init execute-phase "1") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract `branching_strategy`, `phase_branch_template`, `milestone_branch_template`, and `commit_docs` from init JSON. diff --git a/get-shit-done/workflows/discuss-phase.md b/get-shit-done/workflows/discuss-phase.md index a82f36768..0fae77273 100644 --- a/get-shit-done/workflows/discuss-phase.md +++ b/get-shit-done/workflows/discuss-phase.md @@ -114,6 +114,7 @@ Phase number from argument (required). ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init phase-op "${PHASE}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Parse JSON for: `commit_docs`, `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `padded_phase`, `has_research`, `has_context`, `has_plans`, `has_verification`, `plan_count`, `roadmap_exists`, `planning_exists`. diff --git a/get-shit-done/workflows/execute-phase.md b/get-shit-done/workflows/execute-phase.md index 8d37e5994..ced786a7a 100644 --- a/get-shit-done/workflows/execute-phase.md +++ b/get-shit-done/workflows/execute-phase.md @@ -17,6 +17,7 @@ Load all context in one call: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init execute-phase "${PHASE_ARG}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Parse JSON for: `executor_model`, `verifier_model`, `commit_docs`, `parallelization`, `branching_strategy`, `branch_name`, `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `plans`, `incomplete_plans`, `plan_count`, `incomplete_count`, `state_exists`, `roadmap_exists`, `phase_req_ids`. diff --git a/get-shit-done/workflows/execute-plan.md b/get-shit-done/workflows/execute-plan.md index 180dfcc29..1226aaa55 100644 --- a/get-shit-done/workflows/execute-plan.md +++ b/get-shit-done/workflows/execute-plan.md @@ -16,6 +16,7 @@ Load execution context (paths only to minimize orchestrator context): ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init execute-phase "${PHASE}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `executor_model`, `commit_docs`, `phase_dir`, `phase_number`, `plans`, `summaries`, `incomplete_plans`, `state_path`, `config_path`. diff --git a/get-shit-done/workflows/insert-phase.md b/get-shit-done/workflows/insert-phase.md index 8f2569c46..537b5daf7 100644 --- a/get-shit-done/workflows/insert-phase.md +++ b/get-shit-done/workflows/insert-phase.md @@ -35,6 +35,7 @@ Load phase operation context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init phase-op "${after_phase}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Check `roadmap_exists` from init JSON. If false: diff --git a/get-shit-done/workflows/map-codebase.md b/get-shit-done/workflows/map-codebase.md index c44babc86..901b14511 100644 --- a/get-shit-done/workflows/map-codebase.md +++ b/get-shit-done/workflows/map-codebase.md @@ -27,6 +27,7 @@ Load codebase mapping context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init map-codebase) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `mapper_model`, `commit_docs`, `codebase_dir`, `existing_maps`, `has_maps`, `codebase_dir_exists`. diff --git a/get-shit-done/workflows/new-milestone.md b/get-shit-done/workflows/new-milestone.md index 758ad74f6..4ffb8caa8 100644 --- a/get-shit-done/workflows/new-milestone.md +++ b/get-shit-done/workflows/new-milestone.md @@ -79,6 +79,7 @@ node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" commit "docs: start milesto ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init new-milestone) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `researcher_model`, `synthesizer_model`, `roadmapper_model`, `commit_docs`, `research_enabled`, `current_milestone`, `project_exists`, `roadmap_exists`. diff --git a/get-shit-done/workflows/new-project.md b/get-shit-done/workflows/new-project.md index 82e03ee82..4e52ca658 100644 --- a/get-shit-done/workflows/new-project.md +++ b/get-shit-done/workflows/new-project.md @@ -47,6 +47,7 @@ The document should describe what you want to build. ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init new-project) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Parse JSON for: `researcher_model`, `synthesizer_model`, `roadmapper_model`, `commit_docs`, `project_exists`, `has_codebase_map`, `planning_exists`, `has_existing_code`, `has_package_file`, `is_brownfield`, `needs_codebase_map`, `has_git`, `project_path`. diff --git a/get-shit-done/workflows/plan-phase.md b/get-shit-done/workflows/plan-phase.md index 4d3a3c51b..9f4ccc576 100644 --- a/get-shit-done/workflows/plan-phase.md +++ b/get-shit-done/workflows/plan-phase.md @@ -16,6 +16,7 @@ Load all context in one call (paths only to minimize orchestrator context): ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init plan-phase "$PHASE") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Parse JSON for: `researcher_model`, `planner_model`, `checker_model`, `research_enabled`, `plan_checker_enabled`, `nyquist_validation_enabled`, `commit_docs`, `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `padded_phase`, `has_research`, `has_context`, `has_plans`, `plan_count`, `planning_exists`, `roadmap_exists`, `phase_req_ids`. diff --git a/get-shit-done/workflows/progress.md b/get-shit-done/workflows/progress.md index e1dcc2eb1..b07563642 100644 --- a/get-shit-done/workflows/progress.md +++ b/get-shit-done/workflows/progress.md @@ -13,6 +13,7 @@ Read all files referenced by the invoking prompt's execution_context before star ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init progress) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `project_exists`, `roadmap_exists`, `state_exists`, `phases`, `current_phase`, `next_phase`, `milestone_version`, `completed_count`, `phase_count`, `paused_at`, `state_path`, `roadmap_path`, `project_path`, `config_path`. diff --git a/get-shit-done/workflows/quick.md b/get-shit-done/workflows/quick.md index d8d52aa36..259e24456 100644 --- a/get-shit-done/workflows/quick.md +++ b/get-shit-done/workflows/quick.md @@ -69,6 +69,7 @@ If `$FULL_MODE` only: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init quick "$DESCRIPTION") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Parse JSON for: `planner_model`, `executor_model`, `checker_model`, `verifier_model`, `commit_docs`, `next_num`, `slug`, `date`, `timestamp`, `quick_dir`, `task_dir`, `roadmap_exists`, `planning_exists`. diff --git a/get-shit-done/workflows/remove-phase.md b/get-shit-done/workflows/remove-phase.md index cd168cd2a..3ac902873 100644 --- a/get-shit-done/workflows/remove-phase.md +++ b/get-shit-done/workflows/remove-phase.md @@ -30,6 +30,7 @@ Load phase operation context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init phase-op "${target}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract: `phase_found`, `phase_dir`, `phase_number`, `commit_docs`, `roadmap_exists`. diff --git a/get-shit-done/workflows/research-phase.md b/get-shit-done/workflows/research-phase.md index f527e8f84..e1fcee7d4 100644 --- a/get-shit-done/workflows/research-phase.md +++ b/get-shit-done/workflows/research-phase.md @@ -35,6 +35,7 @@ If exists: Offer update/view/skip options. ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init phase-op "${PHASE}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi # Extract: phase_dir, padded_phase, phase_number, state_path, requirements_path, context_path ``` diff --git a/get-shit-done/workflows/resume-project.md b/get-shit-done/workflows/resume-project.md index f71cadbfa..00ce54df0 100644 --- a/get-shit-done/workflows/resume-project.md +++ b/get-shit-done/workflows/resume-project.md @@ -21,6 +21,7 @@ Load all context in one call: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init resume) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Parse JSON for: `state_exists`, `roadmap_exists`, `project_exists`, `planning_exists`, `has_interrupted_agent`, `interrupted_agent_id`, `commit_docs`. diff --git a/get-shit-done/workflows/set-profile.md b/get-shit-done/workflows/set-profile.md index 00c2f5d3f..04ea06230 100644 --- a/get-shit-done/workflows/set-profile.md +++ b/get-shit-done/workflows/set-profile.md @@ -25,6 +25,7 @@ Ensure config exists and load current state: ```bash node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" config-ensure-section INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" state load) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` This creates `.planning/config.json` with defaults if missing and loads current config. diff --git a/get-shit-done/workflows/settings.md b/get-shit-done/workflows/settings.md index 262eef496..d89a4d7ac 100644 --- a/get-shit-done/workflows/settings.md +++ b/get-shit-done/workflows/settings.md @@ -14,6 +14,7 @@ Ensure config exists and load current state: ```bash node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" config-ensure-section INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" state load) +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Creates `.planning/config.json` with defaults if missing and loads current config values. diff --git a/get-shit-done/workflows/validate-phase.md b/get-shit-done/workflows/validate-phase.md index bc013d488..269338a4a 100644 --- a/get-shit-done/workflows/validate-phase.md +++ b/get-shit-done/workflows/validate-phase.md @@ -12,6 +12,7 @@ Audit Nyquist validation gaps for a completed phase. Generate missing tests. Upd ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init phase-op "${PHASE_ARG}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Parse: `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `padded_phase`. diff --git a/get-shit-done/workflows/verify-phase.md b/get-shit-done/workflows/verify-phase.md index 33efb834c..2085eb164 100644 --- a/get-shit-done/workflows/verify-phase.md +++ b/get-shit-done/workflows/verify-phase.md @@ -29,6 +29,7 @@ Load phase operation context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init phase-op "${PHASE_ARG}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Extract from init JSON: `phase_dir`, `phase_number`, `phase_name`, `has_plans`, `plan_count`. diff --git a/get-shit-done/workflows/verify-work.md b/get-shit-done/workflows/verify-work.md index a78af0b8c..dd5177a01 100644 --- a/get-shit-done/workflows/verify-work.md +++ b/get-shit-done/workflows/verify-work.md @@ -25,6 +25,7 @@ If $ARGUMENTS contains a phase number, load context: ```bash INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" init verify-work "${PHASE_ARG}") +if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi ``` Parse JSON for: `planner_model`, `checker_model`, `commit_docs`, `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `has_verification`.