ccgx-workflow 1.0.0

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 (212) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +469 -0
  3. package/README.zh-CN.md +466 -0
  4. package/bin/ccg.mjs +2 -0
  5. package/dist/cli.d.mts +1 -0
  6. package/dist/cli.d.ts +1 -0
  7. package/dist/cli.mjs +173 -0
  8. package/dist/index.d.mts +1774 -0
  9. package/dist/index.d.ts +1774 -0
  10. package/dist/index.mjs +2029 -0
  11. package/dist/shared/ccgx-workflow.WgUzkiC3.mjs +5248 -0
  12. package/package.json +129 -0
  13. package/templates/commands/agents/assumptions-analyzer.md +129 -0
  14. package/templates/commands/agents/code-fixer.md +292 -0
  15. package/templates/commands/agents/codebase-mapper.md +152 -0
  16. package/templates/commands/agents/debug-session-manager.md +247 -0
  17. package/templates/commands/agents/debugger.md +111 -0
  18. package/templates/commands/agents/eval-auditor.md +171 -0
  19. package/templates/commands/agents/framework-selector.md +152 -0
  20. package/templates/commands/agents/get-current-datetime.md +29 -0
  21. package/templates/commands/agents/init-architect.md +114 -0
  22. package/templates/commands/agents/integration-checker.md +163 -0
  23. package/templates/commands/agents/interface-auditor.md +170 -0
  24. package/templates/commands/agents/nyquist-auditor.md +131 -0
  25. package/templates/commands/agents/pattern-mapper.md +111 -0
  26. package/templates/commands/agents/phase-runner.md +321 -0
  27. package/templates/commands/agents/plan-checker.md +255 -0
  28. package/templates/commands/agents/planner.md +320 -0
  29. package/templates/commands/agents/team-architect.md +186 -0
  30. package/templates/commands/agents/team-qa.md +121 -0
  31. package/templates/commands/agents/team-reviewer.md +157 -0
  32. package/templates/commands/agents/ui-ux-designer.md +573 -0
  33. package/templates/commands/agents/verifier.md +274 -0
  34. package/templates/commands/analyze.md +210 -0
  35. package/templates/commands/autonomous.md +792 -0
  36. package/templates/commands/cancel.md +132 -0
  37. package/templates/commands/clean-branches.md +117 -0
  38. package/templates/commands/codex-exec.md +404 -0
  39. package/templates/commands/commit.md +151 -0
  40. package/templates/commands/context.md +332 -0
  41. package/templates/commands/debate.md +165 -0
  42. package/templates/commands/debug.md +226 -0
  43. package/templates/commands/enhance.md +64 -0
  44. package/templates/commands/execute.md +380 -0
  45. package/templates/commands/init.md +123 -0
  46. package/templates/commands/optimize.md +217 -0
  47. package/templates/commands/plan.md +373 -0
  48. package/templates/commands/result.md +106 -0
  49. package/templates/commands/review.md +338 -0
  50. package/templates/commands/rollback.md +116 -0
  51. package/templates/commands/spec-impl.md +139 -0
  52. package/templates/commands/spec-init.md +101 -0
  53. package/templates/commands/spec-plan.md +210 -0
  54. package/templates/commands/spec-research.md +152 -0
  55. package/templates/commands/spec-review.md +120 -0
  56. package/templates/commands/status.md +206 -0
  57. package/templates/commands/team-exec.md +265 -0
  58. package/templates/commands/test.md +236 -0
  59. package/templates/commands/verify-work.md +338 -0
  60. package/templates/commands/verify.md +66 -0
  61. package/templates/commands/workflow.md +190 -0
  62. package/templates/commands/worktree.md +128 -0
  63. package/templates/hooks/ccg-context-monitor.js +159 -0
  64. package/templates/hooks/ccg-session-state.cjs +510 -0
  65. package/templates/hooks/ccg-statusline.js +142 -0
  66. package/templates/output-styles/abyss-command.md +56 -0
  67. package/templates/output-styles/abyss-concise.md +89 -0
  68. package/templates/output-styles/abyss-cultivator.md +302 -0
  69. package/templates/output-styles/abyss-ritual.md +70 -0
  70. package/templates/output-styles/engineer-professional.md +89 -0
  71. package/templates/output-styles/laowang-engineer.md +127 -0
  72. package/templates/output-styles/nekomata-engineer.md +120 -0
  73. package/templates/output-styles/ojousama-engineer.md +121 -0
  74. package/templates/prompts/claude/analyzer.md +59 -0
  75. package/templates/prompts/claude/architect.md +54 -0
  76. package/templates/prompts/claude/debugger.md +71 -0
  77. package/templates/prompts/claude/optimizer.md +73 -0
  78. package/templates/prompts/claude/reviewer.md +63 -0
  79. package/templates/prompts/claude/tester.md +69 -0
  80. package/templates/prompts/codex/analyzer.md +58 -0
  81. package/templates/prompts/codex/architect.md +54 -0
  82. package/templates/prompts/codex/debugger.md +74 -0
  83. package/templates/prompts/codex/optimizer.md +81 -0
  84. package/templates/prompts/codex/reviewer.md +73 -0
  85. package/templates/prompts/codex/tester.md +62 -0
  86. package/templates/prompts/gemini/analyzer.md +61 -0
  87. package/templates/prompts/gemini/architect.md +55 -0
  88. package/templates/prompts/gemini/debugger.md +78 -0
  89. package/templates/prompts/gemini/frontend.md +64 -0
  90. package/templates/prompts/gemini/optimizer.md +84 -0
  91. package/templates/prompts/gemini/reviewer.md +80 -0
  92. package/templates/prompts/gemini/tester.md +68 -0
  93. package/templates/rules/ccg-skill-routing.md +83 -0
  94. package/templates/rules/ccg-skills.md +71 -0
  95. package/templates/scripts/ccg-phase-runner-launcher.mjs +467 -0
  96. package/templates/scripts/invoke-model.mjs +949 -0
  97. package/templates/scripts/repatch-gemini-plugin.mjs +194 -0
  98. package/templates/skills/SKILL.md +92 -0
  99. package/templates/skills/domains/ai/SKILL.md +35 -0
  100. package/templates/skills/domains/ai/agent-dev.md +242 -0
  101. package/templates/skills/domains/ai/llm-security.md +288 -0
  102. package/templates/skills/domains/ai/prompt-and-eval.md +279 -0
  103. package/templates/skills/domains/ai/rag-system.md +542 -0
  104. package/templates/skills/domains/architecture/SKILL.md +43 -0
  105. package/templates/skills/domains/architecture/api-design.md +225 -0
  106. package/templates/skills/domains/architecture/caching.md +299 -0
  107. package/templates/skills/domains/architecture/cloud-native.md +285 -0
  108. package/templates/skills/domains/architecture/message-queue.md +329 -0
  109. package/templates/skills/domains/architecture/security-arch.md +297 -0
  110. package/templates/skills/domains/data-engineering/SKILL.md +208 -0
  111. package/templates/skills/domains/development/SKILL.md +47 -0
  112. package/templates/skills/domains/development/cpp.md +246 -0
  113. package/templates/skills/domains/development/go.md +323 -0
  114. package/templates/skills/domains/development/java.md +277 -0
  115. package/templates/skills/domains/development/python.md +288 -0
  116. package/templates/skills/domains/development/rust.md +313 -0
  117. package/templates/skills/domains/development/shell.md +313 -0
  118. package/templates/skills/domains/development/typescript.md +277 -0
  119. package/templates/skills/domains/devops/SKILL.md +40 -0
  120. package/templates/skills/domains/devops/cost-optimization.md +272 -0
  121. package/templates/skills/domains/devops/database.md +217 -0
  122. package/templates/skills/domains/devops/devsecops.md +198 -0
  123. package/templates/skills/domains/devops/git-workflow.md +181 -0
  124. package/templates/skills/domains/devops/observability.md +280 -0
  125. package/templates/skills/domains/devops/performance.md +336 -0
  126. package/templates/skills/domains/devops/testing.md +283 -0
  127. package/templates/skills/domains/frontend-design/SKILL.md +244 -0
  128. package/templates/skills/domains/frontend-design/agents/openai.yaml +4 -0
  129. package/templates/skills/domains/frontend-design/claymorphism/SKILL.md +121 -0
  130. package/templates/skills/domains/frontend-design/claymorphism/references/tokens.css +52 -0
  131. package/templates/skills/domains/frontend-design/component-patterns.md +202 -0
  132. package/templates/skills/domains/frontend-design/engineering.md +287 -0
  133. package/templates/skills/domains/frontend-design/glassmorphism/SKILL.md +142 -0
  134. package/templates/skills/domains/frontend-design/glassmorphism/references/tokens.css +32 -0
  135. package/templates/skills/domains/frontend-design/liquid-glass/SKILL.md +139 -0
  136. package/templates/skills/domains/frontend-design/liquid-glass/references/tokens.css +81 -0
  137. package/templates/skills/domains/frontend-design/neubrutalism/SKILL.md +145 -0
  138. package/templates/skills/domains/frontend-design/neubrutalism/references/tokens.css +44 -0
  139. package/templates/skills/domains/frontend-design/reference/color-and-contrast.md +132 -0
  140. package/templates/skills/domains/frontend-design/reference/interaction-design.md +195 -0
  141. package/templates/skills/domains/frontend-design/reference/motion-design.md +99 -0
  142. package/templates/skills/domains/frontend-design/reference/responsive-design.md +114 -0
  143. package/templates/skills/domains/frontend-design/reference/spatial-design.md +100 -0
  144. package/templates/skills/domains/frontend-design/reference/typography.md +133 -0
  145. package/templates/skills/domains/frontend-design/reference/ux-writing.md +107 -0
  146. package/templates/skills/domains/frontend-design/state-management.md +680 -0
  147. package/templates/skills/domains/frontend-design/ui-aesthetics.md +110 -0
  148. package/templates/skills/domains/frontend-design/ux-principles.md +156 -0
  149. package/templates/skills/domains/infrastructure/SKILL.md +201 -0
  150. package/templates/skills/domains/mobile/SKILL.md +225 -0
  151. package/templates/skills/domains/orchestration/SKILL.md +30 -0
  152. package/templates/skills/domains/orchestration/multi-agent.md +263 -0
  153. package/templates/skills/domains/security/SKILL.md +73 -0
  154. package/templates/skills/domains/security/blue-team.md +436 -0
  155. package/templates/skills/domains/security/code-audit.md +265 -0
  156. package/templates/skills/domains/security/pentest.md +226 -0
  157. package/templates/skills/domains/security/red-team.md +374 -0
  158. package/templates/skills/domains/security/threat-intel.md +372 -0
  159. package/templates/skills/domains/security/vuln-research.md +369 -0
  160. package/templates/skills/impeccable/adapt/SKILL.md +201 -0
  161. package/templates/skills/impeccable/animate/SKILL.md +176 -0
  162. package/templates/skills/impeccable/arrange/SKILL.md +126 -0
  163. package/templates/skills/impeccable/audit/SKILL.md +149 -0
  164. package/templates/skills/impeccable/bolder/SKILL.md +118 -0
  165. package/templates/skills/impeccable/clarify/SKILL.md +185 -0
  166. package/templates/skills/impeccable/colorize/SKILL.md +144 -0
  167. package/templates/skills/impeccable/critique/SKILL.md +203 -0
  168. package/templates/skills/impeccable/critique/reference/cognitive-load.md +106 -0
  169. package/templates/skills/impeccable/critique/reference/heuristics-scoring.md +234 -0
  170. package/templates/skills/impeccable/critique/reference/personas.md +178 -0
  171. package/templates/skills/impeccable/delight/SKILL.md +305 -0
  172. package/templates/skills/impeccable/distill/SKILL.md +123 -0
  173. package/templates/skills/impeccable/extract/SKILL.md +94 -0
  174. package/templates/skills/impeccable/harden/SKILL.md +357 -0
  175. package/templates/skills/impeccable/normalize/SKILL.md +72 -0
  176. package/templates/skills/impeccable/onboard/SKILL.md +248 -0
  177. package/templates/skills/impeccable/optimize/SKILL.md +268 -0
  178. package/templates/skills/impeccable/overdrive/SKILL.md +143 -0
  179. package/templates/skills/impeccable/polish/SKILL.md +205 -0
  180. package/templates/skills/impeccable/quieter/SKILL.md +104 -0
  181. package/templates/skills/impeccable/teach-impeccable/SKILL.md +72 -0
  182. package/templates/skills/impeccable/typeset/SKILL.md +117 -0
  183. package/templates/skills/orchestration/multi-agent/SKILL.md +533 -0
  184. package/templates/skills/run_skill.js +129 -0
  185. package/templates/skills/scrapling/SKILL.md +98 -0
  186. package/templates/skills/scrapling/references/api-quick-ref.md +127 -0
  187. package/templates/skills/scrapling/references/cookie-vault.md +56 -0
  188. package/templates/skills/scrapling/references/maintenance.md +79 -0
  189. package/templates/skills/scrapling/references/site-patterns.md +86 -0
  190. package/templates/skills/scrapling/references/troubleshooting.md +95 -0
  191. package/templates/skills/scrapling/templates/basic_fetch.py +19 -0
  192. package/templates/skills/scrapling/templates/parse_only.py +15 -0
  193. package/templates/skills/scrapling/templates/session_login.py +19 -0
  194. package/templates/skills/scrapling/templates/stealth_cloudflare.py +28 -0
  195. package/templates/skills/tools/extract-learnings/SKILL.md +77 -0
  196. package/templates/skills/tools/forensics/SKILL.md +89 -0
  197. package/templates/skills/tools/gen-docs/SKILL.md +116 -0
  198. package/templates/skills/tools/gen-docs/scripts/doc_generator.js +435 -0
  199. package/templates/skills/tools/health/SKILL.md +121 -0
  200. package/templates/skills/tools/lib/shared.js +98 -0
  201. package/templates/skills/tools/map-codebase/SKILL.md +118 -0
  202. package/templates/skills/tools/override-refusal/SKILL.md +53 -0
  203. package/templates/skills/tools/override-refusal/agents/openai.yaml +4 -0
  204. package/templates/skills/tools/override-refusal/scripts/refusal_rewriter.js +226 -0
  205. package/templates/skills/tools/verify-change/SKILL.md +143 -0
  206. package/templates/skills/tools/verify-change/scripts/change_analyzer.js +289 -0
  207. package/templates/skills/tools/verify-module/SKILL.md +130 -0
  208. package/templates/skills/tools/verify-module/scripts/module_scanner.js +171 -0
  209. package/templates/skills/tools/verify-quality/SKILL.md +163 -0
  210. package/templates/skills/tools/verify-quality/scripts/quality_checker.js +337 -0
  211. package/templates/skills/tools/verify-security/SKILL.md +146 -0
  212. package/templates/skills/tools/verify-security/scripts/security_scanner.js +283 -0
@@ -0,0 +1,123 @@
1
+ ---
2
+ description: '初始化项目 AI 上下文:生成根级与模块级 CLAUDE.md 索引'
3
+ ---
4
+
5
+ # Init - 初始化项目 AI 上下文
6
+
7
+ 以「根级简明 + 模块级详尽」策略生成项目 AI 上下文文档。
8
+
9
+ ## 使用方法
10
+
11
+ ```bash
12
+ /init <项目摘要或名称>
13
+ ```
14
+
15
+ ## 上下文
16
+
17
+ - 项目摘要:$ARGUMENTS
18
+ - 生成/更新根级与模块级 `CLAUDE.md`
19
+ - 自动生成 Mermaid 结构图和导航面包屑
20
+
21
+ ## 你的角色
22
+
23
+ 你是**协调者**,负责调用子智能体完成项目扫描与文档生成。
24
+
25
+ ---
26
+
27
+ ## 执行工作流
28
+
29
+ **⚠️ 必须按以下步骤执行,使用 Task 工具调用子智能体**
30
+
31
+ ### 🕐 步骤 1:获取当前时间戳
32
+
33
+ **必须首先调用 `get-current-datetime` 子智能体**:
34
+
35
+ ```
36
+ Task({
37
+ subagent_type: "get-current-datetime",
38
+ prompt: "获取当前日期时间,用于文档时间戳",
39
+ description: "获取当前时间"
40
+ })
41
+ ```
42
+
43
+ 等待返回时间戳后,保存为 `$TIMESTAMP` 供后续使用。
44
+
45
+ ### 🗺️ 步骤 1.5:codebase-mapper 4 路并行扫描(v4.0)
46
+
47
+ **强制**:在调用 init-architect 之前,**必须在同一条 assistant message 中并行 spawn 4 个 `codebase-mapper`**(多 tool calls 一次发出)。每个实例只处理一个 focus,把扫描结果写到 `.context/codebase/` 下对应文件,主线只接收一行确认。
48
+
49
+ | Focus | 写入文件 |
50
+ |-------|---------|
51
+ | `tech` | `.context/codebase/STACK.md` + `.context/codebase/INTEGRATIONS.md` |
52
+ | `arch` | `.context/codebase/ARCHITECTURE.md` + `.context/codebase/STRUCTURE.md` |
53
+ | `quality` | `.context/codebase/CONVENTIONS.md` + `.context/codebase/TESTING.md` |
54
+ | `concerns` | `.context/codebase/CONCERNS.md` |
55
+
56
+ **调用示例**(同一 message,4 个 Task tool calls 并发):
57
+
58
+ ```
59
+ Task({ subagent_type: "codebase-mapper", prompt: "focus=tech\nworkdir={{WORKDIR}}", description: "扫码栈/集成" })
60
+ Task({ subagent_type: "codebase-mapper", prompt: "focus=arch\nworkdir={{WORKDIR}}", description: "扫架构/结构" })
61
+ Task({ subagent_type: "codebase-mapper", prompt: "focus=quality\nworkdir={{WORKDIR}}", description: "扫规范/测试" })
62
+ Task({ subagent_type: "codebase-mapper", prompt: "focus=concerns\nworkdir={{WORKDIR}}", description: "扫技术债" })
63
+ ```
64
+
65
+ 等 4 个实例全部返回 `WROTE: ... | FOCUS: ... | EVIDENCE_COUNT: ...` 单行确认后再进入步骤 2。**不要把扫描内容拉进主线 context**——init-architect 步骤会按需 Read `.context/codebase/*.md`,避免重复探索。
66
+
67
+ ### 🏗️ 步骤 2:调用初始化架构师
68
+
69
+ **使用 `init-architect` 子智能体执行完整扫描**:
70
+
71
+ ```
72
+ Task({
73
+ subagent_type: "init-architect",
74
+ prompt: "扫描项目并生成 CLAUDE.md 文档。\n\n项目摘要:$ARGUMENTS\n当前时间戳:$TIMESTAMP\n工作目录:{{WORKDIR}}\n\n请执行:\n1. 阶段 A:全仓清点(文件统计、模块识别)\n2. 阶段 B:模块优先扫描(入口、接口、依赖、测试)\n3. 阶段 C:深度补捞(按需)\n4. 阶段 D:生成文档(根级 + 模块级 CLAUDE.md)\n\n输出覆盖率报告与推荐下一步。",
75
+ description: "初始化项目文档"
76
+ })
77
+ ```
78
+
79
+ ### 📊 步骤 3:汇总结果
80
+
81
+ 子智能体完成后,向用户展示:
82
+
83
+ ```markdown
84
+ ## 初始化结果摘要
85
+
86
+ ### 根级文档
87
+ - 状态:[创建/更新]
88
+ - 主要栏目:<列表>
89
+
90
+ ### 模块识别
91
+ - 识别模块数:X
92
+ - 模块列表:
93
+ 1. <模块路径>
94
+ 2. ...
95
+
96
+ ### 覆盖率
97
+ - 已扫描文件:X / Y
98
+ - 覆盖模块:X%
99
+ - 跳过原因:<如有>
100
+
101
+ ### 生成内容
102
+ - ✅ Mermaid 结构图
103
+ - ✅ N 个模块导航面包屑
104
+
105
+ ### 推荐下一步
106
+ - [ ] 补扫:<路径>
107
+ ```
108
+
109
+ ---
110
+
111
+ ## 安全边界
112
+
113
+ 1. **只读/写文档** – 不改源代码
114
+ 2. **忽略生成物** – 跳过 `node_modules`、`dist`、二进制文件
115
+ 3. **增量更新** – 重复运行时做断点续扫
116
+
117
+ ## 关键规则
118
+
119
+ 1. **必须使用 Task 工具**调用子智能体,不要自己执行扫描逻辑
120
+ 2. 先调用 `get-current-datetime` 获取时间戳
121
+ 3. 然后 4 路并行 spawn `codebase-mapper`(focus=tech/arch/quality/concerns),写入 `.context/codebase/*.md`
122
+ 4. 再调用 `init-architect` 执行完整扫描(可 Read mapper 产出避免重复探索)
123
+ 5. 结果在主对话打印摘要,全文由子智能体写入仓库
@@ -0,0 +1,217 @@
1
+ ---
2
+ description: '多模型性能优化:{{BACKEND_PRIMARY}} 后端优化 + {{FRONTEND_PRIMARY}} 前端优化'
3
+ argument-hint: "<优化目标> [--role=architect|critic|implementer|tester|writer]"
4
+ ---
5
+
6
+ # Optimize - 多模型性能优化
7
+
8
+ 双模型并行分析性能瓶颈,按性价比排序优化建议。
9
+
10
+ ## 使用方法
11
+
12
+ ```bash
13
+ /optimize <优化目标> [--role=<name>]
14
+ ```
15
+
16
+ ## Role-based routing(v4.1 specialist matrix)
17
+
18
+ 可选 `--role=<name>` 叠加 role 维度路由:
19
+
20
+ | Role × Layer | architect | critic | implementer | tester | writer |
21
+ | ------------- | -------------- | ------------------- | ----------- | ------------- | --------------- |
22
+ | **backend** | codex/architect.md | codex/reviewer.md (adversarial) | codex/architect.md | codex/tester.md | claude |
23
+ | **frontend** | gemini/architect.md | gemini/reviewer.md (adversarial) | gemini/architect.md | gemini/tester.md | gemini/analyzer.md |
24
+ | **fullstack** | codex+gemini/architect.md | both reviewer.md (adversarial) | runner 决 | runner 决 | claude |
25
+
26
+ **未传 --role 时按 v4.0 双模型并行({{BACKEND_PRIMARY}}/{{FRONTEND_PRIMARY}} optimizer.md),完全兼容**。`--role=critic` 触发"性价比反对意见"——挑战通用优化套路(如盲目缓存 / over-engineering)。详见 `src/utils/specialist-router.ts`。
27
+
28
+ ## 上下文
29
+
30
+ - 优化目标:$ARGUMENTS
31
+ - {{BACKEND_PRIMARY}} 专注后端性能(数据库、算法、缓存)
32
+ - {{FRONTEND_PRIMARY}} 专注前端性能(渲染、加载、交互)
33
+
34
+ ## 你的角色
35
+
36
+ 你是**性能工程师**,编排多模型优化流程:
37
+ - **{{BACKEND_PRIMARY}}** – 后端性能优化(**后端权威**)
38
+ - **{{FRONTEND_PRIMARY}}** – 前端性能优化(**前端权威**)
39
+ - **Claude (自己)** – 综合优化、实施变更
40
+
41
+ ---
42
+
43
+ ## 调用通道路由(v4.1 Phase 20,CCG codeagent 退役)
44
+
45
+ CCG v4.1 把双模型并行通道从 `Bash(codeagent-wrapper)` **默认切换**为 plugin spawn:
46
+
47
+ 1. **优先 plugin spawn**(默认):装了 `codex@openai-codex` + `gemini@google-gemini` plugin → 用 `Agent(subagent_type="codex:codex-rescue")` + `Agent(subagent_type="gemini:gemini-rescue")` 并行,主线接 ≤200 token 摘要。
48
+ 2. **降级 codeagent-wrapper**(v4.0 BC fallback):plugin 未装 → fallback 到 Bash 调用,行为与 v4.0 完全一致。
49
+
50
+ **判定**:preflight `Bash` 跑 `ls ~/.claude/plugins/` 看有无 `codex@*` / `gemini@*` 子目录。helper 见 `src/utils/plugin-detection.ts`。
51
+
52
+ ⚠️ Optimize 命令在主线 context 内,**允许** `Agent(...)`——与 subagent "禁止嵌套 spawn" 约束不冲突。
53
+
54
+ ---
55
+
56
+ ## 多模型调用规范
57
+
58
+ **工作目录**:
59
+ - `{{WORKDIR}}`:**必须通过 Bash 执行 `pwd`(Unix)或 `cd`(Windows CMD)获取当前工作目录的绝对路径**,禁止从 `$HOME` 或环境变量推断
60
+ - 如果用户通过 `/add-dir` 添加了多个工作区,先用 Glob/Grep 确定任务相关的工作区
61
+ - 如果无法确定,用 `AskUserQuestion` 询问用户选择目标工作区
62
+
63
+ **调用语法**(v4.1 Phase 20 双通道):
64
+
65
+ **通道 A — plugin spawn(默认)**:
66
+
67
+ ```
68
+ Agent({
69
+ subagent_type: "<codex:codex-rescue|gemini:gemini-rescue>",
70
+ description: "Optimize: <backend|frontend>",
71
+ prompt: `ROLE_FILE: <角色提示词路径>
72
+
73
+ <TASK>
74
+ 需求:<增强后的需求(如未增强则用 $ARGUMENTS)>
75
+ 上下文:<目标代码、现有性能指标等>
76
+ </TASK>
77
+
78
+ OUTPUT: 性能瓶颈列表、优化方案、预期收益
79
+ Return ≤200 token structured summary (plugin-native protocol).
80
+ `
81
+ })
82
+ ```
83
+
84
+ 并行**两个 Agent 在同一 message 内同时 spawn**。
85
+
86
+ **通道 B — codeagent-wrapper fallback**(plugin 未装时降级,并行用 `run_in_background: true`):
87
+
88
+ ```
89
+ Bash({
90
+ command: "~/.claude/bin/codeagent-wrapper {{LITE_MODE_FLAG}}--progress --backend <{{BACKEND_PRIMARY}}|{{FRONTEND_PRIMARY}}> {{GEMINI_MODEL_FLAG}}- \"{{WORKDIR}}\" <<'EOF'
91
+ ROLE_FILE: <角色提示词路径>
92
+ <TASK>
93
+ 需求:<增强后的需求(如未增强则用 $ARGUMENTS)>
94
+ 上下文:<目标代码、现有性能指标等>
95
+ </TASK>
96
+ OUTPUT: 性能瓶颈列表、优化方案、预期收益
97
+ EOF",
98
+ run_in_background: true,
99
+ timeout: 3600000,
100
+ description: "简短描述"
101
+ })
102
+ ```
103
+
104
+ > ⚠️ 通道 B `codeagent-wrapper` 在 v4.1 已标 **deprecated**,将在 v5.0 移除。
105
+
106
+ **角色提示词**:
107
+
108
+ | 模型 | 提示词 |
109
+ |------|--------|
110
+ | 后端 | `~/.claude/.ccg/prompts/{{BACKEND_PRIMARY}}/optimizer.md` |
111
+ | 前端 | `~/.claude/.ccg/prompts/{{FRONTEND_PRIMARY}}/optimizer.md` |
112
+
113
+ **并行调用 + 事件驱动等待(v4.5.2 起)**:
114
+
115
+ 1. 同 message 内 spawn 多个 `Bash(run_in_background: true)` 并行任务
116
+ 2. spawn 完后主线说明已启动 task-id,**直接 turn end**,**不调 TaskOutput**
117
+ 3. Claude Code 引擎在每个 task 完成时自动发 `<task-notification>` system-reminder 触发主线新 turn
118
+ 4. 主线在新 turn 处理:从 `<output-file>` 路径 read stdout,按通道 schema parse 结果
119
+ 5. **必须等所有相关 task 都收到通知**才进入下一阶段(按 task-id 计数已收齐)
120
+
121
+ ⛔ **禁止**:
122
+ - 调 `TaskOutput({block: true, timeout: 600000})` —— v4.5.1 之前的旧 freeze poll 模式,已废弃
123
+ - 收到部分通知就跳过等其他模型
124
+ - 主动 Kill task
125
+
126
+ ⚠️ **失败处理**:notification status=failed / exit ≠ 0 / stdout < 100B / JSON parse 失败 → v1.7.87 标准 2-retry / 5s / 3-attempts;3 次全失败才降级单模型继续。
127
+
128
+ ---
129
+
130
+ ## 沟通守则
131
+
132
+ 1. 在需要询问用户时,尽量使用 `AskUserQuestion` 工具进行交互,举例场景:请求用户确认/选择/批准
133
+
134
+ ---
135
+
136
+ ## 执行工作流
137
+
138
+ **优化目标**:$ARGUMENTS
139
+
140
+ ### 🔍 阶段 0:Prompt 增强(可选)
141
+
142
+ `[模式:准备]` - **Prompt 增强**(按 `/ccg:enhance` 的逻辑执行):分析 $ARGUMENTS 的意图、缺失信息、隐含假设,补全为结构化需求(明确目标、技术约束、范围边界、验收标准),**用增强结果替代原始 $ARGUMENTS,后续调用后端/前端模型 时传入增强后的需求**
143
+
144
+ ### 🔍 阶段 1:性能基线
145
+
146
+ `[模式:研究]`
147
+
148
+ 1. 调用 `{{MCP_SEARCH_TOOL}}` 检索目标代码(如可用)
149
+ 2. 识别性能关键路径
150
+ 3. 收集现有指标(如有)
151
+
152
+ ### 🔬 阶段 2:并行性能分析
153
+
154
+ `[模式:分析]`
155
+
156
+ **⚠️ 必须发起两个并行 Bash 调用**(参照上方调用规范):
157
+
158
+ 1. **{{BACKEND_PRIMARY}} 后端分析**:`Bash({ command: "...--backend {{BACKEND_PRIMARY}}...", run_in_background: true })`
159
+ - ROLE_FILE: `~/.claude/.ccg/prompts/{{BACKEND_PRIMARY}}/optimizer.md`
160
+ - 需求:分析后端性能问题($ARGUMENTS)
161
+ - OUTPUT:性能瓶颈列表、优化方案、预期收益
162
+
163
+ 2. **{{FRONTEND_PRIMARY}} 前端分析**:`Bash({ command: "...--backend {{FRONTEND_PRIMARY}}...", run_in_background: true })`
164
+ - ROLE_FILE: `~/.claude/.ccg/prompts/{{FRONTEND_PRIMARY}}/optimizer.md`
165
+ - 需求:分析前端性能问题(Core Web Vitals)
166
+ - OUTPUT:性能瓶颈列表、优化方案、预期收益
167
+
168
+ 事件驱动等待 (v4.5.2):spawn 完两个 Bash bg 后主线 turn end,等 task-notification 自动唤醒。**必须等所有模型返回后才能进入下一阶段**。
169
+
170
+ **务必遵循上方 `多模型调用规范` 的 `重要` 指示**
171
+
172
+ ### 🔀 阶段 3:优化整合
173
+
174
+ `[模式:计划]`
175
+
176
+ 1. 收集双模型分析结果
177
+ 2. **优先级排序**:按 `影响程度 × 实施难度⁻¹` 计算性价比
178
+ 3. 请求用户确认优化方案
179
+
180
+ ### ⚡ 阶段 4:实施优化
181
+
182
+ `[模式:执行]`
183
+
184
+ 用户确认后按优先级实施,确保不破坏现有功能。
185
+
186
+ ### ✅ 阶段 5:验证
187
+
188
+ `[模式:评审]`
189
+
190
+ 运行测试验证功能,对比优化前后指标。
191
+
192
+ ---
193
+
194
+ ## 性能指标参考
195
+
196
+ | 类型 | 指标 | 良好 | 需优化 |
197
+ |------|------|------|--------|
198
+ | 后端 | API 响应 | <100ms | >500ms |
199
+ | 后端 | 数据库查询 | <50ms | >200ms |
200
+ | 前端 | LCP | <2.5s | >4s |
201
+ | 前端 | FID | <100ms | >300ms |
202
+ | 前端 | CLS | <0.1 | >0.25 |
203
+
204
+ ## 常见优化模式
205
+
206
+ **后端**:N+1→批量加载、缺索引→复合索引、重复计算→缓存、同步→异步
207
+
208
+ **前端**:大 Bundle→代码分割、频繁重渲染→memo、大列表→虚拟滚动、未优化图片→WebP
209
+
210
+ ---
211
+
212
+ ## 关键规则
213
+
214
+ 1. **先测量后优化** – 没有数据不盲目优化
215
+ 2. **性价比优先** – 高影响 + 低难度优先
216
+ 3. **不破坏功能** – 优化不能引入 bug
217
+ 4. **信任规则** – 后端以 {{BACKEND_PRIMARY}} 为准,前端以 {{FRONTEND_PRIMARY}} 为准