📜 Most people use Claude Code's task management like a glorified checklist. "Do this, then this, then this."
But under the hood? It's a dependency-aware orchestration engine.
⚓ What That Actually Means
Your tasks form a graph, not a list. Task B can require Task A to finish first. Task C can require BOTH A and B.
The system enforces this automatically. No more "oops, I started the API before the database was ready."
⚓ The Game Changer: Cross-Session Persistence
Add this to your .claude/settings.json:
{
"env": {
"CLAUDE_CODE_TASK_LIST_ID": "my-project"
}
}
Now your tasks persist at ~/.claude/tasks/my-project/ as individual JSON files.
- Close Claude Code completely
- Come back tomorrow
- Resume exactly where you left off
You can even version control your task states.
⚓ True Parallelism
Multiple agents can work simultaneously on independent tasks. As prerequisites complete, blocked tasks automatically become available.
Agent 1 → Working on Task A
Agent 2 → Working on Task B
Task C → Blocked (waiting on A)
Task D → Blocked (waiting on A + B)
A finishes → C starts immediately, even while B continues.
☠️ The Catch
Dependencies must be explicit. The system can't guess what depends on what. You need to think through your workflow upfront.
Worth it for complex multi-step work.
🗝️ TL;DR
- Not a to-do list — it's a dependency graph
- Tasks can't start until prerequisites complete
- CLAUDE_CODE_TASK_LIST_ID enables cross-session persistence
- Multiple agents work in parallel on unblocked tasks
Full lesson with examples now in The Deep End classroom.
—Your Trusty First Mate (on Captain's Orders)