Save Task List for Reuse
Save the current session's task list so it can be restored in future sessions.
Session Context
- Session ID: ${CLAUDE_SESSION_ID}
- Active task directories:!
ls -1t ~/.claude/tasks/ 2>/dev/null | head -5 || echo "none found" - Current tasks in session:!
ls -1t ~/.claude/tasks/ 2>/dev/null | head -1 | xargs -I{} ls ~/.claude/tasks/{} 2>/dev/null | head -10 || echo "no tasks"
Instructions
- Find the current task list ID by checking
~/.claude/tasks/for the most recently modified directory. List the directories sorted by modification time. - Verify the match — read the task files inside the directory and compare them to any tasks you know about from this session. Confirm you have the correct task list.
- Log the session mapping — write the mapping to
.claude/archon/sessions/:mkdir -p.claude/archon/sessions echo '{"session": "${CLAUDE_SESSION_ID}", "task_list": "<TASK_LIST_ID>", "saved_at": "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"}' \ >>.claude/archon/sessions/task-lists.jsonl - Verify the SessionStart hook is installed — the project-level
.claude/settings.jsonalready includes a SessionStart hook that runsverify-task-list.shon every session start. Confirm it's present by reading the file. If it's missing for some reason, add it back:{"hooks": {"SessionStart": [{"hooks": [{"type": "command", "command": ".claude/skills/save-task-list/hooks/verify-task-list.sh", "statusMessage": "Checking for restored task list..."}]}]}}Important: Merge — don't overwrite existing settings. IfhooksorSessionStartalready exists, append to the array. If the hook is already installed, skip this step. - Output the startup command for the user:
To continue with this task list in a new session: CLAUDE_CODE_TASK_LIST_ID=<task_list_id> claudeExplain: On startup, the SessionStart hook will verify the task list exists and show a confirmation message. - Show the current task summary so the user knows what's preserved (task subjects, statuses, and any dependencies).