@liangjie559567/ultrapower 5.2.3 → 5.2.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.
Files changed (166) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/agents/AGENTS.md +60 -0
  3. package/bridge/AGENTS.md +51 -0
  4. package/bridge/codex-server.cjs +3 -3
  5. package/bridge/gemini-server.cjs +2 -2
  6. package/commands/AGENTS.md +47 -0
  7. package/dist/__tests__/auto-update.test.js +195 -2
  8. package/dist/__tests__/auto-update.test.js.map +1 -1
  9. package/dist/__tests__/installer.test.js +1 -1
  10. package/dist/__tests__/installer.test.js.map +1 -1
  11. package/dist/__tests__/release-local.test.d.ts +2 -0
  12. package/dist/__tests__/release-local.test.d.ts.map +1 -0
  13. package/dist/__tests__/release-local.test.js +19 -0
  14. package/dist/__tests__/release-local.test.js.map +1 -0
  15. package/dist/__tests__/release-steps.test.d.ts +2 -0
  16. package/dist/__tests__/release-steps.test.d.ts.map +1 -0
  17. package/dist/__tests__/release-steps.test.js +82 -0
  18. package/dist/__tests__/release-steps.test.js.map +1 -0
  19. package/dist/features/auto-update.d.ts.map +1 -1
  20. package/dist/features/auto-update.js +23 -1
  21. package/dist/features/auto-update.js.map +1 -1
  22. package/dist/hooks/bridge.d.ts.map +1 -1
  23. package/dist/hooks/bridge.js +19 -2
  24. package/dist/hooks/bridge.js.map +1 -1
  25. package/dist/installer/hooks.d.ts.map +1 -1
  26. package/dist/installer/hooks.js +11 -9
  27. package/dist/installer/hooks.js.map +1 -1
  28. package/dist/lib/__tests__/plugin-registry.test.d.ts +2 -0
  29. package/dist/lib/__tests__/plugin-registry.test.d.ts.map +1 -0
  30. package/dist/lib/__tests__/plugin-registry.test.js +241 -0
  31. package/dist/lib/__tests__/plugin-registry.test.js.map +1 -0
  32. package/dist/team/__tests__/bridge-entry.test.js +62 -0
  33. package/dist/team/__tests__/bridge-entry.test.js.map +1 -1
  34. package/dist/team/__tests__/inbox-outbox.test.js +4 -3
  35. package/dist/team/__tests__/inbox-outbox.test.js.map +1 -1
  36. package/dist/team/__tests__/mcp-team-bridge.test.d.ts +2 -0
  37. package/dist/team/__tests__/mcp-team-bridge.test.d.ts.map +1 -0
  38. package/dist/team/__tests__/mcp-team-bridge.test.js +458 -0
  39. package/dist/team/__tests__/mcp-team-bridge.test.js.map +1 -0
  40. package/dist/team/__tests__/permissions.test.js +86 -1
  41. package/dist/team/__tests__/permissions.test.js.map +1 -1
  42. package/dist/team/__tests__/task-file-ops.test.js +43 -0
  43. package/dist/team/__tests__/task-file-ops.test.js.map +1 -1
  44. package/dist/team/mcp-team-bridge.d.ts +28 -1
  45. package/dist/team/mcp-team-bridge.d.ts.map +1 -1
  46. package/dist/team/mcp-team-bridge.js +2 -0
  47. package/dist/team/mcp-team-bridge.js.map +1 -1
  48. package/docs/CLAUDE.md +1 -1
  49. package/docs/agent-templates/AGENTS.md +29 -0
  50. package/docs/design/AGENTS.md +26 -0
  51. package/docs/issues/AGENTS.md +20 -0
  52. package/docs/partials/AGENTS.md +24 -0
  53. package/docs/plans/2026-02-27-release-cicd-pipeline-design.md +265 -0
  54. package/docs/plans/2026-02-27-release-cicd-pipeline-impl.md +519 -0
  55. package/docs/plans/AGENTS.md +33 -0
  56. package/docs/prd/AGENTS.md +22 -0
  57. package/docs/reviews/AGENTS.md +20 -0
  58. package/docs/reviews/ultrapower-standards/AGENTS.md +30 -0
  59. package/docs/shared/AGENTS.md +24 -0
  60. package/docs/standards/AGENTS.md +40 -0
  61. package/docs/standards/templates/AGENTS.md +28 -0
  62. package/docs/superpowers/AGENTS.md +26 -0
  63. package/docs/superpowers/plans/AGENTS.md +26 -0
  64. package/docs/superpowers/specs/AGENTS.md +26 -0
  65. package/docs/tasks/AGENTS.md +20 -0
  66. package/docs/tasks/ultrapower-standards/AGENTS.md +27 -0
  67. package/docs/windows/AGENTS.md +25 -0
  68. package/hooks/AGENTS.md +33 -0
  69. package/package.json +4 -2
  70. package/scripts/AGENTS.md +66 -0
  71. package/scripts/hooks/AGENTS.md +28 -0
  72. package/scripts/lib/AGENTS.md +25 -0
  73. package/scripts/plugin-setup.mjs +25 -4
  74. package/scripts/release-local.mjs +27 -0
  75. package/scripts/release-steps.mjs +121 -0
  76. package/skills/AGENTS.md +37 -0
  77. package/skills/analyze/AGENTS.md +28 -0
  78. package/skills/autopilot/AGENTS.md +28 -0
  79. package/skills/ax-analyze-error/AGENTS.md +28 -0
  80. package/skills/ax-context/AGENTS.md +28 -0
  81. package/skills/ax-decompose/AGENTS.md +28 -0
  82. package/skills/ax-draft/AGENTS.md +28 -0
  83. package/skills/ax-evolution/AGENTS.md +28 -0
  84. package/skills/ax-evolve/AGENTS.md +28 -0
  85. package/skills/ax-export/AGENTS.md +28 -0
  86. package/skills/ax-implement/AGENTS.md +28 -0
  87. package/skills/ax-knowledge/AGENTS.md +28 -0
  88. package/skills/ax-knowledge/SKILL.md +10 -10
  89. package/skills/ax-reflect/AGENTS.md +28 -0
  90. package/skills/ax-review/AGENTS.md +28 -0
  91. package/skills/ax-rollback/AGENTS.md +28 -0
  92. package/skills/ax-status/AGENTS.md +28 -0
  93. package/skills/ax-suspend/AGENTS.md +28 -0
  94. package/skills/brainstorming/AGENTS.md +28 -0
  95. package/skills/build-fix/AGENTS.md +28 -0
  96. package/skills/cancel/AGENTS.md +28 -0
  97. package/skills/ccg/AGENTS.md +28 -0
  98. package/skills/code-review/AGENTS.md +28 -0
  99. package/skills/configure-discord/AGENTS.md +28 -0
  100. package/skills/configure-telegram/AGENTS.md +28 -0
  101. package/skills/deepinit/AGENTS.md +28 -0
  102. package/skills/deepsearch/AGENTS.md +28 -0
  103. package/skills/dispatching-parallel-agents/AGENTS.md +28 -0
  104. package/skills/executing-plans/AGENTS.md +28 -0
  105. package/skills/external-context/AGENTS.md +28 -0
  106. package/skills/finishing-a-development-branch/AGENTS.md +28 -0
  107. package/skills/frontend-ui-ux/AGENTS.md +28 -0
  108. package/skills/git-master/AGENTS.md +28 -0
  109. package/skills/hud/AGENTS.md +28 -0
  110. package/skills/learn-about-omc/AGENTS.md +28 -0
  111. package/skills/learner/AGENTS.md +28 -0
  112. package/skills/mcp-setup/AGENTS.md +28 -0
  113. package/skills/next-step-router/AGENTS.md +28 -0
  114. package/skills/nexus/AGENTS.md +35 -0
  115. package/skills/nexus/nexus-evolve/AGENTS.md +28 -0
  116. package/skills/nexus/nexus-review/AGENTS.md +28 -0
  117. package/skills/nexus/nexus-status/AGENTS.md +28 -0
  118. package/skills/note/AGENTS.md +28 -0
  119. package/skills/omc-doctor/AGENTS.md +28 -0
  120. package/skills/omc-help/AGENTS.md +28 -0
  121. package/skills/omc-setup/AGENTS.md +28 -0
  122. package/skills/pipeline/AGENTS.md +28 -0
  123. package/skills/plan/AGENTS.md +28 -0
  124. package/skills/project-session-manager/AGENTS.md +28 -0
  125. package/skills/project-session-manager/lib/AGENTS.md +37 -0
  126. package/skills/project-session-manager/lib/providers/AGENTS.md +32 -0
  127. package/skills/project-session-manager/templates/AGENTS.md +29 -0
  128. package/skills/psm/AGENTS.md +28 -0
  129. package/skills/ralph/AGENTS.md +28 -0
  130. package/skills/ralph-init/AGENTS.md +28 -0
  131. package/skills/ralplan/AGENTS.md +28 -0
  132. package/skills/receiving-code-review/AGENTS.md +28 -0
  133. package/skills/release/AGENTS.md +28 -0
  134. package/skills/release/SKILL.md +19 -3
  135. package/skills/requesting-code-review/AGENTS.md +28 -0
  136. package/skills/review/AGENTS.md +28 -0
  137. package/skills/sciomc/AGENTS.md +28 -0
  138. package/skills/security-review/AGENTS.md +28 -0
  139. package/skills/skill/AGENTS.md +28 -0
  140. package/skills/subagent-driven-development/AGENTS.md +28 -0
  141. package/skills/swarm/AGENTS.md +28 -0
  142. package/skills/systematic-debugging/AGENTS.md +28 -0
  143. package/skills/team/AGENTS.md +28 -0
  144. package/skills/test-driven-development/AGENTS.md +28 -0
  145. package/skills/trace/AGENTS.md +28 -0
  146. package/skills/ultrapilot/AGENTS.md +28 -0
  147. package/skills/ultraqa/AGENTS.md +28 -0
  148. package/skills/ultrawork/AGENTS.md +28 -0
  149. package/skills/using-git-worktrees/AGENTS.md +28 -0
  150. package/skills/using-superpowers/AGENTS.md +28 -0
  151. package/skills/using-superpowers/references/AGENTS.md +26 -0
  152. package/skills/verification-before-completion/AGENTS.md +28 -0
  153. package/skills/wizard/AGENTS.md +28 -0
  154. package/skills/writer-memory/AGENTS.md +28 -0
  155. package/skills/writer-memory/lib/AGENTS.md +30 -0
  156. package/skills/writer-memory/templates/AGENTS.md +27 -0
  157. package/skills/writing-plans/AGENTS.md +28 -0
  158. package/skills/writing-skills/AGENTS.md +28 -0
  159. package/skills/writing-skills/examples/AGENTS.md +26 -0
  160. package/templates/AGENTS.md +28 -0
  161. package/templates/axiom/AGENTS.md +32 -0
  162. package/templates/axiom/scripts/AGENTS.md +26 -0
  163. package/templates/hooks/AGENTS.md +38 -0
  164. package/templates/hooks/keyword-detector.mjs +1 -2
  165. package/templates/hooks/lib/AGENTS.md +21 -0
  166. package/templates/rules/AGENTS.md +35 -0
@@ -0,0 +1,265 @@
1
+ # 插件发布 CI/CD 流水线设计
2
+
3
+ **日期**:2026-02-27
4
+ **状态**:已批准
5
+ **方案**:C(GitHub Actions 主导 + 本地脚本备用,共享核心逻辑)
6
+
7
+ ---
8
+
9
+ ## 1. 背景与目标
10
+
11
+ ### 问题陈述
12
+
13
+ 当前 ultrapower 发布流程依赖手动执行 `skills/release/SKILL.md` 中的步骤:
14
+ - 手动更新版本号(多个文件)
15
+ - 手动运行 `npm publish`
16
+ - 手动创建 GitHub Release
17
+ - 手动更新 `marketplace.json`
18
+
19
+ 这导致:
20
+ - 发布步骤容易遗漏(如 REFERENCE.md 双重数量声明 — k-047)
21
+ - 发布者机器环境依赖(NPM_TOKEN 本地配置)
22
+ - 无法并行执行独立步骤
23
+
24
+ ### 目标
25
+
26
+ 从 `git tag v*` 推送到完整发布,全自动化,同时保留本地执行能力用于调试和紧急发布。
27
+
28
+ ---
29
+
30
+ ## 2. 架构概览
31
+
32
+ ```
33
+ 发布触发
34
+ └── git tag v5.3.0 && git push --tags
35
+
36
+ ├── GitHub Actions(主路径)
37
+ │ .github/workflows/release.yml
38
+ │ └── 调用 scripts/release-steps.mjs
39
+
40
+ └── 本地脚本(备用路径)
41
+ scripts/release-local.mjs
42
+ └── 调用 scripts/release-steps.mjs
43
+
44
+ 共享核心
45
+ scripts/release-steps.mjs
46
+ ├── validateBuild()
47
+ ├── publishNpm()
48
+ ├── createGithubRelease()
49
+ └── syncMarketplace()
50
+ ```
51
+
52
+ ### 文件变更清单
53
+
54
+ | 操作 | 文件 | 说明 |
55
+ |------|------|------|
56
+ | 新增 | `.github/workflows/release.yml` | GitHub Actions 主流程 |
57
+ | 新增 | `scripts/release-steps.mjs` | 共享核心逻辑 |
58
+ | 新增 | `scripts/release-local.mjs` | 本地执行入口 |
59
+ | 修改 | `skills/release/SKILL.md` | 更新:说明 CI 接管后续步骤 |
60
+ | 修改 | `package.json` | 新增 `release:local` / `release:dry-run` scripts |
61
+
62
+ ---
63
+
64
+ ## 3. 共享核心:`scripts/release-steps.mjs`
65
+
66
+ ### 接口设计
67
+
68
+ ```javascript
69
+ /**
70
+ * 步骤 1:构建验证
71
+ * 执行 tsc --noEmit && npm run build && npm test
72
+ */
73
+ export async function validateBuild(opts = {})
74
+ // opts: { skipTests?: boolean }
75
+ // 返回: { success: boolean, output: string }
76
+
77
+ /**
78
+ * 步骤 2:npm 发布
79
+ * 执行 npm publish --access public
80
+ */
81
+ export async function publishNpm(opts = {})
82
+ // opts: { dryRun?: boolean, tag?: string }
83
+ // 返回: { success: boolean, version: string }
84
+
85
+ /**
86
+ * 步骤 3:GitHub Release 创建
87
+ * 执行 gh release create v{version} --generate-notes
88
+ */
89
+ export async function createGithubRelease(opts = {})
90
+ // opts: { version: string, notes?: string, dryRun?: boolean }
91
+ // 返回: { success: boolean, url: string }
92
+
93
+ /**
94
+ * 步骤 4:市场版本同步
95
+ * 更新 .claude-plugin/marketplace.json version 字段 + git commit + push
96
+ */
97
+ export async function syncMarketplace(opts = {})
98
+ // opts: { version: string, dryRun?: boolean }
99
+ // 返回: { success: boolean }
100
+
101
+ /**
102
+ * 完整流水线(顺序执行全部 4 步)
103
+ */
104
+ export async function runReleasePipeline(opts = {})
105
+ // opts: {
106
+ // dryRun?: boolean,
107
+ // skipTests?: boolean,
108
+ // startFrom?: 'validate' | 'publish' | 'release' | 'sync'
109
+ // }
110
+ // 任一步骤失败则停止并以非零退出码退出
111
+ ```
112
+
113
+ ### 错误处理原则
114
+
115
+ - 每步失败输出明确错误信息(步骤名 + 错误内容 + 建议操作)
116
+ - 支持 `--start-from` 从失败步骤重试(跳过已完成步骤)
117
+ - dry-run 模式:打印将执行的命令,不实际执行
118
+
119
+ ---
120
+
121
+ ## 4. GitHub Actions Workflow
122
+
123
+ ### 触发条件
124
+
125
+ ```yaml
126
+ on:
127
+ push:
128
+ tags:
129
+ - 'v*'
130
+ ```
131
+
132
+ ### Job 依赖图
133
+
134
+ ```
135
+ build-test
136
+
137
+ └── publish
138
+
139
+ ├── github-release
140
+ └── marketplace-sync
141
+ ```
142
+
143
+ - `build-test` → `publish`:串行(确保验证通过才发布)
144
+ - `publish` → `github-release`:串行(确保 npm 包存在才创建 Release)
145
+ - `publish` → `marketplace-sync`:并行(与 github-release 独立)
146
+
147
+ ### Secrets 需求
148
+
149
+ | Secret | 用途 | 配置位置 |
150
+ |--------|------|---------|
151
+ | `NPM_TOKEN` | npm publish 权限 | GitHub repo Settings → Secrets |
152
+ | `GITHUB_TOKEN` | GitHub Release 创建 | Actions 内置,无需手动配置 |
153
+
154
+ ### 关键配置
155
+
156
+ ```yaml
157
+ jobs:
158
+ build-test:
159
+ runs-on: ubuntu-latest
160
+ steps:
161
+ - uses: actions/checkout@v4
162
+ - uses: actions/setup-node@v4
163
+ with:
164
+ node-version: '20'
165
+ cache: 'npm'
166
+ - run: npm ci
167
+ - run: node scripts/release-steps.mjs validate
168
+
169
+ publish:
170
+ needs: build-test
171
+ runs-on: ubuntu-latest
172
+ steps:
173
+ - uses: actions/checkout@v4
174
+ - uses: actions/setup-node@v4
175
+ with:
176
+ node-version: '20'
177
+ registry-url: 'https://registry.npmjs.org'
178
+ - run: npm ci
179
+ - run: node scripts/release-steps.mjs publish
180
+ env:
181
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
182
+
183
+ github-release:
184
+ needs: publish
185
+ runs-on: ubuntu-latest
186
+ steps:
187
+ - uses: actions/checkout@v4
188
+ - run: node scripts/release-steps.mjs release
189
+ env:
190
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
191
+
192
+ marketplace-sync:
193
+ needs: publish
194
+ runs-on: ubuntu-latest
195
+ steps:
196
+ - uses: actions/checkout@v4
197
+ with:
198
+ token: ${{ secrets.GITHUB_TOKEN }}
199
+ - run: node scripts/release-steps.mjs sync
200
+ env:
201
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
202
+ ```
203
+
204
+ ---
205
+
206
+ ## 5. 本地脚本
207
+
208
+ ### `scripts/release-local.mjs`
209
+
210
+ ```javascript
211
+ // 用法:
212
+ // node scripts/release-local.mjs
213
+ // node scripts/release-local.mjs --dry-run
214
+ // node scripts/release-local.mjs --start-from=publish
215
+ // npm run release:local
216
+ // npm run release:dry-run
217
+ ```
218
+
219
+ ### `package.json` 新增 scripts
220
+
221
+ ```json
222
+ {
223
+ "scripts": {
224
+ "release:local": "node scripts/release-local.mjs",
225
+ "release:dry-run": "node scripts/release-local.mjs --dry-run"
226
+ }
227
+ }
228
+ ```
229
+
230
+ ---
231
+
232
+ ## 6. 与现有 Release Skill 的分工
233
+
234
+ | 步骤 | 负责方 | 工具 |
235
+ |------|--------|------|
236
+ | 版本号更新(package.json、CHANGELOG、文档) | release skill(手动) | 编辑文件 |
237
+ | git commit + tag + push | release skill(手动) | git |
238
+ | npm publish | **GitHub Actions(自动)** | release-steps.mjs |
239
+ | GitHub Release 创建 | **GitHub Actions(自动)** | release-steps.mjs |
240
+ | marketplace.json 版本同步 | **GitHub Actions(自动)** | release-steps.mjs |
241
+
242
+ **`skills/release/SKILL.md` 更新说明**:在"发布步骤"末尾添加:
243
+ > 执行 `git push --tags` 后,GitHub Actions 自动接管后续步骤(npm 发布、GitHub Release、市场同步)。如需手动执行,运行 `npm run release:local`。
244
+
245
+ ---
246
+
247
+ ## 7. 测试策略
248
+
249
+ | 测试类型 | 覆盖内容 |
250
+ |---------|---------|
251
+ | 单元测试 | `release-steps.mjs` 各函数(mock exec) |
252
+ | dry-run 测试 | 验证 dry-run 模式不执行实际命令 |
253
+ | 集成测试 | GitHub Actions workflow 语法验证(`actionlint`) |
254
+ | 手动验证 | 首次发布时使用 `--dry-run` 预检 |
255
+
256
+ ---
257
+
258
+ ## 8. 风险与缓解
259
+
260
+ | 风险 | 缓解措施 |
261
+ |------|---------|
262
+ | NPM_TOKEN 过期 | CI 失败时发邮件通知,本地脚本作为备用 |
263
+ | marketplace-sync 提交冲突 | 使用 `git pull --rebase` 后再 push |
264
+ | 版本号不一致 | validateBuild 步骤检查 package.json vs git tag 一致性 |
265
+ | 网络超时 | 每步设置 timeout,失败后支持 `--start-from` 重试 |