ccjk 2.2.4 → 2.2.5

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 (65) hide show
  1. package/dist/chunks/auto-updater.mjs +15 -1
  2. package/dist/chunks/ccjk-config.mjs +77 -13
  3. package/dist/chunks/ccr.mjs +7 -10
  4. package/dist/chunks/ccu.mjs +4 -4
  5. package/dist/chunks/check-updates.mjs +4 -7
  6. package/dist/chunks/claude-code-config-manager.mjs +8 -11
  7. package/dist/chunks/claude-code-incremental-manager.mjs +4 -7
  8. package/dist/chunks/codex.mjs +496 -17
  9. package/dist/chunks/commands.mjs +392 -89
  10. package/dist/chunks/commands2.mjs +109 -0
  11. package/dist/chunks/config-consolidator.mjs +2 -2
  12. package/dist/chunks/config-switch.mjs +5 -8
  13. package/dist/chunks/doctor.mjs +6 -6
  14. package/dist/chunks/features.mjs +654 -35
  15. package/dist/chunks/help.mjs +339 -0
  16. package/dist/chunks/index.mjs +323 -10
  17. package/dist/chunks/index2.mjs +3 -3
  18. package/dist/chunks/index3.mjs +1171 -0
  19. package/dist/chunks/init.mjs +21 -24
  20. package/dist/chunks/installer.mjs +178 -0
  21. package/dist/chunks/interview.mjs +6 -6
  22. package/dist/chunks/mcp-performance.mjs +82 -2
  23. package/dist/chunks/mcp.mjs +500 -0
  24. package/dist/chunks/menu.mjs +10 -10
  25. package/dist/chunks/notification.mjs +5 -5
  26. package/dist/chunks/onboarding.mjs +6 -6
  27. package/dist/chunks/package.mjs +1 -1
  28. package/dist/chunks/platform.mjs +10 -10
  29. package/dist/chunks/prompts.mjs +7 -8
  30. package/dist/chunks/session.mjs +2 -2
  31. package/dist/chunks/skills-sync.mjs +2 -2
  32. package/dist/chunks/uninstall.mjs +4 -5
  33. package/dist/chunks/update.mjs +4 -7
  34. package/dist/chunks/upgrade-manager.mjs +2 -2
  35. package/dist/chunks/version-checker.mjs +88 -7
  36. package/dist/cli.mjs +293 -53
  37. package/dist/i18n/locales/en/agentBrowser.json +79 -0
  38. package/dist/i18n/locales/en/mcp.json +2 -4
  39. package/dist/i18n/locales/en/updater.json +3 -1
  40. package/dist/i18n/locales/zh/agentBrowser.json +79 -0
  41. package/dist/i18n/locales/zh-CN/common.json +1 -1
  42. package/dist/i18n/locales/zh-CN/mcp.json +2 -4
  43. package/dist/i18n/locales/zh-CN/updater.json +3 -1
  44. package/dist/index.d.mts +8 -584
  45. package/dist/index.d.ts +8 -584
  46. package/dist/index.mjs +9 -13
  47. package/dist/shared/{ccjk.DJM5aVQJ.mjs → ccjk.ByTIGCUC.mjs} +3 -3
  48. package/dist/shared/{ccjk.qYAnUMuy.mjs → ccjk.CGTmRqsu.mjs} +2 -3
  49. package/dist/shared/{ccjk.CUdzQluX.mjs → ccjk.CURU8gbR.mjs} +1 -1
  50. package/dist/{chunks/mcp-market.mjs → shared/ccjk.D-RZS4E2.mjs} +6 -65
  51. package/dist/shared/{ccjk.B7169qud.mjs → ccjk.tB4-Y4Qb.mjs} +3 -3
  52. package/package.json +4 -1
  53. package/templates/common/skills/en/agent-browser.md +258 -0
  54. package/templates/common/skills/zh-CN/agent-browser.md +260 -0
  55. package/dist/chunks/claude-config.mjs +0 -228
  56. package/dist/chunks/features2.mjs +0 -661
  57. package/dist/chunks/json-config.mjs +0 -59
  58. package/dist/chunks/mcp-doctor.mjs +0 -160
  59. package/dist/chunks/mcp-profile.mjs +0 -220
  60. package/dist/chunks/mcp-release.mjs +0 -138
  61. package/dist/chunks/shencha.mjs +0 -320
  62. package/dist/chunks/tools.mjs +0 -169
  63. package/dist/shared/ccjk.COdsoe-Y.mjs +0 -64
  64. package/dist/shared/ccjk.DwDtZ5cK.mjs +0 -266
  65. package/dist/shared/ccjk.n_AtlHzB.mjs +0 -186
@@ -0,0 +1,339 @@
1
+ import ansis from 'ansis';
2
+
3
+ const COMMAND_REFERENCE = [
4
+ // Core Commands
5
+ { name: "ccjk", description: "\u4EA4\u4E92\u5F0F\u83DC\u5355\uFF08\u9ED8\u8BA4\uFF09", category: "core", examples: ["ccjk", "ccjk -l zh-CN"] },
6
+ { name: "ccjk init", alias: "i", description: "\u521D\u59CB\u5316\u914D\u7F6E", category: "core", examples: ["ccjk init", "ccjk init -f"] },
7
+ { name: "ccjk update", alias: "u", description: "\u66F4\u65B0\u63D0\u793A\u8BCD\u548C\u5DE5\u4F5C\u6D41", category: "core", examples: ["ccjk update"] },
8
+ { name: "ccjk doctor", description: "\u5065\u5EB7\u68C0\u67E5\u4E0E\u8BCA\u65AD", category: "core", examples: ["ccjk doctor"] },
9
+ // Development Commands
10
+ { name: "ccjk mcp <action>", description: "MCP \u670D\u52A1\u5668\u7BA1\u7406", category: "dev", examples: ["ccjk mcp doctor", "ccjk mcp profile minimal", "ccjk mcp release"] },
11
+ { name: "ccjk interview", alias: "iv", description: "\u8BBF\u8C08\u9A71\u52A8\u5F00\u53D1", category: "dev", examples: ["ccjk interview", "ccjk iv -d quick"] },
12
+ { name: "ccjk commit", description: "\u667A\u80FD Git \u63D0\u4EA4", category: "dev", examples: ["ccjk commit", "ccjk commit -a"] },
13
+ { name: "ccjk config-switch", alias: "cs", description: "\u5207\u6362\u914D\u7F6E", category: "dev", examples: ["ccjk cs", "ccjk cs work"] },
14
+ // Cloud Commands
15
+ { name: "ccjk cloud skills", description: "\u540C\u6B65\u81EA\u5B9A\u4E49\u6280\u80FD", category: "cloud", examples: ["ccjk cloud skills sync", "ccjk cloud skills push"] },
16
+ { name: "ccjk cloud agents", description: "\u540C\u6B65 AI \u4EE3\u7406", category: "cloud", examples: ["ccjk cloud agents", "ccjk agents list"] },
17
+ { name: "ccjk cloud plugins", description: "\u63D2\u4EF6\u5E02\u573A", category: "cloud", examples: ["ccjk cloud plugins"] },
18
+ // System Commands
19
+ { name: "ccjk system setup", description: "\u9996\u6B21\u8BBE\u7F6E\u5411\u5BFC", category: "system", examples: ["ccjk system setup"] },
20
+ { name: "ccjk system upgrade", description: "\u5347\u7EA7\u6240\u6709\u7EC4\u4EF6", category: "system", examples: ["ccjk system upgrade"] },
21
+ { name: "ccjk system versions", description: "\u68C0\u67E5\u7248\u672C", category: "system", examples: ["ccjk system versions"] },
22
+ { name: "ccjk system workspace", description: "\u5DE5\u4F5C\u533A\u8BCA\u65AD", category: "system", examples: ["ccjk system workspace"] },
23
+ // Other Commands
24
+ { name: "ccjk workflows", alias: "wf", description: "\u7BA1\u7406\u5DE5\u4F5C\u6D41", category: "other", examples: ["ccjk wf"] },
25
+ { name: "ccjk ccr", description: "CCR \u4EE3\u7406\u7BA1\u7406", category: "other", examples: ["ccjk ccr"] },
26
+ { name: "ccjk ccu", description: "\u4F7F\u7528\u91CF\u7EDF\u8BA1", category: "other", examples: ["ccjk ccu"] },
27
+ { name: "ccjk uninstall", description: "\u5378\u8F7D\u914D\u7F6E", category: "other", examples: ["ccjk uninstall"] }
28
+ ];
29
+ const HELP_TOPICS = [
30
+ {
31
+ name: "quick",
32
+ title: "\u5FEB\u901F\u547D\u4EE4\u901F\u67E5\u5361",
33
+ content: showQuickReference
34
+ },
35
+ {
36
+ name: "mcp",
37
+ title: "MCP \u670D\u52A1\u5668\u7BA1\u7406",
38
+ content: showMcpHelp
39
+ },
40
+ {
41
+ name: "examples",
42
+ title: "\u5E38\u7528\u793A\u4F8B",
43
+ content: showExamples
44
+ },
45
+ {
46
+ name: "tutorial",
47
+ title: "\u65B0\u624B\u6559\u7A0B",
48
+ content: showTutorial
49
+ },
50
+ {
51
+ name: "faq",
52
+ title: "\u5E38\u89C1\u95EE\u9898",
53
+ content: showFaq
54
+ }
55
+ ];
56
+ async function help(topic) {
57
+ if (!topic) {
58
+ showHelpMenu();
59
+ return;
60
+ }
61
+ const normalizedTopic = topic.toLowerCase();
62
+ const helpTopic = HELP_TOPICS.find((t) => t.name === normalizedTopic);
63
+ if (helpTopic) {
64
+ helpTopic.content();
65
+ return;
66
+ }
67
+ const command = COMMAND_REFERENCE.find(
68
+ (c) => c.name.includes(normalizedTopic) || c.alias === normalizedTopic
69
+ );
70
+ if (command) {
71
+ showCommandHelp(command);
72
+ return;
73
+ }
74
+ console.log(ansis.yellow(`
75
+ \u26A0\uFE0F \u672A\u627E\u5230\u5E2E\u52A9\u4E3B\u9898: ${topic}`));
76
+ console.log(ansis.gray("\u53EF\u7528\u4E3B\u9898: quick, mcp, examples, tutorial, faq"));
77
+ console.log(ansis.gray("\u6216\u8F93\u5165\u547D\u4EE4\u540D\u79F0\u67E5\u770B\u547D\u4EE4\u5E2E\u52A9\n"));
78
+ }
79
+ function showHelpMenu() {
80
+ console.log("");
81
+ console.log(ansis.cyan.bold("\u{1F4DA} CCJK \u5E2E\u52A9\u4E2D\u5FC3"));
82
+ console.log(ansis.gray("\u2500".repeat(50)));
83
+ console.log("");
84
+ console.log(ansis.yellow("\u5FEB\u901F\u5165\u95E8:"));
85
+ console.log(` ${ansis.cyan("ccjk help quick")} ${ansis.gray("- \u547D\u4EE4\u901F\u67E5\u5361\uFF08\u63A8\u8350\u65B0\u624B\uFF09")}`);
86
+ console.log(` ${ansis.cyan("ccjk help tutorial")} ${ansis.gray("- \u65B0\u624B\u5165\u95E8\u6559\u7A0B")}`);
87
+ console.log(` ${ansis.cyan("ccjk help examples")} ${ansis.gray("- \u5E38\u7528\u793A\u4F8B")}`);
88
+ console.log("");
89
+ console.log(ansis.yellow("\u4E13\u9898\u5E2E\u52A9:"));
90
+ console.log(` ${ansis.cyan("ccjk help mcp")} ${ansis.gray("- MCP \u670D\u52A1\u5668\u7BA1\u7406")}`);
91
+ console.log(` ${ansis.cyan("ccjk help faq")} ${ansis.gray("- \u5E38\u89C1\u95EE\u9898\u89E3\u7B54")}`);
92
+ console.log("");
93
+ console.log(ansis.yellow("\u547D\u4EE4\u5E2E\u52A9:"));
94
+ console.log(` ${ansis.cyan("ccjk help <command>")} ${ansis.gray("- \u67E5\u770B\u7279\u5B9A\u547D\u4EE4\u5E2E\u52A9")}`);
95
+ console.log(` ${ansis.cyan("ccjk <command> -h")} ${ansis.gray("- \u67E5\u770B\u547D\u4EE4\u9009\u9879")}`);
96
+ console.log("");
97
+ console.log(ansis.gray("\u2500".repeat(50)));
98
+ console.log(ansis.gray("\u{1F4A1} \u63D0\u793A: \u5728\u4EFB\u4F55\u83DC\u5355\u4E2D\u6309 ? \u6216 H \u53EF\u67E5\u770B\u4E0A\u4E0B\u6587\u5E2E\u52A9"));
99
+ console.log("");
100
+ }
101
+ function showQuickReference() {
102
+ console.log("");
103
+ console.log(ansis.cyan.bold("\u26A1 CCJK \u547D\u4EE4\u901F\u67E5\u5361"));
104
+ console.log(ansis.gray("\u2500".repeat(60)));
105
+ console.log("");
106
+ console.log(ansis.yellow.bold("\u{1F525} \u6700\u5E38\u7528\u547D\u4EE4:"));
107
+ console.log("");
108
+ printCommandBox([
109
+ { cmd: "ccjk", desc: "\u6253\u5F00\u4EA4\u4E92\u5F0F\u83DC\u5355" },
110
+ { cmd: "ccjk init", desc: "\u4E00\u952E\u521D\u59CB\u5316\u6240\u6709\u914D\u7F6E" },
111
+ { cmd: "ccjk doctor", desc: "\u8BCA\u65AD\u5E76\u4FEE\u590D\u95EE\u9898" },
112
+ { cmd: "ccjk mcp doctor", desc: "MCP \u5065\u5EB7\u68C0\u67E5" }
113
+ ]);
114
+ console.log("");
115
+ const categories = [
116
+ { key: "core", title: "\u{1F4E6} \u6838\u5FC3\u547D\u4EE4", emoji: "\u{1F4E6}" },
117
+ { key: "dev", title: "\u{1F6E0}\uFE0F \u5F00\u53D1\u547D\u4EE4", emoji: "\u{1F6E0}\uFE0F" },
118
+ { key: "cloud", title: "\u2601\uFE0F \u4E91\u540C\u6B65", emoji: "\u2601\uFE0F" },
119
+ { key: "system", title: "\u{1F527} \u7CFB\u7EDF\u7BA1\u7406", emoji: "\u{1F527}" }
120
+ ];
121
+ for (const cat of categories) {
122
+ const commands = COMMAND_REFERENCE.filter((c) => c.category === cat.key);
123
+ if (commands.length > 0) {
124
+ console.log(ansis.yellow(cat.title));
125
+ for (const cmd of commands) {
126
+ const alias = cmd.alias ? ansis.gray(` (${cmd.alias})`) : "";
127
+ console.log(` ${ansis.cyan(cmd.name.padEnd(25))}${alias} ${ansis.gray(cmd.description)}`);
128
+ }
129
+ console.log("");
130
+ }
131
+ }
132
+ console.log(ansis.gray("\u2500".repeat(60)));
133
+ console.log(ansis.gray('\u{1F4A1} \u4F7F\u7528 "ccjk help <\u547D\u4EE4>" \u67E5\u770B\u8BE6\u7EC6\u7528\u6CD5'));
134
+ console.log("");
135
+ }
136
+ function printCommandBox(commands) {
137
+ const maxCmdLen = Math.max(...commands.map((c) => c.cmd.length));
138
+ const boxWidth = maxCmdLen + 40;
139
+ console.log(ansis.gray(` \u250C${"\u2500".repeat(boxWidth)}\u2510`));
140
+ for (const { cmd, desc } of commands) {
141
+ const paddedCmd = cmd.padEnd(maxCmdLen);
142
+ console.log(ansis.gray(" \u2502 ") + ansis.cyan.bold(paddedCmd) + ansis.gray(" \u2192 ") + desc.padEnd(boxWidth - maxCmdLen - 5) + ansis.gray(" \u2502"));
143
+ }
144
+ console.log(ansis.gray(` \u2514${"\u2500".repeat(boxWidth)}\u2518`));
145
+ }
146
+ function showMcpHelp() {
147
+ console.log("");
148
+ console.log(ansis.cyan.bold("\u{1F50C} MCP \u670D\u52A1\u5668\u7BA1\u7406\u5E2E\u52A9"));
149
+ console.log(ansis.gray("\u2500".repeat(60)));
150
+ console.log("");
151
+ console.log(ansis.yellow("\u4EC0\u4E48\u662F MCP?"));
152
+ console.log(ansis.gray(" MCP (Model Context Protocol) \u662F Claude \u7684\u6269\u5C55\u534F\u8BAE\uFF0C"));
153
+ console.log(ansis.gray(" \u5141\u8BB8 AI \u8BBF\u95EE\u5916\u90E8\u5DE5\u5177\u548C\u6570\u636E\u6E90\u3002"));
154
+ console.log("");
155
+ console.log(ansis.yellow("\u5E38\u7528\u547D\u4EE4:"));
156
+ console.log(` ${ansis.cyan("ccjk mcp doctor")} ${ansis.gray("- \u68C0\u67E5 MCP \u5065\u5EB7\u72B6\u6001")}`);
157
+ console.log(` ${ansis.cyan("ccjk mcp profile <name>")} ${ansis.gray("- \u5207\u6362 MCP \u914D\u7F6E\u9884\u8BBE")}`);
158
+ console.log(` ${ansis.cyan("ccjk mcp release")} ${ansis.gray("- \u91CA\u653E\u672A\u4F7F\u7528\u7684 MCP")}`);
159
+ console.log("");
160
+ console.log(ansis.yellow("\u53EF\u7528\u9884\u8BBE (Profile):"));
161
+ console.log(` ${ansis.green("minimal")} ${ansis.gray("- \u6700\u5C0F\u914D\u7F6E\uFF0C\u4EC5\u6838\u5FC3 MCP\uFF08\u63A8\u8350\u65E5\u5E38\u4F7F\u7528\uFF09")}`);
162
+ console.log(` ${ansis.green("development")} ${ansis.gray("- \u5F00\u53D1\u914D\u7F6E\uFF0C\u5305\u542B\u5F00\u53D1\u5DE5\u5177")}`);
163
+ console.log(` ${ansis.green("testing")} ${ansis.gray("- \u6D4B\u8BD5\u914D\u7F6E\uFF0C\u5305\u542B\u6D4B\u8BD5\u5DE5\u5177")}`);
164
+ console.log(` ${ansis.green("research")} ${ansis.gray("- \u7814\u7A76\u914D\u7F6E\uFF0C\u5305\u542B\u641C\u7D22\u548C\u6587\u6863\u5DE5\u5177")}`);
165
+ console.log(` ${ansis.green("full")} ${ansis.gray("- \u5B8C\u6574\u914D\u7F6E\uFF0C\u542F\u7528\u6240\u6709 MCP")}`);
166
+ console.log("");
167
+ console.log(ansis.yellow("\u6027\u80FD\u4F18\u5316\u5EFA\u8BAE:"));
168
+ console.log(ansis.gray(" 1. \u65E5\u5E38\u4F7F\u7528\u5EFA\u8BAE\u4F7F\u7528 minimal \u9884\u8BBE"));
169
+ console.log(ansis.gray(' 2. \u5B9A\u671F\u8FD0\u884C "ccjk mcp doctor" \u68C0\u67E5\u5065\u5EB7\u72B6\u6001'));
170
+ console.log(ansis.gray(' 3. \u4F7F\u7528 "ccjk mcp release" \u91CA\u653E\u4E0D\u9700\u8981\u7684 MCP'));
171
+ console.log(ansis.gray(" 4. \u907F\u514D\u540C\u65F6\u542F\u7528\u8D85\u8FC7 5 \u4E2A MCP"));
172
+ console.log("");
173
+ console.log(ansis.gray("\u2500".repeat(60)));
174
+ console.log(ansis.gray("\u{1F4D6} \u66F4\u591A\u4FE1\u606F: https://github.com/anthropics/claude-code"));
175
+ console.log("");
176
+ }
177
+ function showExamples() {
178
+ console.log("");
179
+ console.log(ansis.cyan.bold("\u{1F4DD} CCJK \u5E38\u7528\u793A\u4F8B"));
180
+ console.log(ansis.gray("\u2500".repeat(60)));
181
+ console.log("");
182
+ console.log(ansis.yellow("\u{1F680} \u9996\u6B21\u4F7F\u7528:"));
183
+ console.log(ansis.gray(" # \u4E00\u952E\u5B8C\u6210\u6240\u6709\u914D\u7F6E"));
184
+ console.log(` ${ansis.cyan("ccjk init")}`);
185
+ console.log("");
186
+ console.log(ansis.yellow("\u{1F527} \u65E5\u5E38\u7EF4\u62A4:"));
187
+ console.log(ansis.gray(" # \u68C0\u67E5\u73AF\u5883\u5065\u5EB7\u72B6\u6001"));
188
+ console.log(` ${ansis.cyan("ccjk doctor")}`);
189
+ console.log("");
190
+ console.log(ansis.gray(" # \u66F4\u65B0\u5230\u6700\u65B0\u914D\u7F6E"));
191
+ console.log(` ${ansis.cyan("ccjk update")}`);
192
+ console.log("");
193
+ console.log(ansis.yellow("\u26A1 MCP \u6027\u80FD\u4F18\u5316:"));
194
+ console.log(ansis.gray(" # \u68C0\u67E5 MCP \u72B6\u6001"));
195
+ console.log(` ${ansis.cyan("ccjk mcp doctor")}`);
196
+ console.log("");
197
+ console.log(ansis.gray(" # \u5207\u6362\u5230\u6700\u5C0F\u914D\u7F6E\uFF08\u63D0\u5347\u6027\u80FD\uFF09"));
198
+ console.log(` ${ansis.cyan("ccjk mcp profile minimal")}`);
199
+ console.log("");
200
+ console.log(ansis.gray(" # \u91CA\u653E\u672A\u4F7F\u7528\u7684 MCP"));
201
+ console.log(` ${ansis.cyan("ccjk mcp release")}`);
202
+ console.log("");
203
+ console.log(ansis.yellow("\u{1F4BB} \u5F00\u53D1\u5DE5\u4F5C\u6D41:"));
204
+ console.log(ansis.gray(" # \u542F\u52A8\u8BBF\u8C08\u9A71\u52A8\u5F00\u53D1"));
205
+ console.log(` ${ansis.cyan("ccjk interview")}`);
206
+ console.log("");
207
+ console.log(ansis.gray(" # \u667A\u80FD Git \u63D0\u4EA4"));
208
+ console.log(` ${ansis.cyan("ccjk commit -a")}`);
209
+ console.log("");
210
+ console.log(ansis.yellow("\u{1F504} \u914D\u7F6E\u5207\u6362:"));
211
+ console.log(ansis.gray(" # \u5207\u6362\u5DE5\u4F5C/\u4E2A\u4EBA\u914D\u7F6E"));
212
+ console.log(` ${ansis.cyan("ccjk config-switch work")}`);
213
+ console.log(` ${ansis.cyan("ccjk config-switch personal")}`);
214
+ console.log("");
215
+ console.log(ansis.gray("\u2500".repeat(60)));
216
+ console.log("");
217
+ }
218
+ function showTutorial() {
219
+ console.log("");
220
+ console.log(ansis.cyan.bold("\u{1F393} CCJK \u65B0\u624B\u5165\u95E8\u6559\u7A0B"));
221
+ console.log(ansis.gray("\u2500".repeat(60)));
222
+ console.log("");
223
+ console.log(ansis.yellow.bold("\u7B2C 1 \u6B65: \u521D\u59CB\u5316\u914D\u7F6E"));
224
+ console.log(ansis.gray(" \u8FD0\u884C\u4EE5\u4E0B\u547D\u4EE4\u5B8C\u6210\u4E00\u952E\u914D\u7F6E:"));
225
+ console.log(` ${ansis.cyan.bold("ccjk init")}`);
226
+ console.log(ansis.gray(" \u8FD9\u5C06\u81EA\u52A8\u914D\u7F6E API\u3001\u5DE5\u4F5C\u6D41\u548C MCP \u670D\u52A1\u3002"));
227
+ console.log("");
228
+ console.log(ansis.yellow.bold("\u7B2C 2 \u6B65: \u9A8C\u8BC1\u5B89\u88C5"));
229
+ console.log(ansis.gray(" \u8FD0\u884C\u5065\u5EB7\u68C0\u67E5\u786E\u4FDD\u4E00\u5207\u6B63\u5E38:"));
230
+ console.log(` ${ansis.cyan.bold("ccjk doctor")}`);
231
+ console.log(ansis.gray(" \u5982\u679C\u6709\u95EE\u9898\uFF0C\u6309\u7167\u63D0\u793A\u4FEE\u590D\u3002"));
232
+ console.log("");
233
+ console.log(ansis.yellow.bold("\u7B2C 3 \u6B65: \u4F18\u5316\u6027\u80FD\uFF08\u63A8\u8350\uFF09"));
234
+ console.log(ansis.gray(" \u68C0\u67E5\u5E76\u4F18\u5316 MCP \u914D\u7F6E:"));
235
+ console.log(` ${ansis.cyan.bold("ccjk mcp doctor")}`);
236
+ console.log(ansis.gray(" \u5982\u679C MCP \u8FC7\u591A\uFF0C\u5207\u6362\u5230\u6700\u5C0F\u914D\u7F6E:"));
237
+ console.log(` ${ansis.cyan.bold("ccjk mcp profile minimal")}`);
238
+ console.log("");
239
+ console.log(ansis.yellow.bold("\u7B2C 4 \u6B65: \u5F00\u59CB\u4F7F\u7528"));
240
+ console.log(ansis.gray(" \u6253\u5F00\u4EA4\u4E92\u5F0F\u83DC\u5355\u63A2\u7D22\u66F4\u591A\u529F\u80FD:"));
241
+ console.log(` ${ansis.cyan.bold("ccjk")}`);
242
+ console.log("");
243
+ console.log(ansis.green.bold("\u2705 \u606D\u559C\uFF01\u4F60\u5DF2\u7ECF\u5B8C\u6210\u4E86\u57FA\u672C\u8BBE\u7F6E\u3002"));
244
+ console.log("");
245
+ console.log(ansis.gray("\u2500".repeat(60)));
246
+ console.log(ansis.yellow("\u{1F4A1} \u8FDB\u9636\u63D0\u793A:"));
247
+ console.log(ansis.gray(' \u2022 \u4F7F\u7528 "ccjk help quick" \u67E5\u770B\u547D\u4EE4\u901F\u67E5\u5361'));
248
+ console.log(ansis.gray(' \u2022 \u4F7F\u7528 "ccjk help examples" \u67E5\u770B\u66F4\u591A\u793A\u4F8B'));
249
+ console.log(ansis.gray(' \u2022 \u4F7F\u7528 "ccjk help faq" \u67E5\u770B\u5E38\u89C1\u95EE\u9898'));
250
+ console.log("");
251
+ }
252
+ function showFaq() {
253
+ console.log("");
254
+ console.log(ansis.cyan.bold("\u2753 \u5E38\u89C1\u95EE\u9898\u89E3\u7B54 (FAQ)"));
255
+ console.log(ansis.gray("\u2500".repeat(60)));
256
+ console.log("");
257
+ const faqs = [
258
+ {
259
+ q: "Claude Code \u7684 /compact \u547D\u4EE4\u5931\u6548\u600E\u4E48\u529E\uFF1F",
260
+ a: [
261
+ "\u8FD9\u901A\u5E38\u662F\u56E0\u4E3A MCP \u670D\u52A1\u8FC7\u591A\u5BFC\u81F4\u4E0A\u4E0B\u6587\u81A8\u80C0\u3002",
262
+ "\u89E3\u51B3\u65B9\u6848:",
263
+ ' 1. \u8FD0\u884C "ccjk mcp doctor" \u68C0\u67E5 MCP \u72B6\u6001',
264
+ ' 2. \u8FD0\u884C "ccjk mcp profile minimal" \u5207\u6362\u5230\u6700\u5C0F\u914D\u7F6E',
265
+ ' 3. \u8FD0\u884C "ccjk mcp release" \u91CA\u653E\u672A\u4F7F\u7528\u7684 MCP'
266
+ ]
267
+ },
268
+ {
269
+ q: "CCJK \u8FD0\u884C\u5F88\u6162\u600E\u4E48\u529E\uFF1F",
270
+ a: [
271
+ "\u53EF\u80FD\u539F\u56E0: MCP \u670D\u52A1\u8FC7\u591A\u3001\u914D\u7F6E\u6587\u4EF6\u8FC7\u5927",
272
+ "\u89E3\u51B3\u65B9\u6848:",
273
+ ' 1. \u8FD0\u884C "ccjk doctor" \u8FDB\u884C\u5168\u9762\u8BCA\u65AD',
274
+ " 2. \u51CF\u5C11\u540C\u65F6\u542F\u7528\u7684 MCP \u6570\u91CF\uFF08\u5EFA\u8BAE \u22645 \u4E2A\uFF09",
275
+ ' 3. \u5B9A\u671F\u6E05\u7406\u4F1A\u8BDD: "ccjk session cleanup"'
276
+ ]
277
+ },
278
+ {
279
+ q: "\u5982\u4F55\u5207\u6362\u4E2D\u82F1\u6587\u754C\u9762\uFF1F",
280
+ a: [
281
+ '\u65B9\u6CD5 1: \u8FD0\u884C "ccjk -l zh-CN" \u6216 "ccjk -l en"',
282
+ '\u65B9\u6CD5 2: \u5728\u83DC\u5355\u4E2D\u9009\u62E9 "\u66F4\u6539\u663E\u793A\u8BED\u8A00"',
283
+ "\u65B9\u6CD5 3: \u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF CCJK_LANG=zh-CN"
284
+ ]
285
+ },
286
+ {
287
+ q: "\u5982\u4F55\u5B8C\u5168\u5378\u8F7D CCJK\uFF1F",
288
+ a: [
289
+ '\u8FD0\u884C "ccjk uninstall" \u5E76\u9009\u62E9\u5B8C\u5168\u5378\u8F7D\u6A21\u5F0F\u3002',
290
+ "\u8FD9\u5C06\u79FB\u9664\u6240\u6709 CCJK \u76F8\u5173\u914D\u7F6E\u3002"
291
+ ]
292
+ },
293
+ {
294
+ q: "\u5982\u4F55\u66F4\u65B0 CCJK\uFF1F",
295
+ a: [
296
+ '\u65B9\u6CD5 1: \u8FD0\u884C "ccjk system upgrade"',
297
+ '\u65B9\u6CD5 2: \u8FD0\u884C "npm update -g ccjk"',
298
+ '\u65B9\u6CD5 3: \u5728\u83DC\u5355\u4E2D\u9009\u62E9 "\u4E00\u952E\u66F4\u65B0"'
299
+ ]
300
+ }
301
+ ];
302
+ for (let i = 0; i < faqs.length; i++) {
303
+ const faq = faqs[i];
304
+ console.log(ansis.yellow(`Q${i + 1}: ${faq.q}`));
305
+ for (const line of faq.a) {
306
+ console.log(ansis.gray(` ${line}`));
307
+ }
308
+ console.log("");
309
+ }
310
+ console.log(ansis.gray("\u2500".repeat(60)));
311
+ console.log(ansis.gray("\u{1F4D6} \u66F4\u591A\u95EE\u9898\u8BF7\u8BBF\u95EE: https://github.com/miounet11/ccjk/issues"));
312
+ console.log("");
313
+ }
314
+ function showCommandHelp(command) {
315
+ console.log("");
316
+ console.log(ansis.cyan.bold(`\u{1F4D6} \u547D\u4EE4\u5E2E\u52A9: ${command.name}`));
317
+ console.log(ansis.gray("\u2500".repeat(50)));
318
+ console.log("");
319
+ console.log(ansis.yellow("\u63CF\u8FF0:"));
320
+ console.log(` ${command.description}`);
321
+ console.log("");
322
+ if (command.alias) {
323
+ console.log(ansis.yellow("\u522B\u540D:"));
324
+ console.log(` ${command.alias}`);
325
+ console.log("");
326
+ }
327
+ if (command.examples && command.examples.length > 0) {
328
+ console.log(ansis.yellow("\u793A\u4F8B:"));
329
+ for (const example of command.examples) {
330
+ console.log(` ${ansis.cyan(example)}`);
331
+ }
332
+ console.log("");
333
+ }
334
+ console.log(ansis.gray("\u2500".repeat(50)));
335
+ console.log(ansis.gray(`\u8FD0\u884C "${command.name.split(" ")[0]} ${command.name.split(" ")[1] || ""} --help" \u67E5\u770B\u6240\u6709\u9009\u9879`));
336
+ console.log("");
337
+ }
338
+
339
+ export { help };