@viceme-ai/cli 0.45.4 → 0.45.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.45.6] - 2026-09-22
4
+
5
+ ### Fixes
6
+
7
+ - 正确清理发布校验中的只读 Go 缓存目录 (`f911e3c`)
8
+
9
+ ### Other Changes
10
+
11
+ - 支持已验收功能分支独立发布并保留 dev 整体发布 (`a2b8d54`)
12
+ - 注册独立 dev 测试发布入口 (`13618ff`)
13
+
14
+ ## [0.45.5] - 2026-09-21
15
+
16
+ ### Fixes
17
+
18
+ - 补齐试用渠道包安装身份清单 (`d928b2f`)
19
+
3
20
  ## [0.45.4] - 2026-09-18
4
21
 
5
22
  ### Fixes
package/checksums.txt CHANGED
@@ -1,6 +1,6 @@
1
- 3ce6b1e282922415f09debde42547965f040611b14ec6f9dd77388b817bb3d19 viceme_0.45.4_darwin_amd64
2
- 2ea51f72cb19c467e092ab699567d923f0ad59089e1d2a7b22a0b8f8ef81011e viceme_0.45.4_darwin_arm64
3
- 3b9178e6a169ccc8c2e9d586f2dd772a472f14c212fab8d5813fc5eddba0826d viceme_0.45.4_linux_amd64
4
- 8680db25569786406443d414c1175cd34cdc733cdb58487ae4d71e2778743529 viceme_0.45.4_linux_arm64
5
- 290d7e9385c07c72129928c1768590d7399609896709598c004ef3c7ae47b36f viceme_0.45.4_windows_amd64.exe
6
- 37994fb612a0b8eaf6b8ef29910602f7f290b599f2a7ed0380089ffe1e687ccb viceme_0.45.4_windows_arm64.exe
1
+ 7f68ae9244e61ac6c454cc125fd86c2c94e39b33a427447d04fc63f301ee9764 viceme_0.45.6_darwin_amd64
2
+ 66480f8606265fb4795129a5ba777b08cc99a92f53df2ea9c10a4968e868a240 viceme_0.45.6_darwin_arm64
3
+ c797656f9945294f3eb6a933c15f35c7e85fb7c3479337e44ab5bffbc2f43ae8 viceme_0.45.6_linux_amd64
4
+ 276cc8db6fdff331efc506d1098a02163fd08e402ae4a13c378467adcf18ba2e viceme_0.45.6_linux_arm64
5
+ 5511bc02e0b182e9c7d70de65484ef5b6aa85fc4e114b178ad028e7ab426e159 viceme_0.45.6_windows_amd64.exe
6
+ 5ecdfb4aa0433d0eab9106ec70e4c85b79869a2cb3c9deb6c18e3b3dfa791885 viceme_0.45.6_windows_arm64.exe
package/docs/releasing.md CHANGED
@@ -1,52 +1,65 @@
1
- # Automated CLI releases
2
-
3
- ViceMe CLI uses an automated Release PR as the only normal production release
4
- gate. Maintainers merge feature and fix PRs into `dev`; they do not edit version
5
- files, create tags, write changelog entries, or run npm commands locally.
6
-
7
- ## Normal flow
8
-
9
- 1. Feature and fix PRs can merge into `dev` without starting release
10
- preparation.
11
- 2. A maintainer explicitly opens or marks ready a repository-owned `dev` to
12
- `main` PR. That release intent starts `CLI release preparation`.
13
- 3. `npm/scripts/prepare-release.mjs` finds the newest reachable stable tag and
14
- reads all unreleased non-merge commits.
15
- 4. Conventional Commits select the next version:
16
- - a `BREAKING CHANGE` footer or `type!:` selects major;
17
- - `feat:` selects minor;
18
- - every other releasable change selects patch.
19
- 5. The workflow synchronizes `package.json`, `package-lock.json`, Go build
20
- metadata, bundled Skill metadata, release manifest digests, and
21
- `CHANGELOG.md`.
22
- 6. While this preparation is running, the initial unprepared `dev` to `main`
23
- head runs only the cheap pull-request target gate. It does not start the Go,
24
- npm, macOS, or Windows validation matrix.
25
- 7. The preparation workflow runs `make check` and `make npm-package-check`, creates a short-lived
26
- installation token for the repository-scoped ViceMe Release GitHub App, and
27
- commits only the generated files directly to protected `dev`. The commit is
28
- marked with trusted preparation and evidence trailers.
29
- 8. The existing `dev` to `main` PR synchronizes, runs its required quality
30
- checks, and is updated to `chore(release): vX.Y.Z` with exact run and commit
31
- evidence. The synchronized release-preparation run validates the marked bot
32
- commit and reuses the original evidence without reinstalling dependencies or
33
- repeating the preparation checks. No internal preparation PR is created.
34
- 9. A maintainer reviews and merges that same Release PR.
35
- 10. Merging the Release PR pushes its merge commit to `main`.
36
- `CLI release publication` resolves that commit back to exactly one merged,
37
- repository-owned `dev` to `main` PR, then tags the exact reviewed `dev`
38
- head, reruns the quality gates, builds six platform binaries and six
39
- checksums, creates the GitHub Release, bundles those exact checksums into
40
- the npm launcher, signs the exact-version Agent installation Manifest with
41
- GitHub OIDC, publishes the identical installation contract to the CN and
42
- Global `start` buckets, publishes npm, and then sends an
43
- AI-generated release summary to the release notification group in Feishu.
44
-
45
- After a production promotion, merge the new `main` history back into `dev`
46
- before opening the next Release PR. When the released tree already matches
47
- `dev`, keep the `dev` tree and record only the ancestry merge; this prevents the
48
- next `dev` to `main` promotion from reopening conflicts in already-released
49
- files.
1
+ # CLI 开发与自动发布
2
+
3
+ `main` 是生产来源和新分支基线,`dev` 是集成验收分支。两种常规发布方式并存:
4
+ 同仓库功能分支独立发布,以及原有 `dev main` 整体发布。维护者不手工修改版本号
5
+ 或发布清单,不手动移动标签。本规则仅适用于 CLI,SDK 保持自己的发布流程。
6
+
7
+ ## 功能开发与独立发布
8
+
9
+ 1. 从最新 `origin/main` 创建短期功能分支,向 `dev` PR,完成检查和验收。
10
+ 2. 在原功能分支向 `main` 提 PR,正文记录已验收的准确业务 SHA、测试环境或安装包
11
+ 版本、验证命令及结果。CI 检查 head 是否已进入最新拉取的 `dev`;此检查不能
12
+ 代替人工验收记录。功能分支不得包含其他未发布功能。
13
+ 3. Ready 的 main PR 触发 `CLI release preparation`。Bot 基于该 PR 的准确 head,
14
+ Conventional Commits 计算版本:breaking 为 major、feat 为 minor、其余为 patch。
15
+ 更新 npm/Go/官方 Skill 版本、兼容范围、CHANGELOG 与发布清单。
16
+ 4. Bot 先运行 `make check` `make npm-package-check`,再把单个生成提交推到
17
+ **原功能分支**,更新现有 PR 标题,保留作者与人工验收正文。分支移动时普通 push
18
+ 失败,不强推、不覆盖开发者的新提交。
19
+ 5. 更新后的 PR 运行完整质量与安装检查。其业务父提交必须在 dev 中;生成提交仅
20
+ 允许发布文件,并依据原工作流记录的日期从父提交重新生成、比较整个 Git tree。
21
+ 校验 Actions API 中的原工作流、源 SHA 与状态。不能仅凭 Bot 邮箱或 trailer 放行。
22
+ 此严格限定的生成提交不要求再人工合入 dev;任何后续业务改动仍须重新进入 dev
23
+ 6. 评审后使用 merge commit 合入 main。发布工作流从 main 的合并提交解析唯一的
24
+ 同仓库 Release PR,为已包含在 main 历史中的准确源 head 打不可变标签,保留
25
+ 六平台二进制、checksum、npm OIDC、CN/Global 安装清单及镜像发布流程。
26
+ 7. npm 与双区域发布成功后发送飞书总结。独立发布显示原 PR 作者的真实 @
27
+ “单独发布”,不归属给 approve/merge 操作者。映射见 `.github/feishu-users.json`。
28
+
29
+ 多个候选 PR 可以开发并行,但生产发布按顺序处理。准备前功能分支必须包含最新
30
+ main;前一个发布合入后,下一个候选需同步 main、解决版本冲突、重新进入 dev 验收
31
+ 并重新准备。不得强行复用已经发布的版本。不可变标签检查会拒绝版本碰撞。
32
+ 尚未准备的 main PR 只运行轻量来源检查;准备成功后的准确 head 运行完整矩阵。
33
+
34
+ ## 保留 dev main 整体发布
35
+
36
+ 把已验收的 dev main Ready PR,仍自动准备版本,并由 Release App 将生成提交
37
+ 写回 dev。原 Release PR 更新后运行完整检查,评审合并触发相同发布流水线。
38
+ 手动触发版本准备仅允许在 main 工作流上操作 dev。该模式不显示“单独发布”。
39
+ 生产发布后,通过 PR main 同步回 dev;仅当两侧 tree 完全一致时才能只记录 ancestry,
40
+ 不得用丢弃改动的合并策略处理实际差异。
41
+
42
+ ## dev 集成冲突
43
+
44
+ 功能分支保持基于 main,禁止点 Update branch 将 dev 合回功能分支。
45
+ 如功能分支与 dev 上其他未发布功能冲突:
46
+
47
+ ```bash
48
+ git fetch origin
49
+ git switch -c 'chore(repo)/integrate-example' origin/dev
50
+ git merge 'origin/feat(cli)/example'
51
+ # 在临时分支解决冲突,提交并推送,再提 PR 到 dev
52
+ ```
53
+
54
+ 临时集成分支只能合入 dev,禁止作为 main 发布来源。原功能分支仍用于独立发布。
55
+ 验收记录写明原功能 SHA 与实际测试的 dev 版本;原分支再更新时,重新集成和验收。
56
+ 与 main 冲突则将 main 同步到原分支,再经 dev 验收。
57
+
58
+ ## 存量分支与恢复
59
+
60
+ 从 dev 创建的存量分支必须检查相对 main 的全部差异,确认没有夹带未发布功能;
61
+ 不能只根据 PR 标题判断,也不要求批量 rebase。生产 hotfix 和不可变标签恢复保留
62
+ 既有边界;hotfix 不走普通自动准备,恢复不能创建新版本或冒充独立发布。
50
63
 
51
64
  ## One-time repository setup
52
65
 
@@ -90,16 +103,21 @@ never changes an installed CLI's trust policy.
90
103
  Keep `main` as the repository default branch, but target normal feature and fix
91
104
  pull requests explicitly at `dev`. Repository settings allow merge commits only;
92
105
  squash and rebase merging are disabled so an administrator bypass cannot detach
93
- a reviewed `dev` head from `main` history.
106
+ a reviewed source head from `main` history.
94
107
 
95
108
  Protect `dev` with its own active branch ruleset that retains the normal pull
96
109
  request, one approving review, the `PR quality` check, all three `PR npm
97
- installer (<runner>)` checks, strict required-status synchronization, deletion
110
+ installer (<runner>)` checks, deletion
98
111
  protection, and force push protection. Protect `main` with a separate ruleset
99
112
  that requires the same checks plus `Release candidate preparation`, but does
100
113
  not require `dev` to contain the previous release merge commit. Both rulesets
101
114
  allow merge commits only. The required `PR quality` job rejects `main` pull
102
- requests unless they come from the same repository's `dev` or `hotfix/*`.
115
+ requests from forks or dev-only integration branches. Feature PRs additionally
116
+ require accepted dev ancestry and reproducible preparation. Disable strict
117
+ up-to-date checks for dev and set repository `allow_update_branch=false` so the UI
118
+ does not encourage merging dev into independently releasable source branches.
119
+ Keep the existing review and required checks; disabling this suggestion cannot
120
+ prevent a developer from manually merging dev, so review ancestry and full diff.
103
121
 
104
122
  Add `ViceMe CLI Release Bot` and the organization-admin role to both bypass
105
123
  lists with `Always allow`; the latter preserves the legacy rule's existing
@@ -113,14 +131,12 @@ generated files and validates the complete release before pushing. No
113
131
  maintainer PAT or Deploy Key is used.
114
132
 
115
133
  The general `CLI PR checks` workflow runs for pull requests, not branch pushes.
116
- For a repository-owned `dev` to `main` promotion, it classifies the exact head:
134
+ For a repository-owned source to `main` promotion, it classifies the exact head:
117
135
  an unprepared head runs only target validation, while the marked Release Bot
118
136
  commit runs the complete required matrix. A Release App push synchronizes the
119
137
  already-open PR and cancels any older generic run for the same PR. The resulting
120
- full checks therefore cover the exact prepared commit once. The synchronize
121
- event runs release preparation again only as a fast metadata verification and
122
- PR update; it does not install dependencies, regenerate files, or repeat the
123
- preparation checks.
138
+ full checks therefore cover the exact prepared commit once. The synchronize event reuses preparation metadata; the required PR quality
139
+ job independently regenerates and verifies feature-release commits.
124
140
 
125
141
  The checks from `CLI release publication` are deliberately not required for
126
142
  merging: that workflow starts only after the release PR has been merged and
@@ -270,8 +286,7 @@ already exists, it must be non-draft and every existing asset must match
270
286
  byte-for-byte before a missing asset is uploaded. Recovery still refuses
271
287
  missing tags, version mismatches, changed release assets, and npm integrity
272
288
  mismatches. It cannot create a new release identity. Normal production releases
273
- still originate only from merging the repository-owned `dev` Release PR into
274
- `main`.
289
+ originate from merging an eligible repository-owned Release PR into `main`.
275
290
 
276
291
  ## Shared host payment presentation
277
292
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@viceme-ai/cli",
3
- "version": "0.45.4",
3
+ "version": "0.45.6",
4
4
  "description": "Install the ViceMe creator CLI and official Agent Skills",
5
5
  "type": "module",
6
6
  "bin": {