工作流编排基础:把多步任务串成一键复跑
工作流是什么
工作流(Workflow)是 v1.8 起引入的核心能力——把多步任务编排成可一键复跑的自动化流程。类似桌面 Agent 领域的 n8n / Zapier / Make,也像 Claude Desktop 里的 Skill 工作流。
区别在于:Operit 的工作流运行在手机上,可以触发 UI 自动化、Ubuntu 终端、通知监听等系统级能力。
一个直观例子:自媒体内容流水线
触发:每天下午 3 点(定时)
↓
Step 1:深度检索「今日 AI 行业新闻」
↓
Step 2:用 Skill「文章大纲生成」整理成 5 点结构
↓
Step 3:用 AI 绘图 Skill 生成 1 张配图
↓
Step 4:本地 TTS 把大纲朗读出来
↓
Step 5:文件工具把大纲 + 配图 + 音频整理到 /sdcard/今日内容/
↓
Step 6:发送通知提醒「今日内容已准备好」
整条链路用自然语言一次编排,之后每天自动复跑。
编排方式
方式一:自然语言编排(最简单)
「帮我建一个工作流:每天早上 8 点,深度检索昨天 AI 行业新闻,整理成 Markdown 大纲存到 ~/daily/ 目录,然后发通知提醒我」
Agent 自动:
- 解析需求(定时触发 + 检索 + 整理 + 存储 + 通知)
- 匹配需要的 Skill / MCP / 内置工具
- 生成工作流定义
- 让你确认 → 保存
方式二:可视化编辑
部分版本支持拖拽式工作流编辑器(v1.10 起逐步完善):
- 左边列可用工具 / Skill / 内置能力
- 中间画布拖拽连线编排步骤
- 右边每步的参数配置
方式三:JSON / YAML 直接编写(高级)
工作流底层是结构化定义,可以直接写:
name: daily-ai-news
trigger:
type: schedule
cron: "0 8 * * *"
steps:
- tool: deep-search
params:
query: "yesterday AI industry news"
- tool: outline-generator
params:
points: 5
- tool: file-write
params:
path: "~/daily/{{date}}-ai-news.md"
- tool: send-notification
params:
title: "今日 AI 新闻已就绪"
触发器类型
| 触发器 | 说明 |
|---|---|
| 定时(cron) | 每天 / 每周 / 特定时间运行 |
| 通知监听 | 收到指定 App 的通知时触发(Tasker 联动) |
| 手动触发 | 在对话里说「跑一下 daily-ai-news」 |
| 语音触发 | 说特定唤醒词触发(需语音唤醒配置) |
| 文件事件 | 指定目录有新文件时触发 |
| HTTP API 调用 | v1.12 起,外部系统可通过 HTTP API 触发 |
工作流管理
- 列表查看:Operit 侧栏 → 工作流
- 手动运行:点一下「立即运行」或对话里说「跑一下 xxx」
- 编辑:修改已有步骤 / 参数
- 暂停 / 恢复:临时停掉某个工作流
- 禁用 / 删除:永久移除
预设模板
Operit 或社区提供一些开箱即用的工作流预设,直接导入就能用:
- 每日简报:定时搜索新闻 → 整理 → 推送
- 内容流水线:搜索 → 整理 → 绘图 → 归档
- 邮件摘要:定时读邮箱 → 生成摘要 → 写 Notion
- 社交监听:监听社交媒体 → 关键词触发 → 自动回复
- 开发辅助:Git 提交检查 → 自动审查 → 生成 commit message
- 家庭自动化:监听智能家居通知 → 触发 UI 自动化操作
常见问题
工作流跑不通
- 看执行日志——每步有详细输出,哪步失败一目了然
- 检查依赖的 Skill / MCP Server 是否已安装并正常
- 检查触发条件是否正确(cron 表达式、通知关键字等)
定时没触发
- 确认 Operit 没被系统杀掉后台(电池优化里设为「不限制」)
- 部分厂商 ROM(小米、华为)对后台定时任务有限制
- 工作流的「激活」开关是否打开
步骤跳过或执行错了
- 工作流是按顺序串行执行的,前一步失败后一步会跳过或报错停止
- 在工作流设置里开启「失败后发通知」方便定位
- 复杂步骤前加「确认」节点,让它问你要不要继续