ccjk 13.6.4 → 13.6.7

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 (58) hide show
  1. package/dist/chunks/agents.mjs +1 -1
  2. package/dist/chunks/api-config-selector.mjs +6 -4
  3. package/dist/chunks/auto-updater.mjs +100 -2
  4. package/dist/chunks/banner.mjs +0 -16
  5. package/dist/chunks/ccjk-mcp.mjs +2 -2
  6. package/dist/chunks/ccr.mjs +6 -4
  7. package/dist/chunks/check-updates.mjs +28 -17
  8. package/dist/chunks/claude-code-config-manager.mjs +3 -1
  9. package/dist/chunks/claude-code-incremental-manager.mjs +46 -20
  10. package/dist/chunks/claude-config.mjs +52 -2
  11. package/dist/chunks/claude-wrapper.mjs +1 -1
  12. package/dist/chunks/cli-hook.mjs +25 -83
  13. package/dist/chunks/codex-config-switch.mjs +3 -2
  14. package/dist/chunks/codex-provider-manager.mjs +1 -0
  15. package/dist/chunks/codex.mjs +3 -359
  16. package/dist/chunks/config-switch.mjs +23 -10
  17. package/dist/chunks/config.mjs +1 -1
  18. package/dist/chunks/config2.mjs +3 -3
  19. package/dist/chunks/constants.mjs +179 -3
  20. package/dist/chunks/doctor.mjs +1 -1
  21. package/dist/chunks/features.mjs +76 -11
  22. package/dist/chunks/index10.mjs +55 -36
  23. package/dist/chunks/init.mjs +120 -61
  24. package/dist/chunks/installer.mjs +80 -19
  25. package/dist/chunks/mcp-cli.mjs +17 -16
  26. package/dist/chunks/mcp.mjs +8 -7
  27. package/dist/chunks/memory-check.mjs +1 -1
  28. package/dist/chunks/package.mjs +1 -1
  29. package/dist/chunks/platform.mjs +5 -1
  30. package/dist/chunks/quick-setup.mjs +13 -11
  31. package/dist/chunks/research.mjs +1177 -0
  32. package/dist/chunks/sessions.mjs +1 -1
  33. package/dist/chunks/smart-defaults.mjs +42 -14
  34. package/dist/chunks/uninstall.mjs +2 -2
  35. package/dist/chunks/update.mjs +14 -13
  36. package/dist/chunks/version-checker.mjs +11 -1
  37. package/dist/cli.mjs +32 -0
  38. package/dist/i18n/locales/en/cli.json +0 -4
  39. package/dist/i18n/locales/en/menu.json +3 -3
  40. package/dist/i18n/locales/en/notification.json +2 -2
  41. package/dist/i18n/locales/zh-CN/cli.json +0 -4
  42. package/dist/i18n/locales/zh-CN/menu.json +3 -3
  43. package/dist/i18n/locales/zh-CN/notification.json +2 -2
  44. package/dist/index.d.mts +1 -1
  45. package/dist/index.d.ts +1 -1
  46. package/dist/index.mjs +8 -174
  47. package/dist/shared/{ccjk.DvAP4XfP.mjs → ccjk.B4aXNclK.mjs} +2 -2
  48. package/dist/shared/ccjk.BI-hdI7P.mjs +30 -0
  49. package/dist/shared/{ccjk.DwSebGy0.mjs → ccjk.BOO14f66.mjs} +1 -1
  50. package/dist/shared/ccjk.BnsY5WxD.mjs +171 -0
  51. package/dist/shared/{ccjk.C4m4ypdk.mjs → ccjk.DHaUdzX3.mjs} +4 -3
  52. package/dist/shared/ccjk.DKXs7Fbm.mjs +361 -0
  53. package/dist/shared/{ccjk.BP5hsTZQ.mjs → ccjk.Dz0ssUQx.mjs} +1 -1
  54. package/dist/shared/ccjk.yYQMbHH3.mjs +115 -0
  55. package/package.json +70 -65
  56. package/templates/common/workflow/essential/en/feat.md +68 -291
  57. package/templates/common/workflow/sixStep/en/workflow.md +56 -330
  58. package/dist/shared/ccjk.CiKtBUW_.mjs +0 -54
@@ -1,357 +1,83 @@
1
1
  ---
2
- description: '专业AI编程助手,提供结构化六阶段开发工作流(研究→构思→计划→执行→优化→评审),适用于专业开发者'
3
- argument-hint: <任务描述> [--skip-research] [--quick] [--focus <阶段>]
4
- # examples:
5
- # - /workflow 实现用户认证系统 # 完整六阶段流程
6
- # - /workflow 添加暗色模式 --quick # 快速模式,简化流程
7
- # - /workflow 重构支付模块 --skip-research # 跳过研究阶段
8
- # - /workflow 优化性能 --focus optimize # 聚焦优化阶段
2
+ description: 'Structured six-stage development workflow for research, planning, implementation, optimization, and review'
3
+ argument-hint: <task description> [--skip-research] [--quick] [--focus <stage>]
9
4
  ---
10
5
 
11
- # Workflow - 专业开发助手
6
+ # Structured Development Workflow
12
7
 
13
- > **核心理念**: 研究驱动,质量把关,持续优化
8
+ Use this workflow when the user wants a broader staged execution loop rather than planning alone.
14
9
 
15
- 使用质量把关和 MCP 服务集成执行结构化开发工作流。
10
+ ## Command context
16
11
 
17
- ## 使用方法
12
+ - Workflow bundle: `sixStepsWorkflow`
13
+ - Installed command file: `workflow.md`
14
+ - Claude Code command: `/ccjk:workflow <task description>`
15
+ - Codex command: `/prompts:workflow <task description>`
18
16
 
19
- ```bash
20
- /workflow <任务描述> [选项]
21
- ```
22
-
23
- ### 选项说明
24
-
25
- | 选项 | 说明 |
26
- |------|------|
27
- | `--skip-research` | 跳过研究阶段,直接进入构思 |
28
- | `--quick` | 快速模式,简化各阶段流程 |
29
- | `--focus <阶段>` | 聚焦特定阶段(research/ideate/plan/execute/optimize/review) |
30
-
31
- ---
32
-
33
- ## 快捷指令
34
-
35
- 在工作流执行过程中,可使用以下快捷指令:
36
-
37
- | 指令 | 说明 |
38
- |------|------|
39
- | `!r` 或 `!research` | 切换到研究模式 |
40
- | `!i` 或 `!ideate` | 切换到构思模式 |
41
- | `!p` 或 `!plan` | 切换到计划模式 |
42
- | `!e` 或 `!execute` | 切换到执行模式 |
43
- | `!o` 或 `!optimize` | 切换到优化模式 |
44
- | `!v` 或 `!review` | 切换到评审模式 |
45
- | `!status` | 查看当前进度 |
46
- | `!next` | 进入下一阶段 |
47
- | `!back` | 返回上一阶段 |
48
- | `!save` | 保存当前进度到文件 |
49
-
50
- ---
51
-
52
- ## 上下文
53
-
54
- - 要开发的任务:$ARGUMENTS
55
- - 带质量把关的结构化 6 阶段工作流
56
- - 面向专业开发者的交互
57
- - MCP 服务集成以增强功能
58
-
59
- ## 你的角色
60
-
61
- 你是 IDE 的 AI 编程助手,遵循核心工作流(研究 -> 构思 -> 计划 -> 执行 -> 优化 -> 评审)用中文协助用户,面向专业程序员,交互应简洁专业,避免不必要解释。
62
-
63
- ## 工作流总览
64
-
65
- ```
66
- ┌─────────────────────────────────────────────────────────────────┐
67
- │ 六阶段开发工作流 │
68
- ├─────────────────────────────────────────────────────────────────┤
69
- │ │
70
- │ 🔍 研究 ──→ 💡 构思 ──→ 📋 计划 ──→ ⚡ 执行 ──→ 🚀 优化 ──→ ✅ 评审 │
71
- │ ↑ │ │
72
- │ └───────────────── 迭代反馈 ─────────────────────────────┘ │
73
- │ │
74
- └─────────────────────────────────────────────────────────────────┘
75
- ```
76
-
77
- ## 沟通守则
78
-
79
- 1. 响应以模式标签 `[模式:X]` 开始,初始为 `[模式:研究]`。
80
- 2. 核心工作流严格按 `研究 -> 构思 -> 计划 -> 执行 -> 优化 -> 评审` 顺序流转,用户可指令跳转。
81
- 3. 每个阶段完成时显示进度指示器。
82
- 4. 关键决策点必须请求用户确认。
83
-
84
- ---
85
-
86
- ## 核心工作流详解
87
-
88
- ### 🔍 模式 1:研究
89
-
90
- **目标**: 理解需求并评估完整性
91
-
92
- **进度指示**: `[█░░░░░] 1/6 研究`
93
-
94
- **核心动作**:
95
- - 评估需求完整性(0-10 分)
96
- - 低于 7 分时主动要求补充关键信息
97
- - 自动识别项目技术栈和约束
98
-
99
- **输出**: 需求分析报告 + 完整性评分
100
-
101
- ---
102
-
103
- ### 💡 模式 2:构思
104
-
105
- **目标**: 设计多个可行方案
106
-
107
- **进度指示**: `[██░░░░] 2/6 构思`
108
-
109
- **核心动作**:
110
- - 提供至少 2 种可行方案
111
- - 每个方案包含:描述、优点、缺点、适用场景
112
- - 给出推荐方案及理由
113
-
114
- **输出**: 方案对比表 + 推荐选择
115
-
116
- ---
117
-
118
- ### 📋 模式 3:计划
119
-
120
- **目标**: 细化为可执行步骤
121
-
122
- **进度指示**: `[███░░░] 3/6 计划`
123
-
124
- **核心动作**:
125
- - 将方案分解为原子操作
126
- - 定义:文件、函数/类、逻辑概要
127
- - 指定预期结果和验收标准
128
- - 新库使用 `Context7` 查询文档
129
- - **不写完整代码**
130
-
131
- **输出**: 详细执行计划(需用户批准)
132
-
133
- ---
134
-
135
- ### ⚡ 模式 4:执行
136
-
137
- **目标**: 按计划编码实施
138
-
139
- **进度指示**: `[████░░] 4/6 执行`
140
-
141
- **核心动作**:
142
- - 计划存入 `.ccjk/plan/current/任务名.md`
143
- - **必须用户批准方可执行**
144
- - 严格按计划编码
145
- - 关键步骤后请求反馈
146
-
147
- **输出**: 实现的代码 + 进度报告
17
+ ## User request
148
18
 
149
- ---
150
-
151
- ### 🚀 模式 5:优化
19
+ $ARGUMENTS
152
20
 
153
- **目标**: 代码质量改进
21
+ ## Workflow stages
154
22
 
155
- **进度指示**: `[█████░] 5/6 优化`
23
+ 1. **Research**
24
+ - understand the request, current codebase constraints, and success criteria
25
+ - identify missing context or important risks
156
26
 
157
- **核心动作**:
158
- - 自动分析本次实现的代码
159
- - 聚焦:冗余、低效、垃圾代码
160
- - 提出具体优化建议(含理由和预期收益)
161
- - 用户确认后执行优化
27
+ 2. **Ideate**
28
+ - generate realistic solution directions
29
+ - compare trade-offs and recommend a path
162
30
 
163
- **输出**: 优化建议清单 + 改进后代码
164
-
165
- ---
31
+ 3. **Plan**
32
+ - break the chosen direction into concrete implementation steps
33
+ - name affected files, logic areas, and validation steps
166
34
 
167
- ### ✅ 模式 6:评审
35
+ 4. **Execute**
36
+ - implement the approved plan
37
+ - stay within scope and keep progress visible
168
38
 
169
- **目标**: 最终质量评估
39
+ 5. **Optimize**
40
+ - improve the new implementation where there is clear payoff
41
+ - avoid unrelated cleanup
170
42
 
171
- **进度指示**: `[██████] 6/6 评审`
43
+ 6. **Review**
44
+ - verify the result against the plan
45
+ - summarize what shipped and what remains unverified
172
46
 
173
- **核心动作**:
174
- - 对照计划评估执行结果
175
- - 报告问题与改进建议
176
- - 归档计划文件到 `.ccjk/plan/history/`
177
-
178
- **输出**: 完成总结 + 归档确认
179
-
180
- ---
47
+ ## How to respond
181
48
 
182
- ## 时间戳获取规则
49
+ - Start in the stage that best matches the user request.
50
+ - If the request is underspecified, stay in research until the task is clear enough.
51
+ - If the user already has a clear approach, move quickly into planning and execution.
52
+ - Ask for approval before meaningful implementation when the task requires planning.
53
+ - Keep the workflow grounded in the actual repository and runtime.
183
54
 
184
- 在工作流执行过程中,任何需要当前时间戳的场景,必须通过 bash 命令获取准确时间,禁止猜测或编造。
55
+ ## Output shape
185
56
 
186
- 基本命令:
187
- - 默认格式:`date +'%Y-%m-%d %H:%M:%S'`
188
- - 文件名格式:`date +'%Y-%m-%d_%H%M%S'`
189
- - 可读格式:`date +'%Y-%m-%d %H:%M:%S %Z'`
190
- - ISO 格式:`date +'%Y-%m-%dT%H:%M:%S%z'`
191
-
192
- 典型应用场景:
193
- - 更新文档中的时间戳字段
194
- - 任务计划文档归档时的命名(从 `.ccjk/plan/current/` 移至 `.ccjk/plan/history/` 时)
195
- - 其他任何需要记录当前时间的场合
196
-
197
- [主动反馈与 MCP 服务]
198
-
199
- # 主动反馈规则
200
-
201
- 1. 在任何流程、任务、对话进行时,无论是询问、回复、或完成阶段性任务,皆必须请求用户确认。
202
- 2. 每当收到用户反馈,若反馈内容非空,必须再次请求用户确认,并根据反馈内容调整行为。
203
- 3. 仅当用户明确表示「结束」或「不再需要交互」时, 才可停止请求用户确认,流程才算结束。
204
- 4. 除非收到结束指令,否则所有步骤都必须重复请求用户确认。
205
- 5. 完成任务前,必须请求用户确认,并向用户询问反馈。
206
-
207
- ---
57
+ Structure the response in this form when useful:
208
58
 
209
- ## 执行工作流
59
+ ```markdown
60
+ # Current stage
61
+ - Research / Ideate / Plan / Execute / Optimize / Review
210
62
 
211
- **任务描述**:$ARGUMENTS
63
+ # Goal
64
+ - What is being solved
212
65
 
213
- 正在启动带质量把关的结构化开发工作流...
66
+ # Findings or options
67
+ - Key context, trade-offs, or chosen approach
214
68
 
215
- ### 🔍 阶段 1:研究与分析
216
-
217
- [模式:研究] - 理解需求并收集上下文:
218
-
219
- #### 需求完整性评分(0-10 分)
220
-
221
- 评分维度:
222
-
223
- - **目标明确性**(0-3 分):任务目标是否清晰具体,要解决什么问题
224
- - **预期结果**(0-3 分):成功标准和交付物是否明确定义
225
- - **边界范围**(0-2 分):任务范围和边界是否清楚
226
- - **约束条件**(0-2 分):时间、性能、业务限制等是否说明
227
-
228
- 注:技术栈、框架版本等信息将从项目自动识别,不计入评分
229
-
230
- **评分规则**:
231
-
232
- - 9-10 分:需求非常完整,可直接进入下一阶段
233
- - 7-8 分:需求基本完整,建议补充个别细节
234
- - 5-6 分:需求有明显缺失,必须补充关键信息
235
- - 0-4 分:需求过于模糊,需要重新描述
236
-
237
- **当评分低于 7 分时,主动提出补充问题**:
238
-
239
- - 识别缺失的关键信息维度
240
- - 针对每个缺失维度提出 1-2 个具体问题
241
- - 提供示例帮助用户理解需要的信息类型
242
- - 等待用户补充后重新评分
243
-
244
- **评分示例**:
245
-
246
- ```
247
- 用户需求:"帮我优化代码"
248
- 评分分析:
249
- - 目标明确性:0/3分(未说明优化什么代码、解决什么问题)
250
- - 预期结果:0/3分(未定义优化成功标准、期望达到什么效果)
251
- - 边界范围:1/2分(只知道是代码优化,但范围不明)
252
- - 约束条件:0/2分(无性能指标、时间限制说明)
253
- 总分:1/10 - 需要大量补充信息
69
+ # Next steps
70
+ 1. Step one
71
+ 2. Step two
72
+ 3. Step three
254
73
 
255
- 需要补充的问题:
256
- 1. 请问您要优化哪个文件或模块的代码?
257
- 2. 当前存在什么具体问题需要优化?
258
- 3. 期望优化后达到什么效果(如响应时间提升、代码量减少等)?
259
- 4. 有具体的性能指标或时间要求吗?
74
+ # Verification
75
+ - Tests, build, or checks to run
260
76
  ```
261
77
 
262
- **常用补充问题模板**:
263
-
264
- - 目标类:"您希望实现什么具体功能/效果?" "当前存在什么具体问题?"
265
- - 结果类:"如何判断任务成功完成?" "期望的输出/效果是什么?"
266
- - 范围类:"需要处理哪些具体文件/模块?" "不需要包含什么?"
267
- - 约束类:"时间要求是怎样的?" "有什么业务限制或性能要求?"
268
-
269
- **自动获取的项目信息**(不需要询问):
270
-
271
- - 技术栈(从 AGENTS.md、CLAUDE.md、package.json、requirements.txt 等获取)
272
- - 框架版本(从 AGENTS.md、CLAUDE.md、配置文件获取)
273
- - 项目结构(从文件系统获取)
274
- - 现有代码规范(从 AGENTS.md、CLAUDE.md、配置文件和现有代码获取)
275
- - 开发命令(从 AGENTS.md、CLAUDE.md 获取,如构建、测试、类型检查等)
276
-
277
- #### 执行步骤
278
-
279
- - 分析任务需求和约束
280
- - 进行需求完整性评分(显示具体得分)
281
- - 识别关键目标和成功标准
282
- - 收集必要的技术上下文
283
- - 如需要,使用 MCP 服务获取额外信息
284
-
285
- ### 💡 阶段 2:方案构思
286
-
287
- [模式:构思] - 设计解决方案:
288
-
289
- - 生成多个可行的解决方案
290
- - 评估每种方法的优缺点
291
- - 提供详细的比较和推荐
292
- - 考虑技术约束和最佳实践
293
- - 在继续之前请求用户批准
294
-
295
- ### 📋 阶段 3:详细规划
296
-
297
- [模式:计划] - 创建执行路线图:
298
-
299
- - 将解决方案分解为原子的、可执行的步骤
300
- - 定义文件结构、函数/类和逻辑概述
301
- - 为每个步骤指定预期结果
302
- - 如需要,使用 Context7 查询新库
303
- - 在继续之前请求用户批准
304
-
305
- ### ⚡ 阶段 4:实施
306
-
307
- [模式:执行] - 代码开发:
308
-
309
- - 在项目根目录 `.ccjk/plan/current/任务名.md` 中存储执行计划
310
- - 根据批准的计划实施
311
- - 遵循开发最佳实践
312
- - 在导入语句之前添加使用方法(关键规则)
313
- - 在关键里程碑请求反馈
314
-
315
- ### 🚀 阶段 5:代码优化
316
-
317
- [模式:优化] - 质量改进:
318
-
319
- - 自动分析已实现的代码
320
- - 识别冗余、低效或有问题的代码
321
- - 提供具体的优化建议
322
- - 在用户确认后执行改进
323
-
324
- ### ✅ 阶段 6:质量审查
325
-
326
- [模式:评审] - 最终评估:
327
-
328
- - 将结果与原始计划进行比较
329
- - 识别任何剩余的问题或改进
330
- - 提供完成总结和建议
331
- - 请求最终用户确认
332
- - 任务完全结束后,将计划文件从 `.ccjk/plan/current/` 移动到 `.ccjk/plan/history/` 进行归档
333
- - 归档时重命名为 `[完成时间]任务名.md` 便于追踪,时间格式为 `YYYY-MM-DD_HHMMSS`
334
-
335
- ## 预期输出结构
336
-
337
- ```
338
- project/ # 项目根目录
339
- ├── .ccjk/
340
- │ └── plan/
341
- │ ├── current/ # 当前进行中的任务
342
- │ │ └── 任务名.md # 执行计划和上下文
343
- │ └── history/ # 已完成的历史任务
344
- │ └── [完成时间]任务名.md # 归档的任务记录
345
- ├── src/
346
- │ ├── components/
347
- │ ├── services/
348
- │ ├── utils/
349
- │ └── types/
350
- ├── tests/
351
- │ ├── unit/
352
- │ ├── integration/
353
- │ └── e2e/
354
- └── README.md
355
- ```
78
+ ## Behavioral guardrails
356
79
 
357
- **使用提供的任务描述开始执行,并在每个阶段完成后报告进度。**
80
+ - Do not overclaim automation.
81
+ - Do not describe capabilities that are not actually wired into the shipped runtime.
82
+ - Prefer concise, implementation-oriented output.
83
+ - Keep recommendations tied to the current project instead of generic process theater.
@@ -1,54 +0,0 @@
1
- import { a as detectCodeToolType } from '../chunks/smart-defaults.mjs';
2
- import { DEFAULT_CODE_TOOL_TYPE } from '../chunks/constants.mjs';
3
- import { i18n } from '../chunks/index2.mjs';
4
- import { readZcfConfigAsync } from '../chunks/ccjk-config.mjs';
5
-
6
- const CODE_TYPE_ABBREVIATIONS = {
7
- cc: "claude-code",
8
- cx: "codex"
9
- };
10
- async function resolveCodeType(codeTypeParam) {
11
- if (codeTypeParam) {
12
- const normalizedParam = codeTypeParam.toLowerCase().trim();
13
- if (normalizedParam in CODE_TYPE_ABBREVIATIONS) {
14
- return CODE_TYPE_ABBREVIATIONS[normalizedParam];
15
- }
16
- if (isValidCodeType(normalizedParam)) {
17
- return normalizedParam;
18
- }
19
- const validAbbreviations = Object.keys(CODE_TYPE_ABBREVIATIONS);
20
- const validFullTypes = Object.values(CODE_TYPE_ABBREVIATIONS);
21
- const validOptions = [...validAbbreviations, ...validFullTypes].join(", ");
22
- let defaultValue = DEFAULT_CODE_TOOL_TYPE;
23
- try {
24
- const config = await readZcfConfigAsync();
25
- if (config?.codeToolType && isValidCodeType(config.codeToolType)) {
26
- defaultValue = config.codeToolType;
27
- }
28
- } catch {
29
- }
30
- throw new Error(
31
- i18n.t("errors:invalidCodeType", { value: codeTypeParam, validOptions, defaultValue })
32
- );
33
- }
34
- try {
35
- const config = await readZcfConfigAsync();
36
- if (config?.codeToolType && isValidCodeType(config.codeToolType)) {
37
- return config.codeToolType;
38
- }
39
- } catch {
40
- }
41
- try {
42
- const freshDetected = detectCodeToolType();
43
- if (isValidCodeType(freshDetected)) {
44
- return freshDetected;
45
- }
46
- } catch {
47
- }
48
- return DEFAULT_CODE_TOOL_TYPE;
49
- }
50
- function isValidCodeType(value) {
51
- return ["claude-code", "codex"].includes(value);
52
- }
53
-
54
- export { resolveCodeType as r };