Files
AI-Secretary/docs/specs/01_老板AI秘书与AI草稿.md
2026-06-22 16:27:57 +08:00

5.2 KiB

01_老板 AI 秘书与 AI 草稿

1. 模块目标

老板 AI 秘书负责接收老板在飞书机器人私聊或平台输入的一句话,判断意图,并整理成可人工确认的草稿。第一版 AI 只生成草稿或回答,不直接创建事项、不直接创建提醒、不直接发送通知。

2. 第一版做什么

  1. 支持老板在平台输入文本。
  2. 支持老板通过飞书机器人私聊输入文本。
  3. 判断意图类型:taskreminderqarealtime_qanoteunknown
  4. task 生成事项草稿。
  5. reminder 生成提醒草稿。
  6. qa 直接用大白话回答,不生成草稿。
  7. realtime_qa 提示第一版暂不支持正式实时查询,不创建草稿、不通知、不做交易判断。
  8. unknown 追问关键缺失信息,最多 3 个补充项。
  9. 支持老板确认、补充/重说、取消草稿。
  10. 支持补充/重说 30 分钟上下文,超时后按新输入处理。
  11. 支持复杂事项转程经理确认。
  12. AI 调用时加载公司背景摘要、老板大白话风格和第一版业务规则版本。

3. 第一版不做

  1. 不做老板独立 App。
  2. 不做语音、图片、文件上传或多模态输入。
  3. 不做员工通用 AI 工作台。
  4. 不让 AI 自动替代程经理拆复杂任务。
  5. 不让 AI 未经确认直接通知别人。
  6. 不做实时天气、新闻、股价、行情查询的正式能力。
  7. 不把老板解释中的游戏化表达写进事项标题、接收人、时间、反馈要求等结构化字段。

4. 核心流程

平台入口:

老板输入一句话
-> POST /api/ai-drafts/parse
-> 后端加载 prompt_contexts
-> 调用 ai_client
-> 校验模型 JSON
-> 写入 model_call_logs
-> 生成 ai_drafts
-> 前端展示草稿

飞书机器人入口:

老板私聊机器人
-> 飞书事件回调
-> 后端验签
-> 匹配平台用户
-> 校验 boss 角色
-> 检查 bot_contexts 是否等待补充
-> 调用 AI 生成或重写草稿
-> 发送飞书确认卡片
-> 写入 feishu_events、ai_drafts、operation_logs

非老板私聊机器人:

收到机器人私聊
-> 匹配用户
-> 发现不是 boss
-> 不调用 AI
-> 不生成草稿
-> 回复进入平台处理
-> 写入未授权访问失败记录

5. 数据对象

本模块主要使用:

  1. users
  2. person_mappings
  3. bot_contexts
  4. prompt_contexts
  5. ai_drafts
  6. model_call_logs
  7. feishu_events
  8. failure_records
  9. operation_logs

字段以 docs/contracts/数据对象约定.md 为准。

6. 接口需求

主要接口:

  1. POST /api/ai-drafts/parse
  2. GET /api/ai-drafts
  3. GET /api/ai-drafts/{id}
  4. PATCH /api/ai-drafts/{id}
  5. POST /api/ai-drafts/{id}/confirm
  6. POST /api/ai-drafts/{id}/cancel
  7. POST /api/ai-drafts/{id}/convert
  8. POST /api/ai-drafts/{id}/follow-up
  9. POST /api/feishu/events
  10. POST /api/feishu/card-callback

接口格式以 docs/contracts/API接口约定.md 为准。

7. 权限规则

  1. 飞书机器人私聊入口第一版只允许老板使用。
  2. 非老板私聊机器人时,不调用模型、不生成草稿,只记录未授权访问。
  3. 老板可以确认、补充/重说、取消自己发起的草稿。
  4. 程经理只能确认转给自己的复杂事项草稿。
  5. 管理员 / AI 团队只能协助排查,不代替老板或程经理做业务确认。

8. 状态流转

草稿状态以 docs/contracts/状态流转约定.md 为准。核心约束:

  1. pending_confirmation 只能等待确认、取消、补充或转程经理。
  2. 未确认草稿不得创建事项、提醒或通知。
  3. parse_failed 不得继续转换。
  4. converted 草稿不得重复转换。
  5. 补充/重说会生成新草稿,并通过 parent_draft_id 指向上一版草稿。

9. 失败和日志

必须记录:

  1. 原始输入和 AI 输出摘要。
  2. 模型调用使用的背景摘要版本、老板风格版本和业务规则版本。
  3. AI JSON 解析失败。
  4. 缺少人员映射。
  5. 非老板机器人访问。
  6. 补充/重说上下文过期。
  7. 人工确认、修改、取消、转程经理确认。

不得记录:

  1. API Key。
  2. 飞书 token。
  3. 完整手机号。
  4. 完整邮箱。
  5. 飞书 App Secret。

10. 给 AI 的测试样例

  1. 老板输入“明天上午提醒东东给我订会议室”,应生成 reminder 草稿,不直接创建提醒。
  2. 老板输入“让剑楠下周给我看一下期货策略风险”,应生成 task 草稿,并倾向 manager_confirm
  3. 老板输入“今天杭州天气怎么样”,应识别为 realtime_qa,不生成事项或提醒。
  4. 普通员工私聊机器人,应返回未开放提示,并写入未授权访问记录。
  5. 老板点击补充/重说后 30 分钟内再发消息,应关联上一版草稿。
  6. AI 输出 JSON 缺少 draft_type 时,应写入解析失败,不创建草稿闭环对象。

11. Review 重点

  1. 是否严格保证 AI 只生成草稿。
  2. 是否所有关键动作都需要人工确认。
  3. 是否避免将游戏化表达写入结构化字段。
  4. 是否记录模型版本和 prompt_contexts 版本。
  5. 是否对非老板机器人访问做了后端权限校验。
  6. 是否对模型 JSON 做了结构校验和失败记录。