SuperAPI AI 工具集

apple-shortcuts

办公与效率

查看项目

更新于 10-26 12:22

技能介绍

Apple Shortcuts 命令行工具面向需要在 macOS 终端中自动化操作 Apple 快捷指令的用户,提供一套本地脚本,围绕三个层面工作:/usr/bin/shortcuts 命令(列出、运行、查看、签名)、Shortcuts Events 脚本字典(只读,可补充每个快捷指令是否接受输入),以及 .shortcut 文件(WFWorkflowActions 的 plist,经 Apple Encrypted Archive 签名)。工具集已在 Shortcuts 10.0 / macOS 27.0.1 上验证,不监听任何端口。

主要能力包括:用 sc-list.py 以 JSON 输出名称、ID、文件夹和 accepts_input,可按文件夹过滤;用 sc-decode.py 读取 .shortcut 文件,解析输入类型并逐条列出动作;用 sc-run.py 运行快捷指令,支持文件输入、stdin 输入、多输入汇入文件夹、批量处理、按 glob 过滤、--expect 校验输出类型(image/pdf/text);用 sc-build.py 根据 spec 生成并签名简单快捷指令,再通过 shortcuts list 核对是否添加成功。

使用方式:先运行 bash $S/sc.sh --check 检查版本、CLI、数量和自动化权限;若自动化被拒,需在系统设置 › 隐私与安全性 › 自动化中允许。列出与检查用 python3 $S/sc-list.py、sc-decode.py 或 shortcuts view。运行示例包括 sc-run.py "Word Count" -i notes.txt、--stdin "some text"、--batch in/ --out out/ --glob '*.png' --expect image。退出码含义:0 成功,1 快捷指令失败,2 参数错误,3 无输出或类型不符,4 未找到,124 超时,130 中断。批量模式每个文件运行一次,输出命名为 out/<stem><ext>,重跑跳过已存在输出,--overwrite 重做,--fail-fast 遇错停止。构建时先用 spec.json 生成并导入,再由用户点击“Add Shortcut”,并用 sc-run.py 冒烟测试。

适用场景:在终端或代理步骤中调用已获批准的快捷指令处理文件、文本或图片;批量转换文件格式;把多个步骤串联成流水线;为快捷指令编写包装脚本或定时任务。

限制与注意事项:快捷指令能执行其动作允许的任何操作(发消息、删文件、联网),因此只应运行用户指定或批准的快捷指令,拿到文件先用 sc-decode.py 查看其行为;交互型快捷指令(Ask/Choose 动作、空必填参数、首次权限提示)会无限挂起且无窗口无错误,必须通过 sc-run.py 或自设超时运行;退出码 0 不代表成功,需检查输出;未知扩展名输出会被静默丢弃,类型不匹配仍退出 0 并写入垃圾数据,sc-run.py 会把这些转为退出码 3;库数据库受 TCC 保护,库中快捷指令的动作只能从导出文件读取;不能通过 CLI 创建、编辑、删除或重命名快捷指令,添加需用户点击;生成功能仅限已验证可保持参数导入的动作(如调整图像大小、计数、从列表取项、停止并输出),其他动作导入后参数可能为空并导致运行挂起。