Protocol Launcher 系列:Drafts 自动化操作与工作流

张开发
2026/4/13 12:58:40 15 分钟阅读

分享文章

Protocol Launcher 系列:Drafts 自动化操作与工作流
在前两篇文章中我们介绍了 Drafts 的快速入门和草稿管理。本文将深入探讨 Drafts 最强大的功能——自动化操作Actions和工作流展示如何通过 Protocol Launcher 实现文本的自动化处理。Drafts 的核心价值不仅在于快速捕获文本更在于能够将文本通过 Actions 发送到其他应用和服务。这种捕获 - 处理 - 分发的工作流模式让 Drafts 成为了 Apple 生态中的自动化枢纽。ActionsDrafts 的自动化引擎Actions 是 Drafts 中用于处理文本的自动化脚本。你可以使用 Actions 将文本发送到邮件、消息、Slack 等通讯工具发布到 Twitter、微博等社交媒体保存到 Evernote、Notion、Obsidian 等笔记应用转换为任务添加到 Things、OmniFocus 等任务管理工具通过 Shortcuts 与其他应用联动Protocol Launcher 允许你以编程方式触发这些 Actions实现自动化工作流。核心自动化功能对文本执行操作 (runAction)这是最核心的自动化功能允许你对指定文本执行特定的 Actionimport{runAction}fromprotocol-launcher/draftsconsturlrunAction({text:需要处理的文本内容,action:Send Email,})这将使用 Drafts 中名为 “Send Email” 的 Action 来处理文本。追加文本并执行操作 (append)append函数不仅支持追加文本还可以同时触发 Actionimport{append}fromprotocol-launcher/draftsconsturlappend({uuid:draft-uuid,text:追加的内容,action:MyAction,})这在需要累积内容后再统一处理时非常有用。命令面板 (commandPalette)命令面板允许你快速访问和执行 Drafts 中的各种命令import{commandPalette}fromprotocol-launcher/draftsconsturlcommandPalette({query:发送,})这将打开命令面板并自动搜索包含 “发送” 的命令。实用工作流示例示例 1邮件自动发送工作流import{create,runAction}fromprotocol-launcher/drafts// 1. 创建邮件草稿constdraftUrlcreate({text:尊敬的客户\n\n感谢您选择我们的服务...\n\n此致\n敬礼,tag:[email,work],})// 2. 执行发送邮件 ActionconstsendUrlrunAction({text:尊敬的客户\n\n感谢您选择我们的服务...\n\n此致\n敬礼,action:Send Email,})示例 2社交媒体发布工作流import{runAction}fromprotocol-launcher/drafts// 发布到 TwitterconsttwitterUrlrunAction({text:刚刚发布了一个新项目#开源 #开发,action:Post to Twitter,})// 发布到微博constweiboUrlrunAction({text:今天分享一个技术心得...,action:Post to Weibo,})示例 3笔记同步工作流import{create,runAction}fromprotocol-launcher/drafts// 创建会议记录constmeetingNote# 会议纪要 ## 时间 2024-01-15 ## 参会人员 - 张三 - 李四 ## 讨论内容 1. 项目进度 2. 技术方案 3. 资源分配 ## 行动项 - [ ] 完成技术文档 - [ ] 安排下周会议constdraftUrlcreate({text:meetingNote,tag:[meeting,work],})// 同步到 NotionconstnotionUrlrunAction({text:meetingNote,action:Save to Notion,})// 同步到 EvernoteconstevernoteUrlrunAction({text:meetingNote,action:Save to Evernote,})示例 4任务管理工作流import{runAction}fromprotocol-launcher/drafts// 添加到 Things 3constthingsUrlrunAction({text:完成项目报告,action:Add to Things,})// 添加到 OmniFocusconstomniFocusUrlrunAction({text:回复客户邮件,action:Add to OmniFocus,})示例 5Shortcuts 联动工作流Drafts 可以与 Apple 的 Shortcuts 应用深度集成import{create,runAction}fromprotocol-launcher/drafts// 创建待处理文本constdraftUrlcreate({text:需要复杂处理的文本内容,tag:[shortcuts,automation],})// 通过 Shortcuts 处理constshortcutsUrlrunAction({text:需要复杂处理的文本内容,action:Run Shortcut,})文本处理与整理整理文本 (arrange)arrange功能可以对文本进行排序和整理import{arrange}fromprotocol-launcher/draftsconsturlarrange({text:zebra\napple\nbanana,retParam:input,xSuccess:myapp://callback,})这将按字母顺序整理文本列表。替换指定范围文本 (replaceRange)如果你需要精确控制文本的修改位置import{replaceRange}fromprotocol-launcher/draftsconsturlreplaceRange({uuid:UUID-TO-VALID-DRAFT,text:替换内容,start:0,length:10,})这将从草稿的第 0 个字符开始替换长度为 10 的文本为 “替换内容”。回调与链式处理Drafts 支持通过xSuccess参数设置回调 URL实现链式处理import{create,runAction}fromprotocol-launcher/drafts// 创建草稿后回调到自定义应用consturlcreate({text:处理内容,tag:[workflow],})// 执行 Action 后回调constactionUrlrunAction({text:处理内容,action:MyAction,// 注意实际使用中需要在 action 配置中设置回调})构建复杂工作流结合多个功能你可以构建复杂的自动化工作流import{create,append,runAction,search}fromprotocol-launcher/draftsclassDraftsWorkflow{// 1. 日报生成工作流asyncgenerateDailyReport(){constdatenewDate().toISOString().split(T)[0]// 创建日报草稿constdraftUrlcreate({text:# 日报${date}\n\n## 完成工作\n\n## 遇到问题\n\n## 明日计划\n,tag:[daily,report],})// 追加上午工作内容constmorningUrlappend({uuid:draft-uuid,text:\n## 上午\n- 完成需求评审\n- 修复 bug #123,})// 追加下午工作内容constafternoonUrlappend({uuid:draft-uuid,text:\n## 下午\n- 开发新功能\n- 代码审查,})// 发送到 SlackconstslackUrlrunAction({text:日报${date}: 工作顺利完成,action:Send to Slack,})return{draftUrl,morningUrl,afternoonUrl,slackUrl}}// 2. 周报汇总工作流asyncgenerateWeeklyReport(){// 搜索本周所有日报constsearchUrlsearch({query:日报,tag:daily,})// 汇总发送到邮箱constemailUrlrunAction({text:本周工作总结...,action:Send Weekly Report,})return{searchUrl,emailUrl}}}为什么选择 Protocol LauncherAction 触发自动化无需手动操作一键触发复杂的 Actions 工作流。灵活的文本处理支持追加、替换、整理等多种文本操作。回调机制支持通过xSuccess和retParam实现应用间的数据流转。Shortcuts 集成与 Apple Shortcuts 无缝配合扩展自动化边界。类型安全保障所有参数都有 TypeScript 类型定义减少错误。结语通过Protocol Launcher的自动化功能你可以将 Drafts 打造成一个强大的工作流引擎。无论是简单的文本处理还是复杂的多应用联动都能轻松实现。在下一篇文章中我们将探讨 Drafts 的高级功能和实际集成案例。相关链接Protocol Launcher 官网https://protocol-launcher.huayi-data.com/Drafts 模块文档Drafts | Protocol Launcher

更多文章