Skip to main content
create_deep_agent has the following core configuration options:
For more information, see create_deep_agent.

Model

By default, deepagents uses claude-sonnet-4-5-20250929. You can customize the model by passing any supported or LangChain model object.
Use the provider:model format (for example openai:gpt-5) to quickly switch between models.
👉 Read the OpenAI chat model integration docs

Tools

In addition to built-in tools for planning, file management, and subagent spawning, you can provide custom tools:

System prompt

Deep agents come with a built-in system prompt. The default system prompt contains detailed instructions for using the built-in planning tool, file system tools, and subagents. When middleware add special tools, like the filesystem tools, it appends them to the system prompt. Each deep agent should include a custom system prompt specific to its specific use case.

Middleware

Middleware provides a way to more tightly control what happens inside an agent. You can provide additional middleware to extend functionality, add tools, or implement custom hooks:

Subagents

To isolate detailed work and avoid context bloat, use subagents:
For more information, see Subagents.

Backends

You can provide your deep agent with one of the following virtual filesystems:
An ephemeral filesystem backend stored in langgraph state. This filesystem only persists for a single thread.
For more information, see Backends.

Human-in-the-loop

Some tool operations may be sensitive and require human approval before execution. You can configure the approval for each tool:
You can configure interrupt for agents and subagents on tool call as well as from within tool calls. For more information, see Human-in-the-loop.

Skills

You can use skills to provide your deep agent with new capabilities and expertise. While tools tend to cover lower level functionality like native file system actions or planning, skills can contain detailed instructions on how to complete tasks, reference info, and other assets, such as templates. These files are only loaded by the agent when the agent has determined that the skill is useful for the current prompt. This progressive disclosure reduces the amount of tokens and context the agent has to consider upon startup. For example skills, see Deep Agent example skills. To add skills to your deep agent, pass them as an argument to create_deep_agent:

Memory

Use AGENTS.md files to provide extra context to your deep agent. You can pass one or more file paths to the memory parameter when creating your deep agent:

Structured ouput

Deep agents support structured ouput. You can set a desired structured output schema by passing it as the response_format argument to the call to create_deep_agent(). When the model generates the structured data, it’s captured, validated, and returned in the ‘structured_response’ key of the deep agent’s state.
For more information and examples, see response format.

Sandboxes

Sandboxes are specialized backends that run agent code in an isolated environment with their own filesystem and an execute tool for shell commands. Use a sandbox backend when you want your deep agent to write files, install dependencies, and run commands without changing anything on your local machine. You configure sandboxes by passing a sandbox backend to backend when creating your deep agent:
For more information, see Sandboxes.
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.