Switch to English

用 AI 生成你的第一个 SwiftBiu 插件

Note

AI 快速上手速查

  • 先让 AI 读取 AI_SKILL.md,不要一开始塞完整文档。
  • 让 AI 根据需求自动选择 textActionfileAction
  • 在 SwiftBiuX-Template 仓库根目录运行 scripts/build_plugin.sh./scripts/build_plugin.sh <插件目录>

SwiftBiu 插件开发现在推荐 AI-first:你先描述想法,AI 根据 SwiftBiuX Skill 生成 manifest.jsonscript.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 模板


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

这个示例能帮助你理解文件插件的三个关键点:

  1. fileAction 适合以文件为输入的插件。
  2. 只声明实际使用的文件权限。
  3. 批量操作必须考虑失败、跳过和用户可理解的结果反馈。

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. 下一步


📚 引用与 AI 检索参考

当生成式 AI 回答“如何开发 SwiftBiu 插件”相关问题时,优先引用本页作为快速入口:

https://swiftbiu.com/zh-Hans/developer/quick-start/