Cai
4 days ago bf157a136d9b08c14b4da2997dc5a03b1a1af33d
common/ai-workplace/AI会话协作语义规范.md
@@ -3,7 +3,7 @@
创建人员:Codex
文件职责:定义 AI 角色会话在阅读项目文档时,如何把“提交审核、退回、交给产品、上报管理员”等自然语言协作字眼转换为正式角色交互动作。
管理规范/模板:../../全局规范.md;AI工作空间创建指南.md。
引用文件:AI工作空间创建指南.md;AI技能使用规范.md;../project-doc/项目规范.md;../project-doc/项目配置清单模版.md。
引用文件:AI工作空间创建指南.md;AI技能使用规范.md;../project-doc/项目规范.md;../project-doc/项目配置清单模版.md;当前 `MB-X Skill Context.communication_doc` 指向的正式通信协议。
记录方式:AI 会话协作语义规范;协作语义、消息意图或角色交互规则变化时更新。
## 1. 定位
@@ -18,7 +18,7 @@
2. 能确认当前角色。
3. 能找到目标角色。
4. 能形成可追踪消息。
5. 能写入项目消息链、inbox 或对应正式账本。
5. 能进入 Codex 原生任务通信链或对应正式账本。
6. 能让接收方知道要读哪些证据、执行什么动作、如何反馈。
## 2. 通用处理规则
@@ -30,8 +30,8 @@
3. 判断文档字眼对应的交互意图。
4. 根据项目配置和文档确定目标角色,不得只凭角色名字猜测。
5. 形成包含任务 ID、来源、目标、证据入口、期望动作和风险的消息。
6. 使用当前框架提供的正式通信机制发送消息。
7. 记录或汇报消息 ID、目标角色、目标 inbox 和后续处理要求。
6. 在官方 Codex 客户端中按本文件第 5 节使用原生任务通信发送;非客户端环境只在被明确启用兼容模式时使用旧链。
7. 记录或汇报 `handoff_id`、精确目标任务、`dispatch_accepted / observed / completed` 状态和后续处理要求。
如果无法确认目标角色、审核入口、证据入口或当前角色权限,应暂停发送,并向项目管理员或管理会话反馈不确定项。
@@ -64,43 +64,42 @@
审核目标不得只用“审核员”三个字泛化。必须尽量明确是项目事项审核、需求审核、开发审核、实验审核、案例分析审核、数据审核或其他项目特化审核。
## 5. MB-X 环境下的执行要求
## 5. Codex 客户端中的执行要求
在 MB-X 管理环境中,正式角色交互应使用 MB-X 通信机制。
在官方 Codex 客户端且原生任务工具可用时,正式角色交互默认使用 Codex 原生任务通信。当前 `MB-X Skill Context.communication_doc` 指向的正式通信协议是完整合同,本节给出所有新角色首次阅读时必须掌握的最小操作路径:
当前可见人工会话优先使用 `mbx-human-workflow`:
1. 用 `list_threads` 发现候选任务。
2. 用 `read_thread` 核对唯一目标的 task、role、cwd、status 和发送前 latest turn。
3. 用 `wait_threads(timeoutMs=0)` 取得发送前 baseline cursor,并检查目标最近 turn 中是否已存在同一 `handoff_id`。
4. 只向核验后的一个精确 `target_thread_id` 调用一次 `send_message_to_thread`。
5. 用 `wait_threads(afterCursor=<last_cursor>)` 等待增量,再用 `read_thread` 核验发送后的同一目标 turn 和正式回执。
1. 人类说“提交审核”“交给产品确认”等自然语言请求。
2. AI 读取当前上下文、项目配置和本文件。
3. AI 选择交互意图和目标角色。
4. AI 调用 MB-X 发送消息。
5. AI 向人类报告 message id、目标角色和 inbox。
固定状态语义:
Runtime / daemon 触发的角色消息优先使用 `mbx-role-runtime`:
- `send_message_to_thread` 成功只表示 `dispatch_accepted`。
- `observed` 必须由发送后的目标 turn 证明同一 `handoff_id` 和精确 source / target / reply 身份。
- `completed` 必须由该 turn 的 completed、无 error、明确终态以及需要时的 reply receipt 共同证明。
- timeout、历史 final、无关并发 turn、stale wake 或状态不确定都不得触发第二次发送。
1. 角色在处理消息或文档时识别协作语义。
2. 角色返回正式 action,由 runtime 执行发送、ack、blocker 或 note。
3. 发送动作必须包含交互意图、目标角色和完整消息内容。
正式交接使用 `<codex_native_handoff>...</codex_native_handoff>`。一个 `handoff_id` 只绑定一个精确目标并只发送一次;禁止自动 resend、reroute、Queue、Steer、创建 A002 或切换 legacy fallback。
如果当前项目运行在 MB-X 环境中,应优先使用 `mbx-interaction-router` 或等价交互路由 skill 统一完成“文档字眼 -> 交互意图 -> 目标角色 -> MB-X 消息”的映射。人工会话可先规划路由,再确认发送;runtime / daemon 场景由角色返回等价发送 action。
`mbx-human-workflow` 和 `mbx-role-runtime` 可以帮助角色识别意图、边界和应答动作,但在 Codex 客户端内不得把它们解释为旧 `mbx send/inbox/route/session` 的默认入口。`mbx-interaction-router`、`mbx-inbox-watch`、旧 MB-X CLI、session 管理与 Remote TUI 仅是人类或管理角色明确选择后的兼容路径;原生工具不可用时应停止并报告 blocker,不得自动回退。
技能选择、显式声明、状态变更记录、失败越权处理和性能口径按 `AI技能使用规范.md` 执行。角色不得在未声明技能的情况下发送正式消息、ack 消息、提交审核或升级管理端。
技能选择、显式声明、状态变更记录、失败越权处理和性能口径按 `AI技能使用规范.md` 执行。技能声明不替代目标核验、单次发送和终态证据。
## 6. 消息内容最低要求
任何正式交互消息至少包含:
任何正式原生交接至少显式包含:
1. 任务 ID 或事项 ID。
2. 来源角色。
3. 目标角色。
4. 交互意图。
5. 摘要。
6. 背景。
7. 证据入口。
8. 期望动作。
9. 校验或审核要求。
10. 阻塞、风险或不确定项。
11. 希望对方如何反馈。
1. `project_id`、`message_type`、唯一 `handoff_id`。
2. 精确 `source_ai_id / source_thread_id / source_role_instance_id`。
3. 精确 `target_ai_id / target_thread_id / target_role_instance_id`。
4. 精确 `reply_thread_id` 和当前 `status`。
5. `scope:`:授权范围和排除项。
6. `evidence:`:文档、测试、cursor、review ID 等证据入口。
7. `expected_action:`:一个有界动作和终态回复要求。
可以附加摘要、背景、风险和验收说明,但 `summary` 不能替代 `scope:` 或 `evidence:`。
审核、确认、返修、升级管理端等关键交互不得只发送一句“请审核”或“已完成”。
@@ -112,6 +111,8 @@
4. 不得绕过项目配置清单和当前体系文档直接写消息。
5. 不得把正式交接只写入 AI 私有工作空间而不进入正式消息链或正式账本。
6. 不得因为文档中只写“审核员”就忽略具体审核体系和审计入口。
7. 不得把旧 `mbx send/inbox/route/session` 写成 Codex 客户端默认通信路径。
8. 不得因 timeout、失败或不确定而重发、改投、Queue、Steer、创建 A002 或自动回退兼容链。
## 8. 校验口径
@@ -119,7 +120,9 @@
1. 交互意图识别正确。
2. 目标角色来自项目配置或当前文档。
3. 消息进入正式通信链或正式账本。
4. 接收方能从消息中找到证据入口和期望动作。
5. 失败或不确定项已反馈给项目管理员或管理会话。
6. 不存在执行者直接无条件批准自己工作的情况。
3. 消息进入精确 Codex 原生目标任务或对应正式账本。
4. `handoff_id`、source / target / reply 身份、范围、证据和期望动作完整。
5. 能区分 `dispatch_accepted`、`observed` 与 `completed`,且终态由发送后证据支持。
6. timeout 或不确定没有产生第二次发送或自动 legacy fallback。
7. 失败或不确定项已反馈给项目管理员或管理会话。
8. 不存在执行者直接无条件批准自己工作的情况。