Skip to main content
Deep agents are the easiest way to start building agents and applications powered by LLMs—with builtin capabilities for task planning, file systems for context management, subagent-spawning, and long-term memory. You can use deep agents for any task, including complex, multi-step tasks. deepagents is a standalone library built on top of LangChain’s core building blocks for agents. It uses the LangGraph runtime for durable execution, streaming, human-in-the-loop, and other features. The deepagents library contains:
  • Deep Agents SDK: A package for building agents that can handle any task
  • Deep Agents CLI: A coding tool built on top of the deepagents package
LangChain is the framework that provides the core building blocks for your agents. To learn more about the differences between LangChain, LangGraph, and Deep Agents, see Frameworks, runtimes, and harnesses.

Create a deep agent

# pip install -qU deepagents
from deepagents import create_deep_agent

def get_weather(city: str) -> str:
    """Get weather for a given city."""
    return f"It's always sunny in {city}!"

agent = create_deep_agent(
    tools=[get_weather],
    system_prompt="You are a helpful assistant",
)

# Run the agent
agent.invoke(
    {"messages": [{"role": "user", "content": "what is the weather in sf"}]}
)
See the Quickstart and Customization guide to get started building your own agents and applications with deep agents.

When to use the Deep Agents

Use the Deep Agents SDK when you want to build agents that can:
  • Handle complex, multi-step tasks that require planning and decomposition
  • Manage large amounts of context through file system tools
  • Delegate work to specialized subagents for context isolation
  • Persist memory across conversations and threads
For building simpler agents, consider using LangChain’s create_agent or building a custom LangGraph workflow. Use the Deep Agents CLI when you want to use an interactive deep agent on the command-line for coding or other tasks:
  • Customize agents with skills and memory.
  • Teach agents as you use them about your preferences, common patterns, and custom project knowledge.
  • Execute code on your machine or in sandboxes.

Core capabilities

Planning and task decomposition

Deep agents include a built-in write_todos tool that enables agents to break down complex tasks into discrete steps, track progress, and adapt plans as new information emerges.

Context management

File system tools (ls, read_file, write_file, edit_file) allow agents to offload large context to in-memory or filesystem storage, preventing context window overflow and enabling work with variable-length tool results.

Subagent spawning

A built-in task tool enables agents to spawn specialized subagents for context isolation. This keeps the main agent’s context clean while still going deep on specific subtasks.

Long-term memory

Extend agents with persistent memory across threads using LangGraph’s Memory Store. Agents can save and retrieve information from previous conversations.

Get started


Connect these docs to Claude, VSCode, and more via MCP for real-time answers.