SuperAPI AI 工具集

obsidian-ci-integration

编程与开发

查看项目

更新于 10-15 23:27

技能介绍

用途:为 Obsidian 插件项目搭建 GitHub Actions 持续集成与发布流程,实现自动构建、测试与发布。

主要能力:

  1. 构建工作流(.github/workflows/build.yml):在 push 与 pull_request 到 main 时执行 npm ci、npm run build,检查 main.js 是否生成并输出体积,同时校验 manifest.json 必填字段(id、name、version、minAppVersion、description、author)。
  2. 发布工作流(.github/workflows/release.yml):在推送标签时构建并创建 GitHub Release,附带 main.js、manifest.json、styles.css,需为 job 配置 permissions: contents: write。
  3. 版本同步脚本 version-bump.mjs:读取 npm_package_version,更新 manifest.json 的 version 与 versions.json 中对应条目,并在 package.json 的 version 脚本中串联 git add。
  4. 校验工作流(.github/workflows/validate.yml):检查 manifest.json、package.json、versions.json 三者版本一致性。
  5. BRAT 测试版:提供 beta-manifest.json,用户通过 BRAT 输入仓库 URL 安装,BRAT 自动获取最新 release(含预发布),无需提交社区仓库。

使用方式:仓库需已启用 GitHub Actions,本地 npm run build 能产出 main.js,根目录存在 manifest.json 与 versions.json。发布时执行 npm version patch 后 git push origin main --tags 即可触发。

限制与注意:npm ci 需要提交 package-lock.json;构建脚本需将 esbuild outfile 指向 ./main.js;发布权限缺失会报 permission denied;BRAT 需在 GitHub 上勾选 pre-release。发布到社区插件目录及发布前质量检查需参考其他技能。