63 lines
5.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 边界合同
> 本文件是组件职责边界与约束归属的唯一事实源。角色合同、Skill 合同、可视化模块合同和各领域 SoT 从属本文件的边界划分;与各组件相关的字段、流程细节归各自合同,本文件不复制。系统目标链路与作者交互面(创作台五视图)见 [创作周期与 Skill 导读](创作周期与Skill导读.md) 与 [可视化模块合同](可视化模块合同.md)。
## 1. 组件职责与边界
| 组件 | 职责 | 边界(不做) | 结构 |
|---|---|---|---|
| 主代理 | 理解并润色人的创作意图、确认歧义、把确认后的意图交给智能体;转述智能体报告、向人请求授权(补证/重写/继续) | 不写作、不替智能体设计情节、不承载创作约束、不直接读写库 | 宿主会话(由根 AGENTS.md 约束) |
| 创作智能体(5 个) | 按角色合同生成候选或检查报告;经授权工具自主探索、形成自己的上下文依赖 | 不写库、不推进状态机、不越工具白名单、不裁决自己产出、引用不带来源不落正文 | 角色身份提示 + 中央角色合同 + 任务提示词(三层提示词) |
| Skill | 业务功能合同:适用场景、输入输出 Schema、路由、失败路径与落库要求 | 不持有模型策略、不绕过证据账本、不承载跨业务编排、依赖只向下 | SKILL.md(合同)+ scripts(确定性实现)+ 元数据 |
| 工具 server | 给智能体提供只读取数能力的统一入口 | 只读、不提供裸查询(每工具只暴露声明过的数据范围)、按任务包授权圈定、调用即留痕进事件账本 | 每工具声明:读什么表、什么版本语义、返回什么结构 |
| 脚本编排 | 确定性流程:上下文绑定校验、状态机、落库、CAS、终态收敛 | 不做内容裁决、不拼创作提示词、不隐式无限循环(需要继续时停在授权终态) | 各 Skill 的 scripts 层 |
| 静态校验 | Schema 校验、引文真实性核验、哈希绑定、架构门禁 | 无模型参与;失败即关闭,不重试放宽 | 测试 + 校验脚本 + 数据库约束(触发器、CHECK、CAS) |
| 创作台(看板+决策通道) | 只读渲染库内状态;决策写走唯一决策通道 | 只读看板不拼执行命令、不写库;决策通道不绕过候选状态机 | 独立只读进程 + 独立决策进程 |
## 2. 约束归属
每类约束只有一个归属,禁止跨层承载;跨层即视为缺陷,须按本表归位。
| 约束类型 | 归属层 | 强制方式 |
|---|---|---|
| 创作意图、工作方法、写作纪律 | 提示词层(agent prompt) | 模型遵守 + 输出抽查(评测) |
| 角色身份、模型策略、合同版本 | 中央角色合同(角色合同.md) | 派发入口机械校验 |
| 数据可访问范围(能读什么) | 工具层(工具 server 白名单) | 框架按任务包机械拒绝 |
| 输入输出格式 | 静态层(schema 校验) | 模型调用前后拒绝 |
| 状态推进、数据库写 | 脚本层 + 数据库约束 | CAS、触发器、事务 |
| 模块依赖、目录纪律 | 架构门禁(测试) | 失败关闭 |
| 业务继续/停止(补证、重写次数) | 主代理向人请求授权 | 授权终态;脚本只保留技术保护(超时、预算、取消) |
判定原则:**模型能被说服的用提示词;模型不能碰的用工具白名单;不允许出错的用脚本与静态校验。** 主代理不承载任何创作约束,只传递人的意图。
## 3. 三层提示词结构
智能体收到的提示词由三层组成,来源各不相同:
| 层 | 内容 | 来源 | 维护者 |
|---|---|---|---|
| 系统提示词 | 角色身份、职责、工作方法、探索方法、基本禁区 | `.agent/agents/*.md` 身份提示 + 角色合同对应章节 | 角色合同 |
| 技能提示词 | 当前任务的工作步骤、取数方法、输出要求 | 对应 Skill 合同 | Skill |
| 任务提示词 | 人确认后的创作意图(主代理润色产物) | 主代理 | 会话 |
角色身份文件可以**解释**工具和 Skill 路由(Agent 需要知道能力边界才能正确行动),但实际权限由任务包白名单和工具 server 机械强制;两者冲突时以机械强制为准。
## 4. 探索授权模式
智能体按角色合同获得差异化的探索授权:
- **只读集**(规划、写作、检测、抽取):授权范围内自由探索,每次读取留依赖记录。
- **圈定授权**(评委):盲评合同要求匿名隔离--禁看候选身份、标准答案(oracle)、目标章全文、其他评委结果;实验场景授权最窄(仅冻结快照),生产预检可放宽到正典检索。
- **无工具**(部分批处理角色任务):任务包白名单为空。
同一角色可在不同场景获得不同授权范围;授权由任务包声明,工具 server 执行,不靠提示词自觉。
## 5. 数据权威与证据
数据库是正式事实唯一权威(见 [08-数据权威与可视化领域](domains/08-数据权威与可视化领域.md))。各组件对证据的责任:
- 智能体的每次工具读取、每次模型调用都进事件账本,形成**依赖清单**(这章/这次检查实际用了哪些资料、什么版本)。
- 脚本编排负责把候选、报告、依赖清单与运行回执绑定落库。
- 创作台的"链路透视"视图直接读库与事件账本,不依赖仓外文件。
- raw 三件套(prompt/response/supplier)与事件账本表结构是既有合同,本合同不重定义。