diff --git a/skills/do/hooks/stop-hook.sh b/skills/do/hooks/stop-hook.sh index d506fba..2cb94a9 100755 --- a/skills/do/hooks/stop-hook.sh +++ b/skills/do/hooks/stop-hook.sh @@ -29,7 +29,16 @@ project_dir="${CLAUDE_PROJECT_DIR:-$PWD}" state_dir="${project_dir}/.claude" shopt -s nullglob -state_files=("${state_dir}"/do.*.local.md) +if [ -n "${DO_TASK_ID:-}" ]; then + candidate="${state_dir}/do.${DO_TASK_ID}.local.md" + if [ -f "$candidate" ]; then + state_files=("$candidate") + else + state_files=() + fi +else + state_files=("${state_dir}"/do.*.local.md) +fi shopt -u nullglob if [ ${#state_files[@]} -eq 0 ]; then diff --git a/skills/do/scripts/setup-do.sh b/skills/do/scripts/setup-do.sh index 64f17b4..eb1c4fd 100755 --- a/skills/do/scripts/setup-do.sh +++ b/skills/do/scripts/setup-do.sh @@ -112,3 +112,4 @@ echo "Initialized: $state_file" echo "task_id: $task_id" echo "phase: 1/$max_phases ($phase_name)" echo "completion_promise: $completion_promise" +echo "export DO_TASK_ID=$task_id"