Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
70 changes: 38 additions & 32 deletions src/oss/deepagents/comparison.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -24,36 +24,23 @@ This page helps you understand how [LangChain Deep Agents](/oss/deepagents/overv
| **Security configurability** | Composable, per-tool human-in-the-loop | Permission system with modes, rules and hooks | Built-in tiers using approval modes and OS-level sandboxes |
| **License** | MIT | MIT (underlying Claude Code is proprietary) | Apache-2.0 |

### Key differences

**LangChain Deep Agents**:
- **Model flexibility**: Swap model providers (Anthropic, OpenAI, or 100+ others) at any time and run evaluations.
- **Long-term memory**: Persist context across sessions and threads with the [Memory Store](/oss/deepagents/memory)
- **Sandbox-as-tool pattern**: Run individual operations in isolated sandboxes from [different providers](/oss/deepagents/sandboxes) while the agent runs outside, or run the full agent inside a sandbox
- **Virtual filesystem**: Use pluggable backends (in-memory, disk, durable stores, sandboxes) for context and checkpoint management
- **Production deployment**: Deploy via [`deepagents deploy`](/oss/deepagents/deploy) or self-host with the Agent Server
- **Observability**: Use [LangSmith](/langsmith/home) for native tracing and debugging

**Claude Agent SDK**:
- **Standardize on Claude**: First-class support for Claude models across Anthropic, Azure, Vertex AI, and AWS Bedrock
- **Custom hosting**: Build your own HTTP/WebSocket layer and run the SDK in containers
- **Hooks**: Easily intercept and control agent behavior

**Codex SDK**:
- **Standardize on OpenAI**: GPT-5.3-Codex and OpenAI-specific tooling
- **OS-level sandbox modes**: Use built-in `read-only`, `workspace-write`, or `danger-full-access` modes
- **MCP server mode**: Expose your agent as an MCP server with `codex mcp-server`
- **Observability**: Use [OpenAI Traces](https://developers.openai.com/codex/guides/agents-sdk/#trace-the-workflow)
### Summary

- **Choose Deep Agents** for an open source, model-agnostic harness you can deploy in a production-ready, [multi-tenant](/oss/deepagents/going-to-production#multi-tenancy) way while [keeping control of your memory](https://www.langchain.com/blog/your-harness-your-memory).
- **Choose Claude Agent SDK or Codex SDK** if you want to standardize on a single model provider and are comfortable building the hosting, auth, and multi-tenant isolation layers yourself.

## Feature comparison

The feature comparison is grouped by decision area.

### Agent capabilities

| Feature | **Deep Agents** | **Claude Agent SDK** | **Codex SDK** |
| ------- | --------------- | -------------------- | ------------- |
<tr><td colspan="4"><strong>Core tools</strong></td></tr>
| File Read/Write/Edit | ✅ [`read_file`, `write_file`, `edit_file`](/oss/deepagents/harness#virtual-filesystem-access) | ✅ [Read, write, edit](https://platform.claude.com/docs/en/agent-sdk/overview#capabilities) | ✅ Read, write, edit |
| Shell Execution | ✅ [`execute`](/oss/deepagents/) | ✅ [bash](https://platform.claude.com/docs/en/agent-sdk/overview#capabilities) | ✅ [`exec`](https://developers.openai.com/codex/cli/features#scripting-codex) |
| Glob/Grep | ✅ [`glob`, `grep`](/oss/deepagents/harness#virtual-filesystem-access)| ✅ [glob, grep](https://platform.claude.com/docs/en/agent-sdk/overview#capabilities) | ✅ Built-in |
| Web Search | ✅ support for [third-party](/oss/deepagents/customization#tools) and [provider-native](/oss/integrations/chat/openai#web-search) | ✅ [WebSearch, WebFetch](https://platform.claude.com/docs/en/agent-sdk/overview#capabilities) | ✅ [`web_search`](https://developers.openai.com/codex/cli/features#web-search) |
| Glob/Grep | ✅ [`glob`, `grep`](/oss/deepagents/harness#virtual-filesystem-access) | ✅ [glob, grep](https://platform.claude.com/docs/en/agent-sdk/overview#capabilities) | ✅ Built-in |
| Web Search | ✅ Support for [third-party](/oss/deepagents/customization#tools) and [provider-native](/oss/integrations/chat/openai#web-search) | ✅ [WebSearch, WebFetch](https://platform.claude.com/docs/en/agent-sdk/overview#capabilities) | ✅ [`web_search`](https://developers.openai.com/codex/cli/features#web-search) |
| Planning/Todos | ✅ [`write_todos`](/oss/deepagents/harness#planning-capabilities) | ✅ [Todo lists](https://platform.claude.com/docs/en/agent-sdk/todo-tracking) | ✅ [Plan before changes](https://developers.openai.com/codex/cli/features) |
| Subagents | ✅ [Subagents](/oss/deepagents/subagents) | ✅ [Subagents](https://platform.claude.com/docs/en/agent-sdk/subagents) | ✅ [Multi-agent workflows](https://developers.openai.com/codex/concepts/multi-agents) (experimental) via MCP + Agents SDK |
| MCP Client | ✅ | ✅ [MCP](https://platform.claude.com/docs/en/agent-sdk/mcp) | ✅ [MCP client](https://developers.openai.com/codex/mcp) |
Expand All @@ -62,28 +49,47 @@ This page helps you understand how [LangChain Deep Agents](/oss/deepagents/overv
| Additional instructions | ✅ [Memory](/oss/deepagents/customization#memory) | ✅ [CLAUDE.md files](https://platform.claude.com/docs/en/agent-sdk/modifying-system-prompts#method-1-claude-md-files-project-level-instructions) | ✅ [AGENTS.md](https://developers.openai.com/codex/guides/agents-md) |
| Long-term memory | ✅ [Memory Store](/oss/deepagents/memory) | ❌ | ❌ |
| Streaming | ✅ [Streaming](/oss/deepagents/streaming/overview) | ✅ [Streaming](https://platform.claude.com/docs/en/agent-sdk/streaming-output) | ✅ [Streaming](https://github.com/openai/codex/blob/main/sdk/typescript/README.md#streaming-responses) |
<tr><td colspan="4"><strong>Sandbox Integrations</strong></td></tr>

### Sandboxing and architecture

| Feature | **Deep Agents** | **Claude Agent SDK** | **Codex SDK** |
| ------- | --------------- | -------------------- | ------------- |
| Agent runs in sandbox | ✅ [Can run in sandbox](/oss/deepagents/sandboxes#agent-in-sandbox-pattern) | ✅ [Can run in sandbox](https://platform.claude.com/docs/en/agent-sdk/hosting) | ✅ [Can run in sandbox](https://developers.openai.com/codex/security#os-level-sandbox) |
| Agent runs operations in sandboxes | ✅ [Uses sandboxes as tools](/oss/deepagents/sandboxes#sandbox-as-tool-pattern) | ❌ | ❌ |
| OS-level sandbox modes | ❌ | ❌ | ✅ `read-only`, `workspace-write`, and `danger-full-access` |
<tr><td colspan="4"><strong>Architecture</strong></td></tr>
| Composable Middleware | ✅ | ✅ [Hooks](https://platform.claude.com/docs/en/agent-sdk/hooks) | ❌ |
| Virtual Filesystems | ✅ [Virtual filesystem](/oss/deepagents/harness#virtual-filesystem-access) with [pluggable backends](/oss/deepagents/backends) | ❌ | ❌ |
<tr><td colspan="4"><strong>Deployment</strong></td></tr>

### Deployment and production

| Feature | **Deep Agents** | **Claude Agent SDK** | **Codex SDK** |
| ------- | --------------- | -------------------- | ------------- |
| Production hosting | ✅ [LangSmith Deployment](/oss/langgraph/deploy), [`deepagents deploy`](/oss/deepagents/deploy), self-hosted, or standalone | Build your own HTTP/WebSocket layer; run SDK in [containers](https://platform.anthropic.com/docs/en/agent-sdk/hosting) | ❌ |
| Multi-tenant deployment | ✅ One deployment with [custom auth and scoped user data](/oss/deepagents/going-to-production#multi-tenancy), plus [RBAC](/langsmith/rbac) | ⚠️ Possible, but you must build auth, tenancy, and per-user isolation yourself | ❌ |
| Local execution environment | ✅ | ✅ | ✅ |
| Cloud execution environment | ❌ | ❌ | ✅ |
<tr><td colspan="4"><strong>Supported protocols</strong></td></tr>

<Info>
Need user-level isolation in one shared deployment? Deep Agents support [multi-tenant deployments](/oss/deepagents/going-to-production#multi-tenancy) with scoped threads, runs, and conversation history. For a walkthrough, watch the [custom auth video](https://www.youtube.com/watch?v=DkNqgCz8cjE).
</Info>

### Protocols and state

| Feature | **Deep Agents** | **Claude Agent SDK** | **Codex SDK** |
| ------- | --------------- | -------------------- | ------------- |
| ACP server (IDE integration) | ✅ [ACP server](/oss/deepagents/acp) | ✅ (third-party) | ✅ (third-party) |
| MCP server mode | [MCP endpoint through Agent Server](/langsmith/server-mcp) | ❌ | ✅ [`codex mcp-server`](https://developers.openai.com/codex/guides/agents-sdk) |
| MCP server mode | [MCP endpoint through Agent Server](/langsmith/server-mcp) | ❌ | ✅ [`codex mcp-server`](https://developers.openai.com/codex/guides/agents-sdk) |
| A2A endpoint | ✅ [A2A endpoint in Agent Server](https://docs.langchain.com/langsmith/server-a2a#a2a-endpoint-in-agent-server) | ✅ | ❌ |
<tr><td colspan="4"><strong>State management</strong></td></tr>
| Session Resume | ✅ | ✅ [Session management](https://platform.claude.com/docs/en/agent-sdk/sessions) | ✅ [Resume threads](https://developers.openai.com/codex/cli/features#resuming-conversations); SDK `resumeThread()` |
| Session Resume | ✅ [Reconnect and load thread history](/oss/deepagents/going-to-production#frontend) | ✅ [Session management](https://platform.claude.com/docs/en/agent-sdk/sessions) | ✅ [Resume threads](https://developers.openai.com/codex/cli/features#resuming-conversations); SDK `resumeThread()` |
| File Checkpointing | ✅ [Backends and checkpoints](/oss/deepagents/backends#built-in-backends) | ✅ [File checkpointing](https://platform.claude.com/docs/en/agent-sdk/file-checkpointing) | ✅ [Git checkpoints](https://developers.openai.com/codex/config-basic) |
| Time Travel (state branching) | ✅ | ✅ | ✅ |
<tr><td colspan="4"><strong>Observability</strong></td></tr>

### Observability

| Feature | **Deep Agents** | **Claude Agent SDK** | **Codex SDK** |
| ------- | --------------- | -------------------- | ------------- |
| Native Tracing | ✅ [LangSmith](/langsmith/home) | ❌ | ✅ [OpenAI Traces](https://developers.openai.com/codex/guides/agents-sdk/#trace-the-workflow) |
| Evaluations | ✅ [LangSmith](/langsmith/evaluation-concepts) | ❌ | [Evals patterns](https://developers.openai.com/blog/eval-skills) (Command-line with `codex exec --json`) |
| Evaluations | ✅ [LangSmith](/langsmith/evaluation-concepts) | ❌ | [Evals patterns](https://developers.openai.com/blog/eval-skills) (command-line with `codex exec --json`) |

<Note>
**Notice a mistake?**
Expand Down
2 changes: 1 addition & 1 deletion src/oss/deepagents/going-to-production.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ When your agent serves multiple users, you need to handle three concerns: verify
- Return filters so users only see their own resources
- Deny access with HTTP 403 for unauthorized operations

For a step-by-step tutorial, see [Make conversations private](/langsmith/resource-auth).
For a step-by-step tutorial, see [Make conversations private](/langsmith/resource-auth). For a walkthrough, watch the [custom auth video](https://www.youtube.com/watch?v=DkNqgCz8cjE).

How you [scope memory](#scoping) and [execution environments](#execution-environment) determines what data is shared between users. See the sections below for details.

Expand Down
Loading