Skip to content

Deep Agents Code ​

Deep Agents Code 是基于 Deep Agents SDK 构建的开源终端编码 Agent,命令名为 dcode。它把 interactive session、项目上下文、memory、skills、subagents、MCP、shell 和审批界面组合成可直接使用 的开发者产品,但不取代底层 SDK,也不等同于部署 CLI。

Beta:截至 2026-07-13,PyPI 当前版本为 deepagents-code 0.1.36,要求 Python >=3.11,<4.0,classifier 为 Beta。

三条产品线不要混用 ​

包或命令当前基线负责什么
deepagentsPython 0.6.12 / TypeScript 1.10.7在代码中构建自定义 Agent Harness
deepagents-code / dcodePython 0.1.36交互或非交互的终端编码 Agent
deepagents-cli / deepagentsPython 0.2.2init、dev、deploy 等部署管理

交互式 REPL 已从 deepagents-cli 移到 deepagents-code。要写代码用 dcode;要把配置部署为 Managed Deep Agents/LangSmith 资源,才使用 deepagents deployment CLI。

前端类比 ​

可以把 SDK 类比为 React,Deep Agents Code 类比为基于 React 做好的 IDE 产品,deployment CLI 类比为发布平台的命令行。三者共享技术栈,但 API、用户和生命周期不同。

Deep Agents 原生语义:dcode 在本地运行 Agent loop 和配置层,并通过 Deep Agents backend 把文件/命令定向到本地或 remote sandbox;它仍依赖模型 tool calling、LangGraph state 和 Harness middleware。

安装前先审阅远程脚本 ​

官方快速安装命令会下载并立即执行远程脚本:

bash
curl -LsSf https://langch.in/dcode | bash
dcode

这条命令简便,但把下载与执行合并成一步。安全敏感环境应先保存、审阅,再由用户决定是否执行:

bash
curl -LsSf https://langch.in/dcode -o /tmp/install-dcode.sh
less /tmp/install-dcode.sh
bash /tmp/install-dcode.sh

还应核对重定向终点、安装目录和包来源。本文不执行上述命令,也不写入本机配置。

配置与能力组合 ​

Deep Agents Code 把用户级配置放在 ~/.deepagents/,把项目级 memory、skills 和 subagents 放在 仓库内 .deepagents/。项目配置会随仓库内容进入信任边界,打开陌生仓库后应先审查这些文件。

能力在编码工作流中的作用主要风险
Memory记住约定与历史经验恶意或过时指令跨 session 持续
Skills按任务加载工作流和资源脚本/说明可诱导执行高风险动作
Subagents隔离审查、测试和调研上下文并发成本、写冲突、权限扩散
MCP引入外部工具远端身份、工具内容和副作用
HITL审批文件与 shell 操作auto-approve 会缩小人工门槛
Remote sandbox把 tool execution 移出宿主网络、凭据、TTL 仍需配置

Deep Agents Code 当前不提供 async subagents;项目和用户级同步 subagents 使用各自目录中的 AGENTS.md 定义。

交互与自动化边界 ​

交互模式适合边看 diff 边审批。非交互模式用 -n,每次从新 thread 开始,但文件型 memory、skills 和配置仍会持续存在:

bash
dcode -n "只分析失败测试并给出修复建议" --max-turns 8 --timeout 120

非交互模式默认禁用 shell;-S 可以允许特定命令。不要在不可信输入或含秘密的环境中使用 -S all,也不要为了省去提示全局启用 auto-approve。CI 中还要限制 turn、墙钟时间、输出、费用和 可修改路径。

Remote Sandbox ​

dcode --sandbox <provider> 使用 sandbox-as-tool 模式:Agent loop 留在本地,read_file、 write_file、execute 等工具定向到远程环境。它保护宿主,但不会阻止 sandbox 内的 prompt injection 或网络外传。

bash
dcode --sandbox daytona
dcode --sandbox modal --sandbox-setup ./reviewed-setup.sh

Setup script 也属于代码执行入口。只使用已审阅脚本,给 sandbox 配置最小网络、短 TTL、资源上限, 并把凭据留在外部工具或 auth proxy 中。

Threat Model 的正确读法 ​

官方仓库提供 libs/code/THREAT_MODEL.md,覆盖 TUI、工具、MCP、hooks、sandbox、session 和配置等 边界。该文档自己声明为自动生成、实验性且可能不完整,因此应把它当成审查清单的起点,而不是安全 认证。

尤其要独立验证:

  • 本地 shell、hook 和 startup command 能访问哪些宿主资源。
  • 项目 memory/skills/MCP 配置如何进入 prompt 与执行面。
  • URL、Unicode、路径和命令参数如何校验。
  • Session、trace、日志和 artifact 是否包含源码或凭据。
  • Remote sandbox 的 provider 保证是否符合组织威胁模型。

先修 ​

下一步 ​

官方参考 ​

学习文档整合站点