AGENTS.md@src/host/agent · git:20260928.0bc633c · 2026-09-28 · sha256 e92e4d6c8f163523
AGENTS.md@src/host/agent git:20260928.0bc633cA
Immutable. This exact content never changes and is served at /api/v1/blob/e92e4d6c8f163523.
# Agent Module Rules ## 范围与职责 适用于 `src/host/agent/`。 治理「一个角色节点 ⇄ 一个可延续子代理」这一执行单元,并承担父代理会话能力的宿主适配: - 把节点配置确定性翻译为官方子代理运行时的创建参数; - 创建/复用节点子代理,并把本轮任务块投递进去; - 在该子代理作用域内注入 Agent 语义; - 为编排层与工具层提供父代理会话宿主能力。 判断归属:该修改是否改变「节点 → 子代理」的创建/复用/投递/作用域装配语义,或改变本模块对官方 Agent 能力的适配契约?若主要属于其他领域,应放到对应模块。 ## 依赖边界 - 官方能力仅经 `ctx.get()` / 注入缝**运行时解析**,并以本模块自带的最小结构守卫收窄;允许 `import type` 官方纯类型(如 `Context`),不得有官方运行时 import; - orchestrator 仅允许**类型**导入其公共入口(`NodeRunner` / `AgentHost` / `NodeStartInput` 等契约缝);本模块不得成为 orchestrator 的运行时依赖; ## 生命周期 执行单元生命周期:创建 → 复用派发 → 进行中(不等待)→ 结束/失败/中断 → 清理(宿主统一)。 必须保证: - **复用由配置签名决定**:签名必须覆盖一切影响子代理组成的输入。 - 创建/复用路径**不得等待子代理完成**;完成事实只经官方事件观察,由编排层回写。 - 中断是**尽力而为**:目标不存在或已停止视为成功;调用方不得依赖中断同步生效。 - **重建子代理时,旧子代理的处置语义必须明确**(保留/中断/归属回收),并在注释中说明其事件对节点结论的影响;不得让旧子代理的事件静默影响新子代理。 ## 验证补充 - 涉及官方适配、宿主装配或产物契约时追加构建验证; - 复用签名组成与作用域装配(安装/撤销)有测试锁定; - 面向模型文本与工具白名单未意外改变。 ## 核心原则 1. 节点配置确定性映射为官方子代理调用。 2. 复用由签名决定,签名必须完整。 3. 作用域装配的生命周期归宿主,模块不私建撤销表。 4. 创建即推理、不等待完成,完成只经事件观察。 5. 每子代理状态必须有释放条件与上界。 6. 面向模型的文本、工具白名单与官方消息 payload 是对外契约。