豆包蓝皮书:自动化工作流可靠性框架
---
版本:v2.0
日期:2026-08-25
适用范围:以豆包为核心的工作流自动化设计、落地与运维
核心理念:把自动化任务当成"产品"来设计——有定义、有边界、有兜底、可观测、可迭代。
结构原则:理论与实践交替、从入门到进阶分层。
如何阅读本蓝皮书
根据你的当前阶段选择入口:
| 阶段 | 特征 | 推荐起点 | 目标成熟度 |
|---|---|---|---|
| 新手 | 第一次用豆包做自动化 | 第1章 → 第2章 → 第3章 | L1→L2 |
| 进阶 | 已有定时任务,但经常失败 | 第4章 → 第5章 → 第6章 | L2→L4 |
| 专家 | 需要团队化/产品化 | 第7章 → 第8章 → 第9章 | L4→L5 |
阅读建议:每章包含「理论要点 → 实战案例 → 操作模板 → 常见错误」四部分。先理解理论,再照模板动手,最后对照避坑。
入门篇:从0到1——第一次可靠自动化
目标:哪怕你是第一次做自动化,也能在30分钟内跑通一个"不会轻易挂掉"的定时任务。
第1章 豆包工作流快速上手
1.1 理论要点:什么是"可靠"的自动化
核心公式:
可靠自动化 = 固定决策 × 明确边界 × 失败兜底 × 可追溯
| 要素 | 说明 | 反例 |
|---|---|---|
| 固定决策 | Prompt 结构和输出格式稳定 | 每次运行让 AI "自由发挥" |
| 明确边界 | 知道系统做什么、不做什么 | 让 AI 代替你做所有判断 |
| 失败兜底 | 数据源超时有重试,推送失败有告警 | 某一步失败就整体崩溃 |
| 可追溯 | 每次运行有日志,可回查 | 跑完就忘,出错无法定位 |
豆包的四个工作流入口: 1. 内置指令链:自定义指令 + 多轮对话记忆,适合个人轻量任务 2. 飞书多维表格联动:结构化数据 + 自动化规则,适合团队协作 3. 桌面版 Alt+空格:全局唤起 + 意图识别,适合即时任务 4. 四大智能体模块:对话 / 检索 / 创作 / 办公,可组合调用
选择入口的决策树:
需要团队协作? → 是 → 飞书多维表格联动
→ 否 → 需要外部数据源? → 是 → WorkBuddy/MCP
→ 否 → 内置指令链
1.2 实战案例:5分钟搭建"每日AI热点选题"任务
场景:作为 AI 博主,每天早上 9:00 自动获取热点清单。
步骤1:手动验证 Prompt 先不自动化,手动运行一次确认效果:
我是AI领域博主,内容方向是AI教程、AI工具、AI Coding、AI测评。
请帮我找今日AI领域热点,方便筛选选题。
来源:
- 微信公众号近期爆款文章
- GitHub今日热门AI项目
- 多引擎AI新闻聚合
- AI热点追踪
输出格式:
1. 标题
2. 一句话摘要
3. 来源
4. 建议角度(功能测评/上手教程/观点分析)
步骤2:在豆包中保存为自定义指令 - 点击右上角"+" → 创建新指令 - 命名为"AI热点选题日报" - 将上述 Prompt 粘贴进去 - 设置触发词:"启动选题任务"
步骤3:设置定时触发 - 在 WorkBuddy 或豆包桌面版中设置定时任务 - 触发时间:每天 09:00 - 推送目标:个人飞书通知
步骤4:验证 - 手动触发一次,检查输出格式是否稳定 - 确认推送到达
1.3 操作模板:第一次自动化检查清单
□ 手动运行 Prompt 至少 3 次,输出格式稳定
□ 明确触发时间(如每天 9:00)
□ 明确推送目标(飞书群/个人通知/文档追加)
□ 明确 owner(谁负责处理失败)
□ 有明确的停用方法(知道怎么暂停)
□ 失败时知道找谁
1.4 常见错误
| 错误 | 后果 | 纠正方法 |
|---|---|---|
| Prompt 还没稳定就自动化 | 明天就失效,需要频繁修改 | 手动运行3次,格式稳定后再自动化 |
| 没有明确推送目标 | 结果生成后找不到 | 先配置推送,再开启定时 |
| 没有 owner | 失败后无人处理 | 自动化定义模板中必须填 owner |
| 不设停用方式 | 任务出错无法暂停 | 提前在豆包/WorkBuddy 中标记停用入口 |
第2章 可靠性基础:状态机与重试
2.1 理论要点:为什么需要状态机
自动化任务不是"跑起来就行"。真实环境中每次运行都可能遇到: - 某个数据源返回超时 - 当日无相关内容 - API 限流 - 推送目标不可达
状态机的价值:把"如果...怎么办"显式化,每个状态都有明确的成功出口和失败出口。
核心状态流转:
Idle → Triggered → Fetching → Aggregating → Filtering → Delivering → Completed
↘ Blocked(失败出口)
关键原则: - 部分数据源失败不应阻断整体任务,标记缺失后继续 - 推送失败应保留结果并告警,不丢失已生成内容 - Blocked 状态必须明确告知用户失败原因和建议操作
2.2 实战案例:带重试的数据源检查
场景:4个数据源中,GitHub API 可能限流。
实现逻辑:
# 伪代码:数据源就绪检查
sources = {
"wechat": {"url": "...", "timeout": 10},
"github": {"url": "...", "timeout": 10, "retry_on_429": True},
"search": {"url": "...", "timeout": 10},
"aihot": {"url": "...", "timeout": 10}
}
results = {}
for name, config in sources.items():
for attempt in range(2): # 最多重试1次
try:
resp = call_api(config["url"], timeout=config["timeout"])
if resp.status == 429 and config.get("retry_on_429"):
wait = parse_retry_after(resp)
sleep(wait)
continue
if resp.status in [401, 403]:
results[name] = "auth_failed"
break # 认证失败不重试
if resp.empty:
results[name] = "empty"
break
results[name] = "ok"
break
except Timeout:
if attempt == 0:
sleep(10)
continue
results[name] = "timeout"
ok_count = sum(1 for v in results.values() if v == "ok")
if ok_count >= 3:
proceed_with_aggregation(results)
else:
enter_blocked_state("数据源可用数量不足", results)
豆包实现方式: 在 Prompt 中明确要求:
如果某个数据源返回错误或超时,请标记为"缺失"并继续处理其他来源。
最终在输出顶部标注哪些来源缺失。
2.3 操作模板:超时与重试策略表
| 失败类型 | 是否重试 | 策略 | 豆包 Prompt 中的写法 |
|---|---|---|---|
| API 超时 | 是 | 等待 10 秒后重试 1 次,仍失败则标记缺失 | "如果某个来源超时,请等待后重试一次,仍失败则标记缺失" |
| 限流(429) | 是 | 按 Retry-After 等待,最多 2 次 | "如果返回限流,按响应头等待时间重试,最多 2 次" |
| 认证失效(401/403) | 否 | 停止重试,转人工处理 | "如果认证失败,不要重试,标记为需要人工处理" |
| 推送失败 | 是 | 指数退避重试 2 次,失败则告警 | "如果推送失败,重试 2 次,仍失败则记录并告警" |
2.4 常见错误
| 错误 | 后果 | 纠正方法 |
|---|---|---|
| 所有失败都重试 | 认证失效也重试,浪费成本 | 区分临时故障(超时/限流)和永久故障(401/403) |
| 一个源失败就整体停止 | 可用来源被浪费 | 设计为"标记缺失后继续" |
| 重试无退避 | 对限流服务造成更大压力 | 429 时按 Retry-After 等待,推送失败用指数退避 |
第3章 输出与幂等:让结果可靠到达
3.1 理论要点:为什么需要幂等
自动化任务可能因以下原因重复执行: - 手动触发与定时触发同时发生 - 推送失败后重试 - 用户手动重跑
幂等原则:同一批次运行多次,结果只产生一次。
实现方式:
- 每次运行生成唯一批次 ID(如 ai-hotspot-2026-07-10)
- 推送成功后记录状态(如写入飞书文档或数据库)
- 重试时检查状态,跳过已完成步骤
3.2 实战案例:飞书群消息幂等推送
场景:每日热点清单推送到飞书群,避免重复发送。
实现逻辑:
批次 ID: ai-hotspot-2026-07-10
推送前检查:飞书群消息中是否已包含该批次 ID?
→ 是:跳过推送,记录"已跳过"
→ 否:执行推送,记录 message_id
豆包 Prompt 写法:
本次运行批次 ID 为:ai-hotspot-2026-07-10
推送前请检查:该批次是否已推送?
- 如果已推送,只回复"已跳过,无需重复推送"
- 如果未推送,正常输出内容并推送
3.3 操作模板:标准化输出格式
固定输出格式,减少用户每次重新整理的成本:
📋 {任务名称} — YYYY-MM-DD
【今日概况】
有效条目:X 条 | 来源:X/X | 运行时间:HH:MM
━━━━━━━━━━━━━━━━
🔥 高热度(适合快速行动)
1. [标题] — 来源:A + B
热度指数:★★★★★ | 建议角度:xxx
━━━━━━━━━━━━━━━━
📈 潜力方向(适合深度分析)
...
━━━━━━━━━━━━━━━━
⚠️ 数据来源说明
来源A:正常 | 来源B:缺失(超时)| 来源C:正常
3.4 常见错误
| 错误 | 后果 | 纠正方法 |
|---|---|---|
| 输出格式不固定 | 每次结果不同,难以快速扫描 | 用模板固定结构,严格约束格式 |
| 没有批次 ID | 无法去重,重复推送 | 每次运行生成唯一批次 ID |
| 推送失败丢结果 | 重试时重新生成,浪费成本 | 断点续跑:记录状态文件,从 delivering 继续 |
进阶篇:从L2到L4——体系化建设
目标:把个人定时任务升级为"生产级"系统,能应对复杂场景和团队协作。
第4章 质量门禁:确保输出可信
4.1 理论要点:数据源可达 ≠ 内容有效
四维过滤框架:
| 维度 | 检查项 | 不合格处理 |
|---|---|---|
| 相关性 | 是否真正属于目标领域 | 排除泛科技噪音 |
| 时效性 | 日期是否为当日 | 排除过期热点 |
| 重复性 | 同一事件是否多来源出现 | 合并展示,避免重复 |
| 最低数量 | 有效条目是否达到阈值 | 不足则标注或阻断 |
三种质量状态: - pass:正常输出 - warning:部分来源缺失,顶部标注 - blocked:有效条目不足,不推送正文,只推送说明
4.2 实战案例:四维过滤实现
场景:热点清单中混入大量泛科技内容,真正 AI 相关不足 5 条。
豆包 Prompt 设计:
请对聚合后的热点清单进行四维过滤:
1. 相关性:只保留真正属于 AI 领域的内容(排除泛科技、数码产品、互联网公司动态)
2. 时效性:只保留当日发布的内容
3. 重复性:同一事件在不同来源出现时,合并为一条
4. 最低数量:如果过滤后有效条目少于 5 条,视为"内容不足"
输出前请说明:
- 过滤后条目数量
- 被排除的主要原因(如"10条为泛科技内容,3条为过期内容")
- 最终状态:pass / warning / blocked
4.3 操作模板:降级交付规则
| 可用来源数 | 输出策略 | 标注方式 |
|---|---|---|
| 3 个及以上 | 输出完整清单 | 顶部标注缺失来源 |
| 2 个 | 输出简化清单 | 标注"数据不完整,仅供参考" |
| 1 个或 0 个 | 不输出正文 | 只推送说明和告警 |
铁律:降级结果必须显式标记来源覆盖情况,不伪装成完整运行。
4.4 常见错误
| 错误 | 后果 | 纠正方法 |
|---|---|---|
| 不过滤直接输出 | 噪音内容干扰决策 | 增加四维过滤,设置最低数量阈值 |
| 内容不足仍强行输出 | 空清单或无意义内容 | 少于 5 条时进入 blocked 状态 |
| 降级后伪装完整 | 用户误以为数据齐全 | 必须显式标注缺失来源和数量 |
第5章 可观测性:看见你的自动化
5.1 理论要点:没有度量就没有改进
三层可观测性:
| 层级 | 内容 | 用途 |
|---|---|---|
| 日志(Logs) | 每次运行的详细记录 | 故障排查 |
| 指标(Metrics) | 触发率、成功率、成本 | 趋势监控 |
| 审计(Audit) | 批次 ID、推送记录、人工干预 | 合规与回溯 |
核心指标定义:
| 指标 | 计算方式 | 告警阈值 |
|---|---|---|
| 按时触发率 | 准时触发次数 / 总计划次数 | < 95% 持续 3 天 |
| 一次运行成功率 | 无需重试的成功次数 / 总次数 | < 80% 持续 1 周 |
| 数据源可用率 | 某源正常响应次数 / 总调用次数 | < 70% 持续 3 天 |
| 有效条目数量趋势 | 近 7 天平均有效条目 | 连续 5 天下降 |
| 推送成功率 | 推送成功次数 / 总尝试次数 | < 99% |
| 单次运行成本 | Token + API 费用 | 超过预算上限 |
5.2 实战案例:用飞书多维表格追踪运行指标
场景:团队共享工作流,需要可视化运行状态。
表格设计:
字段名 | 类型 | 说明
批次ID | 文本 | 唯一标识
触发时间 | 日期时间 | 定时/手动
触发方式 | 单选 | 定时/手动
数据源状态 | 文本 | 如"wechat:ok,github:timeout"
有效条目数 | 数字 | 过滤后的数量
推送结果 | 单选 | 成功/失败/跳过
总耗时 | 数字 | 秒
Token消耗 | 数字 | 估算
错误信息 | 文本 | 如有
处理人 | 人员 | 失败时谁处理
自动化规则: - 当"推送结果"为"失败"时,自动 @owner 并发送告警 - 每日自动生成汇总视图
5.3 操作模板:单次运行日志格式
[运行日志] ai-hotspot-2026-07-10
触发时间:2026-07-10T09:00:00+08:00
触发方式:定时
数据源响应:
- 微信公众号:ok(2.3s)
- GitHub:timeout(10s)→ 重试后 ok(3.1s)
- 多引擎搜索:ok(1.8s)
- AIHOT:ok(2.5s)
聚合结果:原始 45 条 → 过滤后 18 条
质量状态:pass
推送目标:飞书群 message_id=123456
推送结果:成功
总耗时:45.2s
Token消耗:约 1500
成本估算:约 ¥0.03
5.4 常见错误
| 错误 | 后果 | 纠正方法 |
|---|---|---|
| 不记录日志 | 失败后无法排查 | 每次运行必须记录批次 ID、各源状态、耗时 |
| 指标不定义 | 不知道什么算"正常" | 提前定义告警阈值 |
| 成本失控 | 不知不觉消耗大量 Token | 设置单次运行成本上限,超过则告警 |
第6章 团队化:从个人工具到团队服务
6.1 理论要点:自动化的高级形态
核心观点:自动化的高级形态不是完全没有人,而是正常路径少打扰人,异常路径能及时找到正确的人。
个人 vs 团队的关键差异:
| 维度 | 个人使用 | 团队服务 |
|---|---|---|
| 推送目标 | 个人通知 | 团队群 + 分类频道 |
| 决策边界 | 自己判断 | 主编确认后分发 |
| 故障处理 | 自己处理 | 有 owner 和 backup |
| 变更管理 | 随时改 Prompt | 需测试后生效 |
| 成本归属 | 个人账户 | 团队预算 |
6.2 实战案例:团队热点选题工作流
场景:内容团队 5 人,每天需要分类推送热点。
架构设计:
数据源层:4个数据源(个人→团队,不变)
↓
聚合层:豆包 + WorkBuddy(个人→团队,不变)
↓
分类层:AI工具 / AI Coding / 行业动态(新增)
↓
审核层:主编确认后分发(新增)
↓
推送层:对应频道 + @ 负责人
飞书多维表格实现:
表格:【团队热点选题池】
字段:【日期】、【类别】、【标题】、【摘要】、【来源】、【状态】
状态值:待审核 / 已通过 / 已驳回 / 已推送
自动化规则:
- 当【状态】更新为"已通过"时,自动推送到对应频道
- 每天 10:00 自动生成待审核视图,发给主编
6.3 操作模板:团队化检查清单
□ 明确 owner 和 backup(谁负责、谁 backup)
□ 建立运行手册(失败时如何处理)
□ 设置权限(谁能修改 Prompt、谁能调整数据源)
□ 制定变更流程(修改数据源需测试后生效)
□ 设置成本预算和告警
□ 定期复盘(每月检查指标趋势)
6.4 常见错误
| 错误 | 后果 | 纠正方法 |
|---|---|---|
| 个人任务直接丢给团队 | 无人负责、权限混乱 | 先明确 owner 和权限,再扩展 |
| 无变更流程 | 随意修改导致不稳定 | 修改数据源/Prompt 需测试后生效 |
| 无备份处理人 | owner 休假时任务停摆 | 指定 backup,并同步培训 |
专家篇:L5自演进系统
目标:构建能自我优化的自动化体系,从"执行任务"升级为"持续改进"。
第7章 高级编排:Workflow as Code
7.1 理论要点:为什么需要代码化
核心概念:把工作流当成代码来管理——版本化、测试化、可回滚。
代码化 vs 图形化配置:
| 维度 | 图形化配置 | Workflow as Code |
|---|---|---|
| 版本管理 | 无 | Git 版本化 |
| 复用 | 复制粘贴 | 模块化、函数调用 |
| 测试 | 手动 | 自动化测试、回放事件 |
| 评审 | 无 | Code Review |
| 复杂度 | 低 | 高(但可维护) |
适用场景: - 图形化:个人任务、简单流程(L1-L3) - 代码化:团队服务、复杂编排、需要审计的场景(L4-L5)
7.2 实战案例:用 MCP 编排多工具工作流
场景:热点选题任务需要调用多个 MCP 工具(GitHub、搜索、飞书)。
编排逻辑:
1. 并行调用:GitHub热门 + 搜索引擎 + AIHOT
2. 等待所有结果返回(或超时)
3. 聚合 + 去重
4. 调用豆包进行四维过滤
5. 格式化输出
6. 推送到飞书
7. 记录状态文件
关键设计: - 每个步骤输出结构化中间件(JSON) - 状态文件持久化,支持断点续跑 - 成本追踪:记录每个 MCP 调用的 Token 消耗
7.3 操作模板:Workflow as Code 目录结构
workflows/
├── ai-hotspot/
│ ├── config.yaml # 任务配置(数据源、阈值、推送目标)
│ ├── workflow.py # 主流程
│ ├── sources/ # 数据源适配器
│ │ ├── github.py
│ │ ├── search.py
│ │ └── aihot.py
│ ├── filters/ # 过滤逻辑
│ │ └── quality_gate.py
│ ├── state/ # 状态文件存储
│ └── tests/ # 自动化测试
│ └── test_sources.py
└── shared/ # 共享模块
├── retry.py
├── logger.py
└── metrics.py
7.4 常见错误
| 错误 | 后果 | 纠正方法 |
|---|---|---|
| 过早代码化 | 个人任务过度工程化 | L3 以下用图形化,L4+ 考虑代码化 |
| 无版本管理 | 修改后无法回滚 | Git 管理 workflow 代码 |
| 无测试 | 修改后不敢上线 | 为数据源和过滤逻辑写单元测试 |
第8章 反馈闭环:让系统自我进化
8.1 理论要点:自动化的最后一公里
核心公式:
自我进化 = 运行数据 → 人工反馈 → Prompt 迭代 → A/B 验证
反馈循环的三个环节:
| 环节 | 内容 | 实现方式 |
|---|---|---|
| 数据采集 | 哪些条目被采用、哪些被忽略 | 在飞书表格中记录"采纳/忽略" |
| 反馈处理 | 分析被忽略的原因 | 定期复盘(每周/每月) |
| Prompt 迭代 | 调整过滤维度和描述 | 改 Prompt → 手动验证 3 次 → 重新保存 |
关键原则:没有反馈的自动化是"黑盒",会随着时间和环境变化而逐渐失效。
8.2 实战案例:热点选题的反馈闭环
场景:AI 热点清单中,工具类内容被采纳率高,观点类被采纳率低。
反馈数据收集:
表格:【选题反馈记录】
字段:【日期】、【标题】、【类别】、【采纳状态】、【未采纳原因】
每周复盘:
- 工具类:采纳率 80%(15/19)
- 观点类:采纳率 30%(3/10)
- 未采纳原因:观点类"角度太老"、"缺乏新意"
Prompt 调整:
- 增加权重:"优先收录新发布工具和开源项目"
- 降低权重:"观点分析类需有最新案例支撑"
- 新增过滤:"排除 7 天前的旧话题"
8.3 操作模板:Prompt 版本管理
文件命名:ai-hotspot-prompt-v{版本号}.md
变更记录:
- v1.0:初始版本
- v1.1:2026-07-15,增加"排除旧话题"过滤
- v1.2:2026-07-20,调整工具类权重
每次迭代流程:
1. 修改 Prompt → v1.3
2. 手动运行 3 次验证效果
3. 记录变更原因和效果
4. 更新自动化配置
5. 保留旧版本,必要时回滚
8.4 常见错误
| 错误 | 后果 | 纠正方法 |
|---|---|---|
| 不收集反馈 | Prompt 越来越不准 | 建立反馈表格,定期复盘 |
| 频繁改 Prompt | 每次修改都重新验证,成本高 | 批量收集反馈后,每周/每两周统一调整 |
| 直接在生产环境实验 | 不稳定影响使用 | "改 → 手动验证 3 次 → 重新保存" |
第9章 规模化部署:复杂度预算与渐进式迁移
9.1 理论要点:一人公司的复杂度预算
核心约束:单人运维的复杂度是有限的。
| 约束类型 | 说明 | 应对策略 |
|---|---|---|
| 认知复杂度 | 能维护的心智模型数量有限 | 每个工作流保持简单,职责单一 |
| 成本复杂度 | 模型调用费用可能失控 | 设置预算上限,追踪单次成本 |
| 技术复杂度 | 系统越多,维护成本越高 | 优先复用现有工具,不造轮子 |
| 时间复杂度 | 故障排查耗时 | 投资可观测性,减少MTTR |
渐进式迁移路径:
1. 识别核心工作流(占用时间最多的那个)
2. 建模为状态机,明确边界条件
3. 连接到涉及的 2-3 个系统
4. 建立上下文层(语义记忆)
5. 影子模式运行:收集失败,迭代优化
6. 可控自动化:可见的审批门和修正回路
9.2 实战案例:从零搭建内容生产工作流
场景:内容生产涉及选题、脚本、标题、分发多个环节。
迁移路径:
阶段1(第1周):只自动化选题环节
- 输入:数据源
- 输出:热点清单推送到飞书
- 人工:博主筛选
阶段2(第2-3周):自动化脚本生成
- 输入:选中的选题
- 输出:口播脚本草稿
- 人工:修改确认
阶段3(第4-5周):自动化分发准备
- 输入:确认后的脚本
- 输出:多平台标题 + 简介
- 人工:最终审核后发布
关键原则:每次只自动化一个环节,验证稳定后再推进下一步。
9.3 操作模板:渐进式迁移检查清单
□ 阶段1:只自动化数据聚合,人工筛选
□ 阶段2:自动化草稿生成,人工确认
□ 阶段3:自动化分发准备,人工最终审核
□ 每阶段运行至少 2 周,指标稳定后再推进
□ 每阶段保留人工干预点,不追求全自动
9.4 常见错误
| 错误 | 后果 | 纠正方法 |
|---|---|---|
| 一次性自动化全流程 | 出错时无法定位问题 | 分阶段推进,每阶段验证 |
| 追求全自动 | 失去人工质量控制 | 保留关键决策点给人 |
| 复杂度失控 | 系统越来越多,维护困难 | 设置复杂度预算,定期清理 |
| 不投资可观测性 | 故障时无法快速定位 | 优先建立日志和指标 |
附录
附录A:术语表
| 术语 | 定义 |
|---|---|
| 状态机 | 把工作流建模为有限状态自动机,每个状态有明确的进入条件、成功出口和失败出口 |
| 幂等 | 同一操作执行多次,结果一致,不会产生副作用 |
| 断点续跑 | 任务失败后,从上次成功的位置继续执行,不重做已完成步骤 |
| 降级交付 | 部分组件失效时,以降低的完整度继续交付,而非完全停止 |
| 质量门禁 | 在流程关键节点设置检查点,不通过则阻断或降级 |
| 批次 ID | 每次运行的唯一标识符,用于幂等控制和日志追踪 |
| 探活 | 检测数据源或服务是否可用的检查动作 |
| Workflow as Code | 用代码而非图形化配置来定义和管理工作流 |
| MCP | Model Context Protocol,模型上下文协议,用于工具集成 |
| 复杂度预算 | 单人/团队能维护的系统复杂度上限 |
附录B:工具选型对比
| 维度 | 豆包内置指令链 | 飞书多维表格 + 豆包 | WorkBuddy / MCP | 纯代码脚本 |
|---|---|---|---|---|
| 上手成本 | 低(图形化) | 中 | 中高 | 高 |
| 灵活性 | 中 | 中高 | 高 | 最高 |
| 可靠性 | 中 | 中高 | 高 | 最高 |
| 团队协作 | 低 | 高 | 中 | 中 |
| 可观测性 | 低 | 中 | 高 | 最高 |
| 适用阶段 | L1-L2 | L2-L3 | L3-L5 | L4-L5 |
附录C:上线前演练清单
□ 所有数据源正常:输出完整清单,推送成功
□ 某个数据源超时:退避重试,仍失败则标记缺失,继续聚合
□ 当日无相关内容:有效条目不足,输出说明,不推送空清单
□ 推送目标不可达:重试 2 次,失败则告警并保留结果
□ 重复触发(手动 + 定时):检测批次 ID,跳过重复执行
□ 成本超限:记录告警,但不中断任务
□ 认证失效:停止重试,转人工处理
附录D:蓝皮书核心原则总结
- 决策先行:先想清楚自动化什么决策,再选工具
- 状态机思维:每个状态有成功出口和失败出口
- 部分失败可继续:标记缺失后继续,不全部阻断
- 质量门禁:数据源可达 ≠ 内容有效,必须四维过滤
- 幂等控制:批次 ID + 状态记录,避免重复推送
- 断点续跑:记录状态文件,推送失败不重跑全流程
- 可观测性:日志 + 指标 + 审计,没有度量就没有改进
- 成本意识:设置预算上限,追踪单次运行成本
- 渐进式迁移:分阶段自动化,每阶段验证后再推进
- 反馈闭环:收集采纳数据,定期优化 Prompt
📝 版本迭代记录
| 版本 | 日期 | 更新内容摘要 | 操作人 |
|---|---|---|---|
| v2.0 | 2026-08-25 | 重构为"入门/进阶/专家"三篇结构,每章增加理论+实践+模板+避坑 | 桂皮 |
| v1.0 | 2026-08-25 | 创建豆包蓝皮书自动化工作流可靠性框架 | 桂皮 |
❓ 什么是豆包蓝皮书:自动化工作流可靠性框架?
❓ 如何理解第1章 豆包工作流快速上手?
可靠自动化 = 固定决策 × 明确边界 × 失败兜底 × 可追溯
❓ 如何理解第2章 可靠性基础:状态机与重试?
自动化任务不是"跑起来就行"。真实环境中每次运行都可能遇到:
❓ 如何理解第3章 输出与幂等:让结果可靠到达?
自动化任务可能因以下原因重复执行: