框架能力 (Harness Capabilities)
Deep Agents 框架提供四类内置能力,使构建长时间运行、可靠的 Agent 更加容易:
- 执行环境 — 工具、虚拟文件系统、可选的沙箱和 REPL(解释器)
- 上下文管理 — 技能、记忆、总结、上下文卸载和提示缓存
- 委托 — 子 Agent 生成和任务规划
- 控制 — 人机协同审批和中断
执行环境
执行环境是 Agent 执行操作的地方。它有四层:
工具
通过 tools= 参数向 create_deep_agent 传入任意 Python 可调用对象、LangChain 工具或工具字典。
python
from deepagents import create_deep_agent
agent = create_deep_agent(
model="openai:gpt-4o",
tools=[search, fetch_page, run_query],
)虚拟文件系统访问
框架提供可配置的虚拟文件系统,支持以下文件操作:
| 工具 | 说明 |
|---|---|
ls | 列出目录中的文件及元数据(大小、修改时间) |
read_file | 读取文件内容(支持行号、offset/limit) |
write_file | 创建新文件 |
edit_file | 在文件中执行精确字符串替换 |
glob | 查找匹配模式的文件(如 **/*.py) |
grep | 搜索文件内容 |
文件系统权限
框架支持声明式权限规则,控制 Agent 可以读写哪些文件和目录:
python
from deepagents import create_deep_agent
agent = create_deep_agent(
model="openai:gpt-4o",
tools=[search],
permissions=[
{"operations": ["read", "write"], "paths": ["/workspace/**"], "mode": "allow"},
{"operations": ["write"], "paths": ["**/.env"], "mode": "deny"},
],
)代码执行
Deep Agents 支持两种代码执行方式:
- 沙箱后端 — 暴露
execute工具用于在隔离环境中运行 shell 命令 - 解释器 — 添加
eval工具在 QuickJS 运行时中运行 JavaScript
上下文管理
技能
通过提供专用工作流、领域知识和自定义指令的可复用技能扩展 Agent。
记忆
使用 LangGraph 的 Memory Store 跨线程和会话持久化记忆。
总结
自动总结较旧的消息,使 Agent 在扩大会话中保持高效。
上下文卸载
将大型工具输入和结果卸载到虚拟文件系统中。
委托
子 Agent 生成
内置的 task 工具为子任务生成通用或专用子 Agent,实现上下文隔离。
任务规划
内置的 write_todos 工具让 Agent 将复杂任务分解为离散步骤。
控制
人机协同
使用 LangGraph 的中断能力,为敏感工具操作配置人工审批。