ai-project-manage-cli 7.1.12 → 7.1.15

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ai-project-manage-cli",
3
- "version": "7.1.12",
3
+ "version": "7.1.15",
4
4
  "description": "命令行工具:后续用于调用平台后端 API 完成运维与自动化操作",
5
5
  "type": "module",
6
6
  "private": false,
@@ -31,12 +31,12 @@
31
31
  - write_doc.md:当需要写文档时需要读取这个文档,记住写文档的规则
32
32
  - webide_git_commit.md:WebIDE 开发/修码时读取,按规范分轮 commit,结束前 push
33
33
  - webide_testcase.md:WebIDE 生成测试用例时读取,按规范编写并提交用例
34
- - webide_merge.md:WebIDE 验收合并时读取;先解冲突再调 MergeWebIdePullRequests,需求相悖则拒绝合并
34
+ - webide_merge.md:WebIDE 验收通过后读取;直接调用 MergeWebIdePullRequests 合并代码
35
35
 
36
- - 仓库项目上下文(`.apm/project/`):
36
+ - 项目文档(`.apm/docs/`):
37
37
 
38
- - 索引: `.apm/project/manifest.json` — 本仓库在平台登记的文档列表
39
- - 文档文件: `.apm/project/{path}` — 与 manifest 中 path 对应;`apm pull` 自动同步,`apm connect` 消息结束后自动推回平台
38
+ - 索引: `.apm/docs/manifest.json` — 本项目在平台登记的文档列表
39
+ - 文档文件: `.apm/docs/{path}` — 与 manifest 中 path 对应;`apm pull` 自动同步,`apm connect` 消息结束后自动推回平台
40
40
  - 任务涉及菜单名、路由、业务术语等时,**先 Read manifest 与相关文档**,禁止猜测路径
41
41
 
42
42
  - 本轮任务需要关注的文档指引(.apm/sessions/<会话 ID>/\*):
@@ -1,39 +1,16 @@
1
1
  ## WebIDE 合并规范
2
2
 
3
- 适用场景:WebIDE 验收通过(`accept`)后:同步最新基线 → 对照原始任务审核 → 合并本任务 PR。
3
+ 适用场景:WebIDE 验收通过(`accept`)后合并本任务 PR。
4
4
 
5
5
  ### 目标
6
6
 
7
- 将本任务各仓库 `feat/task-<taskId>` 分支上的变更安全合并进基线分支(通常为 `main`)。
7
+ 将本任务各仓库特性分支上的变更合并进基线分支(通常为 `main`)。
8
8
 
9
9
  ### 步骤
10
10
 
11
- 1. **先拉取最新基线并处理冲突,再审核,最后调用合并工具**
12
-
13
- - 在各相关仓库拉取最新基线(`git fetch`),将基线 merge/rebase 进特性分支。
14
- - 有冲突时:在本地解冲突后 commit 并 `git push`(必要时 `--force-with-lease` 仅用于已 rebase 的特性分支)。
15
- - 解冲突原则:保留本任务需求与已确认计划所要求的行为;吸收基线中合理且不冲突的改动。
16
- - **解冲突失败或无法安全取舍**:立即 `git merge --abort` / `git rebase --abort` 撤回本次同步,保持特性分支为同步前状态;**禁止**调用合并工具。
17
-
18
- 2. **不可调和冲突 / 同步失败 → 拒绝合并**
19
-
20
- - 若冲突双方改动在需求/业务逻辑上相悖,或本地同步已 abort:
21
- - **禁止**调用 `MergeWebIdePullRequests`
22
- - 用 `AppendMessage` 说明冲突文件、矛盾点、为何无法自动取舍,以及已执行的回退
23
- - 以错误结束本轮(抛错或明确失败),等待人工介入(前端将展示失败信息)
24
-
25
- 3. **对照原始任务审核代码**
26
-
27
- - 在合并前快速核对:改动是否覆盖任务需求与已确认计划;是否引入明显与需求相悖的行为。
28
- - 若审核不通过:同样禁止合并,AppendMessage 说明问题并以错误结束。
29
-
30
- 4. **确认可安全合并后**
31
- - 调用一次 `MergeWebIdePullRequests`(无参数),由平台合并本任务全部 OPEN PR
32
- - 再用 `AppendMessage` 汇总合并结果(PR 编号、仓库)
11
+ 1. 调用一次 `MergeWebIdePullRequests`(`confirmedConflictFree=true`),由平台合并本任务全部 OPEN PR。
12
+ 2. 用 `AppendMessage` 汇总合并结果(PR 编号、仓库)。
33
13
 
34
14
  ### 禁止
35
15
 
36
- - 未拉取最新基线 / 未检查冲突就直接调合并工具
37
- - 同步冲突未 abort 就继续合并
38
- - 为强行合并而删改与需求相悖的关键逻辑却不说明
39
- - 在仍有草稿 PR / 明显冲突未解决时假装成功
16
+ - 在合并之外自行执行同步基线、代码审核、部署等额外流程
@@ -0,0 +1,37 @@
1
+ # WebIDE 长驻终端
2
+
3
+ 长驻进程(如前后端 `dev`)必须用自定义工具管理,**禁止**用 Shell 启动会长期占用的 dev server。
4
+
5
+ ## 工具
6
+
7
+ - `StartWebIdeTerminal`:`{ key, name?, cwd, command, readyPattern?, portsHint? }`
8
+ - `key` 稳定标识,如 `frontend` / `backend`;同 key 已在跑(RUNNING/READY)则幂等返回
9
+ - 进程挂在 CLI 主进程,跨多轮消息存活
10
+ - `StopWebIdeTerminal`:`{ key }` 或 `{ terminalId }`;杀进程树,状态改为 EXITED(不删记录)
11
+ - `StopAllWebIdeTerminals`:停掉本 task 全部仍存活的终端(重跑本地环境前使用)
12
+ - `ListWebIdeTerminals`:列出**存活**终端(STARTING / RUNNING / READY / STOPPING),**不含** EXITED / FAILED
13
+
14
+ ## 启动命令来源
15
+
16
+ 必须 Read `.apm/docs/deploy.md`,按文档中的 cwd / command / 服务划分调用 `StartWebIdeTerminal`。
17
+
18
+ - 文档不存在或未写明启动方式 → 用 AppendMessage 说明无法启动本地环境,**禁止猜测命令**。
19
+
20
+ ## 时机(打开本地 dev)
21
+
22
+ 固定顺序:
23
+
24
+ 1. **`ListWebIdeTerminals`**
25
+ 2. 若无活终端 → Read `deploy.md` → 按前后端分别 `StartWebIdeTerminal`;已有活终端则复用
26
+ 3. 等待 READY / 端口即可
27
+ 4. AppendMessage:可在「终端」面板观察本地日志;「浏览器」面板由平台打开本客户机外网地址(勿粘贴整段 stdout;无需 Agent 打开浏览器)
28
+
29
+ 后续改码(热更新):有活终端则**复用,不重起**。
30
+
31
+ 显式重跑:`StopAllWebIdeTerminals` → 再 Read `deploy.md` → 重新 Start。
32
+
33
+ ## 规范
34
+
35
+ 1. 禁止用 Shell / 后台进程方式起 `dev` / `serve` 等长驻命令。
36
+ 2. 观察日志请用户看 WebIDE「终端」面板;页面请用户看「浏览器」面板(客户机外网地址)。
37
+ 3. 任务结束或不再需要时可 Stop;不要留下孤儿进程。