Agent skill

Deepagents Planning Todos

by soba-labs in soba-labs/langchain-agent-skills

Use the writetodos tool effectively for task planning and decomposition in Deep Agents.

MITAuto-check passedAgent Workflows

Install Deepagents Planning Todos

skills CLI
$ npx skills add soba-labs/langchain-agent-skills --skill deepagents-planning-todos -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install soba-labs/langchain-agent-skills deepagents-planning-todos --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/soba-labs/langchain-agent-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/deepagents-planning-todos .claude/skills/deepagents-planning-todos && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
deepagents-planning-todos
GitHub stars
107
Token cost
~2.3k tokens
SKILL.md length
688 words
Files
10 (incl. scripts, references, assets)
Skills in repo
9
Repo updated
First seen
Licence
MIT

At a glance

Use the writetodos tool effectively for task planning and decomposition in Deep Agents.

  • Works in 4 steps: Create todos with "status": "pending"… → Update to "in_progress" when starting… → Mark "completed" when finished (don't… → …
  • Implement task planning with writetodos
  • SKILL.md covers Use This Skill When, When To Use write_todos, Quick Start and Todo Structure and API, plus 6 more sections
  • Runs Python scripts from its folder; calls uv

What it does

Deepagents Planning Todos is an agent skill from soba-labs/langchain-agent-skills. Use the writetodos tool effectively for task planning and decomposition in Deep Agents. Use when users want to (1) implement task planning with writetodos, (2) break down complex tasks into subtasks, (3) track agent progress through todos, (4) debug why todos aren't completing, (5) design todo structures for different task types (research, coding, analysis), (6) understand todo status lifecycle and best practices, or (7) visualize todo progression from LangSmith traces.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 15 other files, including scripts, reference files and assets (for example `assets/examples/todo-driven-agent/README.md`, `assets/examples/todo-driven-agent/agent.py` and `assets/todo-structures/coding-todos.json`).

It sits in Agent Workflows, covering Planning, LLM observability and Task breakdown. It works with LangSmith. The repository describes itself as: A collection of agent-optimized LangChain, LangGraph and LangSmith skills for AI coding assistants. The licence is MIT.

When your agent uses it

  • Implement task planning with writetodos
  • Break down complex tasks into subtasks
  • Track agent progress through todos
  • Debug why todos arent completing

Example prompts

  • “/deepagents-planning-todos”

Requirements

  • Python 3

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Create todos with "status": "pending" for newly planned work.
  2. Update to "in_progress" when starting work on a todo.
  3. Mark "completed" when finished (don't delete - keeps context).
  4. For interactive workflows, ask user approval ("Does this plan look good?") before starting execution.

What it can do on your machine

Read from SKILL.md and the folder at commit a2d4a10. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 2 files in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • uv

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • docs.langchain.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Deepagents Planning Todos loads about 2.3k tokens when it runs, and up to ~5.5k if it reads all its reference files. Until then it costs about 126 tokens; SKILL.md has 688 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~126
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~5.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from soba-labs/langchain-agent-skills at commit a2d4a10, republished under its MIT licence (© soba-labs). 688 words, ~2,310 tokens.

Download SKILL.mdSave it as .claude/skills/deepagents-planning-todos/SKILL.md (or your agent's skills folder). This skill also uses 9 other files; get the full folder from GitHub.
name
deepagents-planning-todos
description
Use the write_todos tool effectively for task planning and decomposition in Deep Agents. Use when users want to (1) implement task planning with write_todos, (2) break down complex tasks into subtasks, (3) track agent progress through todos, (4) debug why todos aren't completing, (5) design todo structures for different task types (research, coding, analysis), (6) understand todo status lifecycle and best practices, or (7) visualize todo progression from LangSmith traces.

Deep Agents Planning and Todos

Master the write_todos tool for effective task planning and decomposition in Deep Agents.

Use This Skill When

  • You need to break down complex multi-step tasks (3+ steps) into trackable subtasks.
  • You want to show users the plan before executing (user approval workflow).
  • You're debugging why todos aren't completing as expected.
  • You need patterns for different task types (research, coding, analysis, document processing).
  • You want to visualize todo progression from LangSmith traces.

When To Use write_todos

Use write_todosExecute Directly
✅ Complex multi-step tasks (3-6 steps)✅ Simple 1-2 step queries
✅ Tasks requiring user approval first✅ Single tool calls
✅ Long-running workflows needing progress tracking✅ Quick information lookups
✅ Tasks where planning adds clarity✅ Straightforward API calls

Decision rule: If you'd benefit from showing the user "Here's my plan..." before starting, use write_todos.

Quick Start

python
from deepagents import create_deep_agent

# TodoListMiddleware is included by default in create_deep_agent
agent = create_deep_agent(
    model="anthropic:claude-sonnet-4-5-20250929",
    tools=[search_tool, summarize_tool],
    system_prompt="You are a research assistant. Use write_todos for multi-step tasks."
)

# Agent workflow:
# 1. Call write_todos with initial plan
# 2. Ask user: "Does this plan look good?"
# 3. User approves → start executing
# 4. Update the todo list as work progresses
# 5. Keep todos aligned with the current plan and execution state

Example todo creation:

python
# Agent calls write_todos internally:
{
  "name": "write_todos",
  "arguments": {
    "todos": [
      {"content": "Search for papers on LLM agents", "status": "pending"},
      {"content": "Read and extract findings from top 5 papers", "status": "pending"},
      {"content": "Identify common themes", "status": "pending"},
      {"content": "Write summary report", "status": "pending"}
    ]
  }
}

Todo Structure and API

Two-Field Structure
json
{
  "content": "Task description (clear, actionable)",
  "status": "pending" | "in_progress" | "completed"
}
Key Constraints

Full-list updates: Treat each write_todos call as a full state update and include all active todos.

Per-turn discipline: Prefer one write_todos update per model turn to avoid conflicting plan changes.

Best granularity: Keep lists to 3-6 items maximum (avoid over-fragmentation).

Tooling Note

Deep Agents documentation describes write_todos as the built-in interface for todo planning/tracking. Keep todo state accurate by rewriting the list with updated statuses as execution progresses.

Status Lifecycle

pending → in_progress → completed

Best practices:

  1. Create todos with "status": "pending" for newly planned work.
  2. Update to "in_progress" when starting work on a todo.
  3. Mark "completed" when finished (don't delete - keeps context).
  4. For interactive workflows, ask user approval ("Does this plan look good?") before starting execution.

Typical workflow:

python
# Step 1: Create initial plan (all pending)
write_todos([
  {"content": "Research topic", "status": "pending"},
  {"content": "Write summary", "status": "pending"}
])

# Step 2: Ask user approval
# User: "Yes, proceed"

# Step 3: Start first task
write_todos([
  {"content": "Research topic", "status": "in_progress"},
  {"content": "Write summary", "status": "pending"}
])

# Step 4: Complete first task, start second
write_todos([
  {"content": "Research topic", "status": "completed"},
  {"content": "Write summary", "status": "in_progress"}
])

# Step 5: Finish all tasks
write_todos([
  {"content": "Research topic", "status": "completed"},
  {"content": "Write summary", "status": "completed"}
])

Todo Patterns By Task Type

Quick Reference
Task TypePatternExample Todos
Researchgather → synthesize → reportSearch docs, Read examples, Analyze patterns, Synthesize findings
Codingdesign → implement → testDesign API, Implement endpoints, Write tests, Test end-to-end
Analysiscollect → process → analyzeCollect data, Process traces, Analyze patterns, Visualize results
Document Processingread → extract → transformRead files, Extract key info, Transform format, Output result

For detailed patterns with code examples, see references/todo-patterns.md.

Best Practices

✅ DO
  • Granularity: Keep lists to 3-6 items max (clear milestones, not micro-tasks).
  • Naming: Use clear, action-oriented descriptions ("Search for X", "Analyze Y").
  • User interaction: Always ask approval before executing plan.
  • Status updates: Update promptly as items complete (don't skip status transitions).
  • Context management: Use with filesystem tools for complex workflows.
⚠️ DON'T
  • Over-fragment: Avoid 10+ todos (too granular, hard to track).
  • Vague descriptions: "Do research" → "Search LangChain docs for Deep Agents overview".
  • Skip approval: Don't start executing without user confirmation.
  • Forget updates: Always update status when transitioning tasks.
  • Drop existing context: Include existing active items when rewriting todos.
Show full SKILL.md (255 more words)Show less

Troubleshooting

Todo Not Completing

Symptom: Todo stuck in in_progress, agent loops or gets confused.

Causes & fixes:

  • Missing status update → Ensure agent updates status when task finishes.
  • Unclear completion criteria → Make content more specific ("Read 5 papers" vs "Do research").
  • Agent forgot about todos → Add to system prompt: "Use write_todos to maintain and update the plan as work progresses."
Agent Ignoring Todos

Symptom: Agent creates todos but doesn't follow them.

Causes & fixes:

  • Missing system prompt guidance → Add: "Follow the todo list. Update status as you complete each item."
  • One-off task (doesn't need todos) → Use direct execution for simple queries.
  • Conflicting instructions → Remove competing planning instructions from prompt.
Too Many Todos

Symptom: 10+ todos, hard to track, agent overwhelmed.

Causes & fixes:

  • Over-planning → Simplify to 3-6 high-level milestones.
  • Nested subtasks → Use todo hierarchy pattern (see references/todo-patterns.md).
  • Wrong abstraction → Consider breaking into multiple agent invocations.
Lost Context

Symptom: Agent loses track of what's been done.

Causes & fixes:

  • No filesystem persistence → Use FilesystemBackend or StoreBackend for long sessions.
  • Not maintaining todos → Update write_todos whenever status changes or scope shifts.
  • Memory issues → Use MemoryMiddleware for long-term context.

Visualizing Todos

Use the included script to parse LangSmith traces and visualize todo progression:

bash
# Export trace from LangSmith (download JSON)
# Then run:
uv run skills/deepagents-planning-todos/scripts/visualize_todos.py trace.json

# Show Mermaid diagram:
uv run skills/deepagents-planning-todos/scripts/visualize_todos.py trace.json --format mermaid

# Show full timeline:
uv run skills/deepagents-planning-todos/scripts/visualize_todos.py trace.json --show-timeline

Output example:

Todo Timeline for trace abc123:

Initial Plan (Step 1):
  ⏳ [pending] Search for papers on LLM agents
  ⏳ [pending] Read and extract findings
  ⏳ [pending] Identify common themes
  ⏳ [pending] Write summary report

Final State:
  ✅ [completed] Search for papers on LLM agents
  ✅ [completed] Read and extract findings
  ✅ [completed] Identify common themes
  ✅ [completed] Write summary report

Resources

References (detailed patterns):

  • references/todo-patterns.md: Task-specific patterns with code examples

Examples (working code):

  • assets/examples/todo-driven-agent/: Research agent demonstrating full workflow

Example structures (templates):

  • assets/todo-structures/research-todos.json: Research task breakdown
  • assets/todo-structures/coding-todos.json: Coding task breakdown

External docs:

© soba-labs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 9 other files (scripts, references, assets) in skills/deepagents-planning-todos of soba-labs/langchain-agent-skills.

  • SKILL.md
  • assets/examples/todo-driven-agent/.env.example
  • assets/examples/todo-driven-agent/README.md
  • assets/examples/todo-driven-agent/agent.py
  • assets/examples/todo-driven-agent/pyproject.toml
  • assets/todo-structures/coding-todos.json
  • assets/todo-structures/research-todos.json
  • references/todo-patterns.md
  • scripts/.gitignore
  • scripts/visualize_todos.py

Open the folder on GitHubat commit a2d4a10

Compare with similar skills

Deepagents Planning Todos next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Deepagents Planning Todos compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Deepagents Planning Todos this skillsoba-labs/langchain-agent-skills107—~2.3kAutomated safety check: PassMIT
Planning And Task Breakdownabashev/vfs-s31068 repos~1.9kAutomated safety check: PassApache-2.0
ULW Plan Workflowcode-yeongyu/oh-my-openagent70k—~3.9kAutomated safety check: PassCustom licence
Ask NavigatorYeachan-Heo/oh-my-claudecode40k—~4.1kAutomated safety check: PassMIT
Implementation Plan Creatortailcallhq/forgecode7.6k1 repos~1.1kAutomated safety check: PassApache-2.0
Harness PlanChachamaru127/claude-code-harness3.2k—~3.7kAutomated safety check: NotesMIT

Similar skills

  • Breaks work into ordered tasks. An agent skill from abashev/vfs-s3.

    106 GitHub starsUsed in 8 repos~1.9k tokens
    Agent WorkflowsAuto-check passed
  • ULW Plan Workflow

    code-yeongyu/oh-my-openagent

    Explore-first planning that turns a vague or large request into one decision-complete work plan, written only after your approval and executed by a separate worker.

    70k GitHub stars~3.9k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Ask Navigator

    Yeachan-Heo/oh-my-claudecode

    Charts a foggy effort into a map of decision tickets on the repo's issue tracker and works through them one per session, producing decisions rather than deliverables.

    40k GitHub stars~4.1k tokensUpdated 2 days ago
    Agent WorkflowsAuto-check passed
  • Implementation Plan Creator

    tailcallhq/forgecode

    Writes a structured Markdown implementation plan with checkbox tasks, verification criteria and risks, then checks it with a validation script; no code changes.

    7.6k GitHub starsUsed in 1 repo~1.1k tokens
    Agent WorkflowsAuto-check passed
  • Harness Plan

    Chachamaru127/claude-code-harness

    Creates and maintains Plans.md task plans with a spec delta, updates task markers and syncs plan progress with the implementation.

    3.2k GitHub stars~3.7k tokensUpdated 6 days ago
    Agent WorkflowsAuto-check: notes
  • Plannotator Goal Setup

    backnotprop/plannotator

    Guides the agent from a vague objective to a written goal package under goals/, using a confirmed restatement, a browser interview, a fact sheet and a codebase pass.

    9.3k GitHub stars~2.4k tokensUpdated today
    Agent WorkflowsAuto-check passed

More from soba-labs/langchain-agent-skills

All 9 skills in this repo
  • Deepagents Setup Configuration

    soba-labs/langchain-agent-skills

    Initialize, validate, and troubleshoot Deep Agents projects in Python or JavaScript using the deepagents package.

    107 GitHub stars~1.9k tokensUpdated 1 mo ago
    Auto-check passed
  • Langgraph Agent Patterns

    soba-labs/langchain-agent-skills

    Implement multi-agent coordination patterns (supervisor-subagent, router, orchestrator-worker, handoffs) for LangGraph applications.

    107 GitHub stars~3.6k tokensUpdated 1 mo ago
    Auto-check passed
  • Langgraph Error Handling

    soba-labs/langchain-agent-skills

    Implement LangGraph error handling with current v1 patterns.

    107 GitHub stars~1.5k tokensUpdated 1 mo ago
    Auto-check passed
  • Langgraph Project Setup

    soba-labs/langchain-agent-skills

    Initialize and configure LangGraph projects with proper structure, langgraph.json configuration, environment variables, and dependency management.

    107 GitHub stars~2.4k tokensUpdated 1 mo ago
    Auto-check: notes
  • Langgraph State Management

    soba-labs/langchain-agent-skills

    Design state schemas, implement reducers, configure persistence, and debug state issues for LangGraph applications.

    107 GitHub stars~3.4k tokensUpdated 1 mo ago
    Auto-check passed
  • Langgraph Testing Evaluation

    soba-labs/langchain-agent-skills

    A skill your agent uses when you need to test or evaluate LangGraph/LangChain agents: writing unit or integration tests, generating test scaffolds, mocking LLM/tool behavior, running trajectory…

    107 GitHub stars~2.3k tokensUpdated 1 mo ago
    Auto-check passed

Works with

Questions about Deepagents Planning Todos

What does Deepagents Planning Todos do?

Use the writetodos tool effectively for task planning and decomposition in Deep Agents. Deepagents Planning Todos is an agent skill from soba-labs/langchain-agent-skills. Use the writetodos tool effectively for task planning and decomposition in Deep Agents.

When should I use Deepagents Planning Todos?

Deepagents Planning Todos fits situations like: implement task planning with writetodos; break down complex tasks into subtasks; track agent progress through todos; debug why todos arent completing.

How do I install Deepagents Planning Todos in Claude Code?

Run `npx skills add soba-labs/langchain-agent-skills --skill deepagents-planning-todos -a claude-code`. Or copy the skill folder (skills/deepagents-planning-todos in soba-labs/langchain-agent-skills) into .claude/skills/deepagents-planning-todos in your project. Claude Code loads it when a task matches its description.

How do I install Deepagents Planning Todos in Codex?

Run `npx skills add soba-labs/langchain-agent-skills --skill deepagents-planning-todos -a codex`. Or copy the skill folder (skills/deepagents-planning-todos in soba-labs/langchain-agent-skills) into .agents/skills/deepagents-planning-todos in your project. Codex loads it when a task matches its description.

Can I use Deepagents Planning Todos in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add soba-labs/langchain-agent-skills --skill deepagents-planning-todos -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/deepagents-planning-todos, .gemini/skills/deepagents-planning-todos, .github/skills/deepagents-planning-todos and .opencode/skills/deepagents-planning-todos in your project.

What does Deepagents Planning Todos need to run?

Going by SKILL.md and its folder, Deepagents Planning Todos needs Python for the scripts in its folder and the command-line tools its instructions call (uv). Our summary lists: Python 3.

Does Deepagents Planning Todos access the network?

SKILL.md names 1 domain. As links in the text: docs.langchain.com. This is read from the text; nothing was executed.

Is Deepagents Planning Todos safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Deepagents Planning Todos use?

Deepagents Planning Todos is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Deepagents Planning Todos use?

About 2.3k tokens (SKILL.md is roughly 9.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3.2k tokens, read only when the agent opens those files.

What are the alternatives to Deepagents Planning Todos?

Skills that share tags, products or a category with Deepagents Planning Todos: Planning And Task Breakdown (abashev/vfs-s3, 106 stars), ULW Plan Workflow (code-yeongyu/oh-my-openagent, 70k stars), Ask Navigator (Yeachan-Heo/oh-my-claudecode, 40k stars) and Implementation Plan Creator (tailcallhq/forgecode, 7.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Deepagents Planning Todos?

soba-labs (a GitHub organization) maintains it in soba-labs/langchain-agent-skills, which has 107 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on August 17, 2026.

Source: soba-labs/langchain-agent-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.