---
title: 第 9 章 ChatGPT Work、飞书/Lark 与事务自动化
seo:
  title: "ChatGPT Work 与事务自动化实践指南"
description: "全面讲解ChatGPT Work事务闭环、Lark/Feishu CLI操作入口，以及Daily Report Skill的可验证状态机等事务自动化实践方法。"
---

事务自动化的核心不是“让 AI 写一段总结”，而是把输入来源、处理规则、人工确认点、输出渠道和失败恢复串成闭环。

## 9.1 ChatGPT Work 的定位

ChatGPT Work 面向研究、分析和成品交付：可以结合文件、插件与工具，把目标拆成步骤，持续工作并创建可审阅的文档、表格、演示稿、Sites 等产物。它与 Codex 的边界不是“会不会写代码”，而是主要交付物和验证方式不同。

资料依据：OpenAI What’s New：Take on ambitious work in ChatGPT；ChatGPT desktop app。

| **场景** | **选择 Work 的原因** | **可能协同的工具** |
|----|----|----|
| **会议材料整理** | 多来源文件、上下文与成品文档在同一工作区 | Calendar、Gmail、飞书、文件库 |
| **经营分析** | 读取表格、生成计算、图表和报告 | 数据库、BI、Spreadsheet skills |
| **产品研究** | 网页、评论、内部资料、截图与结论可追溯 | Browser、Web search、Figma、GitHub |
| **项目周报** | 聚合任务、PR、会议、风险并生成多版本摘要 | GitHub、日历、消息、Docs |
| **交付材料** | 文档、演示、表格与附录一体化 | 文件工具、模板 Skills、插件 |

## 9.2 一条事务流程的标准结构

| **阶段** | **问题** | **例子** |
|----|----|----|
| **Trigger** | 什么时候运行？ | 每天 17:30、会议结束、PR 合并、文件上传 |
| **Inputs** | 读取哪些来源？ | 日历、Git log、任务清单、会议转写、表格 |
| **Transform** | 如何清洗与判断？ | 去重、字段映射、事实/判断分离、异常标记 |
| **Review** | 哪里必须人工确认？ | 对外发送、金额、owner、截止时间、敏感内容 |
| **Outputs** | 产出什么、写到哪里？ | Markdown、飞书文档、表格、群摘要、邮件草稿 |
| **Evidence** | 如何追溯？ | 来源链接、文件、时间范围、运行日志、版本号 |
| **Recovery** | 失败怎么办？ | 不发送；保存草稿；输出错误、重试与人工路径 |

## 9.3 飞书 CLI：Agent 操作飞书的统一入口

Agent 操作飞书 / Lark 时，统一走 Lark/Feishu CLI，而不是通用插件。先确认身份与 scope，再做最小只读调用；写操作另设确认门。

| **步骤** | **推荐做法** | **典型命令** | **验证点** |
|----|----|----|----|
| **1. 检查状态** | 先确认当前身份、登录态、token 与 scope | `lark-cli auth status --json --verify` | identity、verified、scope 与目标一致 |
| **2. 最小授权** | 只在失效或缺 scope 时授权；不要反复 config init | `lark-cli auth login --scope "<scope>" --no-wait --json` | user / bot 身份不混用 |
| **3. 业务调用** | 先最小只读；后续命令显式沿用同一 `--as` | `lark-cli <domain> +<command> --as user` | 退出码为 0 且 `ok == true`；保存真实 ID / 链接 |

## 9.4 Lark CLI 最小路径与版本验证

Lark CLI 最小检查路径：

```bash
# 版本与帮助
lark-cli --version
lark-cli --help

# 先检查，不重复登录
lark-cli auth status --json --verify
lark-cli whoami

# 仅在失效或缺 scope 时做最小授权
lark-cli auth login --scope "<missing_scope>" --no-wait --json

# 最小只读示例
lark-cli calendar +agenda --as user
```

:::note[认证与写入都要有门]
`config init` 只用于首次应用配置，不用于修复普通登录问题。写操作先 dry-run 或展示目标与内容，明确确认后执行；以退出码和 `ok == true` 判断成功，并回读真实对象验证。
:::

## 9.5 容易产生价值的八类案例

| **高价值案例** | **主要输入** | **直接产出** | **必须人工确认** |
|----|----|----|----|
| **会议纪要闭环** | 转写、议程、参与人 | 结论、决策、行动、owner 与日期 | 责任人、截止日、敏感表述 |
| **日报 / 周报** | 任务、Git、会议、风险 | 完整报告、群简版、来源清单 | 遗漏、夸大、发送范围 |
| **会前准备** | 日历、项目状态、上次纪要 | 会前 Brief、决策点、问题清单 | 议题优先级、不可公开信息 |
| **客户交付包** | 报告、证据、整改项、SOW | DOCX / PDF / 表格草稿与缺失项 | 客户名称、责任边界、正式发送 |
| **聊天上下文讨论** | 长对话、附件、历史结论 | 共识、分歧、未决问题、下一步 | 讨论不等于决定；隐私与引用范围 |
| **项目状态与风险盘点** | PR、CI、待办、消息、版本 | 事实状态、阻塞、责任人、验证门 | 旧失败是否仍有效；谁应行动 |
| **产品 / 竞品研究** | 网页、评论、内部资料、截图 | 证据矩阵、机会、反证、MVP | 事实与推断、版权、研究边界 |
| **批量文档与表格处理** | Word、Excel、PDF、模板 | 清洗、合并、格式化与异常清单 | 样本抽查、敏感字段、输出版本 |

聊天上下文讨论可以把长对话、附件和历史结论收成共识、分歧、未决问题和下一步；但讨论不是决定。未决项必须保持未决，不得把聊天里的倾向写成已批准决策；引用范围与隐私边界也必须人工确认。

## 9.6 Daily Report Skill：从摘要模板到可验证流程

Daily Report Skill 参考当前本机配置：它不是一段摘要模板，而是可重复运行的本地状态机。默认不对外发送；从任务、仓库、日历、消息与会议记录生成可验证日报。

```markdown
---
name: daily-report
description: 从任务、仓库、日历、消息与会议记录生成可验证日报；默认不对外发送。
---

# 状态机
INIT -> COLLECT -> MERGE -> ANALYZE -> TODO_GATE -> PUBLISH -> VALIDATE

# 证据契约
- 记录来源与时间窗；结论标记 CONFIRMED / INFERRED / PENDING
- 采用更新、更直接的证据；冲突不静默覆盖
- 单一数据源失败标记 PARTIAL，继续其他检查

# 写入门
- 只允许主 Agent 写日报、待办和运行状态
- 待办先去重并满足责任/完成证据门；写后回读验证
- 消息、邮件、审批和正式发布默认只生成草稿，明确确认后执行

# 输出与验证
- 可编辑 Markdown；关键判断、行动、风险、来源与运行健康
- 同日重跑更新同一份报告，不制造多个事实源
- 检查结构、隐私、链接和状态一致性；失败修复后重跑
```

状态机按固定顺序推进，不得跳过门控：

- **INIT：** 确定时间窗、输出路径、身份与本次可写范围。
- **COLLECT：** 采集任务、仓库、日历、消息与会议记录；记下每个来源的可达性。
- **MERGE：** 按来源与时间窗合并；采用更新、更直接的证据，冲突不静默覆盖。
- **ANALYZE：** 分离事实与判断；每条结论标记 **CONFIRMED** / **INFERRED** / **PENDING**。
- **TODO_GATE：** 待办先去重，再检查责任人与完成证据；不满足门控不得写入。
- **PUBLISH：** 只允许主 Agent 写日报、待办和运行状态；消息、邮件、审批和正式发布默认只生成草稿，明确确认后执行。
- **VALIDATE：** 检查结构、隐私、链接和状态一致性；失败修复后重跑。

证据分类必须写进报告，不能混成一段“今天看起来还行”：

- **CONFIRMED：** 有直接来源与时间窗，可回读原始证据。
- **INFERRED：** 由多条证据推断，必须标明推断关系，不得写成已确认事实。
- **PENDING：** 缺少证据或等待人工决定，保持未决。

单一数据源失败时标记 **PARTIAL**，继续其他检查，而不是整次运行失败或假装该源为空。冲突证据保留双方，交给主会话或人类处理。

写入实行单写者门：只有主 Agent 可以写日报、待办和运行状态。待办写入前必须去重，并满足责任归属与完成证据；写后回读验证。消息、邮件、审批和正式发布默认草稿，明确确认后才执行。

同日重跑更新同一份报告，不制造多个事实源。发布验证覆盖结构是否完整、隐私字段是否越界、链接是否可回读、状态是否与待办和运行记录一致；任一项失败则修复后重跑，不得把半成品当成已发布日报。

## 9.7 定时任务与事务流程

| **实现方式** | **优势** | **适合** | **风险** |
|----|----|----|----|
| **ChatGPT Scheduled Tasks** | 客户端内可见、可在同一或新聊天运行、可使用 Skills / Plugins | 个人/团队报告、检查与提醒 | 计划历史、worktree 清理、权限与套餐变化 |
| **Claude Routines** | 计划、API、GitHub 触发；可云端或自托管 | 工程事件、仓库维护、跨系统动作 | 研究预览、速率、幂等、触发重复 |
| **cron / CI / 队列** | 成熟、可控、易接现有基础设施 | 生产级固定流程 | 需要自行做状态、重试、通知与审计 |

## 9.8 写操作的安全模式

1. 先生成结构化草稿，不直接发布。
2. 显示目标对象：群、文档空间、收件人、租户、环境。
3. 显示将要写入的内容摘要与敏感字段。
4. 人工确认后执行一次；使用幂等键避免重复发送。
5. 返回真实 ID、链接、时间与执行身份，写入审计记录。
6. 失败时不猜测成功；输出错误、是否产生部分副作用和恢复步骤。

## 9.9 事务自动化验收清单

- 输入来源与时间范围明确，能回到原始证据。
- 输出中事实、判断、建议和待确认分离。
- 写操作默认草稿或 dry-run；发送对象可见。
- 空数据、重复运行、部分失败、权限不足至少验证一次。
- 存在日志、产物链接、执行身份和撤销 / 补救路径。
