deepagents vs trueforge
LangChain's batteries-included agent harness on LangGraph — planning, sub-agents with isolated context, filesystem, shell, skills, human-in-the-loop and persistent memory out of the box. — versus — TrueFoundry's open agent harness: the runtime loop — model calls, MCP tools, SKILL.md packs, sandboxing, approvals, compaction — behind a chat UI, HTTP API, TypeScript SDK and embeddable UI.
Both ship the batteries — planning, subagents, filesystem, skills, human-in-the-loop. deepagents is a Python library on LangGraph you compose in code; TrueForge is a TypeScript server with a chat UI, HTTP API and catalogs you configure once.
| deepagents | trueforge | |
|---|---|---|
| Stars | 28k | 3.5k |
| Forks | 3.9k | 241 |
| Language | Python | TypeScript |
| License | MIT | MIT |
| Last activity | 3 days ago | yesterday |
| Topics | agents, orchestration | agents, orchestration |
| Curated connections | 8 | 3 |
deepagents — the curator's take
The fastest route to a serious long-horizon agent if you accept LangChain's stack: planning, sub-agents, context offloading and HITL gates work out of the box, and any LangGraph graph plugs in as a sub-agent, so custom orchestration composes instead of forking. NOT for simple tool-calling loops — LangChain's create_agent is lighter — and the opinions run deep: if you're fighting the harness, you wanted LangGraph directly. Model-agnostic in theory; tuned around frontier tool-callers in practice.
trueforge — the curator's take
Take it when the agent logic is the easy part and you don't want to hand-build streaming, session persistence, tool auth, sandboxing and an approval UI: YAML catalogs configure models, MCP servers, skills and a sandbox once, then agents pick from what you connected. Context engineering is first-class — subagents, deferred tool loading, Code Mode, large-result offloading, compaction — and it scales from `npx` on SQLite to Postgres+Redis via Docker Compose or Helm. Caveats: local mode has no login and is explicitly not for anything internet-facing, sandboxing means Daytona today, and it's a harness rather than a graph framework — if you need bespoke control flow per step, a lower-level runtime fits better.