msdevflow 0.7.4 → 0.7.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 (28) hide show
  1. package/README.md +39 -40
  2. package/lib/bootstrap.js +485 -103
  3. package/package.json +2 -2
  4. package/skill/{msdevflow → msd}/README.md +54 -39
  5. package/skill/{msdevflow → msd}/SKILL.md +26 -35
  6. package/skill/{msdevflow → msd}/references/ci-and-review.md +2 -2
  7. package/skill/{msdevflow → msd}/references/command-capabilities.md +1 -1
  8. package/skill/{msdevflow → msd}/references/create-issue.md +1 -1
  9. package/skill/{msdevflow → msd}/references/design-and-development.md +1 -1
  10. package/skill/{msdevflow → msd}/references/openlibing-ci.md +9 -2
  11. package/skill/{msdevflow → msd}/references/pr-and-ci.md +2 -2
  12. package/skill/{msdevflow → msd}/references/recovery.md +1 -1
  13. package/skill/{msdevflow → msd}/references/review-and-merge.md +2 -2
  14. package/skill/{msdevflow → msd}/references/setup-and-issue.md +2 -2
  15. package/skill/{msdevflow → msd}/references/state-and-safety.md +1 -1
  16. package/skill/{msdevflow → msd}/scripts/openlibing_ci.py +62 -21
  17. package/skill/msd-ci/SKILL.md +15 -0
  18. package/skill/msd-code-review/SKILL.md +15 -0
  19. package/skill/msd-create-issue/SKILL.md +15 -0
  20. package/skill/msd-develop/SKILL.md +15 -0
  21. package/skill/msd-discover/SKILL.md +15 -0
  22. package/skill/msd-feedback/SKILL.md +15 -0
  23. package/skill/msd-issue/SKILL.md +15 -0
  24. package/skill/msd-merge/SKILL.md +15 -0
  25. package/skill/msd-openlibing-auth/SKILL.md +15 -0
  26. package/skill/msd-pr/SKILL.md +15 -0
  27. /package/skill/{msdevflow → msd}/references/code-review.md +0 -0
  28. /package/skill/{msdevflow → msd}/scripts/requirements.txt +0 -0
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # msdevflow
2
2
 
3
- `msdevflow` 是一个用于 GitCode Agent Skill,可以把已授权的 Issue 安全推进到代码实现、普通 PR、CI、检视意见闭环和最终合入,也可以通过显式 `action` 只执行其中一个能力。正式支持 Claude Code、Codex 和 OpenCode;Trae 的 Skills 安装与兼容机制尚未完成可靠验证,因此当前不宣称支持。
3
+ `msdevflow` npm 包提供一套 GitCode Agent Skills:`msd` 核心可以把已授权的 Issue 安全推进到代码实现、普通 PR、CI、检视意见闭环和最终合入,十个 `msd-<action>` 薄路由入口用于在输入阶段发现并运行单项能力。正式支持 Claude Code、Codex 和 OpenCode;Trae 的 Skills 安装与兼容机制尚未完成可靠验证,因此当前不宣称支持。
4
4
 
5
5
  ## 安装
6
6
 
@@ -9,7 +9,7 @@
9
9
  - Claude Code、Codex 或 OpenCode 中至少一个;
10
10
  - Node.js `>=18` 和 npm;
11
11
  - Git;
12
- - Python `>=3.10` 和 pip;
12
+ - Python `>=3.10`,且标准库 `venv` 模块可用;
13
13
  - GitCode 账号;
14
14
  - Chrome 或 Edge(推荐,用于 openLiBing OAuth)。
15
15
 
@@ -29,9 +29,9 @@ npx msdevflow@latest setup
29
29
 
30
30
  `setup` 默认检测 PATH 中的 Claude Code、Codex 和 OpenCode,展示完整计划并在确认后:
31
31
 
32
- 1. 把同一份 `msdevflow` skill 原子安装或更新到所需目标;
32
+ 1. 把一个 `msd` 核心和十个 `msd-<action>` 路由器作为整套事务原子安装或更新到所需目标;
33
33
  2. 安装或升级官方 `@gitcode-cli/cli@latest`;
34
- 3. 安装受审的 Python Playwright 依赖;
34
+ 3. 创建或修复 msdevflow 受管 Python venv,并在其中安装受审的 Playwright 依赖;
35
35
  4. 验收 Issue、PR、结构化评论、行内评论、JSON、显式仓库和正文文件等 CLI 能力;
36
36
  5. GitCode CLI 未认证时打开官方 Token 创建页面,并让 CLI 自己的终端提示接收 Token。
37
37
 
@@ -47,15 +47,17 @@ npx msdevflow setup --dry-run --targets all
47
47
  安装目录映射:
48
48
 
49
49
  ```text
50
- Claude Code -> ~/.claude/skills/msdevflow
51
- Codex -> ~/.agents/skills/msdevflow
52
- 仅 OpenCode -> ~/.agents/skills/msdevflow
53
- OpenCode + Claude Code -> 复用 ~/.claude/skills/msdevflow
54
- OpenCode + Codex -> 复用 ~/.agents/skills/msdevflow
55
- Claude Code + Codex -> 两个受管副本
56
- 三者同时安装 -> 两个受管副本,并提示 OpenCode 可从两处发现同名 skill
50
+ Claude Code -> ~/.claude/skills/{msd,msd-*}
51
+ Codex -> ~/.agents/skills/{msd,msd-*}
52
+ 仅 OpenCode -> ~/.agents/skills/{msd,msd-*}
53
+ OpenCode + Claude Code -> 复用 Claude 目标
54
+ OpenCode + Codex -> 复用 Agent Skills 目标
55
+ Claude Code + Codex -> 两套受管副本
56
+ 三者同时安装 -> 两套受管副本,并提示 OpenCode 双路径发现
57
57
  ```
58
58
 
59
+ 每个物理目标都包含完整套件,薄路由器不复制核心业务规则。已有 entry 只有在 manifest 精确匹配自身名称时才允许更新;由旧版包管理的 `msdevflow` 目录会在新套件全部验证后安全迁移,来源不明的目录、文件或符号链接会阻断安装。
60
+
59
61
  自定义目录:
60
62
 
61
63
  ```bash
@@ -65,29 +67,24 @@ npx msdevflow setup --agents-skills-dir "<shared-agent-skills-directory>"
65
67
 
66
68
  `--skills-dir` 未配合 `--targets` 使用时保留旧语义,只安装 Claude Code 目标。没有检测到客户端时,交互运行会要求选择目标;非交互运行必须提供 `--targets`。安装完成后重启或重新加载对应客户端。如果机器已有 Python 版本的 `gitcode`,setup 会保留它,并为 npm CLI 创建 `gitcode-npm` 命令;否则使用 `gitcode`。
67
69
 
68
- ## 运行与 action 菜单
70
+ setup 在所有平台使用独立受管 venv,不向系统 Python 安装包:
69
71
 
70
- 从目标仓库目录启动客户端并提交 `msdevflow`:
72
+ ```text
73
+ Windows: %LOCALAPPDATA%\msdevflow\python
74
+ macOS/Linux: ${XDG_DATA_HOME:-$HOME/.local/share}/msdevflow/python
75
+ ```
71
76
 
72
- - Claude Code:输入并提交 `/msdevflow`;
73
- - Codex:使用 `$msdevflow` 或从 `/skills` 选择后提交;
74
- - OpenCode:打开 `/skills`,选择 `msdevflow`,再提交插入的 `/msdevflow`。`@` 用于文件、reference 或 agent,不用于选择 Skill。
77
+ 可用 `MSDEVFLOW_PYTHON_DIR` 覆盖,值必须是绝对路径或以 `~` 开头;setup 与后续 action 必须使用同一配置。`venv` 属于 CPython 标准库,但精简发行版可能未安装;Debian/Ubuntu 通常需要用户自行安装 `python3-venv`。setup 不执行 sudo,不回退到全局 pip,也不使用 `--break-system-packages`。Windows 官方 Python 和 Homebrew Python 通常已包含 `venv`。
75
78
 
76
- 没有字面量 `action=<name>` 时,Agent 会先通过宿主原生单选工具显示分级菜单,选择前不会探测仓库或访问 GitCode:
79
+ ## 运行与 action 补全
77
80
 
78
- ```text
79
- 选择运行方式
80
- ├─ 完整端到端流程
81
- ├─ 作者工作流
82
- │ ├─ Issue 管理 -> discover | create-issue | issue
83
- │ ├─ 开发与交付 -> develop | pr | ci
84
- │ └─ PR 后续 -> feedback | merge
85
- └─ 独立工具 -> openlibing-auth | code-review
86
- ```
81
+ 从目标仓库目录启动客户端。直接调用核心 `msd` 会运行完整作者 E2E:
87
82
 
88
- Claude Code 使用 `AskUserQuestion`,Codex 使用 `request_user_input`,OpenCode 使用 `question`。每次只显示当前层且不超过 3 项;工具不可用或处于非交互模式时,Agent 只输出当前层编号选项并等待回复,不自行选择默认项。
83
+ - Claude Code:输入并提交 `/msd`;
84
+ - Codex:使用 `$msd` 或从 `/skills` 选择;
85
+ - OpenCode:打开 `/skills`,选择 `msd`,再提交插入的 `/msd`。`@` 用于文件、reference 或 agent,不用于选择 Skill。
89
86
 
90
- 选择“完整端到端流程”后,才会运行:
87
+ 核心流程为:
91
88
 
92
89
  ```text
93
90
  Issue 发现/核验
@@ -102,9 +99,9 @@ Issue 发现/核验
102
99
  -> 远端回读 PR 已 merged
103
100
  ```
104
101
 
105
- 调用正文可预先提供 Issue/PR URL、仓库路径、canonical、source 和模式;菜单选择后这些参数会保留。即使正文写明“运行完整 E2E”或某个具体任务,只要没有字面量 `action=<name>`,仍从顶层菜单开始。
102
+ 调用正文可提供 Issue/PR URL、仓库路径、canonical、source 和模式。核心 `msd` 不显示运行时 Question 菜单。
106
103
 
107
- 这是可暂停、可恢复的流程。外部检视或审批有新进展后,可再次提交 `/msdevflow` 和 PR 信息,并在菜单中选择“完整端到端流程”:
104
+ 这是可暂停、可恢复的流程。外部检视或审批有新进展后,可再次提交 `/msd` 和 PR 信息:
108
105
 
109
106
  ```text
110
107
  恢复 https://gitcode.com/<canonical-owner>/<repo>/pulls/<number> 的完整作者 E2E。
@@ -116,7 +113,7 @@ source:<your-account>/<repo>
116
113
 
117
114
  ## 独立 action
118
115
 
119
- 显式提供 `action=<name>` 时,只运行该 action,完成后立即停止;前置条件不足时不会隐式补跑上游流程。
116
+ Claude Code/OpenCode 输入 `/msd-`、Codex 输入 `$msd-` 即可筛选十个独立入口。每个入口只运行对应 action,完成后立即停止;前置条件不足时不会隐式补跑上游流程。`/msd action=<name>` `$msd action=<name>` 仍是兼容调用,但参数本身不提供跨客户端枚举补全。
120
117
 
121
118
  | action | 用途 | 完成状态或结果 |
122
119
  |---|---|---|
@@ -134,19 +131,19 @@ source:<your-account>/<repo>
134
131
  示例:
135
132
 
136
133
  ```text
137
- /msdevflow action=create-issue
134
+ /msd-create-issue
138
135
  在 Ascend/example 提一个 bug:升级后首次启动失败……
139
136
  使用 guided 模式,确认完整预览后再创建。
140
137
  ```
141
138
 
142
139
  ```text
143
- /msdevflow action=ci
140
+ /msd-ci
144
141
  PR:https://gitcode.com/Ascend/example/pulls/456
145
142
  本地仓库:D:\work\example
146
143
  ```
147
144
 
148
145
  ```text
149
- /msdevflow action=code-review
146
+ /msd-code-review
150
147
  PR:https://gitcode.com/Ascend/example/pulls/789
151
148
  ```
152
149
 
@@ -188,17 +185,19 @@ Agent 写入的 PR/Issue 正文、评论和 discussion 回复末尾会附加:
188
185
 
189
186
  ## 常见阻塞
190
187
 
191
- ### 客户端找不到 `msdevflow`
188
+ ### 客户端找不到 `msd` 或 `msd-<action>`
192
189
 
193
- 按目标确认至少一个受支持的 manifest 存在,然后重启或重新加载客户端:
190
+ 按目标确认核心和相应路由器的 manifest 都存在,然后重启或重新加载客户端:
194
191
 
195
192
  ```text
196
- Claude Code: ~/.claude/skills/msdevflow/SKILL.md
197
- Codex: ~/.agents/skills/msdevflow/SKILL.md
193
+ Claude Code: ~/.claude/skills/msd/SKILL.md
194
+ ~/.claude/skills/msd-<action>/SKILL.md
195
+ Codex: ~/.agents/skills/msd/SKILL.md
196
+ ~/.agents/skills/msd-<action>/SKILL.md
198
197
  OpenCode: 上述任一路径(按 setup 计划)
199
198
  ```
200
199
 
201
- 可运行 `npx msdevflow setup --dry-run --targets <clients>` 检查目标映射。
200
+ Claude Code/OpenCode 可输入 `/msd-` 筛选 action;Codex 使用 `$msd-`。可运行 `npx msdevflow setup --dry-run --targets <clients>` 检查目标映射。
202
201
 
203
202
  ### `blocked: bootstrap-required`
204
203
 
@@ -229,4 +228,4 @@ npx msdevflow setup
229
228
 
230
229
  ## 详细文档
231
230
 
232
- 完整 action、恢复、模板、CI、review、UTF-8 和安全契约见 [`skill/msdevflow/README.md`](skill/msdevflow/README.md)。
231
+ 完整 action、恢复、模板、CI、review、UTF-8 和安全契约见 [`skill/msd/README.md`](skill/msd/README.md)。