@jspg-ai/coding-bb 0.0.3-beta.26 → 0.0.3-beta.27
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.
|
@@ -18,7 +18,7 @@ description: "为一个需求在 workspace 与各关联应用仓库同步创建
|
|
|
18
18
|
- **AI 配置 junction(ADR 0002 防线 B)**:创建 worktree 后把根的 AI 配置**内容子目录**(rules / skills / commands)junction 进工作树——开发会话开在 `<wt_path>`(上游 `/opsx:*` 相对路径原样生效,零翻译);工具状态落在工作树自建空壳目录,不互相污染;`cbb update` 在根跑一次全 worktree 生效
|
|
19
19
|
- **本技能必须在业务工作空间根目录执行**(即由 `cbb setup` 初始化、包含 `CBB-WORKSPACE.json` 的目录)
|
|
20
20
|
- 输入约定:**自由文本**(需求名等)直接在对话中提问并等待回复,禁止使用 `AskUserQuestion`;`AskUserQuestion` 仅用于固定选项决策场景(如 push 失败处理、远程分支已存在时的二选一)
|
|
21
|
-
-
|
|
21
|
+
- 关联应用恒为 `CBB-WORKSPACE.json` 的**全量 apps**,AI 不询问范围、不从需求语境收窄(worktree 单仓库创建成本低,全量镜像空间根布局);仅当**用户显式点名**应用时才经 `--apps` 传子集(见 Step 1),需要增减应用时编辑该文件并重跑本技能(幂等)
|
|
22
22
|
- **模式选择(ADR 0002)**:接到需求先判断用户要哪种模式——要**并行 / 隔离** → 本技能;**单线程快改、当前会话就地干** → 引导 `cbb-local-mode`。用户明确指定即遵从,agent 只给推荐不代决
|
|
23
23
|
|
|
24
24
|
---
|
|
@@ -143,7 +143,7 @@ worktree 需要知道要关联哪些应用仓库。
|
|
|
143
143
|
|
|
144
144
|
## Step 1:关联应用与代码同步
|
|
145
145
|
|
|
146
|
-
> ⓘ **关联应用 =
|
|
146
|
+
> ⓘ **关联应用 = 全量 apps**:直接使用 `CBB-WORKSPACE.json` 的全部应用,**不询问范围、不从需求语境收窄**。仅当用户显式点名应用(如"只建 jspg-cvat",典型用于排除状态异常的无关仓库)时才传子集。范围判断错了零代价——重跑本技能幂等补齐(已存在的分支/worktree 自动复用,详见「幂等重跑」章节)。
|
|
147
147
|
> 需要增减应用时,编辑 `CBB-WORKSPACE.json` 后**重跑本技能**即可。
|
|
148
148
|
|
|
149
149
|
### 1.1 同步 `.codespace/` 目录代码
|
|
@@ -164,10 +164,10 @@ node "<skill_dir>/scripts/sync-repos.js" "<ws_root>"
|
|
|
164
164
|
|
|
165
165
|
### 1.2 最终输出
|
|
166
166
|
|
|
167
|
-
|
|
167
|
+
列出本次关联的应用(全量,或用户显式指定的子集)及本地路径(保留序号便于复核),**仅作信息展示,不作为提问确认点**:
|
|
168
168
|
|
|
169
169
|
```
|
|
170
|
-
|
|
170
|
+
关联应用(需求 <需求名>,全量):
|
|
171
171
|
后端:
|
|
172
172
|
[1] ep-user-auth-app → .codespace/ep-user-auth-app
|
|
173
173
|
[2] ep-user-info-server → .codespace/ep-user-info-server
|
|
@@ -175,7 +175,7 @@ node "<skill_dir>/scripts/sync-repos.js" "<ws_root>"
|
|
|
175
175
|
[3] ep-user-web → .codespace/ep-user-web
|
|
176
176
|
```
|
|
177
177
|
|
|
178
|
-
> 后续所有步骤中的 `APP_REPOS` 均指向 `$WS_ROOT/.codespace
|
|
178
|
+
> 后续所有步骤中的 `APP_REPOS` 均指向 `$WS_ROOT/.codespace/<应用名>/`,不再依赖开发者手动配置本地路径。**缺省不传 `--apps`(= 全量);仅当用户显式点名应用时,才把子集名单经 `--apps` 参数传给 Step 3.3 / 3.5 脚本(逗号分隔)。**
|
|
179
179
|
|
|
180
180
|
---
|
|
181
181
|
|
|
@@ -241,7 +241,7 @@ node "<skill_dir>/scripts/update-gitignore.js" "<ws_root>" "<branch>"
|
|
|
241
241
|
node "<skill_dir>/scripts/create-branches.js" "<ws_root>" "<branch>" [--apps "app1,app2"]
|
|
242
242
|
```
|
|
243
243
|
|
|
244
|
-
- `--apps
|
|
244
|
+
- `--apps`:仅用户显式点名应用时传入(逗号分隔);缺省 = 全量
|
|
245
245
|
|
|
246
246
|
**解读输出**:
|
|
247
247
|
- 退出码 0 + 末行 `BRANCH_RESULT [...]` → 全部创建或复用成功
|
|
@@ -275,7 +275,7 @@ node "<skill_dir>/scripts/create-branches.js" "<ws_root>" "<branch>" [--apps "ap
|
|
|
275
275
|
node "<skill_dir>/scripts/create-worktrees.js" "<ws_root>" "<branch>" [--apps "app1,app2"]
|
|
276
276
|
```
|
|
277
277
|
|
|
278
|
-
- `--apps`:与 Step 3.3
|
|
278
|
+
- `--apps`:与 Step 3.3 相同(仅用户显式点名时传入);缺省 = 全量
|
|
279
279
|
|
|
280
280
|
脚本内部自动完成:
|
|
281
281
|
1. **元数据自愈**:仅 `git worktree prune`(清理"目录已缺失/失效"的注册项);**绝不删除任何物理目录**(0.0.3-beta.11 起——旧版"清理无元数据残留目录"因 Windows 路径分隔符不匹配会误删活跃 worktree,已整体移除)
|
|
@@ -336,7 +336,7 @@ node "<skill_dir>/scripts/junction-ai-config.js" "<ws_root>" "<wt_path>"
|
|
|
336
336
|
|
|
337
337
|
```
|
|
338
338
|
✅ worktree 已创建:<wt_path>
|
|
339
|
-
关联应用:<应用名 → .codespace/<应用名> 路径>
|
|
339
|
+
关联应用:<应用名 → .codespace/<应用名> 路径> 列表(全量,或用户显式指定的子集)
|
|
340
340
|
🔗 AI 配置已 junction 就位:rules / skills / commands(cbb update 一处生效)
|
|
341
341
|
📌 开发会话开进 <wt_path>(桌面端:当前窗口切换工作区根即可,无需新窗口;CLI 端:新开会话)
|
|
342
342
|
空间根路径(控制面,close 后回切):<ws_root>
|
|
@@ -379,7 +379,7 @@ node "<skill_dir>/scripts/junction-ai-config.js" "<ws_root>" "<wt_path>"
|
|
|
379
379
|
| workspace 主分支 tracked 内容(openspec/、cbb/ 等) | 自动 checkout 到工作树,无需额外动作(cp/clone 都是多余的) |
|
|
380
380
|
| AI 配置目录(.claude/、.qoder/、.opencode/ 等) | Step 3.6 junction 内容子目录进工作树;唯一物理副本在空间根,`cbb update` 一处生效 |
|
|
381
381
|
| 需求名(同时作分支名和工作树目录名) | 用户在对话中纯文本输入,参考 Step 3.1 命名规则(kebab-case,禁 `..`、路径分隔符、空格) |
|
|
382
|
-
| 关联应用范围 |
|
|
382
|
+
| 关联应用范围 | 恒为全量(不询问、不从需求语境收窄);用户显式点名应用时 `--apps` 传子集;增减应用后重跑本技能(幂等) |
|
|
383
383
|
| 单线程快改 / 不需要隔离 | 引导 cbb-local-mode(本地模式,就地切分支) |
|
|
384
384
|
| 运行环境 node 不可用 | 脚本 fail-fast 并提示用户到系统终端重试 |
|
|
385
385
|
| 推送(认证/网络/保护分支/远程已存在) | 不在本技能——`cbb-worktree-push` 处理(lazy push,ADR 0002) |
|