release-skill 0.9.0 → 0.9.1
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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.codebuddy-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +2 -2
- package/.kimi-plugin/plugin.json +1 -1
- package/CHANGELOG.md +32 -0
- package/INSTALL.md +22 -9
- package/INSTALL.zh-CN.md +15 -8
- package/README.md +37 -30
- package/README.zh-CN.md +32 -27
- package/adapters/claude/.claude-plugin/marketplace.json +1 -1
- package/adapters/claude/.claude-plugin/plugin.json +1 -1
- package/adapters/claude/bin/consumer-contract-vectors.json +110 -0
- package/adapters/claude/bin/error-codes.json +8 -1
- package/adapters/claude/bin/foundation-resource-binding.json +1 -1
- package/adapters/claude/bin/registry.json +1 -1
- package/adapters/claude/bin/release-skill.bundle.mjs +1719 -1291
- package/adapters/claude/bin/rules.json +1 -1
- package/adapters/claude/bin/schemas/consumer-contract-vector.schema.json +149 -0
- package/adapters/claude/skills/release-finish/SKILL.md +4 -4
- package/adapters/claude/skills/release-help/SKILL.md +3 -2
- package/adapters/claude/skills/release-prepare/SKILL.md +2 -2
- package/adapters/claude/skills/release-publish/SKILL.md +3 -1
- package/adapters/claude/src/schemas/migration-manifest.schema.json +271 -7
- package/adapters/claude/src/schemas/profile-adoption-declaration.schema.json +8 -0
- package/adapters/codex/.codex-plugin/plugin.json +2 -2
- package/adapters/codex/bin/consumer-contract-vectors.json +110 -0
- package/adapters/codex/bin/error-codes.json +8 -1
- package/adapters/codex/bin/foundation-resource-binding.json +1 -1
- package/adapters/codex/bin/registry.json +1 -1
- package/adapters/codex/bin/release-skill.bundle.mjs +1719 -1291
- package/adapters/codex/bin/rules.json +1 -1
- package/adapters/codex/bin/schemas/consumer-contract-vector.schema.json +149 -0
- package/adapters/codex/skills/release-finish/SKILL.md +4 -4
- package/adapters/codex/skills/release-help/SKILL.md +3 -2
- package/adapters/codex/skills/release-prepare/SKILL.md +2 -2
- package/adapters/codex/skills/release-publish/SKILL.md +3 -1
- package/adapters/codex/src/schemas/migration-manifest.schema.json +271 -7
- package/adapters/codex/src/schemas/profile-adoption-declaration.schema.json +8 -0
- package/adapters/kimi/.kimi-plugin/plugin.json +1 -1
- package/adapters/kimi/bin/consumer-contract-vectors.json +110 -0
- package/adapters/kimi/bin/error-codes.json +8 -1
- package/adapters/kimi/bin/foundation-resource-binding.json +1 -1
- package/adapters/kimi/bin/registry.json +1 -1
- package/adapters/kimi/bin/release-skill.bundle.mjs +1719 -1291
- package/adapters/kimi/bin/rules.json +1 -1
- package/adapters/kimi/bin/schemas/consumer-contract-vector.schema.json +149 -0
- package/adapters/kimi/skills/release-finish/SKILL.md +4 -4
- package/adapters/kimi/skills/release-help/SKILL.md +3 -2
- package/adapters/kimi/skills/release-prepare/SKILL.md +2 -2
- package/adapters/kimi/skills/release-publish/SKILL.md +3 -1
- package/adapters/kimi/src/schemas/migration-manifest.schema.json +271 -7
- package/adapters/kimi/src/schemas/profile-adoption-declaration.schema.json +8 -0
- package/adapters/workbuddy/.codebuddy-plugin/plugin.json +1 -1
- package/adapters/workbuddy/bin/consumer-contract-vectors.json +110 -0
- package/adapters/workbuddy/bin/error-codes.json +8 -1
- package/adapters/workbuddy/bin/foundation-resource-binding.json +1 -1
- package/adapters/workbuddy/bin/registry.json +1 -1
- package/adapters/workbuddy/bin/release-skill.bundle.mjs +1719 -1291
- package/adapters/workbuddy/bin/rules.json +1 -1
- package/adapters/workbuddy/bin/schemas/consumer-contract-vector.schema.json +149 -0
- package/adapters/workbuddy/skills/release-finish/SKILL.md +4 -4
- package/adapters/workbuddy/skills/release-help/SKILL.md +3 -2
- package/adapters/workbuddy/skills/release-prepare/SKILL.md +2 -2
- package/adapters/workbuddy/skills/release-publish/SKILL.md +3 -1
- package/adapters/workbuddy/src/schemas/migration-manifest.schema.json +271 -7
- package/adapters/workbuddy/src/schemas/profile-adoption-declaration.schema.json +8 -0
- package/bin/consumer-contract-vectors.json +110 -0
- package/bin/error-codes.json +8 -1
- package/bin/foundation-resource-binding.json +1 -1
- package/bin/registry.json +1 -1
- package/bin/release-skill-cli.mjs +40 -4
- package/bin/release-skill.bundle.mjs +1719 -1291
- package/bin/rules.json +1 -1
- package/bin/schemas/consumer-contract-vector.schema.json +149 -0
- package/package.json +4 -4
- package/platform-manifest.json +5 -5
- package/skills/release-finish/SKILL.md +4 -4
- package/skills/release-help/SKILL.md +3 -2
- package/skills/release-prepare/SKILL.md +2 -2
- package/skills/release-publish/SKILL.md +3 -1
- package/skills-src/release-finish/SKILL.md +4 -4
- package/skills-src/release-help/SKILL.md +3 -2
- package/skills-src/release-prepare/SKILL.md +2 -2
- package/skills-src/release-publish/SKILL.md +3 -1
- package/src/commands/post-release-local.mjs +249 -58
- package/src/commands/prepare.mjs +39 -4
- package/src/commands/ship.mjs +124 -16
- package/src/core/derived-artifact-gates.mjs +32 -5
- package/src/producers/foundation-resource-projection.mjs +16 -3
- package/src/schemas/migration-manifest.schema.json +271 -7
- package/src/schemas/profile-adoption-declaration.schema.json +8 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "release-skill",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.1",
|
|
4
4
|
"description": "Safe preparation and frozen GitHub/npm production publishing with full happy end verification",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "广州市风荷科技有限公司"
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
],
|
|
20
20
|
"defaultPrompt": [
|
|
21
21
|
"Assess this project for release readiness.",
|
|
22
|
-
"Prepare a release plan for version 0.9.
|
|
22
|
+
"Prepare a release plan for version 0.9.1.",
|
|
23
23
|
"Help me understand the release workflow."
|
|
24
24
|
]
|
|
25
25
|
}
|
package/.kimi-plugin/plugin.json
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,37 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
<!-- release-skill:changelog:start version=0.9.1 locale=en baseline=sha256:71720f2bbde891ebccda25baf35ef03593d1f6aee1077aeccb3b4af4d2eddfc0 -->
|
|
4
|
+
## [0.9.1] - 2026-08-28
|
|
5
|
+
|
|
6
|
+
0.9.1 is a local source candidate for safer post-release host finishing. It now pins Foundation 0.14.0, whose public temporary-workspace and raw-output APIs pass the default Node.js 22 macOS consumer composition. This note is not evidence of publication, real-host acceptance, consumer installation verification, or independent acceptance.
|
|
7
|
+
|
|
8
|
+
### Security
|
|
9
|
+
|
|
10
|
+
- Real-host acceptance requires a qualified frozen release plan and a VERIFIED run from the same release lineage. The workflow confirms the exact plan digest and selected hosts before any host write. release-skill's optional local finishing never changes the terminal release state.
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
|
|
14
|
+
- Pin skill-family-contracts, skill-family-harness-node, and skill-family-engineering-kit together at 0.14.0. A consumer test now combines the public withTemporaryWorkspace and superviseProcess.rawSink APIs under the default Node.js 22 macOS temporary directory.
|
|
15
|
+
- Derive platform-manifest.json version ownership from package.json.version and check manifest freshness before prepare runs hooks, including docs-only and config-only workflows.
|
|
16
|
+
- Expand ship's plan-approval summary from the frozen plan so reviewers can see public repositories, branch strategies, tags, npm targets, GitHub Releases, external action targets, waivers, and separately gated postPublish hooks.
|
|
17
|
+
- Claude now re-observes the installed plugin after marketplace rebinding before deciding whether a plugin update is still required. Codex keeps the formal frozen-marketplace reinstall path.
|
|
18
|
+
- Kimi accepts a managed installation without a .git directory when the package name, version, release tag, installed revision, managed root, and real payload all match. Legacy local-path entries are removed and reinstalled from the pinned release tag in one controlled TUI session.
|
|
19
|
+
- CodeBuddy/WorkBuddy can update an existing bundled-family entry only when one remote query proves that the frozen tag and mutable marketplace branch both resolve to the frozen commit. The final installed list must contain exactly one entry with the expected marketplace, version, and revision.
|
|
20
|
+
|
|
21
|
+
### Fixed
|
|
22
|
+
|
|
23
|
+
- Prevent prepare from freezing a stale platform manifest into the public snapshot or npm tarball.
|
|
24
|
+
- Remove the misleading claim that plan approval includes a requiresApproval postPublish checkpoint. Plan approval remains the single normal release-level approval; each gated postPublish hook needs its own approval record, bound to the plan digest and hook id for at most 24 hours.
|
|
25
|
+
- Avoid a redundant Claude plugin update after marketplace rebinding has already removed or replaced the old installed entry.
|
|
26
|
+
- Classify legacy Kimi local-path installations before managed-root checks so they can follow the explicit migration path.
|
|
27
|
+
- Keep CodeBuddy/WorkBuddy host state unchanged when the target is absent, standalone, inaccessible, ambiguous, or inconsistent with the frozen release identity.
|
|
28
|
+
|
|
29
|
+
### Upgrade Notes
|
|
30
|
+
|
|
31
|
+
Real-host acceptance can begin only after 0.9.1 is officially published and VERIFIED; the official 0.9.1 entry must be installed or reloaded first. A source candidate, an older installed entry, or the mere existence of plan and run files cannot complete real-host acceptance. Each selected host must complete a first successful update and a second run that reports `ALREADY_CURRENT`.
|
|
32
|
+
<!-- release-skill:changelog:end version=0.9.1 locale=en -->
|
|
33
|
+
|
|
34
|
+
|
|
3
35
|
<!-- release-skill:changelog:start version=0.9.0 locale=en baseline=sha256:80f51046ce63386f75ed1a2b869cf3245732e9a1b040e11eb8942dba5f7c8fed -->
|
|
4
36
|
## [0.9.0] - 2026-08-28
|
|
5
37
|
|
package/INSTALL.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[简体中文](INSTALL.zh-CN.md)
|
|
4
4
|
|
|
5
|
-
<!-- release-skill:release-version: 0.9.
|
|
5
|
+
<!-- release-skill:release-version: 0.9.1 -->
|
|
6
6
|
## Prerequisites
|
|
7
7
|
|
|
8
8
|
- Node.js 22.0.0 or later
|
|
@@ -114,15 +114,23 @@ tag pinned to the exact version (never the bare repository URL, which installs
|
|
|
114
114
|
the latest release or default branch), confirm the trust prompt, then reload:
|
|
115
115
|
|
|
116
116
|
```
|
|
117
|
-
/plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.9.
|
|
117
|
+
/plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.9.1
|
|
118
118
|
/plugins reload
|
|
119
119
|
```
|
|
120
120
|
|
|
121
121
|
After the release has reached `VERIFIED`, the optional `release-finish` workflow
|
|
122
122
|
can perform the same TUI interaction only after explicit user confirmation. It
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
123
|
+
requires the package name, version, release tag, installed revision, and managed
|
|
124
|
+
root to match the frozen plan. An exact current installation is checked before
|
|
125
|
+
returning `ALREADY_CURRENT`. When an installation or migration occurs, the
|
|
126
|
+
resulting managed installation is checked only after the operation. A `.git`
|
|
127
|
+
directory is optional diagnostic evidence, not a success requirement. After an
|
|
128
|
+
installation or migration, release-finish re-reads Kimi's managed installation root
|
|
129
|
+
rather than reusing the pre-operation observation, then verifies the final identity
|
|
130
|
+
and actual payload. If the existing entry is a legacy local-path
|
|
131
|
+
install, release-finish removes it and installs the pinned release tag in the
|
|
132
|
+
same TUI session before accepting the trust prompt and reloading. This local
|
|
133
|
+
check is not part of `verify` and does not alter the `VERIFIED` release state.
|
|
126
134
|
|
|
127
135
|
No receipt or attestation is required. The `attest` command remains available
|
|
128
136
|
only for frozen plans created by older versions that lack the
|
|
@@ -152,10 +160,15 @@ reports `verifiedBySystem: false`. Install from the bundled-family marketplace
|
|
|
152
160
|
for new plans; `attest` exists only for old frozen-plan compatibility.
|
|
153
161
|
|
|
154
162
|
The optional `release-finish` workflow can inspect the CodeBuddy/WorkBuddy list
|
|
155
|
-
after explicit confirmation. It reports `ALREADY_CURRENT` only when
|
|
156
|
-
marketplace, version, and frozen commit
|
|
157
|
-
|
|
158
|
-
|
|
163
|
+
after explicit confirmation. It reports `ALREADY_CURRENT` only when one listed
|
|
164
|
+
entry already matches the marketplace, version, and frozen commit. A matching
|
|
165
|
+
bundled-family entry can be updated through the official marketplace and plugin
|
|
166
|
+
update commands only after one remote query proves that both the frozen tag and
|
|
167
|
+
the plan's mutable marketplace branch resolve to that same frozen commit. The
|
|
168
|
+
final list must contain exactly one matching entry with the expected marketplace,
|
|
169
|
+
version, and revision. Missing installations, standalone sources, inaccessible
|
|
170
|
+
or conflicting refs, and any identity mismatch return `MANUAL_REQUIRED` without
|
|
171
|
+
modifying the host.
|
|
159
172
|
|
|
160
173
|
For a single session from a source checkout you can also point CodeBuddy at the
|
|
161
174
|
generated plugin directory with `--plugin-dir <path>/adapters/workbuddy`; the
|
package/INSTALL.zh-CN.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[English](INSTALL.md)
|
|
4
4
|
|
|
5
|
-
<!-- release-skill:release-version: 0.9.
|
|
5
|
+
<!-- release-skill:release-version: 0.9.1 -->
|
|
6
6
|
## 前置条件
|
|
7
7
|
|
|
8
8
|
- Node.js 22.0.0 或更高版本
|
|
@@ -104,14 +104,18 @@ Kimi Code 有交互式插件市场,但**没有可脚本化的非交互安装
|
|
|
104
104
|
(切勿使用裸仓库地址,它会安装最新 release 或默认分支),确认信任提示后重新加载:
|
|
105
105
|
|
|
106
106
|
```
|
|
107
|
-
/plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.9.
|
|
107
|
+
/plugins install https://github.com/ifoohoo/release-skill/releases/tag/release-skill-v0.9.1
|
|
108
108
|
/plugins reload
|
|
109
109
|
```
|
|
110
110
|
|
|
111
111
|
发布达到 `VERIFIED` 后,可选的 `release-finish` 工作流可以在用户明确同意后执行
|
|
112
|
-
同一套 TUI
|
|
113
|
-
|
|
114
|
-
`
|
|
112
|
+
同一套 TUI 操作。包名、版本、发布标签、已安装修订号和受管安装根都必须与冻结计划
|
|
113
|
+
一致。精确当前安装会在返回 `ALREADY_CURRENT` 前核对;发生安装或迁移时,只在操作
|
|
114
|
+
完成后核对结果。`.git` 目录只提供附加诊断,不是通过条件。发生安装或迁移后,
|
|
115
|
+
release-finish 会重新读取 Kimi 的受管安装根,不复用操作前的观察;随后核对最终身份与
|
|
116
|
+
真实载荷。若现有条目来自旧的本地路径安装,release-finish 会在同一个 TUI 会话中先
|
|
117
|
+
移除,再按发布标签安装、确认信任并重新加载。这个本机检查不属于 `verify`,也不会改变
|
|
118
|
+
已经完成的 `VERIFIED` 发布状态。
|
|
115
119
|
|
|
116
120
|
新计划无需收据或人工证明。`attest` 命令仅兼容缺少
|
|
117
121
|
`humanConsumersStrategy: manualFollowUps` 标记的旧冻结计划。
|
|
@@ -135,9 +139,12 @@ codebuddy CLI 可以添加市场并安装插件,但 **`plugin marketplace add`
|
|
|
135
139
|
`ifoohoo/release-skill` 安装即可。新计划无需收据或人工证明;`attest` 只兼容旧冻结计划。
|
|
136
140
|
|
|
137
141
|
可选的 `release-finish` 工作流会在用户明确同意后读取 CodeBuddy/WorkBuddy 的安装
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
142
|
+
列表。只有唯一条目的市场、版本和冻结提交全部一致时,才报告 `ALREADY_CURRENT`。
|
|
143
|
+
对于同一 bundled-family 插件和市场,release-finish 只在一次远端查询证明冻结标签与
|
|
144
|
+
计划声明的可变市场分支都解析到同一冻结提交后,调用正式的市场更新和插件更新命令。
|
|
145
|
+
更新完成后,它会重新读取列表,并精确核对唯一条目的市场、版本和修订号。目标未安装、
|
|
146
|
+
使用 standalone 来源、远端引用不可访问或冲突、身份不一致时,均返回
|
|
147
|
+
`MANUAL_REQUIRED`,不修改宿主。
|
|
141
148
|
|
|
142
149
|
源码检出后也可以用 `--plugin-dir <path>/adapters/workbuddy` 把 CodeBuddy 指向
|
|
143
150
|
生成的插件目录做单会话使用;适配器不引用自身目录之外的任何文件。
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[简体中文](README.zh-CN.md) · Installation: [English](INSTALL.md) / [简体中文](INSTALL.zh-CN.md)
|
|
4
4
|
|
|
5
|
-
<!-- release-skill:release-version: 0.9.
|
|
5
|
+
<!-- release-skill:release-version: 0.9.1 -->
|
|
6
6
|
Release preparation for Claude Code, CodeBuddy, WorkBuddy, Codex, and Kimi Code, with human-edited files kept intact.
|
|
7
7
|
|
|
8
8
|
release-skill helps a maintainer answer three questions: what will be released,
|
|
@@ -14,37 +14,38 @@ Setup surfaces only the deterministic `compactSummary` review view; the full
|
|
|
14
14
|
report stays in a temporary session directory.
|
|
15
15
|
|
|
16
16
|
<!-- release-skill:managed:start id=latest-release -->
|
|
17
|
-
**0.9.
|
|
17
|
+
**0.9.1** (2026-08-28)
|
|
18
18
|
|
|
19
|
-
0.9.
|
|
19
|
+
0.9.1 is a local source candidate for safer post-release host finishing. It now pins Foundation 0.14.0, whose public temporary-workspace and raw-output APIs pass the default Node.js 22 macOS consumer composition. This note is not evidence of publication, real-host acceptance, consumer installation verification, or independent acceptance.
|
|
20
20
|
|
|
21
21
|
**Security**
|
|
22
22
|
|
|
23
|
-
-
|
|
24
|
-
|
|
25
|
-
**Added**
|
|
26
|
-
|
|
27
|
-
- Plan version 3 freezes postPublish declarations per release unit as an ordered array. Each declaration carries its own targets, hooks, approval binding, execution bundle, checkpoints, and postVerify continuation while explicit plan versions 1 and 2 retain their established single-declaration behavior.
|
|
28
|
-
- A new release-finish workflow derives a read-only local checklist from the frozen plan and VERIFIED run. After explicit user confirmation it can update Claude and Codex, drive the Kimi TUI and verify the resulting installation, or confirm that CodeBuddy/WorkBuddy already matches the frozen identity; CodeBuddy/WorkBuddy updates that cannot pin the frozen ref remain manual. None of these local actions changes the published release terminal state.
|
|
23
|
+
- Real-host acceptance requires a qualified frozen release plan and a VERIFIED run from the same release lineage. The workflow confirms the exact plan digest and selected hosts before any host write. release-skill's optional local finishing never changes the terminal release state.
|
|
29
24
|
|
|
30
25
|
**Changed**
|
|
31
26
|
|
|
32
|
-
-
|
|
33
|
-
-
|
|
27
|
+
- Pin skill-family-contracts, skill-family-harness-node, and skill-family-engineering-kit together at 0.14.0. A consumer test now combines the public withTemporaryWorkspace and superviseProcess.rawSink APIs under the default Node.js 22 macOS temporary directory.
|
|
28
|
+
- Derive platform-manifest.json version ownership from package.json.version and check manifest freshness before prepare runs hooks, including docs-only and config-only workflows.
|
|
29
|
+
- Expand ship's plan-approval summary from the frozen plan so reviewers can see public repositories, branch strategies, tags, npm targets, GitHub Releases, external action targets, waivers, and separately gated postPublish hooks.
|
|
30
|
+
- Claude now re-observes the installed plugin after marketplace rebinding before deciding whether a plugin update is still required. Codex keeps the formal frozen-marketplace reinstall path.
|
|
31
|
+
- Kimi accepts a managed installation without a .git directory when the package name, version, release tag, installed revision, managed root, and real payload all match. Legacy local-path entries are removed and reinstalled from the pinned release tag in one controlled TUI session.
|
|
32
|
+
- CodeBuddy/WorkBuddy can update an existing bundled-family entry only when one remote query proves that the frozen tag and mutable marketplace branch both resolve to the frozen commit. The final installed list must contain exactly one entry with the expected marketplace, version, and revision.
|
|
34
33
|
|
|
35
34
|
**Fixed**
|
|
36
35
|
|
|
37
|
-
- Prevent
|
|
38
|
-
-
|
|
39
|
-
-
|
|
36
|
+
- Prevent prepare from freezing a stale platform manifest into the public snapshot or npm tarball.
|
|
37
|
+
- Remove the misleading claim that plan approval includes a requiresApproval postPublish checkpoint. Plan approval remains the single normal release-level approval; each gated postPublish hook needs its own approval record, bound to the plan digest and hook id for at most 24 hours.
|
|
38
|
+
- Avoid a redundant Claude plugin update after marketplace rebinding has already removed or replaced the old installed entry.
|
|
39
|
+
- Classify legacy Kimi local-path installations before managed-root checks so they can follow the explicit migration path.
|
|
40
|
+
- Keep CodeBuddy/WorkBuddy host state unchanged when the target is absent, standalone, inaccessible, ambiguous, or inconsistent with the frozen release identity.
|
|
40
41
|
|
|
41
42
|
**Upgrade Notes**
|
|
42
43
|
|
|
43
|
-
|
|
44
|
+
Real-host acceptance can begin only after 0.9.1 is officially published and VERIFIED; the official 0.9.1 entry must be installed or reloaded first. A source candidate, an older installed entry, or the mere existence of plan and run files cannot complete real-host acceptance. Each selected host must complete a first successful update and a second run that reports `ALREADY_CURRENT`.
|
|
44
45
|
<!-- release-skill:managed:end id=latest-release -->
|
|
45
46
|
|
|
46
47
|
<!-- release-skill:capability:external-write-boundary -->
|
|
47
|
-
> **Current boundary:** v0.9.
|
|
48
|
+
> **Current boundary:** v0.9.1 is the current source candidate. This README
|
|
48
49
|
> records intended scope and verification boundaries; it is not evidence of
|
|
49
50
|
> publication, consumer-installation verification, or independent acceptance.
|
|
50
51
|
> Release availability must be established from the corresponding release records
|
|
@@ -68,7 +69,7 @@ Prepare a new 0.9.0 plan to use plan version 3; do not edit or upgrade frozen ol
|
|
|
68
69
|
> publish global preflight.
|
|
69
70
|
|
|
70
71
|
<!-- release-skill:capability:safe-first-command -->
|
|
71
|
-
> **Production path verified since the v0.1.1 milestone; v0.9.
|
|
72
|
+
> **Production path verified since the v0.1.1 milestone; v0.9.1 is the current
|
|
72
73
|
> source candidate. Its README does not establish publication,
|
|
73
74
|
> consumer-installation verification, or independent acceptance.**
|
|
74
75
|
> The npm-installed CLI is the supported user entry. Source checkout
|
|
@@ -101,7 +102,7 @@ This version excludes R-02 safe full-tree inventory, R-05 Hook cache v2,
|
|
|
101
102
|
R-10 historical-release verification implementation, real Kimi/WorkBuddy
|
|
102
103
|
public-marketplace installation and invocation gates, and an Audit public
|
|
103
104
|
offline release-record verifier.
|
|
104
|
-
Foundation dependencies are pinned to the three released 0.
|
|
105
|
+
Foundation dependencies are pinned to the three released 0.14.0 packages.
|
|
105
106
|
For new bundled-family Kimi/CodeBuddy plans, verify calls the released
|
|
106
107
|
`runPluginVerification` entry with the complete frozen payload and records a
|
|
107
108
|
minimal `install-only` observation receipt. Kimi maps to `kimi-code`; CodeBuddy
|
|
@@ -172,7 +173,10 @@ This scope summary is not a remote publication record or a consumer upgrade inst
|
|
|
172
173
|
> Treat `prepare` as local-only only when those processes are absent or separately
|
|
173
174
|
> audited and explicitly acknowledged. Production publishing uses
|
|
174
175
|
> `ship --target-version <ver> → ship --approve --actor <name>`.
|
|
175
|
-
>
|
|
176
|
+
> Frozen-plan approval is the only normal release-level human gate.
|
|
177
|
+
> Here, “only human gate” means the only normal release-level approval. A postPublish hook whose effective
|
|
178
|
+
> `requiresApproval` is true still needs a separate checkpoint approval bound
|
|
179
|
+
> to the plan digest and hook id; that approval expires after at most 24 hours.
|
|
176
180
|
> For bundled-family Kimi/CodeBuddy releases, Foundation first observes the
|
|
177
181
|
> complete frozen payload in a fresh local installation. Real marketplace
|
|
178
182
|
> installation and host invocation remain non-blocking manual follow-up tasks.
|
|
@@ -230,9 +234,10 @@ See [INSTALL.md](INSTALL.md) for CodeBuddy, Codex, and Kimi Code commands.
|
|
|
230
234
|
### Main workflow
|
|
231
235
|
|
|
232
236
|
For routine releases, use the durable fast path. It persists authoritative
|
|
233
|
-
paths and resumes safely
|
|
234
|
-
|
|
235
|
-
automatically.
|
|
237
|
+
paths and resumes safely. Frozen plan approval is the only normal
|
|
238
|
+
release-level approval. `ship` runs configured hooks and verification gates
|
|
239
|
+
automatically. A gated postPublish hook still needs its independent checkpoint
|
|
240
|
+
approval; plan approval does not include it. For bundled-family Kimi/CodeBuddy releases, Foundation first
|
|
236
241
|
observes the complete frozen payload in a fresh local installation. Real
|
|
237
242
|
marketplace installation and host invocation remain non-blocking post-release
|
|
238
243
|
manual tasks; the system does not verify their completion.
|
|
@@ -686,7 +691,8 @@ postPublish:
|
|
|
686
691
|
|
|
687
692
|
A hook with `requiresApproval: true` parks at `AWAITING_APPROVAL` until a
|
|
688
693
|
checkpoint approval is minted and consumed. The approval record is bound to
|
|
689
|
-
the plan digest and the hook id, and expires after 24 hours
|
|
694
|
+
the plan digest and the hook id, and expires after 24 hours. Frozen plan
|
|
695
|
+
approval never includes this checkpoint approval:
|
|
690
696
|
|
|
691
697
|
```bash
|
|
692
698
|
release-skill approve --plan "$PLAN_PATH" --hook hub-entry-proposal --actor "$ACTOR" --json
|
|
@@ -729,11 +735,12 @@ verification is automated. Kimi Code and CodeBuddy/WorkBuddy are returned as
|
|
|
729
735
|
condition for the automated release to reach `VERIFIED`.
|
|
730
736
|
|
|
731
737
|
After `VERIFIED`, the optional `release-finish` workflow can update Claude and
|
|
732
|
-
Codex from the frozen marketplace identity,
|
|
733
|
-
managed
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
738
|
+
Codex from the frozen marketplace identity, migrate or update Kimi through one
|
|
739
|
+
controlled TUI session and verify its real managed payload, or update an existing
|
|
740
|
+
bundled-family CodeBuddy/WorkBuddy entry when the frozen tag and mutable branch
|
|
741
|
+
both resolve to the frozen commit. It requires explicit user confirmation and
|
|
742
|
+
does not change release status. Missing, standalone, inaccessible, or ambiguous
|
|
743
|
+
CodeBuddy/WorkBuddy targets remain manual and receive no host mutation.
|
|
737
744
|
|
|
738
745
|
A `codebuddy-plugin` distribution may optionally declare `marketplace` (and
|
|
739
746
|
`marketplaceSource`, the URL consumers use to add the marketplace) to override
|
|
@@ -762,8 +769,8 @@ declaration is narrowed to concrete targets.
|
|
|
762
769
|
the ref is absent, while existing branches use an ordinary non-force push;
|
|
763
770
|
- no Kimi or CodeBuddy/WorkBuddy marketplace install checkpoint in the release
|
|
764
771
|
state machine — optional release-finish can drive and re-check Kimi locally,
|
|
765
|
-
or
|
|
766
|
-
not become publication evidence;
|
|
772
|
+
or update an existing CodeBuddy/WorkBuddy entry under strict frozen-identity
|
|
773
|
+
checks, but those results do not become publication evidence;
|
|
767
774
|
- no promise of Windows or broad multi-platform native write support;
|
|
768
775
|
- no hidden commit, push, tag, release, or package publication.
|
|
769
776
|
|
package/README.zh-CN.md
CHANGED
|
@@ -2,43 +2,44 @@
|
|
|
2
2
|
|
|
3
3
|
[English](README.md) · 安装指南:[中文](INSTALL.zh-CN.md) / [English](INSTALL.md)
|
|
4
4
|
|
|
5
|
-
<!-- release-skill:release-version: 0.9.
|
|
5
|
+
<!-- release-skill:release-version: 0.9.1 -->
|
|
6
6
|
面向 Claude Code、CodeBuddy、WorkBuddy、Codex 和 Kimi Code 的发布准备工具,完整保留人工维护的文件内容。
|
|
7
7
|
|
|
8
8
|
release-skill 帮助维护者回答三个问题:准备发布什么、还有哪些检查未通过、最终发布的内容是什么。它不重新生成、也不回写项目源文件。`prepare` 把每个配置的公开文件复制到隔离快照并验证字节——先冻结并供人工审阅,再从同一份冻结产物发布。`setup` 只显示确定性的 `compactSummary` 审阅视图,完整报告保留在临时会话目录中。
|
|
9
9
|
|
|
10
10
|
<!-- release-skill:managed:start id=latest-release -->
|
|
11
|
-
**0.9.
|
|
11
|
+
**0.9.1** (2026-08-28)
|
|
12
12
|
|
|
13
|
-
0.9.0
|
|
13
|
+
0.9.1 是发布后本机宿主安全收尾的本地源码候选。三项 Foundation 依赖已精确锁定到 0.14.0;其正式临时工作区与原始输出接口已通过默认 Node.js 22 和 macOS 消费者组合。本说明不代表已经发布、完成真实宿主验收、完成消费者安装验证或通过独立验收。
|
|
14
14
|
|
|
15
15
|
**安全**
|
|
16
16
|
|
|
17
|
-
-
|
|
18
|
-
|
|
19
|
-
**新增**
|
|
20
|
-
|
|
21
|
-
- 计划版本 3 按发布单元冻结有序的 postPublish 声明数组。每项声明分别绑定目标、Hook、批准、执行包、检查点和 postVerify 后续动作;显式的计划版本 1、2 继续保持既有单声明语义。
|
|
22
|
-
- 新增 release-finish 工作流。它从冻结计划和同一血缘的 VERIFIED run 派生只读本机收尾清单;用户明确同意后,可更新 Claude 和 Codex、驱动 Kimi TUI 并复验安装结果,或确认 CodeBuddy/WorkBuddy 已经精确匹配冻结身份。CodeBuddy/WorkBuddy 无法钉死冻结 ref 时仍转人工处理;这些本机动作都不改变已经完成的发布终态。
|
|
17
|
+
- 真实宿主验收须使用合格的冻结发布计划与同一发布血缘的 VERIFIED run。工作流须在宿主写入前确认精确的计划摘要和选定宿主。release-skill 的可选本机收尾不会改变发布终态。
|
|
23
18
|
|
|
24
19
|
**变更**
|
|
25
20
|
|
|
26
|
-
-
|
|
27
|
-
-
|
|
21
|
+
- skill-family-contracts、skill-family-harness-node 和 skill-family-engineering-kit 已一起精确锁定到 0.14.0。新增消费者测试,在默认 Node.js 22 与 macOS 临时目录下组合正式 withTemporaryWorkspace 与 superviseProcess.rawSink 接口。
|
|
22
|
+
- platform-manifest.json 的版本归属改为从 package.json.version 派生。prepare 在运行 hook 前检查 manifest 新鲜度,docs-only 和 config-only 工作流同样执行该检查。
|
|
23
|
+
- ship 现在从冻结计划展开批准摘要。审阅者可直接查看公开仓库、分支策略、标签、npm 目标、GitHub Release、外部动作目标、豁免以及需要单独批准的 postPublish hook。
|
|
24
|
+
- Claude 重新绑定市场后,会再次观察本机安装状态,再判断是否仍需更新插件。Codex 继续使用正式的冻结市场重装路径。
|
|
25
|
+
- Kimi 的受管安装只要包名、版本、发布标签、已安装修订号、受管根和真实载荷都匹配,即使没有 .git 目录也可通过。旧的本地路径条目会在同一个受控 TUI 会话中先移除,再从钉死的发布标签安装。
|
|
26
|
+
- CodeBuddy/WorkBuddy 只在一次远端查询证明冻结标签和可变市场分支都解析到冻结提交后,更新已有的 bundled-family 条目。最终安装列表必须只有一个条目,且市场、版本和修订号都符合预期。
|
|
28
27
|
|
|
29
28
|
**修复**
|
|
30
29
|
|
|
31
|
-
-
|
|
32
|
-
-
|
|
33
|
-
-
|
|
30
|
+
- 防止 prepare 把陈旧的 platform manifest 冻结进公开快照或 npm tarball。
|
|
31
|
+
- 移除“计划批准已包含 requiresApproval postPublish checkpoint”的误导性说明。冻结计划批准仍是正常发布级流程的唯一批准门;每个受限的 postPublish hook 仍需独立批准记录,记录绑定计划摘要与 hook id,有效期最长 24 小时。
|
|
32
|
+
- 避免 Claude 重新绑定市场后,旧安装已经移除或替换却仍重复执行插件更新。
|
|
33
|
+
- 在检查受管根之前识别 Kimi 的旧本地路径安装,使其进入明确的迁移流程。
|
|
34
|
+
- CodeBuddy/WorkBuddy 目标缺失、使用 standalone 来源、远端不可访问、身份含糊或与冻结身份不一致时,保持宿主不变。
|
|
34
35
|
|
|
35
36
|
**升级说明**
|
|
36
37
|
|
|
37
|
-
|
|
38
|
+
只有 0.9.1 正式发布并达到 VERIFIED,且先安装或重载正式的 0.9.1 入口,才能开始真实宿主验收。源码候选、旧的已安装入口或仅存在计划和运行文件都不能完成真实宿主验收。每个选定宿主都须首次成功更新,第二次运行返回 `ALREADY_CURRENT`。
|
|
38
39
|
<!-- release-skill:managed:end id=latest-release -->
|
|
39
40
|
|
|
40
41
|
<!-- release-skill:capability:external-write-boundary -->
|
|
41
|
-
> **当前边界:** v0.9.
|
|
42
|
+
> **当前边界:** v0.9.1 只是当前源码候选。本 README 记录预期范围与验证边界,
|
|
42
43
|
> 不代表已经发布、完成消费者安装验证或通过独立验收。
|
|
43
44
|
> 版本可用性以对应发布记录及发布后验证结果为准。
|
|
44
45
|
> v0.4.1 是更早的已发布里程碑(v0.2.2 曾处于已发布状态,后因平台验证收敛修复而更新)。
|
|
@@ -54,7 +55,7 @@ release-skill 帮助维护者回答三个问题:准备发布什么、还有哪
|
|
|
54
55
|
> 远端唯一性检查在 `publish` 全局预检执行。
|
|
55
56
|
|
|
56
57
|
<!-- release-skill:capability:safe-first-command -->
|
|
57
|
-
> **生产路径自 v0.1.1 里程碑起已完成真实生产验证;v0.9.
|
|
58
|
+
> **生产路径自 v0.1.1 里程碑起已完成真实生产验证;v0.9.1 是当前源码候选,本 README 不证明该候选已经发布、完成消费者安装验证或通过独立验收。**
|
|
58
59
|
> npm 安装的 CLI 是受支持的用户入口;源码 checkout 保留为开发/贡献者路径。
|
|
59
60
|
>
|
|
60
61
|
> **第一条命令:**
|
|
@@ -74,7 +75,7 @@ marketplace 委托目标工作区发布的边界不变。
|
|
|
74
75
|
|
|
75
76
|
本版不包含 R-02 安全整树盘点、R-05 Hook cache v2、R-10 历史发布验证的产品实现、真实 Kimi/WorkBuddy 公开市场安装与调用门禁或 Audit 公开离线发布记录验证器。本范围说明不构成远端发布记录或消费者升级指引。
|
|
76
77
|
|
|
77
|
-
Foundation 三包精确依赖已发布的 0.
|
|
78
|
+
Foundation 三包精确依赖已发布的 0.14.0。新生成的 Kimi/CodeBuddy 同仓计划在 verify 阶段调用正式 `runPluginVerification`,把完整冻结载荷交给 Foundation,并记录最小的 `install-only` 观察收据。Kimi 映射为 `kimi-code`,CodeBuddy 映射为兼容的 `workbuddy`。`observed` 与 `payloadMatches` 只表示机制观察结果,不代表远端已发布或 release-skill 已完成领域验证。独立市场来源、真实市场安装和宿主调用仍是人工后续任务。
|
|
78
79
|
|
|
79
80
|
<!-- release-skill:maturity:distribute-v1 -->
|
|
80
81
|
<!-- release-skill:capability:distribute -->
|
|
@@ -128,7 +129,10 @@ Foundation 三包精确依赖已发布的 0.13.0。新生成的 Kimi/CodeBuddy
|
|
|
128
129
|
> 可以写出项目目录、访问凭据、发起网络请求或执行远端发布。只有未配置这些进程,或已单独审计并
|
|
129
130
|
> 显式确认其副作用时,才可以把 `prepare` 视为”仅本地”。生产发布使用
|
|
130
131
|
> `ship --target-version <ver> → ship --approve --actor <name>`。
|
|
131
|
-
>
|
|
132
|
+
> 正常发布级流程只有一次人工批准:批准冻结计划。
|
|
133
|
+
> 这里的“唯一”仅指正常发布级流程。
|
|
134
|
+
> 有效 `requiresApproval: true` 的 postPublish hook 仍须等待独立 checkpoint 批准;
|
|
135
|
+
> 该批准绑定计划摘要与 hook id,有效期最长 24 小时。
|
|
132
136
|
> Kimi/CodeBuddy 的同仓发布先由 Foundation 在新鲜本地目录观察完整冻结载荷。
|
|
133
137
|
> 真实市场安装和宿主调用仍是非阻塞的人工后续任务。
|
|
134
138
|
|
|
@@ -184,9 +188,9 @@ CodeBuddy、Codex 和 Kimi Code 的完整命令见 [INSTALL.zh-CN.md](INSTALL.zh
|
|
|
184
188
|
|
|
185
189
|
### 主流程
|
|
186
190
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
hook
|
|
191
|
+
日常发布优先使用可恢复的快速路径。它会持久化所有权威文件路径。
|
|
192
|
+
冻结计划批准是正常发布级流程的唯一批准门。`ship` 自动执行配置中的 hooks 和验证门禁,不进入
|
|
193
|
+
hook 授权等待态。受限的 postPublish hook 仍须独立批准,计划批准不包含该 checkpoint。Kimi/CodeBuddy 的同仓发布先由 Foundation 在新鲜本地目录
|
|
190
194
|
观察完整冻结载荷。真实市场安装和宿主调用仍是发布完成后的非阻塞人工后续任务,
|
|
191
195
|
系统不核验其完成结果。
|
|
192
196
|
|
|
@@ -587,7 +591,7 @@ postPublish:
|
|
|
587
591
|
envAllowlist: [CI]
|
|
588
592
|
```
|
|
589
593
|
|
|
590
|
-
`requiresApproval: true` 的 hook 停留在 `AWAITING_APPROVAL`,直到 checkpoint 批准被铸造并消费。批准记录绑定 plan digest 与 hook id,24
|
|
594
|
+
`requiresApproval: true` 的 hook 停留在 `AWAITING_APPROVAL`,直到 checkpoint 批准被铸造并消费。批准记录绑定 plan digest 与 hook id,24 小时后过期。冻结计划批准不包含该 checkpoint 批准:
|
|
591
595
|
|
|
592
596
|
```bash
|
|
593
597
|
release-skill approve --plan "$PLAN_PATH" --hook hub-entry-proposal --actor "$ACTOR" --json
|
|
@@ -621,9 +625,10 @@ release-skill ship --root "$PROJECT" --hook-approval "$HOOK_APPROVAL_PATH" --jso
|
|
|
621
625
|
每个适配器闭包都自带 CLI、skills 和 schemas 副本,安装后无需外部依赖即可运行。Claude/Codex 验证是自动化的;Kimi Code 和 CodeBuddy/WorkBuddy 以 `manualFollowUps` 返回并标记 `verifiedBySystem: false`,其完成情况不阻塞自动发布进入 `VERIFIED`。
|
|
622
626
|
|
|
623
627
|
发布达到 `VERIFIED` 后,可选的 `release-finish` 工作流可以按冻结市场身份更新 Claude
|
|
624
|
-
和 Codex
|
|
625
|
-
|
|
626
|
-
|
|
628
|
+
和 Codex,也可以在同一个受控 TUI 会话中迁移或更新 Kimi,并核对真实受管载荷。
|
|
629
|
+
对于已有的 bundled-family CodeBuddy/WorkBuddy 条目,只有冻结标签与可变分支都解析到
|
|
630
|
+
冻结提交时才允许更新。该流程要求用户明确同意,且不改变发布状态。目标缺失、使用
|
|
631
|
+
standalone 来源、远端不可访问或身份含糊时仍转人工处理,不修改宿主。
|
|
627
632
|
|
|
628
633
|
`codebuddy-plugin` 分发可以可选地声明 `marketplace`(以及 `marketplaceSource`,即消费者添加市场所用的 URL)来覆盖默认统一市场 `artifact-skill-set`;未声明的分发保持默认值,冻结计划字节不变。
|
|
629
634
|
|
|
@@ -641,7 +646,7 @@ ref,不匹配时仍转人工处理。
|
|
|
641
646
|
- 不声称已经替项目完成真实生产 canary,不声称已完成真实插件市场验证;
|
|
642
647
|
- `prepare --online` 只观察 bound 前序基线;目标唯一性由 publish 全局预检完成;
|
|
643
648
|
- 不覆盖已有 branch/tag/Release,不 unpublish npm;
|
|
644
|
-
- 发布状态机不提供 Kimi 或 CodeBuddy/WorkBuddy marketplace 安装检查点——可选的 release-finish 可以在本机驱动并复查 Kimi
|
|
649
|
+
- 发布状态机不提供 Kimi 或 CodeBuddy/WorkBuddy marketplace 安装检查点——可选的 release-finish 可以在本机驱动并复查 Kimi,也可以在严格核对冻结身份后更新已有 CodeBuddy/WorkBuddy 条目,但这些结果不构成发布证据;
|
|
645
650
|
- 不承诺 Windows 或广泛的跨平台原生写入;
|
|
646
651
|
- 不会隐藏地 commit、push、打 tag、创建 Release 或发布包。
|
|
647
652
|
|