ccjk 13.3.5 → 13.3.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 (150) hide show
  1. package/dist/chunks/agent-teams.mjs +7 -5
  2. package/dist/chunks/agent.mjs +2 -2
  3. package/dist/chunks/agents.mjs +16 -16
  4. package/dist/chunks/api-cli.mjs +6 -6
  5. package/dist/chunks/api-providers.mjs +1 -1
  6. package/dist/chunks/api.mjs +4 -4
  7. package/dist/chunks/auto-bootstrap.mjs +1 -1
  8. package/dist/chunks/auto-fix.mjs +49 -4
  9. package/dist/chunks/auto-fixer.mjs +7 -5
  10. package/dist/chunks/auto-init.mjs +9 -7208
  11. package/dist/chunks/auto-memory-bridge.mjs +9 -3
  12. package/dist/chunks/auto-updater.mjs +9 -9
  13. package/dist/chunks/auto-upgrade.mjs +5 -3
  14. package/dist/chunks/banner.mjs +4 -3
  15. package/dist/chunks/boost.mjs +118 -62
  16. package/dist/chunks/ccjk-agents.mjs +3 -3
  17. package/dist/chunks/ccjk-all.mjs +7 -7
  18. package/dist/chunks/ccjk-config.mjs +2 -2
  19. package/dist/chunks/ccjk-hooks.mjs +4 -4
  20. package/dist/chunks/ccjk-mcp.mjs +5 -5
  21. package/dist/chunks/ccjk-setup.mjs +5 -5
  22. package/dist/chunks/ccjk-skills.mjs +5 -5
  23. package/dist/chunks/ccr.mjs +18 -16
  24. package/dist/chunks/ccu.mjs +2 -2
  25. package/dist/chunks/check-updates.mjs +8 -8
  26. package/dist/chunks/claude-code-config-manager.mjs +11 -8
  27. package/dist/chunks/claude-code-incremental-manager.mjs +7 -7
  28. package/dist/chunks/claude-config.mjs +1 -1
  29. package/dist/chunks/claude-wrapper.mjs +1 -1
  30. package/dist/chunks/cli-hook.mjs +15 -15
  31. package/dist/chunks/codex-config-switch.mjs +7 -7
  32. package/dist/chunks/codex-provider-manager.mjs +7 -7
  33. package/dist/chunks/codex-uninstaller.mjs +2 -2
  34. package/dist/chunks/codex.mjs +5 -5
  35. package/dist/chunks/commands.mjs +2 -2
  36. package/dist/chunks/commands2.mjs +3 -3
  37. package/dist/chunks/commit.mjs +2 -2
  38. package/dist/chunks/completion.mjs +2 -2
  39. package/dist/chunks/config-consolidator.mjs +2 -2
  40. package/dist/chunks/config-switch.mjs +8 -8
  41. package/dist/chunks/config.mjs +6 -5
  42. package/dist/chunks/config2.mjs +5 -5
  43. package/dist/chunks/config3.mjs +4 -4
  44. package/dist/chunks/constants.mjs +1 -1
  45. package/dist/chunks/context-opt.mjs +92 -90
  46. package/dist/chunks/context.mjs +659 -0
  47. package/dist/chunks/dashboard.mjs +14 -9
  48. package/dist/chunks/doctor.mjs +4 -4
  49. package/dist/chunks/eval.mjs +502 -0
  50. package/dist/chunks/evolution.mjs +46 -39
  51. package/dist/chunks/health-alerts.mjs +9 -9
  52. package/dist/chunks/help.mjs +1 -1
  53. package/dist/chunks/hook-installer.mjs +6 -3
  54. package/dist/chunks/index.mjs +23 -0
  55. package/dist/chunks/index10.mjs +634 -571
  56. package/dist/chunks/index11.mjs +1061 -569
  57. package/dist/chunks/index12.mjs +914 -1076
  58. package/dist/chunks/index13.mjs +136 -951
  59. package/dist/chunks/index14.mjs +209 -185
  60. package/dist/chunks/index2.mjs +19 -24
  61. package/dist/chunks/index3.mjs +19085 -12
  62. package/dist/chunks/index4.mjs +16 -19092
  63. package/dist/chunks/index5.mjs +7602 -16
  64. package/dist/chunks/index6.mjs +159 -7590
  65. package/dist/chunks/index7.mjs +1602 -171
  66. package/dist/chunks/index8.mjs +19 -1602
  67. package/dist/chunks/index9.mjs +612 -15
  68. package/dist/chunks/init.mjs +26 -19
  69. package/dist/chunks/installer.mjs +5 -5
  70. package/dist/chunks/installer2.mjs +2 -2
  71. package/dist/chunks/intent-engine.mjs +1 -1
  72. package/dist/chunks/interview.mjs +4 -4
  73. package/dist/chunks/manager.mjs +1 -1
  74. package/dist/chunks/marketplace.mjs +2 -2
  75. package/dist/chunks/mcp-cli.mjs +12 -12
  76. package/dist/chunks/mcp.mjs +8 -8
  77. package/dist/chunks/memory.mjs +8 -8
  78. package/dist/chunks/menu-hierarchical.mjs +24 -22
  79. package/dist/chunks/menu.mjs +27 -22
  80. package/dist/chunks/metrics-display.mjs +2 -2
  81. package/dist/chunks/migrator.mjs +1 -1
  82. package/dist/chunks/monitor.mjs +2 -2
  83. package/dist/chunks/notification.mjs +6 -6
  84. package/dist/chunks/onboarding-wizard.mjs +6 -5
  85. package/dist/chunks/onboarding.mjs +4 -4
  86. package/dist/chunks/package.mjs +1 -1
  87. package/dist/chunks/paradigm.mjs +2 -2
  88. package/dist/chunks/permission-manager.mjs +2 -2
  89. package/dist/chunks/permissions.mjs +3 -3
  90. package/dist/chunks/persistence-manager.mjs +19 -12
  91. package/dist/chunks/persistence.mjs +5 -3
  92. package/dist/chunks/plugin.mjs +2 -2
  93. package/dist/chunks/prompts.mjs +5 -5
  94. package/dist/chunks/providers.mjs +2 -2
  95. package/dist/chunks/quick-actions.mjs +7 -6
  96. package/dist/chunks/quick-provider.mjs +5 -4
  97. package/dist/chunks/quick-setup.mjs +20 -15
  98. package/dist/chunks/remote.mjs +15 -16
  99. package/dist/chunks/{convoy-manager.mjs → session-manager.mjs} +1129 -1095
  100. package/dist/chunks/session.mjs +2 -2
  101. package/dist/chunks/sessions.mjs +3 -3
  102. package/dist/chunks/silent-updater.mjs +1 -1
  103. package/dist/chunks/simple-config.mjs +2 -2
  104. package/dist/chunks/skill2.mjs +3 -3
  105. package/dist/chunks/skills-sync.mjs +5 -5
  106. package/dist/chunks/skills.mjs +3 -3
  107. package/dist/chunks/slash-commands.mjs +9 -8
  108. package/dist/chunks/smart-defaults.mjs +9 -5
  109. package/dist/chunks/startup.mjs +1 -1
  110. package/dist/chunks/stats.mjs +2 -2
  111. package/dist/chunks/status.mjs +37 -22
  112. package/dist/chunks/team.mjs +3 -3
  113. package/dist/chunks/thinking.mjs +4 -4
  114. package/dist/chunks/trace.mjs +2 -2
  115. package/dist/chunks/uninstall.mjs +9 -9
  116. package/dist/chunks/update.mjs +14 -11
  117. package/dist/chunks/upgrade-manager.mjs +3 -3
  118. package/dist/chunks/upgrade.mjs +25 -9
  119. package/dist/chunks/version-checker.mjs +4 -4
  120. package/dist/chunks/vim.mjs +3 -3
  121. package/dist/chunks/workflows.mjs +1 -1
  122. package/dist/chunks/wsl.mjs +1 -1
  123. package/dist/chunks/zero-config.mjs +4 -4
  124. package/dist/cli.mjs +60 -26
  125. package/dist/index.d.mts +4392 -4392
  126. package/dist/index.d.ts +4392 -4392
  127. package/dist/index.mjs +4314 -4314
  128. package/dist/shared/{ccjk.DcKLglJQ.mjs → ccjk.BIxuVL3_.mjs} +2 -2
  129. package/dist/shared/{ccjk.DJdmgr2d.mjs → ccjk.BJMRY2Ra.mjs} +5 -3
  130. package/dist/shared/{ccjk.B1TwPltj.mjs → ccjk.BOu1yav7.mjs} +3 -2
  131. package/dist/shared/{ccjk.mJpVRDZ8.mjs → ccjk.BWFpnOr3.mjs} +1 -1
  132. package/dist/shared/{ccjk.BfIpomdz.mjs → ccjk.CHUEFqmw.mjs} +3 -2
  133. package/dist/shared/{ccjk.CqdbaXqU.mjs → ccjk.CLUL0pAV.mjs} +9 -5
  134. package/dist/shared/{ccjk.Cot9p9_n.mjs → ccjk.Cjj8SVrn.mjs} +1 -1
  135. package/dist/shared/{ccjk.CfrpIIKy.mjs → ccjk.Crd_nEfj.mjs} +38 -20
  136. package/dist/shared/{ccjk.DCw2WnZU.mjs → ccjk.CvChMYvB.mjs} +1 -1
  137. package/dist/shared/{ccjk.CXzjn01x.mjs → ccjk.D8ZLYSZZ.mjs} +1 -1
  138. package/dist/shared/{ccjk.BrPUmTqm.mjs → ccjk.DJuyfrlL.mjs} +164 -82
  139. package/dist/shared/{ccjk.DHXfsrwn.mjs → ccjk.DRfdq6yl.mjs} +4 -4
  140. package/dist/shared/{ccjk.DXRAZcix.mjs → ccjk.DScm_NnL.mjs} +8 -4
  141. package/dist/shared/{ccjk.XsJWJuQP.mjs → ccjk.DfZKjHvG.mjs} +6 -128
  142. package/dist/shared/{ccjk.BFxsJM0k.mjs → ccjk.DwSebGy0.mjs} +4 -3
  143. package/dist/shared/ccjk.DxWqH-EF.mjs +170 -0
  144. package/dist/shared/{ccjk.Cwa_FiTX.mjs → ccjk.I6IuYdc_.mjs} +2 -2
  145. package/dist/shared/{ccjk.DpstNaeR.mjs → ccjk.KpFl2RDA.mjs} +3 -3
  146. package/dist/shared/{ccjk.dYDLfmph.mjs → ccjk._dESH4Rk.mjs} +1 -1
  147. package/dist/shared/{ccjk.BxSmJ8B7.mjs → ccjk.wLJHO0Af.mjs} +2 -1
  148. package/package.json +65 -67
  149. package/dist/chunks/index15.mjs +0 -218
  150. package/dist/shared/{ccjk.c-ETfBZ_.mjs → ccjk.eIn-g1yI.mjs} +96 -96
@@ -3,8 +3,8 @@ import { mkdir, writeFile, readFile, readdir, rm, stat } from 'node:fs/promises'
3
3
  import { homedir } from 'node:os';
4
4
  import { join as join$1 } from 'node:path';
5
5
  import process__default from 'node:process';
6
- import a from './index3.mjs';
7
- import { i as inquirer } from './index4.mjs';
6
+ import a from './index2.mjs';
7
+ import { i as inquirer } from './index3.mjs';
8
8
  import { j as join } from '../shared/ccjk.bQ7Dh1g4.mjs';
9
9
  import '../shared/ccjk.BAGoDD49.mjs';
10
10
  import 'node:readline';
@@ -1,8 +1,8 @@
1
- import a from './index3.mjs';
2
- import { t as taskPersistence } from '../shared/ccjk.BFxsJM0k.mjs';
1
+ import a from './index2.mjs';
2
+ import { t as taskPersistence } from '../shared/ccjk.DwSebGy0.mjs';
3
3
  import '../shared/ccjk.BAGoDD49.mjs';
4
- import 'better-sqlite3';
5
4
  import 'node:fs';
5
+ import 'better-sqlite3';
6
6
  import '../shared/ccjk.bQ7Dh1g4.mjs';
7
7
 
8
8
  async function sessionsCommand(options = {}) {
@@ -5,7 +5,7 @@ import { fileURLToPath } from 'node:url';
5
5
  import { CCJK_CONFIG_DIR } from './constants.mjs';
6
6
  import { getCloudState, updateCloudState } from './auto-bootstrap.mjs';
7
7
  import { j as join, d as dirname } from '../shared/ccjk.bQ7Dh1g4.mjs';
8
- import './index6.mjs';
8
+ import './index5.mjs';
9
9
  import 'node:crypto';
10
10
 
11
11
  const __filename = fileURLToPath(import.meta.url);
@@ -3,7 +3,7 @@ import { fileURLToPath } from 'node:url';
3
3
  import { exec as q } from './main.mjs';
4
4
  import { SETTINGS_FILE, CLAUDE_DIR } from './constants.mjs';
5
5
  import { ensureDir, writeFileAtomic } from './fs-operations.mjs';
6
- import { m as mergeAndCleanPermissions } from '../shared/ccjk.DXRAZcix.mjs';
6
+ import { m as mergeAndCleanPermissions } from '../shared/ccjk.DScm_NnL.mjs';
7
7
  import { g as getPlatform } from './platform.mjs';
8
8
  import { j as join, d as dirname } from '../shared/ccjk.bQ7Dh1g4.mjs';
9
9
  import 'module';
@@ -13,7 +13,7 @@ import 'node:process';
13
13
  import 'node:stream';
14
14
  import 'node:readline';
15
15
  import 'node:os';
16
- import './index6.mjs';
16
+ import './index5.mjs';
17
17
  import 'node:crypto';
18
18
  import 'node:fs/promises';
19
19
 
@@ -1,10 +1,10 @@
1
1
  import { existsSync, mkdirSync, writeFileSync, readFileSync } from 'node:fs';
2
2
  import { homedir } from 'node:os';
3
3
  import { fileURLToPath } from 'node:url';
4
- import a from './index3.mjs';
4
+ import a from './index2.mjs';
5
5
  import { c as commonjsRequire } from '../shared/ccjk.COweQ1RR.mjs';
6
6
  import require$$0 from 'fs';
7
- import { i as inquirer } from './index4.mjs';
7
+ import { i as inquirer } from './index3.mjs';
8
8
  import { g as getPluginManager } from '../shared/ccjk.DTdjs-qK.mjs';
9
9
  import { j as join, d as dirname } from '../shared/ccjk.bQ7Dh1g4.mjs';
10
10
  import '../shared/ccjk.BAGoDD49.mjs';
@@ -26,7 +26,7 @@ import 'module';
26
26
  import 'node:child_process';
27
27
  import 'node:stream';
28
28
  import './constants.mjs';
29
- import './index6.mjs';
29
+ import './index5.mjs';
30
30
  import '../shared/ccjk.CfKKcvWy.mjs';
31
31
  import '../shared/ccjk.DsYaCCx4.mjs';
32
32
 
@@ -1,18 +1,18 @@
1
- import a from './index3.mjs';
2
- import { i as inquirer } from './index4.mjs';
3
- import { getTranslation } from './index6.mjs';
1
+ import a from './index2.mjs';
2
+ import { i as inquirer } from './index3.mjs';
3
+ import { getTranslation } from './index5.mjs';
4
4
  import { createHash } from 'node:crypto';
5
5
  import { existsSync, readdirSync, readFileSync, mkdirSync } from 'node:fs';
6
6
  import process__default from 'node:process';
7
+ import { a as createGateway } from '../shared/ccjk.BtB1e5jm.mjs';
7
8
  import { CCJK_SKILLS_DIR, CCJK_CONFIG_DIR } from './constants.mjs';
8
9
  import { writeFileAtomic } from './fs-operations.mjs';
9
10
  import { readFile, stat } from 'node:fs/promises';
10
11
  import { g as getDefaultExportFromCjs } from '../shared/ccjk.BAGoDD49.mjs';
11
12
  import require$$0 from 'fs';
12
13
  import { c as commonjsRequire } from '../shared/ccjk.COweQ1RR.mjs';
13
- import { a as createGateway } from '../shared/ccjk.BtB1e5jm.mjs';
14
14
  import { j as join } from '../shared/ccjk.bQ7Dh1g4.mjs';
15
- import { b as CloudErrorFactory, C as CloudError } from '../shared/ccjk.CXzjn01x.mjs';
15
+ import { b as CloudErrorFactory, C as CloudError } from '../shared/ccjk.D8ZLYSZZ.mjs';
16
16
  import 'node:readline';
17
17
  import 'stream';
18
18
  import 'node:tty';
@@ -1,6 +1,6 @@
1
- import a from './index3.mjs';
2
- import { i as inquirer } from './index4.mjs';
3
- import { i18n } from './index6.mjs';
1
+ import a from './index2.mjs';
2
+ import { i as inquirer } from './index3.mjs';
3
+ import { i18n } from './index5.mjs';
4
4
  import { searchSkills, getSkill, getAllSkills, addSkill, setSkillEnabled, removeSkill, getBatchCategories, createBatchSkills } from './manager.mjs';
5
5
  import '../shared/ccjk.BAGoDD49.mjs';
6
6
  import 'node:readline';
@@ -1,12 +1,12 @@
1
- import a from './index3.mjs';
2
- import { i18n } from './index6.mjs';
1
+ import a from './index2.mjs';
3
2
  import { getContextPersistence } from './persistence.mjs';
3
+ import { i18n } from './index5.mjs';
4
4
  import '../shared/ccjk.BAGoDD49.mjs';
5
5
  import 'node:fs';
6
+ import 'better-sqlite3';
7
+ import '../shared/ccjk.bQ7Dh1g4.mjs';
6
8
  import 'node:process';
7
9
  import 'node:url';
8
- import '../shared/ccjk.bQ7Dh1g4.mjs';
9
- import 'better-sqlite3';
10
10
 
11
11
  function parseSlashCommand(input) {
12
12
  const trimmed = input.trim();
@@ -38,15 +38,15 @@ function getSlashCommands() {
38
38
  descriptionZh: "\u8FD0\u884C\u5168\u9762\u5065\u5EB7\u68C0\u67E5",
39
39
  category: "brain",
40
40
  handler: async () => {
41
- const { runHealthCheck } = await import('./index5.mjs');
41
+ const { runHealthCheck } = await import('./index4.mjs');
42
42
  const report = await runHealthCheck();
43
43
  console.log(a.cyan.bold("\n\u{1F3E5} Health Check Results\n"));
44
- console.log(`${a.gray("Overall Score:")} ${a.green.bold(report.totalScore + "/100")}`);
44
+ console.log(`${a.gray("Overall Score:")} ${a.green.bold(`${report.totalScore}/100`)}`);
45
45
  console.log(`${a.gray("Grade:")} ${a.green.bold(report.grade)}`);
46
46
  if (report.recommendations.length > 0) {
47
47
  console.log(a.yellow.bold("\n\u{1F4A1} Recommendations:\n"));
48
48
  report.recommendations.forEach((rec, i) => {
49
- console.log(`${a.yellow(i + 1 + ".")} ${rec.description}`);
49
+ console.log(`${a.yellow(`${i + 1}.`)} ${rec.description}`);
50
50
  if (rec.command) {
51
51
  console.log(` ${a.gray("\u2192")} ${a.cyan(rec.command)}`);
52
52
  }
@@ -191,7 +191,8 @@ function displaySlashCommandsHelp() {
191
191
  categories[cmd.category].commands.push(cmd);
192
192
  });
193
193
  Object.values(categories).forEach((category) => {
194
- if (category.commands.length === 0) return;
194
+ if (category.commands.length === 0)
195
+ return;
195
196
  console.log(a.white.bold(category.title));
196
197
  category.commands.forEach((cmd) => {
197
198
  const aliases = cmd.aliases ? a.gray(` (${cmd.aliases.map((a) => `/${a}`).join(", ")})`) : "";
@@ -5,7 +5,7 @@ import { CCJK_CONFIG_DIR } from './constants.mjs';
5
5
  import { writeJsonConfig } from './json-config.mjs';
6
6
  import { j as join } from '../shared/ccjk.bQ7Dh1g4.mjs';
7
7
  import { g as getPlatform } from './platform.mjs';
8
- import { s as scanProject } from '../shared/ccjk.BrPUmTqm.mjs';
8
+ import { s as scanProject } from '../shared/ccjk.DJuyfrlL.mjs';
9
9
 
10
10
  const ORCHESTRATION_LEVELS = ["off", "minimal", "standard", "max"];
11
11
  function parseOrchestrationLevel(value) {
@@ -313,14 +313,18 @@ class SmartDefaultsDetector {
313
313
  const runtime = project.runtime;
314
314
  if (runtime.isCI) {
315
315
  const hooks2 = [];
316
- if (project.linter !== "none") hooks2.push("pre-commit-lint-check");
317
- if (project.testRunner !== "none") hooks2.push("test-before-commit");
316
+ if (project.linter !== "none")
317
+ hooks2.push("pre-commit-lint-check");
318
+ if (project.testRunner !== "none")
319
+ hooks2.push("test-before-commit");
318
320
  return hooks2;
319
321
  }
320
322
  if (runtime.isContainer) {
321
323
  const hooks2 = [];
322
- if (project.linter !== "none") hooks2.push("pre-commit-lint-check");
323
- if (project.testRunner !== "none") hooks2.push("test-before-commit");
324
+ if (project.linter !== "none")
325
+ hooks2.push("pre-commit-lint-check");
326
+ if (project.testRunner !== "none")
327
+ hooks2.push("test-before-commit");
324
328
  return hooks2;
325
329
  }
326
330
  const hooks = [];
@@ -2,7 +2,7 @@ import { existsSync, mkdirSync, writeFileSync, readFileSync, readdirSync } from
2
2
  import { mkdir } from 'node:fs/promises';
3
3
  import { homedir } from 'node:os';
4
4
  import { j as join, b as basename } from '../shared/ccjk.bQ7Dh1g4.mjs';
5
- import { i18n } from './index6.mjs';
5
+ import { i18n } from './index5.mjs';
6
6
  import 'node:process';
7
7
  import 'node:url';
8
8
 
@@ -1,5 +1,5 @@
1
- import a from './index3.mjs';
2
- import { i18n } from './index6.mjs';
1
+ import a from './index2.mjs';
2
+ import { i18n } from './index5.mjs';
3
3
  import { existsSync, mkdirSync, readFileSync, writeFileSync, readdirSync } from 'node:fs';
4
4
  import { homedir } from 'node:os';
5
5
  import { j as join } from '../shared/ccjk.bQ7Dh1g4.mjs';
@@ -1,25 +1,25 @@
1
1
  import { existsSync, readFileSync } from 'node:fs';
2
2
  import { homedir } from 'node:os';
3
3
  import process__default from 'node:process';
4
- import a from './index3.mjs';
5
- import { s as scanProject } from '../shared/ccjk.BrPUmTqm.mjs';
6
- import { getContextPersistence } from './persistence.mjs';
4
+ import a from './index2.mjs';
5
+ import { s as scanProject } from '../shared/ccjk.DJuyfrlL.mjs';
7
6
  import { MetricsDisplay } from './metrics-display.mjs';
8
- import { r as runHealthCheck } from '../shared/ccjk.CfrpIIKy.mjs';
7
+ import { getContextPersistence } from './persistence.mjs';
8
+ import { r as runHealthCheck } from '../shared/ccjk.Crd_nEfj.mjs';
9
9
  import { j as join } from '../shared/ccjk.bQ7Dh1g4.mjs';
10
10
  import '../shared/ccjk.BAGoDD49.mjs';
11
11
  import 'node:child_process';
12
12
  import 'better-sqlite3';
13
13
  import './constants.mjs';
14
- import './index6.mjs';
14
+ import './index5.mjs';
15
15
  import 'node:url';
16
+ import 'node:path';
16
17
  import 'fs';
17
18
  import 'constants';
18
19
  import 'stream';
19
20
  import 'util';
20
21
  import 'assert';
21
22
  import 'path';
22
- import 'node:path';
23
23
 
24
24
  const GRADE_COLORS = {
25
25
  S: (s) => a.magenta.bold(s),
@@ -63,7 +63,8 @@ function renderScoreBar(score) {
63
63
  function loadInstalledSettings() {
64
64
  const settingsPath = join(homedir(), ".claude", "settings.json");
65
65
  try {
66
- if (!existsSync(settingsPath)) return { mcpServers: {}, hooks: {} };
66
+ if (!existsSync(settingsPath))
67
+ return { mcpServers: {}, hooks: {} };
67
68
  const data = JSON.parse(readFileSync(settingsPath, "utf-8"));
68
69
  return {
69
70
  mcpServers: data.mcpServers || {},
@@ -98,11 +99,16 @@ function renderProjectSection(ctx) {
98
99
  lines.push(` ${label(`${k}:`.padEnd(14))} ${display}`);
99
100
  }
100
101
  const flags = [];
101
- if (ctx.isMonorepo) flags.push("monorepo");
102
- if (ctx.hasDocker) flags.push("docker");
103
- if (ctx.hasCI) flags.push("CI");
104
- if (ctx.hasGitHooks) flags.push("git-hooks");
105
- if (ctx.usesConventionalCommits) flags.push("conventional-commits");
102
+ if (ctx.isMonorepo)
103
+ flags.push("monorepo");
104
+ if (ctx.hasDocker)
105
+ flags.push("docker");
106
+ if (ctx.hasCI)
107
+ flags.push("CI");
108
+ if (ctx.hasGitHooks)
109
+ flags.push("git-hooks");
110
+ if (ctx.usesConventionalCommits)
111
+ flags.push("conventional-commits");
106
112
  if (flags.length > 0) {
107
113
  lines.push(` ${label("Flags:".padEnd(14))} ${val(flags.join(", "))}`);
108
114
  }
@@ -114,11 +120,16 @@ function renderRuntimeSection(ctx) {
114
120
  const rt = ctx.runtime;
115
121
  lines.push(` ${label("Platform:".padEnd(14))} ${val(process__default.platform)} ${a.gray(`(${process__default.arch})`)}`);
116
122
  const envFlags = [];
117
- if (rt.isContainer) envFlags.push("container");
118
- if (rt.isHeadless) envFlags.push("headless");
119
- if (rt.isSSH) envFlags.push("SSH");
120
- if (rt.isCI) envFlags.push("CI");
121
- if (rt.isWSL) envFlags.push("WSL");
123
+ if (rt.isContainer)
124
+ envFlags.push("container");
125
+ if (rt.isHeadless)
126
+ envFlags.push("headless");
127
+ if (rt.isSSH)
128
+ envFlags.push("SSH");
129
+ if (rt.isCI)
130
+ envFlags.push("CI");
131
+ if (rt.isWSL)
132
+ envFlags.push("WSL");
122
133
  if (envFlags.length > 0) {
123
134
  lines.push(` ${label("Environment:".padEnd(14))} ${val(envFlags.join(", "))}`);
124
135
  } else {
@@ -184,10 +195,14 @@ function renderClaudeCodeSection(defaults) {
184
195
  if (defaults?.nativeFeatures) {
185
196
  const nf = defaults.nativeFeatures;
186
197
  const features = [];
187
- if (nf.hooks) features.push("hooks");
188
- if (nf.memory) features.push("memory");
189
- if (nf.subagents) features.push("subagents");
190
- if (nf.toolSearch) features.push("tool-search");
198
+ if (nf.hooks)
199
+ features.push("hooks");
200
+ if (nf.memory)
201
+ features.push("memory");
202
+ if (nf.subagents)
203
+ features.push("subagents");
204
+ if (nf.toolSearch)
205
+ features.push("tool-search");
191
206
  if (features.length > 0) {
192
207
  lines.push(` ${label("Features:".padEnd(14))} ${val(features.join(", "))}`);
193
208
  }
@@ -243,7 +258,7 @@ function renderHealthSection(report, compact) {
243
258
  }
244
259
  return lines;
245
260
  }
246
- function suggestNextAction(health, ctx) {
261
+ function suggestNextAction(health, _ctx) {
247
262
  const lines = [];
248
263
  lines.push(heading("Next Step"));
249
264
  const score = health.totalScore;
@@ -1,7 +1,7 @@
1
1
  import { existsSync, mkdirSync, readFileSync } from 'node:fs';
2
- import a from './index3.mjs';
3
- import { i as inquirer } from './index4.mjs';
4
- import { i18n } from './index6.mjs';
2
+ import a from './index2.mjs';
3
+ import { i as inquirer } from './index3.mjs';
4
+ import { i18n } from './index5.mjs';
5
5
  import { writeFileAtomic } from './fs-operations.mjs';
6
6
  import { j as join } from '../shared/ccjk.bQ7Dh1g4.mjs';
7
7
  import '../shared/ccjk.BAGoDD49.mjs';
@@ -1,9 +1,9 @@
1
- import a from './index3.mjs';
2
- import { i as inquirer } from './index4.mjs';
1
+ import a from './index2.mjs';
2
+ import { i as inquirer } from './index3.mjs';
3
3
  import { SETTINGS_FILE } from './constants.mjs';
4
- import { i18n } from './index6.mjs';
4
+ import { i18n } from './index5.mjs';
5
5
  import { readJsonConfig, writeJsonConfig } from './json-config.mjs';
6
- import { h as handleExitPromptError, a as handleGeneralError } from '../shared/ccjk.DcKLglJQ.mjs';
6
+ import { h as handleExitPromptError, a as handleGeneralError } from '../shared/ccjk.BIxuVL3_.mjs';
7
7
  import '../shared/ccjk.BAGoDD49.mjs';
8
8
  import 'node:readline';
9
9
  import 'stream';
@@ -1,5 +1,5 @@
1
- import a from './index3.mjs';
2
- import { e as executionTracer } from '../shared/ccjk.BfIpomdz.mjs';
1
+ import a from './index2.mjs';
2
+ import { e as executionTracer } from '../shared/ccjk.CHUEFqmw.mjs';
3
3
  import '../shared/ccjk.BAGoDD49.mjs';
4
4
 
5
5
  async function traceCommand(options = {}) {
@@ -1,17 +1,17 @@
1
- import a from './index3.mjs';
2
- import { i as inquirer } from './index4.mjs';
1
+ import a from './index2.mjs';
2
+ import { i as inquirer } from './index3.mjs';
3
3
  import { ZCF_CONFIG_FILE, DEFAULT_CODE_TOOL_TYPE, isCodeToolType } from './constants.mjs';
4
- import { i18n, ensureI18nInitialized } from './index6.mjs';
4
+ import { i18n, ensureI18nInitialized } from './index5.mjs';
5
5
  import { readZcfConfig } from './ccjk-config.mjs';
6
- import { r as resolveCodeType } from '../shared/ccjk.Cot9p9_n.mjs';
7
- import { h as handleExitPromptError, a as handleGeneralError } from '../shared/ccjk.DcKLglJQ.mjs';
6
+ import { r as resolveCodeType } from '../shared/ccjk.Cjj8SVrn.mjs';
7
+ import { h as handleExitPromptError, a as handleGeneralError } from '../shared/ccjk.BIxuVL3_.mjs';
8
8
  import { a as addNumbersToChoices } from '../shared/ccjk.BFQ7yr5S.mjs';
9
- import { p as promptBoolean } from '../shared/ccjk.mJpVRDZ8.mjs';
9
+ import { p as promptBoolean } from '../shared/ccjk.BWFpnOr3.mjs';
10
10
  import { promises } from 'node:fs';
11
11
  import { homedir } from 'node:os';
12
12
  import { exec as q } from './main.mjs';
13
13
  import { readJsonConfig, writeJsonConfig } from './json-config.mjs';
14
- import { m as moveToTrash } from '../shared/ccjk.DCw2WnZU.mjs';
14
+ import { m as moveToTrash } from '../shared/ccjk.CvChMYvB.mjs';
15
15
  import { j as join } from '../shared/ccjk.bQ7Dh1g4.mjs';
16
16
  import '../shared/ccjk.BAGoDD49.mjs';
17
17
  import 'node:readline';
@@ -30,14 +30,14 @@ import 'buffer';
30
30
  import 'string_decoder';
31
31
  import 'node:url';
32
32
  import '../shared/ccjk.BBtCGd_g.mjs';
33
- import './index7.mjs';
33
+ import './index6.mjs';
34
34
  import './fs-operations.mjs';
35
35
  import 'node:fs/promises';
36
36
  import '../shared/ccjk.RyizuzOI.mjs';
37
37
  import './smart-defaults.mjs';
38
38
  import 'node:child_process';
39
39
  import './platform.mjs';
40
- import '../shared/ccjk.BrPUmTqm.mjs';
40
+ import '../shared/ccjk.DJuyfrlL.mjs';
41
41
  import '../shared/ccjk.DeWpAShp.mjs';
42
42
  import 'module';
43
43
  import 'node:stream';
@@ -1,16 +1,17 @@
1
- import a from './index3.mjs';
2
- import { i as inquirer } from './index4.mjs';
3
1
  import { existsSync } from 'node:fs';
2
+ import a from './index2.mjs';
3
+ import { i as inquirer } from './index3.mjs';
4
4
  import { r as runCodexUpdate, M as MCP_SERVICE_CONFIGS, g as getMcpServices } from './codex.mjs';
5
5
  import { SETTINGS_FILE, DEFAULT_CODE_TOOL_TYPE, resolveCodeToolType as resolveCodeToolType$1, isCodeToolType } from './constants.mjs';
6
- import { i18n } from './index6.mjs';
6
+ import { i18n } from './index5.mjs';
7
7
  import { displayBanner } from './banner.mjs';
8
8
  import { readZcfConfig, updateZcfConfig } from './ccjk-config.mjs';
9
9
  import { r as readMcpConfig } from './claude-config.mjs';
10
10
  import { c as copyConfigFiles } from './config.mjs';
11
- import { n as needsMigration, m as migrateSettingsForTokenRetrieval, d as displayMigrationResult, p as promptMigration, u as updatePromptOnly, s as selectAndInstallWorkflows } from '../shared/ccjk.XsJWJuQP.mjs';
12
- import { h as handleExitPromptError, a as handleGeneralError } from '../shared/ccjk.DcKLglJQ.mjs';
13
- import { a as installMcpServices } from '../shared/ccjk.DpstNaeR.mjs';
11
+ import { n as needsMigration, m as migrateSettingsForTokenRetrieval, d as displayMigrationResult, p as promptMigration } from '../shared/ccjk.DxWqH-EF.mjs';
12
+ import { u as updatePromptOnly, s as selectAndInstallWorkflows } from '../shared/ccjk.DfZKjHvG.mjs';
13
+ import { h as handleExitPromptError, a as handleGeneralError } from '../shared/ccjk.BIxuVL3_.mjs';
14
+ import { a as installMcpServices } from '../shared/ccjk.KpFl2RDA.mjs';
14
15
  import { resolveAiOutputLanguage } from './prompts.mjs';
15
16
  import { g as getRuntimeVersion } from '../shared/ccjk.gDEDGD_t.mjs';
16
17
  import { checkClaudeCodeVersionAndPrompt } from './version-checker.mjs';
@@ -32,7 +33,7 @@ import 'buffer';
32
33
  import 'string_decoder';
33
34
  import 'node:url';
34
35
  import '../shared/ccjk.RyizuzOI.mjs';
35
- import './index8.mjs';
36
+ import './index7.mjs';
36
37
  import '../shared/ccjk.DeWpAShp.mjs';
37
38
  import '../shared/ccjk.CxpGa6MC.mjs';
38
39
  import '../shared/ccjk.BBtCGd_g.mjs';
@@ -46,9 +47,10 @@ import '../shared/ccjk.bQ7Dh1g4.mjs';
46
47
  import './json-config.mjs';
47
48
  import './platform.mjs';
48
49
  import '../shared/ccjk.BFQ7yr5S.mjs';
49
- import '../shared/ccjk.mJpVRDZ8.mjs';
50
- import './index7.mjs';
51
- import '../shared/ccjk.DXRAZcix.mjs';
50
+ import '../shared/ccjk.BWFpnOr3.mjs';
51
+ import './index6.mjs';
52
+ import '../shared/ccjk.DScm_NnL.mjs';
53
+ import './claude-code-config-manager.mjs';
52
54
 
53
55
  const ccjkVersion = getRuntimeVersion();
54
56
  function resolveCodeToolType(optionValue, savedValue) {
@@ -70,7 +72,8 @@ async function checkAndPromptNewMcpServices(skipPrompt) {
70
72
  const newServices = MCP_SERVICE_CONFIGS.filter(
71
73
  (c) => c.defaultSelected && !installedIds.has(c.id)
72
74
  );
73
- if (newServices.length === 0) return;
75
+ if (newServices.length === 0)
76
+ return;
74
77
  const allServices = await getMcpServices();
75
78
  const newServiceNames = newServices.map((c) => allServices.find((s) => s.id === c.id)?.name || c.id).join(", ");
76
79
  console.log(a.cyan(`
@@ -1,6 +1,6 @@
1
- import a from './index3.mjs';
2
1
  import process__default from 'node:process';
3
- import ora from './index8.mjs';
2
+ import a from './index2.mjs';
3
+ import ora from './index7.mjs';
4
4
  import { s as semverExports } from '../shared/ccjk.CxpGa6MC.mjs';
5
5
  import { exec as q } from './main.mjs';
6
6
  import { STATUS } from './banner.mjs';
@@ -13,7 +13,7 @@ import 'node:child_process';
13
13
  import 'node:path';
14
14
  import 'node:stream';
15
15
  import 'node:readline';
16
- import './index6.mjs';
16
+ import './index5.mjs';
17
17
  import 'node:fs';
18
18
  import 'node:url';
19
19
  import '../shared/ccjk.bQ7Dh1g4.mjs';
@@ -1,8 +1,23 @@
1
+ import { i as inquirer } from './index3.mjs';
1
2
  import { checkForUpdates, performUpgrade } from './auto-upgrade.mjs';
2
- import 'node:child_process';
3
- import 'node:fs';
3
+ import 'node:readline';
4
+ import '../shared/ccjk.BAGoDD49.mjs';
5
+ import 'stream';
6
+ import 'node:tty';
7
+ import 'node:process';
8
+ import 'node:async_hooks';
9
+ import '../shared/ccjk.Cjgrln_h.mjs';
10
+ import 'node:util';
11
+ import 'tty';
12
+ import 'fs';
13
+ import 'child_process';
4
14
  import 'node:path';
5
15
  import 'node:os';
16
+ import 'node:crypto';
17
+ import 'buffer';
18
+ import 'string_decoder';
19
+ import 'node:child_process';
20
+ import 'node:fs';
6
21
 
7
22
  async function upgrade() {
8
23
  console.log("\u{1F50D} Checking for updates...\n");
@@ -17,13 +32,14 @@ async function upgrade() {
17
32
  console.log(` Current: v${versionInfo.current}`);
18
33
  console.log(` Latest: v${versionInfo.latest} (${versionInfo.updateType} update)
19
34
  `);
20
- const { default: prompts } = await import('prompts');
21
- const { confirm } = await prompts({
22
- type: "confirm",
23
- name: "confirm",
24
- message: "Do you want to upgrade now?",
25
- initial: true
26
- });
35
+ const { confirm } = await inquirer.prompt([
36
+ {
37
+ type: "confirm",
38
+ name: "confirm",
39
+ message: "Do you want to upgrade now?",
40
+ default: true
41
+ }
42
+ ]);
27
43
  if (!confirm) {
28
44
  console.log("\n\u23ED\uFE0F Upgrade cancelled.\n");
29
45
  return;
@@ -640,7 +640,7 @@ function getSourceDisplayName(source, i18n) {
640
640
  return sourceMap[source] || source;
641
641
  }
642
642
  async function performNpmRemovalAndActivateHomebrew(_npmInstallation, homebrewInstallation, tinyExec, i18n, ansis) {
643
- const ora = (await import('./index8.mjs')).default;
643
+ const ora = (await import('./index7.mjs')).default;
644
644
  const spinner = ora(i18n.t("installation:removingDuplicateInstallation")).start();
645
645
  try {
646
646
  const { wrapCommandWithSudo } = await import('./platform.mjs').then(function (n) { return n.p; });
@@ -678,8 +678,8 @@ async function performNpmRemovalAndActivateHomebrew(_npmInstallation, homebrewIn
678
678
  }
679
679
  }
680
680
  async function handleDuplicateInstallations(skipPrompt = false) {
681
- const { ensureI18nInitialized, format, i18n } = await import('./index6.mjs');
682
- const ansis = (await import('./index3.mjs')).default;
681
+ const { ensureI18nInitialized, format, i18n } = await import('./index5.mjs');
682
+ const ansis = (await import('./index2.mjs')).default;
683
683
  ensureI18nInitialized();
684
684
  const duplicateInfo = await checkDuplicateInstallations();
685
685
  if (!duplicateInfo.hasDuplicates) {
@@ -738,7 +738,7 @@ async function handleDuplicateInstallations(skipPrompt = false) {
738
738
  ansis
739
739
  );
740
740
  }
741
- const inquirer = (await import('./index4.mjs').then(function (n) { return n.c; })).default;
741
+ const inquirer = (await import('./index3.mjs').then(function (n) { return n.c; })).default;
742
742
  const sourceDisplayName = getSourceDisplayName(npmInstallation.source, i18n);
743
743
  const confirmMessage = format(i18n.t("installation:confirmRemoveDuplicate"), { source: sourceDisplayName });
744
744
  const { action } = await inquirer.prompt([
@@ -1,6 +1,6 @@
1
- import a from './index3.mjs';
2
- import { i as inquirer } from './index4.mjs';
3
- import { ensureI18nInitialized, i18n } from './index6.mjs';
1
+ import a from './index2.mjs';
2
+ import { i as inquirer } from './index3.mjs';
3
+ import { ensureI18nInitialized, i18n } from './index5.mjs';
4
4
  import { existsSync, readFileSync } from 'node:fs';
5
5
  import { readFile, writeFile, mkdir } from 'node:fs/promises';
6
6
  import { homedir } from 'node:os';
@@ -1,4 +1,4 @@
1
- import a from './index3.mjs';
1
+ import a from './index2.mjs';
2
2
  import { EventEmitter } from 'node:events';
3
3
  import { existsSync, mkdirSync, writeFileSync, readFileSync } from 'node:fs';
4
4
  import { homedir } from 'node:os';
@@ -1,6 +1,6 @@
1
1
  import { Buffer } from 'node:buffer';
2
2
  import { c as chunkify } from '../shared/ccjk.KfSWcGlE.mjs';
3
- import { canAccessPowerShell, convertWslPathToWindows, isUncPath } from './index15.mjs';
3
+ import { canAccessPowerShell, convertWslPathToWindows, isUncPath } from './index14.mjs';
4
4
  import process__default from 'node:process';
5
5
  import { promisify } from 'node:util';
6
6
  import childProcess from 'node:child_process';
@@ -1,10 +1,10 @@
1
- import a from './index3.mjs';
2
- import { i as inquirer } from './index4.mjs';
3
1
  import { existsSync, readFileSync } from 'node:fs';
2
+ import a from './index2.mjs';
3
+ import { i as inquirer } from './index3.mjs';
4
4
  import { SETTINGS_FILE, CLAUDE_DIR } from './constants.mjs';
5
- import { i18n } from './index6.mjs';
5
+ import { i18n } from './index5.mjs';
6
6
  import { ensureDir, writeFileAtomic } from './fs-operations.mjs';
7
- import { m as mergeAndCleanPermissions } from '../shared/ccjk.DXRAZcix.mjs';
7
+ import { m as mergeAndCleanPermissions } from '../shared/ccjk.DScm_NnL.mjs';
8
8
  import { a as addNumbersToChoices } from '../shared/ccjk.BFQ7yr5S.mjs';
9
9
  import '../shared/ccjk.BAGoDD49.mjs';
10
10
  import 'node:readline';