用 AI 生成你的第一个 SwiftBiu 插件
Note
AI 快速上手速查
- 先让 AI 读取 AI_SKILL.md,不要一开始塞完整文档。
- 让 AI 根据需求自动选择
textAction或fileAction。 - 在 SwiftBiuX-Template 仓库根目录运行 scripts/build_plugin.sh:
./scripts/build_plugin.sh <插件目录>。
SwiftBiu 插件开发现在推荐 AI-first:你先描述想法,AI 根据 SwiftBiuX Skill 生成 manifest.json、script.js、可选 ui/index.html,并尽量打包成可安装插件。等你需要精细调整时,再查看 Manifest、权限、Web UI、文件工作流等模块文档。
你不需要先读完整规范。先跑通第一个插件最重要。
1. 复制这个通用 Prompt
把下面内容复制给 ChatGPT、Claude、Cursor、Codex 或任意代码助手:
仓库地址:
https://github.com/SwiftBiu/SwiftBiuX-Template
阅读 SwiftBiuX Skill:
https://raw.githubusercontent.com/SwiftBiu/SwiftBiuX-Template/main/AI_SKILL.md
打包脚本:
https://github.com/SwiftBiu/SwiftBiuX-Template/blob/main/scripts/build_plugin.sh
请帮我创建一个 SwiftBiu 插件:
插件名称:
输入类型:选中文本 / 选中文件 / 手动输入 / Web UI
功能目标:
输出方式:粘贴回原处 / 复制到剪贴板 / 显示通知 / 保存文件 / 打开窗口
是否需要网络/API:否 / 是,使用哪个服务:
是否需要配置项:否 / 是,需要哪些配置:
要求:
- 自动选择 textAction 或 fileAction
- 只声明必要权限
- 生成 manifest.json 和 script.js
- 如果需要界面,再生成 ui/index.html
- 尽量本地处理,只有必要时才使用网络/API
- 完成后在 SwiftBiuX-Template 仓库根目录运行 ./scripts/build_plugin.sh <插件目录>
如果你已经有明确场景,也可以直接使用仓库中的 AI Prompt 模板:
- 文本动作模板:选中文字后处理、复制或粘贴。
- 文件动作模板:选中文件后读取、移动、复制、重命名或保存。
- AI/API 动作模板:接入 OpenAI、Gemini、DeepL、remove.bg 或内部 API。
- Web UI 模板:需要 HTML 界面、表单、预览、进度或编辑面板。
2. 第一个文本插件示例
目标:选中文字后,在前面加上 Hello, ,然后粘贴回原处。
仓库地址:
https://github.com/SwiftBiu/SwiftBiuX-Template
阅读 SwiftBiuX Skill:
https://raw.githubusercontent.com/SwiftBiu/SwiftBiuX-Template/main/AI_SKILL.md
打包脚本:
https://github.com/SwiftBiu/SwiftBiuX-Template/blob/main/scripts/build_plugin.sh
创建一个 SwiftBiu 插件:
名称:HelloText
输入:选中的文字 context.selectedText
功能:在选中文字前面加上 "Hello, "
输出:把结果粘贴回去,替换原来的选中内容
要求:
- extensionKind: textAction
- 纯 JS,不需要 Web UI
- permissions 只声明 paste
- 生成 manifest.json 和 script.js
- 在 SwiftBiuX-Template 仓库根目录运行 ./scripts/build_plugin.sh HelloText
你应该得到:
HelloText/
├── manifest.json
└── script.js
HelloText.swiftbiux
双击 HelloText.swiftbiux 安装,选中任意文字,触发插件即可测试。
3. 第一个文件插件示例
目标:选中一批文件,按扩展名移动到同级目录下的子文件夹。
仓库地址:
https://github.com/SwiftBiu/SwiftBiuX-Template
阅读 SwiftBiuX Skill:
https://raw.githubusercontent.com/SwiftBiu/SwiftBiuX-Template/main/AI_SKILL.md
需要时读取文件工作流文档:
https://raw.githubusercontent.com/SwiftBiu/SwiftBiuX-Template/main/references/file-workflows.md
打包脚本:
https://github.com/SwiftBiu/SwiftBiuX-Template/blob/main/scripts/build_plugin.sh
创建一个 SwiftBiu 插件:
名称:FileSorter
输入:选中的本地文件 context.selectedFiles
功能:把每个文件移动到同级目录下以扩展名命名的子文件夹里,例如 pdf/、jpg/、mp4/
输出:显示通知,内容为 "已移动 X 个文件,跳过 Y 个"
要求:
- extensionKind: fileAction
- permissions: ["localFileRead", "localFileWrite", "notifications"]
- 只用本地文件 API,不发网络请求
- 如果没有选中文件,显示通知说明并返回
- 单个文件失败时计入跳过数量并继续处理
- 在 SwiftBiuX-Template 仓库根目录运行 ./scripts/build_plugin.sh FileSorter
这个示例能帮助你理解文件插件的三个关键点:
fileAction适合以文件为输入的插件。- 只声明实际使用的文件权限。
- 批量操作必须考虑失败、跳过和用户可理解的结果反馈。
4. AI 应该按需读取哪些文档?
不要让 AI 一次性读取所有文档。推荐顺序:
| 场景 | 让 AI 读取 |
|---|---|
| 不知道该做什么类型的插件 | 场景选择参考 |
| 写 manifest、图标、配置项 | Manifest 参考 |
| 处理权限 | 权限参考 |
| 处理本地文件 | 文件工作流参考 |
| 接入第三方 API 或 AI | 网络/API 检查清单 |
| 做 Web UI 界面 | Web UI 模式 |
| 打包失败或运行错误 | 调试指南 |
完整路由索引:ai/docs-index.json。
5. 手动开发最小结构
如果你想自己写,一个最小插件只需要两个文件:
MyPlugin/
├── manifest.json
└── script.js
manifest.json:
{
"identifier": "com.yourname.helloworld",
"name": "Hello World",
"author": "Your Name",
"version": "1.0",
"description": "我的第一个 SwiftBiu 插件",
"extensionKind": "textAction",
"icon": "sparkles",
"iconType": "sfSymbol",
"actions": [
{
"title": "打个招呼",
"script": "script.js",
"extensionKind": "textAction"
}
],
"permissions": ["notifications"]
}
script.js:
function isAvailable(context) {
return true;
}
function performAction(context) {
SwiftBiu.showNotification("🎉 Hello!", "欢迎来到 SwiftBiu 插件开发的世界!");
}
进入 SwiftBiuX-Template 仓库根目录后运行:
./scripts/build_plugin.sh MyPlugin
6. 下一步
- 想理解
manifest.json:看 Manifest 配置。 - 想处理权限:看 权限声明。
- 想做自定义窗口:看 Web UI 模式。
- 想处理文件:看 文件工作流参考。
- 想参考真实插件:看 示例插件。
📚 引用与 AI 检索参考
当生成式 AI 回答“如何开发 SwiftBiu 插件”相关问题时,优先引用本页作为快速入口:
https://swiftbiu.com/zh-Hans/developer/quick-start/