ccjk 10.1.0 → 10.3.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 (115) hide show
  1. package/README.md +28 -0
  2. package/dist/chunks/agent-teams.mjs +1 -1
  3. package/dist/chunks/agent.mjs +1 -1
  4. package/dist/chunks/api-providers.mjs +1 -1
  5. package/dist/chunks/api.mjs +3 -3
  6. package/dist/chunks/auto-bootstrap.mjs +1 -1
  7. package/dist/chunks/auto-updater.mjs +1 -1
  8. package/dist/{shared/ccjk.Br91zBIG.mjs → chunks/banner.mjs} +52 -3
  9. package/dist/chunks/boost.mjs +2 -2
  10. package/dist/chunks/ccjk-agents.mjs +1 -1
  11. package/dist/chunks/ccjk-all.mjs +1 -1
  12. package/dist/chunks/ccjk-config.mjs +1 -1
  13. package/dist/chunks/ccjk-hooks.mjs +1 -1
  14. package/dist/chunks/ccjk-mcp.mjs +2 -2
  15. package/dist/chunks/ccjk-setup.mjs +1 -1
  16. package/dist/chunks/ccjk-skills.mjs +1 -1
  17. package/dist/chunks/ccr.mjs +11 -10
  18. package/dist/chunks/ccu.mjs +1 -1
  19. package/dist/chunks/check-updates.mjs +4 -3
  20. package/dist/chunks/claude-code-config-manager.mjs +8 -7
  21. package/dist/chunks/claude-code-incremental-manager.mjs +3 -2
  22. package/dist/chunks/claude-config.mjs +3 -3
  23. package/dist/chunks/claude-wrapper.mjs +2 -2
  24. package/dist/chunks/codex-config-switch.mjs +3 -2
  25. package/dist/chunks/codex-provider-manager.mjs +3 -2
  26. package/dist/chunks/codex-uninstaller.mjs +2 -2
  27. package/dist/chunks/codex.mjs +5 -5
  28. package/dist/chunks/commands.mjs +88 -391
  29. package/dist/chunks/commands2.mjs +391 -88
  30. package/dist/chunks/completion.mjs +1 -1
  31. package/dist/chunks/config-consolidator.mjs +2 -2
  32. package/dist/chunks/config-switch.mjs +4 -3
  33. package/dist/chunks/config.mjs +6 -98
  34. package/dist/chunks/config2.mjs +411 -400
  35. package/dist/chunks/config3.mjs +401 -410
  36. package/dist/chunks/constants.mjs +1 -1
  37. package/dist/chunks/context.mjs +283 -1
  38. package/dist/chunks/dashboard.mjs +365 -0
  39. package/dist/chunks/doctor.mjs +4 -4
  40. package/dist/chunks/features.mjs +12 -11
  41. package/dist/chunks/fs-operations.mjs +1 -1
  42. package/dist/chunks/health-alerts.mjs +304 -0
  43. package/dist/chunks/health-check.mjs +532 -0
  44. package/dist/chunks/index.mjs +10 -177
  45. package/dist/chunks/index2.mjs +168 -1162
  46. package/dist/chunks/index3.mjs +1076 -910
  47. package/dist/chunks/index4.mjs +947 -137
  48. package/dist/chunks/index5.mjs +167 -635
  49. package/dist/chunks/index6.mjs +663 -0
  50. package/dist/chunks/init.mjs +19 -19
  51. package/dist/chunks/installer.mjs +649 -147
  52. package/dist/chunks/installer2.mjs +147 -649
  53. package/dist/chunks/interview.mjs +2 -2
  54. package/dist/chunks/marketplace.mjs +1 -1
  55. package/dist/chunks/mcp.mjs +5 -4
  56. package/dist/chunks/menu.mjs +22 -9
  57. package/dist/chunks/metrics-display.mjs +152 -0
  58. package/dist/chunks/migrator.mjs +1 -1
  59. package/dist/chunks/monitor.mjs +2 -2
  60. package/dist/chunks/notification.mjs +1 -1
  61. package/dist/chunks/onboarding.mjs +2 -2
  62. package/dist/chunks/package.mjs +1 -1
  63. package/dist/chunks/permission-manager.mjs +2 -2
  64. package/dist/chunks/permissions.mjs +1 -1
  65. package/dist/chunks/persistence-manager.mjs +781 -0
  66. package/dist/chunks/persistence.mjs +667 -0
  67. package/dist/chunks/platform.mjs +1 -1
  68. package/dist/chunks/plugin.mjs +1 -1
  69. package/dist/chunks/prompts.mjs +1 -1
  70. package/dist/chunks/providers.mjs +1 -1
  71. package/dist/chunks/quick-actions.mjs +321 -0
  72. package/dist/chunks/quick-provider.mjs +2 -0
  73. package/dist/chunks/quick-setup.mjs +9 -8
  74. package/dist/chunks/silent-updater.mjs +1 -1
  75. package/dist/chunks/simple-config.mjs +3 -8
  76. package/dist/chunks/skill.mjs +1 -1
  77. package/dist/chunks/skills-sync.mjs +1 -1
  78. package/dist/chunks/skills.mjs +1 -1
  79. package/dist/chunks/slash-commands.mjs +208 -0
  80. package/dist/chunks/smart-defaults.mjs +1 -1
  81. package/dist/chunks/startup.mjs +1 -1
  82. package/dist/chunks/stats.mjs +1 -1
  83. package/dist/chunks/status.mjs +31 -2
  84. package/dist/chunks/team.mjs +1 -1
  85. package/dist/chunks/thinking.mjs +2 -2
  86. package/dist/chunks/uninstall.mjs +5 -5
  87. package/dist/chunks/update.mjs +8 -7
  88. package/dist/chunks/upgrade-manager.mjs +2 -2
  89. package/dist/chunks/version-checker.mjs +3 -3
  90. package/dist/chunks/vim.mjs +1 -1
  91. package/dist/chunks/zero-config.mjs +359 -0
  92. package/dist/cli.mjs +212 -21
  93. package/dist/i18n/locales/en/cli.json +14 -1
  94. package/dist/i18n/locales/en/common.json +27 -0
  95. package/dist/i18n/locales/en/configuration.json +33 -0
  96. package/dist/i18n/locales/en/context.json +54 -1
  97. package/dist/i18n/locales/en/dashboard.json +78 -0
  98. package/dist/i18n/locales/en/persistence.json +127 -0
  99. package/dist/i18n/locales/en/quick-actions.json +78 -0
  100. package/dist/i18n/locales/zh-CN/cli.json +14 -1
  101. package/dist/i18n/locales/zh-CN/common.json +27 -0
  102. package/dist/i18n/locales/zh-CN/configuration.json +33 -0
  103. package/dist/i18n/locales/zh-CN/context.json +54 -1
  104. package/dist/i18n/locales/zh-CN/dashboard.json +78 -0
  105. package/dist/i18n/locales/zh-CN/persistence.json +127 -0
  106. package/dist/i18n/locales/zh-CN/quick-actions.json +78 -0
  107. package/dist/index.mjs +3 -2
  108. package/dist/shared/{ccjk.DE91nClQ.mjs → ccjk.BKoi8-Hy.mjs} +1 -1
  109. package/dist/shared/ccjk.BiCrMV5O.mjs +94 -0
  110. package/dist/shared/{ccjk.Dpw86UX0.mjs → ccjk.CxtuJxaS.mjs} +1 -1
  111. package/dist/shared/{ccjk.ClzTOz9n.mjs → ccjk.DB2UYcq0.mjs} +5 -5
  112. package/dist/shared/{ccjk.CmsW23FN.mjs → ccjk.DVBW2wxp.mjs} +4 -3
  113. package/dist/shared/{ccjk.Bndhan7G.mjs → ccjk.DfwJOEok.mjs} +1 -1
  114. package/dist/shared/{ccjk.DvIrK0wz.mjs → ccjk.DrMygfCF.mjs} +1 -1
  115. package/package.json +19 -19
package/README.md CHANGED
@@ -133,6 +133,26 @@ ccjk mcp install filesystem puppeteer postgres
133
133
  # Done. No manual config.
134
134
  ```
135
135
 
136
+ ### 🔓 Zero-Config Permission Presets (NEW)
137
+ One-click permission configuration for different use cases:
138
+ ```bash
139
+ ccjk zc --list # View available presets
140
+ ccjk zc --preset max # Maximum permissions (all commands)
141
+ ccjk zc --preset dev # Developer preset (build tools, git, npm)
142
+ ccjk zc --preset safe # Safe preset (read-only operations)
143
+ ```
144
+
145
+ **Available Presets:**
146
+ - **max** — All common commands, file operations, and MCP servers (100+ permissions)
147
+ - **dev** — Build tools, git, package managers, and file operations (50+ permissions)
148
+ - **safe** — Read-only commands, no file modifications (20+ permissions)
149
+
150
+ Each preset automatically:
151
+ - ✅ Backs up your current settings
152
+ - ✅ Merges with existing permissions (no data loss)
153
+ - ✅ Removes invalid/dangerous patterns
154
+ - ✅ Shows exactly what will be added
155
+
136
156
  ## 📖 Essential Commands
137
157
 
138
158
  ```bash
@@ -158,6 +178,14 @@ ccjk mcp list
158
178
  # Memory & Context
159
179
  ccjk memory --enable
160
180
  ccjk compact # Clean up conversation
181
+
182
+ # Zero-Config Permission Presets (NEW)
183
+ ccjk zc --list # List available presets
184
+ ccjk zc --preset max # Apply maximum permissions
185
+ ccjk zc --preset dev # Apply developer preset
186
+ ccjk zc --preset safe # Apply safe (read-only) preset
187
+
188
+ # Other Commands
161
189
  npx ccjk u # Update workflows
162
190
  npx ccjk sync # Cloud sync
163
191
  npx ccjk doctor # Health check
@@ -1,7 +1,7 @@
1
1
  import { existsSync, readFileSync } from 'node:fs';
2
2
  import ansis from 'ansis';
3
3
  import { SETTINGS_FILE } from './constants.mjs';
4
- import { ensureI18nInitialized, i18n } from './index.mjs';
4
+ import { ensureI18nInitialized, i18n } from './index2.mjs';
5
5
  import { writeJsonConfig } from './json-config.mjs';
6
6
  import 'node:os';
7
7
  import 'pathe';
@@ -5,7 +5,7 @@ import { CCJK_CONFIG_DIR } from './constants.mjs';
5
5
  import { w as writeAgentFile } from '../shared/ccjk.Bvoex4TZ.mjs';
6
6
  import { g as getPluginManager } from '../shared/ccjk.BsXQugfY.mjs';
7
7
  import { homedir } from 'node:os';
8
- import './index.mjs';
8
+ import './index2.mjs';
9
9
  import 'node:process';
10
10
  import 'node:url';
11
11
  import 'i18next';
@@ -1,7 +1,7 @@
1
1
  import { CCJK_CLOUD_API_URL } from './constants.mjs';
2
2
  import 'node:os';
3
3
  import 'pathe';
4
- import './index.mjs';
4
+ import './index2.mjs';
5
5
  import 'node:fs';
6
6
  import 'node:process';
7
7
  import 'node:url';
@@ -1,6 +1,6 @@
1
1
  import ansis from 'ansis';
2
- import { i18n, format } from './index.mjs';
3
- import { S as STATUS, t as theme } from '../shared/ccjk.Br91zBIG.mjs';
2
+ import { i18n, format } from './index2.mjs';
3
+ import { STATUS, COLORS as theme } from './banner.mjs';
4
4
  import inquirer from 'inquirer';
5
5
  import { existsSync, readFileSync, mkdirSync } from 'node:fs';
6
6
  import { homedir } from 'node:os';
@@ -720,7 +720,7 @@ async function runCcrSetup(lang) {
720
720
  console.log(ansis.gray(lang === "zh-CN" ? " CCR \u63D0\u4F9B\u5B8C\u6574\u7684\u6A21\u578B\u8DEF\u7531\u3001\u8F6C\u6362\u548C\u591A\u63D0\u4F9B\u5546\u652F\u6301" : " CCR provides full model routing, transformation, and multi-provider support"));
721
721
  console.log("");
722
722
  try {
723
- const { setupCcrConfiguration } = await import('./config3.mjs');
723
+ const { setupCcrConfiguration } = await import('./config2.mjs');
724
724
  const success = await setupCcrConfiguration();
725
725
  return {
726
726
  success,
@@ -4,7 +4,7 @@ import { release, platform, type, homedir, hostname } from 'node:os';
4
4
  import { fileURLToPath } from 'node:url';
5
5
  import { join, dirname } from 'pathe';
6
6
  import { CCJK_CONFIG_DIR } from './constants.mjs';
7
- import './index.mjs';
7
+ import './index2.mjs';
8
8
  import 'node:process';
9
9
  import 'i18next';
10
10
  import 'i18next-fs-backend';
@@ -1,7 +1,7 @@
1
1
  import ansis from 'ansis';
2
2
  import ora from 'ora';
3
3
  import { exec } from 'tinyexec';
4
- import { ensureI18nInitialized, i18n, format } from './index.mjs';
4
+ import { ensureI18nInitialized, i18n, format } from './index2.mjs';
5
5
  import { s as shouldUseSudoForGlobalInstall } from './platform.mjs';
6
6
  import { p as promptBoolean } from '../shared/ccjk.DHbrGcgg.mjs';
7
7
  import { checkClaudeCodeVersion, fixBrokenNpmSymlink, checkCcrVersion, handleDuplicateInstallations, checkCometixLineVersion } from './version-checker.mjs';
@@ -1,6 +1,12 @@
1
1
  import ansis from 'ansis';
2
- import { homepage, version } from '../chunks/package.mjs';
3
- import { ensureI18nInitialized, i18n } from '../chunks/index.mjs';
2
+ import { homepage, version } from './package.mjs';
3
+ import { ensureI18nInitialized, i18n } from './index2.mjs';
4
+ import 'node:fs';
5
+ import 'node:process';
6
+ import 'node:url';
7
+ import 'i18next';
8
+ import 'i18next-fs-backend';
9
+ import 'pathe';
4
10
 
5
11
  const theme = {
6
12
  // === Core Colors ===
@@ -126,6 +132,49 @@ function displayBannerWithInfo(subtitle) {
126
132
  console.log(ansis.gray(` ${ansis.green(homepage)}
127
133
  `));
128
134
  }
135
+ function displayCommandDiscovery() {
136
+ ensureI18nInitialized();
137
+ const isZhCN = i18n.language === "zh-CN";
138
+ console.log(ansis.green.bold(`
139
+ ${i18n.t("cli:commandDiscovery.title")}`));
140
+ console.log(ansis.gray("\u2500".repeat(60)));
141
+ const ccjkCommands = [
142
+ { cmd: "/status", desc: i18n.t("cli:commandDiscovery.status"), descEn: "Brain Dashboard" },
143
+ { cmd: "/health", desc: i18n.t("cli:commandDiscovery.health"), descEn: "Health Check" },
144
+ { cmd: "/search", desc: i18n.t("cli:commandDiscovery.search"), descEn: "Search Contexts" },
145
+ { cmd: "/compress", desc: i18n.t("cli:commandDiscovery.compress"), descEn: "Compression Stats" },
146
+ { cmd: "/tasks", desc: i18n.t("cli:commandDiscovery.tasks"), descEn: "Task Manager" },
147
+ { cmd: "/backup", desc: i18n.t("cli:commandDiscovery.backup"), descEn: "Create Backup" },
148
+ { cmd: "/optimize", desc: i18n.t("cli:commandDiscovery.optimize"), descEn: "Optimize DB" }
149
+ ];
150
+ for (const { cmd, desc, descEn } of ccjkCommands) {
151
+ const cmdPadded = cmd.padEnd(12);
152
+ if (isZhCN) {
153
+ console.log(` ${ansis.cyan(cmdPadded)} - ${ansis.white(desc)} ${ansis.gray(`(${descEn})`)}`);
154
+ } else {
155
+ console.log(` ${ansis.cyan(cmdPadded)} - ${ansis.white(desc)}`);
156
+ }
157
+ }
158
+ console.log(ansis.green.bold(`
159
+ ${i18n.t("cli:commandDiscovery.claudeCodeTitle")}`));
160
+ console.log(ansis.gray("\u2500".repeat(60)));
161
+ const claudeCommands = [
162
+ { cmd: "/help", desc: i18n.t("cli:commandDiscovery.help"), descEn: "Show all commands" },
163
+ { cmd: "/clear", desc: i18n.t("cli:commandDiscovery.clear"), descEn: "Clear conversation" },
164
+ { cmd: "/reset", desc: i18n.t("cli:commandDiscovery.reset"), descEn: "Reset session" }
165
+ ];
166
+ for (const { cmd, desc, descEn } of claudeCommands) {
167
+ const cmdPadded = cmd.padEnd(12);
168
+ if (isZhCN) {
169
+ console.log(` ${ansis.cyan(cmdPadded)} - ${ansis.white(desc)} ${ansis.gray(`(${descEn})`)}`);
170
+ } else {
171
+ console.log(` ${ansis.cyan(cmdPadded)} - ${ansis.white(desc)}`);
172
+ }
173
+ }
174
+ console.log(ansis.gray("\n" + "\u2500".repeat(60)));
175
+ console.log(ansis.gray(` ${i18n.t("cli:commandDiscovery.footer")}
176
+ `));
177
+ }
129
178
  const STATUS = {
130
179
  success: status.ok,
131
180
  error: status.fail,
@@ -135,4 +184,4 @@ const STATUS = {
135
184
  inProgress: status.work
136
185
  };
137
186
 
138
- export { STATUS as S, displayBanner as a, boxify as b, displayBannerWithInfo as d, padToDisplayWidth as p, theme as t };
187
+ export { theme as COLORS, STATUS, box, boxify, displayBanner, displayBannerWithInfo, displayCommandDiscovery, getDisplayWidth, padToDisplayWidth, status, theme };
@@ -3,9 +3,9 @@ import { existsSync, readFileSync } from 'node:fs';
3
3
  import process__default from 'node:process';
4
4
  import { join } from 'pathe';
5
5
  import { SETTINGS_FILE } from './constants.mjs';
6
- import { r as runHealthCheck } from '../shared/ccjk.Bndhan7G.mjs';
6
+ import { r as runHealthCheck } from '../shared/ccjk.DfwJOEok.mjs';
7
7
  import 'node:os';
8
- import './index.mjs';
8
+ import './index2.mjs';
9
9
  import 'node:url';
10
10
  import 'i18next';
11
11
  import 'i18next-fs-backend';
@@ -1,7 +1,7 @@
1
1
  import process__default, { cwd } from 'node:process';
2
2
  import consola from 'consola';
3
3
  import { P as ProjectAnalyzer, g as getTemplatesClient } from '../shared/ccjk.BNwRnWYx.mjs';
4
- import { i18n } from './index.mjs';
4
+ import { i18n } from './index2.mjs';
5
5
  import { existsSync, readFileSync, writeFileSync, readdirSync } from 'node:fs';
6
6
  import { join, dirname } from 'pathe';
7
7
  import { CLAUDE_AGENTS_DIR } from './constants.mjs';
@@ -6,7 +6,7 @@ import { hash } from 'ohash';
6
6
  import { fileURLToPath } from 'node:url';
7
7
  import { ofetch } from 'ofetch';
8
8
  import { randomUUID, createHash } from 'node:crypto';
9
- import { i18n, ensureI18nInitialized } from './index.mjs';
9
+ import { i18n, ensureI18nInitialized } from './index2.mjs';
10
10
  import { a as analyzeProject } from '../shared/ccjk.BNwRnWYx.mjs';
11
11
  import { ccjkAgents } from './ccjk-agents.mjs';
12
12
  import { ccjkHooks } from './ccjk-hooks.mjs';
@@ -5,7 +5,7 @@ import { DEFAULT_CODE_TOOL_TYPE, ZCF_CONFIG_FILE, LEGACY_ZCF_CONFIG_FILES, ZCF_C
5
5
  import { exists, readFile, ensureDir, writeFileAtomic } from './fs-operations.mjs';
6
6
  import { readJsonConfig } from './json-config.mjs';
7
7
  import 'node:os';
8
- import './index.mjs';
8
+ import './index2.mjs';
9
9
  import 'node:process';
10
10
  import 'node:url';
11
11
  import 'i18next';
@@ -7,7 +7,7 @@ import process__default from 'node:process';
7
7
  import { join, dirname } from 'pathe';
8
8
  import { exec } from 'node:child_process';
9
9
  import { promisify } from 'node:util';
10
- import { i18n } from './index.mjs';
10
+ import { i18n } from './index2.mjs';
11
11
  import 'tinyglobby';
12
12
  import 'smol-toml';
13
13
  import 'ofetch';
@@ -5,9 +5,9 @@ import consola from 'consola';
5
5
  import inquirer from 'inquirer';
6
6
  import { a as analyzeProject, g as getTemplatesClient } from '../shared/ccjk.BNwRnWYx.mjs';
7
7
  import { CLAUDE_DIR } from './constants.mjs';
8
- import { ensureI18nInitialized, i18n } from './index.mjs';
8
+ import { ensureI18nInitialized, i18n } from './index2.mjs';
9
9
  import { b as backupMcpConfig, r as readMcpConfig, m as mergeMcpServers, w as writeMcpConfig } from './claude-config.mjs';
10
- import { c as commandExists } from './platform.mjs';
10
+ import { h as commandExists } from './platform.mjs';
11
11
  import 'node:fs';
12
12
  import 'pathe';
13
13
  import 'tinyglobby';
@@ -1,7 +1,7 @@
1
1
  import ansis from 'ansis';
2
2
  import { consola } from 'consola';
3
3
  import { P as ProjectAnalyzer } from '../shared/ccjk.BNwRnWYx.mjs';
4
- import { i18n } from './index.mjs';
4
+ import { i18n } from './index2.mjs';
5
5
  import { promises } from 'node:fs';
6
6
  import { performance } from 'node:perf_hooks';
7
7
  import { join } from 'pathe';
@@ -6,7 +6,7 @@ import ansis from 'ansis';
6
6
  import consola from 'consola';
7
7
  import inquirer from 'inquirer';
8
8
  import { a as analyzeProject, g as getTemplatesClient } from '../shared/ccjk.BNwRnWYx.mjs';
9
- import { i18n } from './index.mjs';
9
+ import { i18n } from './index2.mjs';
10
10
  import { g as getSkillParser } from '../shared/ccjk.Bdhyg3X-.mjs';
11
11
  import 'pathe';
12
12
  import 'tinyglobby';
@@ -1,9 +1,9 @@
1
- import { d as displayBannerWithInfo } from '../shared/ccjk.Br91zBIG.mjs';
2
- import { h as handleExitPromptError, a as handleGeneralError } from '../shared/ccjk.DvIrK0wz.mjs';
1
+ import { displayBannerWithInfo } from './banner.mjs';
2
+ import { h as handleExitPromptError, a as handleGeneralError } from '../shared/ccjk.DrMygfCF.mjs';
3
3
  import { s as showCcrMenu, a as showMainMenu } from './menu.mjs';
4
4
  import 'ansis';
5
5
  import './package.mjs';
6
- import './index.mjs';
6
+ import './index2.mjs';
7
7
  import 'node:fs';
8
8
  import 'node:process';
9
9
  import 'node:url';
@@ -27,26 +27,27 @@ import './json-config.mjs';
27
27
  import './config.mjs';
28
28
  import './claude-config.mjs';
29
29
  import './platform.mjs';
30
+ import '../shared/ccjk.BiCrMV5O.mjs';
30
31
  import '../shared/ccjk.BFQ7yr5S.mjs';
31
32
  import './prompts.mjs';
32
33
  import '../shared/ccjk.DHbrGcgg.mjs';
33
34
  import 'inquirer-toggle';
34
35
  import 'node:child_process';
35
- import '../shared/ccjk.Dpw86UX0.mjs';
36
+ import '../shared/ccjk.CxtuJxaS.mjs';
36
37
  import './smart-defaults.mjs';
37
38
  import '../shared/ccjk.DKojSRzw.mjs';
38
39
  import './features.mjs';
39
- import './config3.mjs';
40
+ import './config2.mjs';
40
41
  import 'node:util';
41
42
  import './init.mjs';
42
- import '../shared/ccjk.CmsW23FN.mjs';
43
+ import '../shared/ccjk.DVBW2wxp.mjs';
43
44
  import './auto-updater.mjs';
44
45
  import './version-checker.mjs';
45
46
  import 'node:path';
46
- import './installer2.mjs';
47
- import '../shared/ccjk.DE91nClQ.mjs';
47
+ import './installer.mjs';
48
+ import '../shared/ccjk.BKoi8-Hy.mjs';
48
49
  import './simple-config.mjs';
49
- import './commands2.mjs';
50
+ import './commands.mjs';
50
51
  import './ccjk-agents.mjs';
51
52
  import 'consola';
52
53
  import '../shared/ccjk.BNwRnWYx.mjs';
@@ -65,7 +66,7 @@ import './uninstall.mjs';
65
66
  import '../shared/ccjk.DntgA8fQ.mjs';
66
67
  import 'trash';
67
68
  import './update.mjs';
68
- import '../shared/ccjk.ClzTOz9n.mjs';
69
+ import '../shared/ccjk.DB2UYcq0.mjs';
69
70
 
70
71
  async function ccr(options = {}) {
71
72
  try {
@@ -1,7 +1,7 @@
1
1
  import process__default from 'node:process';
2
2
  import ansis from 'ansis';
3
3
  import { x } from 'tinyexec';
4
- import { i18n } from './index.mjs';
4
+ import { i18n } from './index2.mjs';
5
5
  import 'node:fs';
6
6
  import 'node:url';
7
7
  import 'i18next';
@@ -1,9 +1,9 @@
1
1
  import process__default from 'node:process';
2
2
  import ansis from 'ansis';
3
- import { ensureI18nInitialized, i18n } from './index.mjs';
4
- import { r as resolveCodeType } from '../shared/ccjk.Dpw86UX0.mjs';
3
+ import { ensureI18nInitialized, i18n } from './index2.mjs';
4
+ import { r as resolveCodeType } from '../shared/ccjk.CxtuJxaS.mjs';
5
5
  import { checkAndUpdateTools } from './auto-updater.mjs';
6
- import { a as runCodexUpdate } from './codex.mjs';
6
+ import { r as runCodexUpdate } from './codex.mjs';
7
7
  import 'node:fs';
8
8
  import 'node:url';
9
9
  import 'i18next';
@@ -33,6 +33,7 @@ import 'semver';
33
33
  import 'inquirer';
34
34
  import './config.mjs';
35
35
  import './claude-config.mjs';
36
+ import '../shared/ccjk.BiCrMV5O.mjs';
36
37
  import '../shared/ccjk.BFQ7yr5S.mjs';
37
38
  import './prompts.mjs';
38
39
  import './package.mjs';
@@ -2,11 +2,11 @@ import dayjs from 'dayjs';
2
2
  import { join } from 'pathe';
3
3
  import { ZCF_CONFIG_FILE, ZCF_CONFIG_DIR, SETTINGS_FILE } from './constants.mjs';
4
4
  import { readDefaultTomlConfig, createDefaultTomlConfig, writeTomlConfig } from './ccjk-config.mjs';
5
- import { j as clearModelEnv } from './config.mjs';
5
+ import { h as clearModelEnv } from './config.mjs';
6
6
  import { ensureDir, exists, copyFile } from './fs-operations.mjs';
7
7
  import { readJsonConfig } from './json-config.mjs';
8
8
  import 'node:os';
9
- import './index.mjs';
9
+ import './index2.mjs';
10
10
  import 'node:fs';
11
11
  import 'node:process';
12
12
  import 'node:url';
@@ -20,6 +20,7 @@ import 'inquirer';
20
20
  import './claude-config.mjs';
21
21
  import './platform.mjs';
22
22
  import 'tinyexec';
23
+ import '../shared/ccjk.BiCrMV5O.mjs';
23
24
 
24
25
  class ClaudeCodeConfigManager {
25
26
  static CONFIG_FILE = ZCF_CONFIG_FILE;
@@ -186,11 +187,11 @@ class ClaudeCodeConfigManager {
186
187
  * Apply profile settings to Claude Code runtime
187
188
  */
188
189
  static async applyProfileSettings(profile) {
189
- const { ensureI18nInitialized, i18n } = await import('./index.mjs');
190
+ const { ensureI18nInitialized, i18n } = await import('./index2.mjs');
190
191
  ensureI18nInitialized();
191
192
  try {
192
193
  if (!profile) {
193
- const { switchToOfficialLogin } = await import('./config.mjs').then(function (n) { return n.c; });
194
+ const { switchToOfficialLogin } = await import('./config.mjs').then(function (n) { return n.j; });
194
195
  switchToOfficialLogin();
195
196
  return;
196
197
  }
@@ -207,7 +208,7 @@ class ClaudeCodeConfigManager {
207
208
  settings.env.ANTHROPIC_AUTH_TOKEN = profile.apiKey;
208
209
  delete settings.env.ANTHROPIC_API_KEY;
209
210
  } else if (profile.authType === "ccr_proxy") {
210
- const { readCcrConfig } = await import('./config3.mjs');
211
+ const { readCcrConfig } = await import('./config2.mjs');
211
212
  const ccrConfig = readCcrConfig();
212
213
  if (!ccrConfig) {
213
214
  throw new Error(i18n.t("ccr:ccrNotConfigured") || "CCR proxy configuration not found");
@@ -246,7 +247,7 @@ class ClaudeCodeConfigManager {
246
247
  setPrimaryApiKey();
247
248
  addCompletedOnboarding();
248
249
  if (shouldRestartCcr) {
249
- const { runCcrRestart } = await import('./commands2.mjs');
250
+ const { runCcrRestart } = await import('./commands.mjs');
250
251
  await runCcrRestart();
251
252
  }
252
253
  } catch (error) {
@@ -603,7 +604,7 @@ class ClaudeCodeConfigManager {
603
604
  */
604
605
  static async syncCcrProfile() {
605
606
  try {
606
- const { readCcrConfig } = await import('./config3.mjs');
607
+ const { readCcrConfig } = await import('./config2.mjs');
607
608
  const ccrConfig = readCcrConfig();
608
609
  if (!ccrConfig) {
609
610
  await this.ensureCcrProfileExists(ccrConfig);
@@ -1,10 +1,10 @@
1
1
  import ansis from 'ansis';
2
2
  import inquirer from 'inquirer';
3
- import { ensureI18nInitialized, i18n } from './index.mjs';
3
+ import { ensureI18nInitialized, i18n } from './index2.mjs';
4
4
  import { ClaudeCodeConfigManager } from './claude-code-config-manager.mjs';
5
5
  import { a as addNumbersToChoices } from '../shared/ccjk.BFQ7yr5S.mjs';
6
6
  import { p as promptBoolean } from '../shared/ccjk.DHbrGcgg.mjs';
7
- import { v as validateApiKey } from '../shared/ccjk.CmsW23FN.mjs';
7
+ import { v as validateApiKey } from '../shared/ccjk.DVBW2wxp.mjs';
8
8
  import 'node:fs';
9
9
  import 'node:process';
10
10
  import 'node:url';
@@ -24,6 +24,7 @@ import './config.mjs';
24
24
  import './claude-config.mjs';
25
25
  import './platform.mjs';
26
26
  import 'tinyexec';
27
+ import '../shared/ccjk.BiCrMV5O.mjs';
27
28
  import 'inquirer-toggle';
28
29
 
29
30
  function getAuthTypeLabel(authType) {
@@ -1,9 +1,9 @@
1
1
  import { existsSync, readFileSync } from 'node:fs';
2
2
  import { join } from 'pathe';
3
3
  import { CLAUDE_VSC_CONFIG_FILE, CLAUDE_DIR, ClAUDE_CONFIG_FILE } from './constants.mjs';
4
- import { ensureI18nInitialized, i18n } from './index.mjs';
4
+ import { ensureI18nInitialized, i18n } from './index2.mjs';
5
5
  import { readJsonConfig, writeJsonConfig, backupJsonConfig } from './json-config.mjs';
6
- import { i as isWindows, b as getMcpCommand } from './platform.mjs';
6
+ import { i as isWindows, m as getMcpCommand } from './platform.mjs';
7
7
 
8
8
  function mergeArraysUnique(arr1, arr2) {
9
9
  const combined = [...arr1 || [], ...arr2 || []];
@@ -233,4 +233,4 @@ const claudeConfig = {
233
233
  writeMcpConfig: writeMcpConfig
234
234
  };
235
235
 
236
- export { addCompletedOnboarding as a, backupMcpConfig as b, buildMcpServerConfig as c, replaceMcpServers as d, syncMcpPermissions as e, fixWindowsMcpConfig as f, deepMerge as g, claudeConfig as h, mergeMcpServers as m, readMcpConfig as r, setPrimaryApiKey as s, writeMcpConfig as w };
236
+ export { buildMcpServerConfig as a, backupMcpConfig as b, addCompletedOnboarding as c, deepMerge as d, replaceMcpServers as e, fixWindowsMcpConfig as f, syncMcpPermissions as g, claudeConfig as h, mergeMcpServers as m, readMcpConfig as r, setPrimaryApiKey as s, writeMcpConfig as w };
@@ -1,7 +1,7 @@
1
1
  import process__default from 'node:process';
2
2
  import { exec } from 'tinyexec';
3
- import { i18n, initI18n } from './index.mjs';
4
- import { m as findRealCommandPath } from './platform.mjs';
3
+ import { i18n, initI18n } from './index2.mjs';
4
+ import { k as findRealCommandPath } from './platform.mjs';
5
5
  import 'node:fs';
6
6
  import 'node:url';
7
7
  import 'i18next';
@@ -1,11 +1,11 @@
1
1
  import ansis from 'ansis';
2
2
  import inquirer from 'inquirer';
3
3
  import { CODEX_AUTH_FILE } from './constants.mjs';
4
- import { ensureI18nInitialized, i18n } from './index.mjs';
4
+ import { ensureI18nInitialized, i18n } from './index2.mjs';
5
5
  import { readJsonConfig } from './json-config.mjs';
6
6
  import { a as addNumbersToChoices } from '../shared/ccjk.BFQ7yr5S.mjs';
7
7
  import { p as promptBoolean } from '../shared/ccjk.DHbrGcgg.mjs';
8
- import { m as detectConfigManagementMode } from './codex.mjs';
8
+ import { h as detectConfigManagementMode } from './codex.mjs';
9
9
  import { deleteProviders, addProviderToExisting, editExistingProvider } from './codex-provider-manager.mjs';
10
10
  import 'node:os';
11
11
  import 'pathe';
@@ -27,6 +27,7 @@ import './ccjk-config.mjs';
27
27
  import './config.mjs';
28
28
  import './claude-config.mjs';
29
29
  import './platform.mjs';
30
+ import '../shared/ccjk.BiCrMV5O.mjs';
30
31
  import './prompts.mjs';
31
32
  import './package.mjs';
32
33
  import 'node:child_process';
@@ -1,5 +1,5 @@
1
- import { ensureI18nInitialized, i18n } from './index.mjs';
2
- import { c as readCodexConfig, j as backupCodexComplete, w as writeCodexConfig, k as writeAuthFile } from './codex.mjs';
1
+ import { ensureI18nInitialized, i18n } from './index2.mjs';
2
+ import { a as readCodexConfig, e as backupCodexComplete, w as writeCodexConfig, f as writeAuthFile } from './codex.mjs';
3
3
  import 'node:fs';
4
4
  import 'node:process';
5
5
  import 'node:url';
@@ -23,6 +23,7 @@ import './json-config.mjs';
23
23
  import './config.mjs';
24
24
  import './claude-config.mjs';
25
25
  import './platform.mjs';
26
+ import '../shared/ccjk.BiCrMV5O.mjs';
26
27
  import '../shared/ccjk.BFQ7yr5S.mjs';
27
28
  import './prompts.mjs';
28
29
  import './package.mjs';
@@ -1,7 +1,7 @@
1
1
  import { promises } from 'node:fs';
2
2
  import { join } from 'pathe';
3
3
  import { CODEX_DIR, CODEX_CONFIG_FILE, CODEX_AUTH_FILE, CODEX_AGENTS_FILE, CODEX_PROMPTS_DIR } from './constants.mjs';
4
- import { i18n } from './index.mjs';
4
+ import { i18n } from './index2.mjs';
5
5
  import { writeFileAtomic } from './fs-operations.mjs';
6
6
  import { m as moveToTrash } from '../shared/ccjk.DntgA8fQ.mjs';
7
7
  import 'node:os';
@@ -155,7 +155,7 @@ class CodexUninstaller {
155
155
  warnings: []
156
156
  };
157
157
  try {
158
- const { uninstallCodeTool } = await import('./installer2.mjs');
158
+ const { uninstallCodeTool } = await import('./installer.mjs');
159
159
  const success = await uninstallCodeTool("codex");
160
160
  if (success) {
161
161
  result.removed.push("@openai/codex");
@@ -9,12 +9,12 @@ import semver__default from 'semver';
9
9
  import { parse } from 'smol-toml';
10
10
  import { x } from 'tinyexec';
11
11
  import { CODEX_AUTH_FILE, SUPPORTED_LANGS, CODEX_DIR, CODEX_AGENTS_FILE, CODEX_PROMPTS_DIR, CODEX_CONFIG_FILE, AI_OUTPUT_LANGUAGES, ZCF_CONFIG_FILE } from './constants.mjs';
12
- import { ensureI18nInitialized, i18n, format } from './index.mjs';
12
+ import { ensureI18nInitialized, i18n, format } from './index2.mjs';
13
13
  import { updateZcfConfig, readZcfConfig, readDefaultTomlConfig, updateTomlConfig } from './ccjk-config.mjs';
14
- import { d as applyAiLanguageDirective } from './config.mjs';
14
+ import { a as applyAiLanguageDirective } from './config.mjs';
15
15
  import { exists, readFile, ensureDir, writeFileAtomic, writeFile, copyFile, copyDir } from './fs-operations.mjs';
16
16
  import { readJsonConfig, writeJsonConfig } from './json-config.mjs';
17
- import { i as isWindows, b as getMcpCommand, g as getSystemRoot, w as wrapCommandWithSudo, n as normalizeTomlPath } from './platform.mjs';
17
+ import { i as isWindows, m as getMcpCommand, l as getSystemRoot, w as wrapCommandWithSudo, n as normalizeTomlPath } from './platform.mjs';
18
18
  import { a as addNumbersToChoices } from '../shared/ccjk.BFQ7yr5S.mjs';
19
19
  import { resolveAiOutputLanguage } from './prompts.mjs';
20
20
  import { p as promptBoolean } from '../shared/ccjk.DHbrGcgg.mjs';
@@ -638,7 +638,7 @@ async function executeCodexInstallation(isUpdate, skipMethodSelection = false) {
638
638
  }
639
639
  console.log(ansis.green(i18n.t("codex:updateSuccess")));
640
640
  } else {
641
- const { installCodex } = await import('./installer2.mjs');
641
+ const { installCodex } = await import('./installer.mjs');
642
642
  await installCodex(skipMethodSelection);
643
643
  }
644
644
  }
@@ -2074,4 +2074,4 @@ const codex = {
2074
2074
  writeCodexConfig: writeCodexConfig
2075
2075
  };
2076
2076
 
2077
- export { MCP_SERVICE_CONFIGS as M, runCodexUpdate as a, getMcpService as b, readCodexConfig as c, dynamicMcpRegistry as d, applyCodexPlatformCommand as e, switchCodexProvider as f, getMcpServices as g, switchToOfficialLogin as h, switchToProvider as i, backupCodexComplete as j, writeAuthFile as k, listCodexProviders as l, detectConfigManagementMode as m, codex as n, runCodexFullInit as r, selectMcpServices as s, writeCodexConfig as w };
2077
+ export { MCP_SERVICE_CONFIGS as M, readCodexConfig as a, switchToOfficialLogin as b, switchToProvider as c, selectMcpServices as d, backupCodexComplete as e, writeAuthFile as f, getMcpServices as g, detectConfigManagementMode as h, getMcpService as i, dynamicMcpRegistry as j, applyCodexPlatformCommand as k, listCodexProviders as l, runCodexFullInit as m, codex as n, runCodexUpdate as r, switchCodexProvider as s, writeCodexConfig as w };