主题
Managed Deep Agents 项目结构
了解 Managed Deep Agents 的项目布局。
Managed Deep Agents 项目是一个普通的 Python 包,只有一个必需的根 agent 入口。其他路径要么是你导入的普通模块,要么是 MDA 发现以启用托管能力的文件和目录。
NOTE
Managed Deep Agents 处于公开 beta 阶段,仅在 US 区域的 LangSmith Cloud 上可用。
项目布局
text
my-agent/
├── agent.py # Core agent definition
├── instructions.md # Managed context
├── skills/
│ └── <name>/
│ └── SKILL.md
├── tools/ # Application code
│ └── mcp.py # MCP server declaration
├── middleware/
├── channels/ # Managed configuration
│ └── <name>.py
├── schedules/
│ └── <name>.py
├── sandbox/
│ └── __init__.py
├── identity.py
├── memory.py
├── pyproject.toml # Dependencies
├── .env # Local and deploy secrets
└── evals/ # Harbor workspace
├── harbor-job.json
└── <task>/ # Harbor task
├── Task.md
├── instruction.md
├── environment/
└── tests/唯一必需的文件是项目根目录下的 agent.py,其中包含名为 agent 的 agent 定义。它必须导出使用 define_deep_agent 创建的名为 agent 的对象。一个项目中只能使用一个 agent 入口。
MDA 如何处理项目文件
托管上下文:
instructions.md定义 system prompt。skills/下的每个目录包含任务特定指令,例如SKILL.md及任何支持文件。MDA 会将instructions.md和skills/都同步到 Context Hub。可选的持久记忆也由 Context Hub 提供支持。应用代码:
tools/和middleware/下的文件是普通的项目模块。从 agent 入口导入它们。其他本地模块的工作方式相同。托管配置:某些路径在存在时会启用相应能力。对于
channels/和schedules/,只有直接子项才是托管声明;嵌套模块不算。路径 启用 identity.py调用方认证 memory.py持久记忆 channels/<name>.py消息通道 tools/mcp.pyMCP 连接器 schedules/<name>.pyCron 计划任务 sandbox/__init__.py沙箱文件系统与 shell tools/存放普通模块,但有一个例外。tools/mcp.py是托管声明,并导出模块级mcp。tools/下的其他所有模块都是你导入的应用代码。依赖与 secret:在
pyproject.toml中声明依赖,它也会设置部署 Python 版本。MDA 在本地加载.env,并将非保留值作为部署 secret 转发。保留的平台变量和.env文件不会包含在构建归档中。更多信息请参阅部署 Managed Deep Agent。Evals:Managed Deep Agents evals 是 Harbor eval。运行
mda evals init -i,并使用 coding agent 和eval-engineering技能开发任务。生成的运行时文件保留在.mda/evals/下,不会包含在已部署 agent 的构建中。