| name | project-release |
| description | Release workflow for obsidian-wechat-converter (version bump, release notes, tag and publish). |
Obsidian WeChat Converter Release Skill
发布新版本的完整流程。
版本号更新
发布新版本(如 2.5.6 -> 2.6.0)时,确保以下文件都已更新:
package.json: 更新 "version": "..."
manifest.json: 更新 "version": "..."
versions.json: 添加新版本映射,如 "2.6.0": "0.15.0"
README.md: 更新 Badge 中的版本号 
开发期门禁
在做 feature / enhancement 时,先跑快速自检:
npm run scan:guard
它用于尽早发现新的 Obsidian scan 风险模式,但不替代最终发布前检查。
Release Notes
在 RELEASE_NOTES/ 目录下创建对应版本的文件:
RELEASE_NOTES/v{version}.md
文件格式:
---
title: 简短标题(会显示为 "v{version} - 标题")
---
## 更新内容
### 🚀 重大更新
- ...
### 🐛 问题修复
- ...
### ✨ 功能优化
- ...
发布流程
情况 A:当前在 feature 分支
-
准备阶段(在 feature 分支完成)
- 更新版本号文件
- 创建
RELEASE_NOTES/v{version}.md
- 先运行
npm run scan:guard 做快速自检
- 确保 Obsidian scan readiness guard 通过:
npm run review:guard
-
合并 PR
-
触发发布
git checkout main
git pull
git tag {version}
git push origin {version}
情况 B:当前已在 main 分支
-
准备阶段
- 更新版本号文件
- 创建
RELEASE_NOTES/v{version}.md
- 先运行
npm run scan:guard 做快速自检
- 确保 Obsidian scan readiness guard 通过:
npm run review:guard
-
提交并触发发布
git add .
git commit -m "chore: bump version to {version}"
git push
git tag {version}
git push origin {version}
自动化流程
无论哪种情况,推送无前缀版本 tag 后 GitHub Actions 会自动执行:
- 校验
versions.json 与 manifest.json.minAppVersion 映射
- 校验 tag 与
manifest.json.version 一致,且不使用 v 前缀
- 运行
npm run review:guard,其中包含:
- scan-risk guard
- ESLint
- 生产构建
- generated build artifact 一致性检查
- Vitest 全量测试
- release zip 打包
- release artifact 校验
- 创建 GitHub Release(从 release notes 文件读取内容)
- 上传 release 文件
Obsidian 社区插件注意事项
- Git tag 必须与
manifest.json.version 完全一致,例如 2.6.6
- 不要使用
v2.6.6 这样的前缀 tag
RELEASE_NOTES 文件仍然沿用 RELEASE_NOTES/v{version}.md
- GitHub Release assets 需要至少包含:
main.js
manifest.json
styles.css
- 如果
scan:guard 失败,不要直接进入 release 流程