StackMap
Subscribe

deepagents vs harness-sdk

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 — Strands Agents: open-source Python and TypeScript SDK for building and running agent harnesses in your process — model-agnostic, with lifecycle controls, hooks, MCP, multi-agent and tracing.

The curated verdict

Both give you a batteries-included agent harness you can drop below; deepagents assembles planning, sub-agents and a filesystem on LangGraph, Strands its own model-driven loop in Python and TypeScript.

deepagentsharness-sdk
Stars30k8.8k
Forks4.2k1.4k
LanguagePythonPython
LicenseMITApache-2.0
Last activity3 days agoyesterday
Topicsagents, orchestrationagents, orchestration
Curated connections135

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.

harness-sdk — the curator's take

Pick it when you'd otherwise hand-roll an agent loop and want the grown-up parts — turn and token limits, cancellation, hooks to intercept any step, guardrails, structured output — without a hosted control plane. `create_harness()` gives a tuned default agent; drop to the SDK to own the loop. Strongest on AWS (Bedrock first-class), though Anthropic, OpenAI, Gemini and Ollama work. Want an explicit graph of steps and durable checkpoints? LangGraph models that more directly.