super-dev 2.0.8__tar.gz → 2.0.10__tar.gz
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.
- {super_dev-2.0.8/super_dev.egg-info → super_dev-2.0.10}/PKG-INFO +67 -8
- {super_dev-2.0.8 → super_dev-2.0.10}/README.md +66 -7
- {super_dev-2.0.8 → super_dev-2.0.10}/pyproject.toml +1 -1
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/__init__.py +1 -1
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/analyzer/__init__.py +8 -2
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/analyzer/analyzer.py +41 -14
- super_dev-2.0.10/super_dev/analyzer/impact.py +255 -0
- super_dev-2.0.10/super_dev/analyzer/repo_map.py +342 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/cli.py +2012 -115
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/config/manager.py +2 -2
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/creators/creator.py +8 -1
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/creators/document_generator.py +79 -7
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/creators/prompt_generator.py +44 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/creators/requirement_parser.py +65 -1
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/deployers/delivery.py +1 -1
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/integrations/manager.py +403 -40
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/orchestrator/engine.py +5 -1
- super_dev-2.0.10/super_dev/proof_pack.py +454 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/release_readiness.py +36 -0
- super_dev-2.0.10/super_dev/review_state.py +139 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/skills/manager.py +74 -182
- super_dev-2.0.10/super_dev/terminal.py +169 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/web/api.py +612 -4
- {super_dev-2.0.8 → super_dev-2.0.10/super_dev.egg-info}/PKG-INFO +67 -8
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev.egg-info/SOURCES.txt +4 -0
- super_dev-2.0.8/super_dev/review_state.py +0 -39
- {super_dev-2.0.8 → super_dev-2.0.10}/LICENSE +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/setup.cfg +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/analyzer/detectors.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/analyzer/models.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/catalogs.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/config/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/config/frontend.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/creators/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/creators/frontend_builder.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/creators/implementation_builder.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/creators/spec_builder.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/creators/task_executor.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/deployers/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/deployers/cicd.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/deployers/migration.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/deployers/rehearsal.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/deployers/rehearsal_runner.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/design/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/design/aesthetics.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/design/charts.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/design/codegen.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/design/engine.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/design/generator.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/design/landing.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/design/tech_stack.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/design/tokens.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/design/ui_intelligence.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/design/ux_guide.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/exceptions.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/experts/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/experts/service.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/integrations/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/orchestrator/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/orchestrator/contracts.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/orchestrator/experts.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/orchestrator/knowledge.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/orchestrator/quality.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/orchestrator/telemetry.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/policy/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/policy/manager.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/reviewers/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/reviewers/code_review.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/reviewers/quality_gate.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/reviewers/redteam.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/reviewers/ui_review.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/skills/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/specs/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/specs/generator.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/specs/manager.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/specs/models.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/specs/validator.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/utils/__init__.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev/utils/logger.py +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev.egg-info/dependency_links.txt +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev.egg-info/entry_points.txt +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev.egg-info/requires.txt +0 -0
- {super_dev-2.0.8 → super_dev-2.0.10}/super_dev.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: super-dev
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.10
|
|
4
4
|
Summary: Super Dev - Pipeline AI Coding Assistant
|
|
5
5
|
Author-email: Excellent <11964948@qq.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -43,14 +43,14 @@ Dynamic: license-file
|
|
|
43
43
|
|
|
44
44
|
<div align="center">
|
|
45
45
|
|
|
46
|
-
|
|
46
|
+
<img src="docs/assets/super-dev-logo.svg" alt="Super Dev - AI PIPELINE ORCHESTRATOR" width="600">
|
|
47
|
+
|
|
47
48
|
### 面向商业级交付的 AI 开发编排工具
|
|
48
49
|
|
|
49
50
|
[](LICENSE)
|
|
50
51
|
[](https://www.python.org/downloads/)
|
|
51
52
|
[](https://mypy-lang.org/)
|
|
52
53
|
[](https://docs.astral.sh/ruff/)
|
|
53
|
-
[](.github/workflows/ci.yml)
|
|
54
54
|
|
|
55
55
|
[English](README_EN.md) | 简体中文
|
|
56
56
|
|
|
@@ -60,7 +60,16 @@ Dynamic: license-file
|
|
|
60
60
|
|
|
61
61
|
## 版本
|
|
62
62
|
|
|
63
|
-
当前版本:`2.0.
|
|
63
|
+
当前版本:`2.0.10`
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## 演示视频
|
|
68
|
+
|
|
69
|
+
<video controls playsinline preload="metadata" src="https://shangyankeji.github.io/super-dev/demo.mp4" width="100%"></video>
|
|
70
|
+
|
|
71
|
+
- 在线播放:[观看演示视频](https://shangyankeji.github.io/super-dev/demo.mp4)
|
|
72
|
+
- 仓库文件:[demo.mp4](demo.mp4)
|
|
64
73
|
|
|
65
74
|
---
|
|
66
75
|
|
|
@@ -95,6 +104,7 @@ Dynamic: license-file
|
|
|
95
104
|
|
|
96
105
|
- 同类产品研究 -> 需求增强 -> 文档 -> Spec -> 实现骨架 -> 红队 -> 质量门禁 -> 交付
|
|
97
106
|
- 全流程可恢复执行(`run --resume`)
|
|
107
|
+
- UI 不满意时可发起正式改版回路(`review ui`)
|
|
98
108
|
- 适配 0-1 新建与 1-N+1 增量场景
|
|
99
109
|
|
|
100
110
|
### 3. 策略治理(Policy DSL)
|
|
@@ -116,6 +126,7 @@ Dynamic: license-file
|
|
|
116
126
|
- `pipeline-contract` 阶段契约证据
|
|
117
127
|
- `resume-audit` 恢复执行审计
|
|
118
128
|
- `delivery manifest/report/archive` 交付包
|
|
129
|
+
- `proof-pack` 交付证据汇总
|
|
119
130
|
|
|
120
131
|
### 6. 商业级门禁链路
|
|
121
132
|
|
|
@@ -161,6 +172,20 @@ super-dev update
|
|
|
161
172
|
super-dev
|
|
162
173
|
```
|
|
163
174
|
|
|
175
|
+
常用交付证据命令:
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
super-dev integrate audit --auto --repair --force
|
|
179
|
+
super-dev integrate validate --auto
|
|
180
|
+
super-dev repo-map
|
|
181
|
+
super-dev impact "修改登录流程" --files services/auth.py
|
|
182
|
+
super-dev fix "修复登录接口 500 并补充回归验证"
|
|
183
|
+
super-dev release proof-pack
|
|
184
|
+
super-dev release readiness
|
|
185
|
+
super-dev review architecture --status revision_requested --comment "技术方案需要重构"
|
|
186
|
+
super-dev review quality --status revision_requested --comment "质量门禁未通过,需要整改"
|
|
187
|
+
```
|
|
188
|
+
|
|
164
189
|
默认会进入宿主安装引导:
|
|
165
190
|
|
|
166
191
|
- 顶部显示 `Super Dev` 安装入口
|
|
@@ -176,17 +201,31 @@ super-dev
|
|
|
176
201
|
|
|
177
202
|
- slash 宿主:`/super-dev 你的需求`
|
|
178
203
|
- 非 slash 宿主:`super-dev: 你的需求`
|
|
204
|
+
- 需要真人验收时,可执行:`super-dev integrate validate --target <host>`
|
|
205
|
+
|
|
206
|
+
如果你希望先显式初始化项目契约,再开始接入宿主:
|
|
207
|
+
|
|
208
|
+
```bash
|
|
209
|
+
super-dev bootstrap --name my-project --platform web --frontend next --backend node
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
这会显式生成:
|
|
213
|
+
|
|
214
|
+
- `.super-dev/WORKFLOW.md`
|
|
215
|
+
- `output/*-bootstrap.md`
|
|
216
|
+
|
|
217
|
+
用来固定初始化规范、触发方式和阶段顺序。
|
|
179
218
|
|
|
180
219
|
### 3. 指定版本安装
|
|
181
220
|
|
|
182
221
|
```bash
|
|
183
|
-
pip install super-dev==2.0.
|
|
222
|
+
pip install super-dev==2.0.10
|
|
184
223
|
```
|
|
185
224
|
|
|
186
225
|
### 4. GitHub 指定标签安装
|
|
187
226
|
|
|
188
227
|
```bash
|
|
189
|
-
pip install git+https://github.com/shangyankeji/super-dev.git@v2.0.
|
|
228
|
+
pip install git+https://github.com/shangyankeji/super-dev.git@v2.0.10
|
|
190
229
|
```
|
|
191
230
|
|
|
192
231
|
### 5. 源码开发安装
|
|
@@ -259,6 +298,23 @@ uv tool install super-dev
|
|
|
259
298
|
5. 宿主负责联网、推理、编码、运行与修改文件
|
|
260
299
|
6. Super Dev 负责流程、文档、门禁、审计和交付标准
|
|
261
300
|
|
|
301
|
+
补充说明:
|
|
302
|
+
|
|
303
|
+
- 新功能开发默认走完整流水线:`research -> 三文档 -> 用户确认 -> Spec / tasks -> 前端运行验证 -> 后端 / 测试 / 交付`
|
|
304
|
+
- 缺陷修复同样不会直接跳过文档;会走轻量补丁路径,先整理问题现象、复现条件、影响范围和回归风险,再更新补丁文档与验证结果
|
|
305
|
+
- 分析阶段默认排除 `.venv`、`site-packages`、`node_modules` 等非项目源码目录
|
|
306
|
+
|
|
307
|
+
---
|
|
308
|
+
|
|
309
|
+
## 关键文档
|
|
310
|
+
|
|
311
|
+
- [宿主使用指南](docs/HOST_USAGE_GUIDE.md)
|
|
312
|
+
- [宿主能力审计](docs/HOST_CAPABILITY_AUDIT.md)
|
|
313
|
+
- [宿主运行时验收矩阵](docs/HOST_RUNTIME_VALIDATION.md)
|
|
314
|
+
- [宿主接入面说明](docs/HOST_INSTALL_SURFACES.md)
|
|
315
|
+
- [工作流指南](docs/WORKFLOW_GUIDE.md)
|
|
316
|
+
- [产品审查](docs/PRODUCT_AUDIT.md)
|
|
317
|
+
|
|
262
318
|
执行原则:
|
|
263
319
|
|
|
264
320
|
- 宿主负责“写代码”
|
|
@@ -292,6 +348,9 @@ uv tool install super-dev
|
|
|
292
348
|
2. Claude Code / Gemini CLI / Kiro CLI / Qoder CLI / CodeBuddy CLI 等支持原生映射的宿主,可直接输入:`/super-dev 你的需求`。
|
|
293
349
|
3. Codex CLI、Kimi CLI 当前不使用 `/super-dev`;在宿主会话里输入 `super-dev: 你的需求`。
|
|
294
350
|
4. 宿主会先被约束执行“同类产品研究 -> 三文档 -> 等待用户确认 -> Spec -> 前端运行验证 -> 后端/测试/交付”,不会直接跳到写代码。
|
|
351
|
+
5. 如果是缺陷修复,优先使用 `super-dev fix "缺陷描述"`,走轻量 bugfix 路径,而不是完整功能开发路径。
|
|
352
|
+
6. 接手已有项目或复杂仓库时,优先执行 `super-dev repo-map` 生成代码库地图,再让宿主进入开发。
|
|
353
|
+
7. 如果准备重构、改接口、修登录流或修改关键状态流,先执行 `super-dev impact "变更描述" --files ...` 评估影响范围,再动手。
|
|
295
354
|
|
|
296
355
|
### 宿主如何理解 Super Dev
|
|
297
356
|
|
|
@@ -484,6 +543,7 @@ super-dev onboard --host iflow --force --yes
|
|
|
484
543
|
补充说明:
|
|
485
544
|
1. 当前按 slash 宿主适配。
|
|
486
545
|
2. 如果 slash 未出现,先检查项目级命令文件是否已写入。
|
|
546
|
+
3. 如果宿主返回 `Invalid API key provided`,先在 iFlow 会话内执行 `/auth`,或更新 `IFLOW_API_KEY` / `settings.json` 后重启宿主会话。
|
|
487
547
|
|
|
488
548
|
#### 10. Kimi CLI
|
|
489
549
|
|
|
@@ -653,7 +713,7 @@ super-dev: 你的需求
|
|
|
653
713
|
|
|
654
714
|
补充说明:
|
|
655
715
|
1. Codex CLI 当前使用 `super-dev: 你的需求` 作为主触发方式。
|
|
656
|
-
2. 实际依赖
|
|
716
|
+
2. 实际依赖 `AGENTS.md` 与官方用户级 Skill `~/.codex/skills/super-dev-core/SKILL.md`。
|
|
657
717
|
3. 如果旧会话没加载新 Skill,重启 `codex` 再试。
|
|
658
718
|
|
|
659
719
|
#### 18. Trae
|
|
@@ -678,4 +738,3 @@ super-dev: 你的需求
|
|
|
678
738
|
2. 接入一定会写入项目级 `.trae/project_rules.md`、`.trae/rules.md` 和用户级 `~/.trae/user_rules.md`、`~/.trae/rules.md`;如果检测到兼容技能目录,也会增强安装 `~/.trae/skills/super-dev-core/SKILL.md`。
|
|
679
739
|
3. 完成接入后建议重开 Trae 或至少新开一个 Agent Chat,使规则生效;如果兼容 Skill 已安装,也会一起生效。
|
|
680
740
|
4. 随后按 `output/*` 与 `.super-dev/changes/*/tasks.md` 推进开发。
|
|
681
|
-
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
<div align="center">
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
<img src="docs/assets/super-dev-logo.svg" alt="Super Dev - AI PIPELINE ORCHESTRATOR" width="600">
|
|
6
|
+
|
|
6
7
|
### 面向商业级交付的 AI 开发编排工具
|
|
7
8
|
|
|
8
9
|
[](LICENSE)
|
|
9
10
|
[](https://www.python.org/downloads/)
|
|
10
11
|
[](https://mypy-lang.org/)
|
|
11
12
|
[](https://docs.astral.sh/ruff/)
|
|
12
|
-
[](.github/workflows/ci.yml)
|
|
13
13
|
|
|
14
14
|
[English](README_EN.md) | 简体中文
|
|
15
15
|
|
|
@@ -19,7 +19,16 @@
|
|
|
19
19
|
|
|
20
20
|
## 版本
|
|
21
21
|
|
|
22
|
-
当前版本:`2.0.
|
|
22
|
+
当前版本:`2.0.10`
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## 演示视频
|
|
27
|
+
|
|
28
|
+
<video controls playsinline preload="metadata" src="https://shangyankeji.github.io/super-dev/demo.mp4" width="100%"></video>
|
|
29
|
+
|
|
30
|
+
- 在线播放:[观看演示视频](https://shangyankeji.github.io/super-dev/demo.mp4)
|
|
31
|
+
- 仓库文件:[demo.mp4](demo.mp4)
|
|
23
32
|
|
|
24
33
|
---
|
|
25
34
|
|
|
@@ -54,6 +63,7 @@
|
|
|
54
63
|
|
|
55
64
|
- 同类产品研究 -> 需求增强 -> 文档 -> Spec -> 实现骨架 -> 红队 -> 质量门禁 -> 交付
|
|
56
65
|
- 全流程可恢复执行(`run --resume`)
|
|
66
|
+
- UI 不满意时可发起正式改版回路(`review ui`)
|
|
57
67
|
- 适配 0-1 新建与 1-N+1 增量场景
|
|
58
68
|
|
|
59
69
|
### 3. 策略治理(Policy DSL)
|
|
@@ -75,6 +85,7 @@
|
|
|
75
85
|
- `pipeline-contract` 阶段契约证据
|
|
76
86
|
- `resume-audit` 恢复执行审计
|
|
77
87
|
- `delivery manifest/report/archive` 交付包
|
|
88
|
+
- `proof-pack` 交付证据汇总
|
|
78
89
|
|
|
79
90
|
### 6. 商业级门禁链路
|
|
80
91
|
|
|
@@ -120,6 +131,20 @@ super-dev update
|
|
|
120
131
|
super-dev
|
|
121
132
|
```
|
|
122
133
|
|
|
134
|
+
常用交付证据命令:
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
super-dev integrate audit --auto --repair --force
|
|
138
|
+
super-dev integrate validate --auto
|
|
139
|
+
super-dev repo-map
|
|
140
|
+
super-dev impact "修改登录流程" --files services/auth.py
|
|
141
|
+
super-dev fix "修复登录接口 500 并补充回归验证"
|
|
142
|
+
super-dev release proof-pack
|
|
143
|
+
super-dev release readiness
|
|
144
|
+
super-dev review architecture --status revision_requested --comment "技术方案需要重构"
|
|
145
|
+
super-dev review quality --status revision_requested --comment "质量门禁未通过,需要整改"
|
|
146
|
+
```
|
|
147
|
+
|
|
123
148
|
默认会进入宿主安装引导:
|
|
124
149
|
|
|
125
150
|
- 顶部显示 `Super Dev` 安装入口
|
|
@@ -135,17 +160,31 @@ super-dev
|
|
|
135
160
|
|
|
136
161
|
- slash 宿主:`/super-dev 你的需求`
|
|
137
162
|
- 非 slash 宿主:`super-dev: 你的需求`
|
|
163
|
+
- 需要真人验收时,可执行:`super-dev integrate validate --target <host>`
|
|
164
|
+
|
|
165
|
+
如果你希望先显式初始化项目契约,再开始接入宿主:
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
super-dev bootstrap --name my-project --platform web --frontend next --backend node
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
这会显式生成:
|
|
172
|
+
|
|
173
|
+
- `.super-dev/WORKFLOW.md`
|
|
174
|
+
- `output/*-bootstrap.md`
|
|
175
|
+
|
|
176
|
+
用来固定初始化规范、触发方式和阶段顺序。
|
|
138
177
|
|
|
139
178
|
### 3. 指定版本安装
|
|
140
179
|
|
|
141
180
|
```bash
|
|
142
|
-
pip install super-dev==2.0.
|
|
181
|
+
pip install super-dev==2.0.10
|
|
143
182
|
```
|
|
144
183
|
|
|
145
184
|
### 4. GitHub 指定标签安装
|
|
146
185
|
|
|
147
186
|
```bash
|
|
148
|
-
pip install git+https://github.com/shangyankeji/super-dev.git@v2.0.
|
|
187
|
+
pip install git+https://github.com/shangyankeji/super-dev.git@v2.0.10
|
|
149
188
|
```
|
|
150
189
|
|
|
151
190
|
### 5. 源码开发安装
|
|
@@ -218,6 +257,23 @@ uv tool install super-dev
|
|
|
218
257
|
5. 宿主负责联网、推理、编码、运行与修改文件
|
|
219
258
|
6. Super Dev 负责流程、文档、门禁、审计和交付标准
|
|
220
259
|
|
|
260
|
+
补充说明:
|
|
261
|
+
|
|
262
|
+
- 新功能开发默认走完整流水线:`research -> 三文档 -> 用户确认 -> Spec / tasks -> 前端运行验证 -> 后端 / 测试 / 交付`
|
|
263
|
+
- 缺陷修复同样不会直接跳过文档;会走轻量补丁路径,先整理问题现象、复现条件、影响范围和回归风险,再更新补丁文档与验证结果
|
|
264
|
+
- 分析阶段默认排除 `.venv`、`site-packages`、`node_modules` 等非项目源码目录
|
|
265
|
+
|
|
266
|
+
---
|
|
267
|
+
|
|
268
|
+
## 关键文档
|
|
269
|
+
|
|
270
|
+
- [宿主使用指南](docs/HOST_USAGE_GUIDE.md)
|
|
271
|
+
- [宿主能力审计](docs/HOST_CAPABILITY_AUDIT.md)
|
|
272
|
+
- [宿主运行时验收矩阵](docs/HOST_RUNTIME_VALIDATION.md)
|
|
273
|
+
- [宿主接入面说明](docs/HOST_INSTALL_SURFACES.md)
|
|
274
|
+
- [工作流指南](docs/WORKFLOW_GUIDE.md)
|
|
275
|
+
- [产品审查](docs/PRODUCT_AUDIT.md)
|
|
276
|
+
|
|
221
277
|
执行原则:
|
|
222
278
|
|
|
223
279
|
- 宿主负责“写代码”
|
|
@@ -251,6 +307,9 @@ uv tool install super-dev
|
|
|
251
307
|
2. Claude Code / Gemini CLI / Kiro CLI / Qoder CLI / CodeBuddy CLI 等支持原生映射的宿主,可直接输入:`/super-dev 你的需求`。
|
|
252
308
|
3. Codex CLI、Kimi CLI 当前不使用 `/super-dev`;在宿主会话里输入 `super-dev: 你的需求`。
|
|
253
309
|
4. 宿主会先被约束执行“同类产品研究 -> 三文档 -> 等待用户确认 -> Spec -> 前端运行验证 -> 后端/测试/交付”,不会直接跳到写代码。
|
|
310
|
+
5. 如果是缺陷修复,优先使用 `super-dev fix "缺陷描述"`,走轻量 bugfix 路径,而不是完整功能开发路径。
|
|
311
|
+
6. 接手已有项目或复杂仓库时,优先执行 `super-dev repo-map` 生成代码库地图,再让宿主进入开发。
|
|
312
|
+
7. 如果准备重构、改接口、修登录流或修改关键状态流,先执行 `super-dev impact "变更描述" --files ...` 评估影响范围,再动手。
|
|
254
313
|
|
|
255
314
|
### 宿主如何理解 Super Dev
|
|
256
315
|
|
|
@@ -443,6 +502,7 @@ super-dev onboard --host iflow --force --yes
|
|
|
443
502
|
补充说明:
|
|
444
503
|
1. 当前按 slash 宿主适配。
|
|
445
504
|
2. 如果 slash 未出现,先检查项目级命令文件是否已写入。
|
|
505
|
+
3. 如果宿主返回 `Invalid API key provided`,先在 iFlow 会话内执行 `/auth`,或更新 `IFLOW_API_KEY` / `settings.json` 后重启宿主会话。
|
|
446
506
|
|
|
447
507
|
#### 10. Kimi CLI
|
|
448
508
|
|
|
@@ -612,7 +672,7 @@ super-dev: 你的需求
|
|
|
612
672
|
|
|
613
673
|
补充说明:
|
|
614
674
|
1. Codex CLI 当前使用 `super-dev: 你的需求` 作为主触发方式。
|
|
615
|
-
2. 实际依赖
|
|
675
|
+
2. 实际依赖 `AGENTS.md` 与官方用户级 Skill `~/.codex/skills/super-dev-core/SKILL.md`。
|
|
616
676
|
3. 如果旧会话没加载新 Skill,重启 `codex` 再试。
|
|
617
677
|
|
|
618
678
|
#### 18. Trae
|
|
@@ -637,4 +697,3 @@ super-dev: 你的需求
|
|
|
637
697
|
2. 接入一定会写入项目级 `.trae/project_rules.md`、`.trae/rules.md` 和用户级 `~/.trae/user_rules.md`、`~/.trae/rules.md`;如果检测到兼容技能目录,也会增强安装 `~/.trae/skills/super-dev-core/SKILL.md`。
|
|
638
698
|
3. 完成接入后建议重开 Trae 或至少新开一个 Agent Chat,使规则生效;如果兼容 Skill 已安装,也会一起生效。
|
|
639
699
|
4. 随后按 `output/*` 与 `.super-dev/changes/*/tasks.md` 推进开发。
|
|
640
|
-
|
|
@@ -15,6 +15,8 @@ from .models import (
|
|
|
15
15
|
ProjectType,
|
|
16
16
|
TechStack,
|
|
17
17
|
)
|
|
18
|
+
from .repo_map import RepoMapBuilder, RepoMapItem, RepoMapReport
|
|
19
|
+
from .impact import ImpactAnalyzer, ImpactAnalysisReport, ImpactItem
|
|
18
20
|
|
|
19
21
|
__all__ = [
|
|
20
22
|
"ProjectAnalyzer",
|
|
@@ -27,8 +29,12 @@ __all__ = [
|
|
|
27
29
|
"TechStack",
|
|
28
30
|
"FrameworkType",
|
|
29
31
|
"ArchitecturePattern",
|
|
32
|
+
"RepoMapBuilder",
|
|
33
|
+
"RepoMapItem",
|
|
34
|
+
"RepoMapReport",
|
|
35
|
+
"ImpactAnalyzer",
|
|
36
|
+
"ImpactAnalysisReport",
|
|
37
|
+
"ImpactItem",
|
|
30
38
|
"detect_project_type",
|
|
31
39
|
"detect_tech_stack",
|
|
32
40
|
]
|
|
33
|
-
|
|
34
|
-
|
|
@@ -42,6 +42,26 @@ class ProjectAnalyzer:
|
|
|
42
42
|
raise FileNotFoundError(f"项目不存在: {self.project_path}")
|
|
43
43
|
|
|
44
44
|
self._report: ArchitectureReport | None = None
|
|
45
|
+
self._ignored_dir_names = {
|
|
46
|
+
"node_modules",
|
|
47
|
+
"__pycache__",
|
|
48
|
+
".git",
|
|
49
|
+
"venv",
|
|
50
|
+
".venv",
|
|
51
|
+
"env",
|
|
52
|
+
".env",
|
|
53
|
+
"dist",
|
|
54
|
+
"build",
|
|
55
|
+
"target",
|
|
56
|
+
"bin",
|
|
57
|
+
"obj",
|
|
58
|
+
".next",
|
|
59
|
+
".nuxt",
|
|
60
|
+
"coverage",
|
|
61
|
+
".pytest_cache",
|
|
62
|
+
"site-packages",
|
|
63
|
+
"dist-packages",
|
|
64
|
+
}
|
|
45
65
|
|
|
46
66
|
def analyze(self) -> ArchitectureReport:
|
|
47
67
|
"""
|
|
@@ -101,12 +121,7 @@ class ProjectAnalyzer:
|
|
|
101
121
|
tree: dict[str, dict | None] = {}
|
|
102
122
|
try:
|
|
103
123
|
for item in sorted(path.iterdir(), key=lambda x: (not x.is_dir(), x.name)):
|
|
104
|
-
|
|
105
|
-
if item.name.startswith("."):
|
|
106
|
-
continue
|
|
107
|
-
|
|
108
|
-
# 跳过常见忽略目录
|
|
109
|
-
if item.name in ["node_modules", "__pycache__", ".git", "venv", "dist", "build"]:
|
|
124
|
+
if self._should_ignore_path(item):
|
|
110
125
|
continue
|
|
111
126
|
|
|
112
127
|
if item.is_dir():
|
|
@@ -162,16 +177,9 @@ class ProjectAnalyzer:
|
|
|
162
177
|
".svelte": "Svelte",
|
|
163
178
|
}
|
|
164
179
|
|
|
165
|
-
# 忽略的目录
|
|
166
|
-
ignore_dirs = {
|
|
167
|
-
"node_modules", "__pycache__", ".git", "venv", "env",
|
|
168
|
-
".venv", "dist", "build", "target", "bin", "obj",
|
|
169
|
-
".next", ".nuxt", "coverage", ".pytest_cache",
|
|
170
|
-
}
|
|
171
|
-
|
|
172
180
|
for root, dirs, files in os.walk(self.project_path):
|
|
173
181
|
# 过滤忽略的目录
|
|
174
|
-
dirs[:] = [d for d in dirs if
|
|
182
|
+
dirs[:] = [d for d in dirs if not self._should_ignore_dir_name(d)]
|
|
175
183
|
|
|
176
184
|
for file in files:
|
|
177
185
|
suffix = Path(file).suffix
|
|
@@ -180,6 +188,8 @@ class ProjectAnalyzer:
|
|
|
180
188
|
continue
|
|
181
189
|
|
|
182
190
|
file_path = Path(root) / file
|
|
191
|
+
if self._should_ignore_path(file_path):
|
|
192
|
+
continue
|
|
183
193
|
try:
|
|
184
194
|
with open(file_path, encoding="utf-8", errors="ignore") as f:
|
|
185
195
|
lines = len(f.readlines())
|
|
@@ -238,10 +248,27 @@ class ProjectAnalyzer:
|
|
|
238
248
|
patterns: list[DesignPattern] = []
|
|
239
249
|
|
|
240
250
|
for py_file in self.project_path.rglob("*.py"):
|
|
251
|
+
if self._should_ignore_path(py_file):
|
|
252
|
+
continue
|
|
241
253
|
self._check_file_for_patterns(py_file, patterns, "python")
|
|
242
254
|
|
|
243
255
|
return patterns
|
|
244
256
|
|
|
257
|
+
def _should_ignore_dir_name(self, name: str) -> bool:
|
|
258
|
+
return name in self._ignored_dir_names
|
|
259
|
+
|
|
260
|
+
def _should_ignore_path(self, path: Path) -> bool:
|
|
261
|
+
try:
|
|
262
|
+
relative = path.resolve().relative_to(self.project_path)
|
|
263
|
+
parts = relative.parts
|
|
264
|
+
except Exception:
|
|
265
|
+
parts = path.parts
|
|
266
|
+
|
|
267
|
+
return any(
|
|
268
|
+
part.startswith(".") or part in self._ignored_dir_names
|
|
269
|
+
for part in parts
|
|
270
|
+
)
|
|
271
|
+
|
|
245
272
|
def _check_file_for_patterns(
|
|
246
273
|
self, file_path: Path, patterns: list[DesignPattern], language: str
|
|
247
274
|
) -> None:
|