deepagents is an ordered stack of middleware on top of LangChain’s create_agent. Its real product is context engineering: offloading large results to a virtual filesystem, non-destructive summarization, and context-isolated sub-agents.
OpenHands/OpenHands is now the Agent Canvas UI. The agent itself lives in software-agent-sdk: an event-sourced conversation, a stateless agent step(), an LLM context that is a projection of the event log, and compaction done by appending a Condensation event.
The OpenAI Agents SDK owns its loop: a while True over four NextStep outcomes, where handoffs and sub-agents are just tool calls and a human approval is a serializable pause. Context policy is opt-in hooks plus server-side compaction; SandboxAgent adds per-run capabilities and agent-written file memory.
letta-code splits the agent loop across a protocol. A stateful backend (Letta Cloud, or an in-process local backend) runs one model step per run and stops at every tool call; the client harness executes tools on the user’s machine and resumes. Memory is a per-agent git repository compiled into a cache-stable system prompt.
letta-code 把 agent 循环拆在一个协议的两侧:有状态的后端(Letta Cloud 或进程内的本地后端)每个 run 只执行一步模型调用,遇到工具调用就停下;客户端 harness 在用户机器上执行工具后再续跑。记忆是每个 agent 一个 git 仓库,编译进一个保持缓存稳定的 system prompt。
Facts are backed by source. Interpretations are labelled.
01
Pin the target
Clone it outside this repo, record the commit, and cite every source reference against that commit.
02
Map, then trace
Read manifests, entry points and the composition root, then follow real call sites end to end — into the framework too when the target delegates to one.
03
Separate fact from interpretation
Facts are backed by path:line, a test, or observed runtime behavior. Interpretations are labelled, and open questions stay explicit.
04
Verify claims at runtime
When it is cheap, drive the real library — for example with a scripted fake model — to confirm what reading alone suggests.
05
Run the target's own tests
Use its locked dependencies, so environment noise is not mistaken for findings.
06
Reproduce the architecture, not the product
Build a small, dependency-light version, test its architectural invariants, and mutation-test the tests.
07
Diagram from evidence
Every Archify node carries sources pinned to the studied commit; its SRC badges link to the exact lines.
Reading convention
Conventions.
Each project uses the same URL pattern:
Research: /research/<project-name>.html (plus <project-name>.zh.html when a Chinese version exists)
Diagrams: /diagrams/<project-name>/<diagram>.html, with a gallery at /diagrams/<project-name>/
Studies distinguish Fact (read in source, tested, or observed at runtime) from
Interpretation (a reading of intent). Source references use path:line against the pinned commit.