ccjk 9.6.1 → 9.7.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.
- package/dist/chunks/boost.mjs +3 -2
- package/dist/chunks/ccjk-mcp.mjs +1 -1
- package/dist/chunks/ccr.mjs +23 -28
- package/dist/chunks/check-updates.mjs +1 -2
- package/dist/chunks/claude-code-config-manager.mjs +1 -1
- package/dist/chunks/claude-code-incremental-manager.mjs +1 -1
- package/dist/chunks/claude-config.mjs +1 -1
- package/dist/chunks/codex-config-switch.mjs +3 -4
- package/dist/chunks/codex-provider-manager.mjs +1 -2
- package/dist/chunks/codex.mjs +204 -3
- package/dist/chunks/config-switch.mjs +2 -3
- package/dist/chunks/config.mjs +1 -1
- package/dist/chunks/doctor.mjs +1 -1
- package/dist/chunks/features.mjs +22 -15
- package/dist/chunks/index3.mjs +32 -32
- package/dist/chunks/init.mjs +129 -87
- package/dist/chunks/installer2.mjs +1 -1
- package/dist/chunks/interview.mjs +1 -1
- package/dist/chunks/mcp.mjs +1058 -17
- package/dist/chunks/menu.mjs +137 -53
- package/dist/chunks/package.mjs +2 -210
- package/dist/chunks/platform.mjs +1 -1
- package/dist/chunks/quick-setup.mjs +12 -16
- package/dist/chunks/status.mjs +13 -8
- package/dist/chunks/thinking.mjs +1 -1
- package/dist/chunks/uninstall.mjs +3 -3
- package/dist/chunks/update.mjs +4 -7
- package/dist/chunks/version-checker.mjs +1 -1
- package/dist/cli.mjs +2 -78
- package/dist/index.d.mts +17 -1482
- package/dist/index.d.ts +17 -1482
- package/dist/index.mjs +12 -4191
- package/dist/shared/{ccjk.CItD1fpl.mjs → ccjk.DvIrK0wz.mjs} +1 -1
- package/dist/shared/ccjk.LsPZ2PYo.mjs +1048 -0
- package/package.json +1 -1
- package/dist/chunks/api-adapter.mjs +0 -180
- package/dist/chunks/cli.mjs +0 -2227
- package/dist/chunks/context-menu.mjs +0 -913
- package/dist/chunks/hooks-sync.mjs +0 -1627
- package/dist/chunks/mcp-market.mjs +0 -1077
- package/dist/chunks/mcp-server.mjs +0 -776
- package/dist/chunks/project-detector.mjs +0 -131
- package/dist/chunks/provider-registry.mjs +0 -92
- package/dist/chunks/setup-wizard.mjs +0 -362
- package/dist/chunks/tools.mjs +0 -143
- package/dist/chunks/workflows2.mjs +0 -232
- package/dist/shared/ccjk.C0pb50xH.mjs +0 -347
- package/dist/shared/ccjk.ChMkBmdL.mjs +0 -490
- package/dist/shared/ccjk.CtSfXUSh.mjs +0 -209
- package/dist/shared/ccjk.xfAjmbJp.mjs +0 -75
package/dist/chunks/boost.mjs
CHANGED
|
@@ -35,7 +35,7 @@ async function runCcjkCommand(args) {
|
|
|
35
35
|
const sub = args[0];
|
|
36
36
|
try {
|
|
37
37
|
if (sub === "init") {
|
|
38
|
-
const { init } = await import('./init.mjs');
|
|
38
|
+
const { init } = await import('./init.mjs').then(function (n) { return n.c; });
|
|
39
39
|
await init({ skipBanner: true, skipPrompt: true });
|
|
40
40
|
return { success: true, message: "Initialization complete" };
|
|
41
41
|
}
|
|
@@ -99,7 +99,8 @@ async function boost(options = {}) {
|
|
|
99
99
|
for (const a of actions) {
|
|
100
100
|
const priority = a.rec.priority === "high" ? ansis.red("[HIGH]") : ansis.yellow("[MED]");
|
|
101
101
|
console.log(` ${priority} ${a.label}`);
|
|
102
|
-
if (a.rec.command)
|
|
102
|
+
if (a.rec.command)
|
|
103
|
+
console.log(` ${ansis.gray(a.rec.command)}`);
|
|
103
104
|
}
|
|
104
105
|
if (options.dryRun) {
|
|
105
106
|
console.log(ansis.gray("\n--dry-run: No changes applied.\n"));
|
package/dist/chunks/ccjk-mcp.mjs
CHANGED
|
@@ -7,7 +7,7 @@ import { a as analyzeProject, g as getTemplatesClient } from '../shared/ccjk.BNw
|
|
|
7
7
|
import { CLAUDE_DIR } from './constants.mjs';
|
|
8
8
|
import { ensureI18nInitialized, i18n } from './index.mjs';
|
|
9
9
|
import { b as backupMcpConfig, r as readMcpConfig, m as mergeMcpServers, w as writeMcpConfig } from './claude-config.mjs';
|
|
10
|
-
import {
|
|
10
|
+
import { c as commandExists } from './platform.mjs';
|
|
11
11
|
import 'node:fs';
|
|
12
12
|
import 'pathe';
|
|
13
13
|
import 'tinyglobby';
|
package/dist/chunks/ccr.mjs
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { d as displayBannerWithInfo } from '../shared/ccjk.Br91zBIG.mjs';
|
|
2
|
-
import {
|
|
3
|
-
import { s as showCcrMenu } from './
|
|
4
|
-
import { showMainMenu } from './menu.mjs';
|
|
2
|
+
import { h as handleExitPromptError, a as handleGeneralError } from '../shared/ccjk.DvIrK0wz.mjs';
|
|
3
|
+
import { s as showCcrMenu, a as showMainMenu } from './menu.mjs';
|
|
5
4
|
import 'ansis';
|
|
6
5
|
import './package.mjs';
|
|
7
6
|
import './index.mjs';
|
|
@@ -12,37 +11,40 @@ import 'i18next';
|
|
|
12
11
|
import 'i18next-fs-backend';
|
|
13
12
|
import 'pathe';
|
|
14
13
|
import 'inquirer';
|
|
15
|
-
import 'node:os';
|
|
16
|
-
import './commands2.mjs';
|
|
17
|
-
import 'node:child_process';
|
|
18
|
-
import 'node:util';
|
|
19
|
-
import './config3.mjs';
|
|
20
|
-
import 'dayjs';
|
|
21
14
|
import './constants.mjs';
|
|
22
|
-
import '
|
|
23
|
-
import './
|
|
15
|
+
import 'node:os';
|
|
16
|
+
import './ccjk-config.mjs';
|
|
17
|
+
import 'smol-toml';
|
|
24
18
|
import './fs-operations.mjs';
|
|
25
19
|
import 'node:crypto';
|
|
26
20
|
import 'node:fs/promises';
|
|
21
|
+
import './json-config.mjs';
|
|
22
|
+
import 'dayjs';
|
|
23
|
+
import '../shared/ccjk.q1koQxEE.mjs';
|
|
24
|
+
import 'node:child_process';
|
|
27
25
|
import './platform.mjs';
|
|
28
26
|
import 'tinyexec';
|
|
27
|
+
import './features.mjs';
|
|
28
|
+
import './codex.mjs';
|
|
29
|
+
import 'ora';
|
|
30
|
+
import 'semver';
|
|
29
31
|
import './config.mjs';
|
|
32
|
+
import './claude-config.mjs';
|
|
33
|
+
import '../shared/ccjk.BFQ7yr5S.mjs';
|
|
34
|
+
import './prompts.mjs';
|
|
30
35
|
import '../shared/ccjk.DHbrGcgg.mjs';
|
|
31
36
|
import 'inquirer-toggle';
|
|
32
|
-
import '
|
|
37
|
+
import './config3.mjs';
|
|
38
|
+
import 'node:util';
|
|
39
|
+
import './init.mjs';
|
|
40
|
+
import '../shared/ccjk.LsPZ2PYo.mjs';
|
|
33
41
|
import './auto-updater.mjs';
|
|
34
|
-
import 'ora';
|
|
35
42
|
import './version-checker.mjs';
|
|
36
43
|
import 'node:path';
|
|
37
|
-
import '
|
|
38
|
-
import '
|
|
39
|
-
import 'smol-toml';
|
|
40
|
-
import '../shared/ccjk.q1koQxEE.mjs';
|
|
41
|
-
import './features.mjs';
|
|
42
|
-
import '../shared/ccjk.CtSfXUSh.mjs';
|
|
43
|
-
import '../shared/ccjk.ChMkBmdL.mjs';
|
|
44
|
-
import '../shared/ccjk.BFQ7yr5S.mjs';
|
|
44
|
+
import './installer2.mjs';
|
|
45
|
+
import '../shared/ccjk.DE91nClQ.mjs';
|
|
45
46
|
import './simple-config.mjs';
|
|
47
|
+
import './commands2.mjs';
|
|
46
48
|
import './ccjk-agents.mjs';
|
|
47
49
|
import 'consola';
|
|
48
50
|
import '../shared/ccjk.BNwRnWYx.mjs';
|
|
@@ -53,17 +55,10 @@ import '../shared/ccjk.AqnXPAzw.mjs';
|
|
|
53
55
|
import './ccjk-skills.mjs';
|
|
54
56
|
import '../shared/ccjk.Bdhyg3X-.mjs';
|
|
55
57
|
import './check-updates.mjs';
|
|
56
|
-
import './codex.mjs';
|
|
57
|
-
import './prompts.mjs';
|
|
58
58
|
import './doctor.mjs';
|
|
59
59
|
import './api-providers.mjs';
|
|
60
60
|
import '../shared/ccjk.h7_W-wTs.mjs';
|
|
61
61
|
import '../shared/ccjk.J8YiPsOw.mjs';
|
|
62
|
-
import './init.mjs';
|
|
63
|
-
import './workflows2.mjs';
|
|
64
|
-
import '../shared/ccjk.C0pb50xH.mjs';
|
|
65
|
-
import './installer2.mjs';
|
|
66
|
-
import '../shared/ccjk.DE91nClQ.mjs';
|
|
67
62
|
import './uninstall.mjs';
|
|
68
63
|
import '../shared/ccjk.DntgA8fQ.mjs';
|
|
69
64
|
import 'trash';
|
|
@@ -3,7 +3,7 @@ import ansis from 'ansis';
|
|
|
3
3
|
import { ensureI18nInitialized, i18n } from './index.mjs';
|
|
4
4
|
import { r as resolveCodeType } from '../shared/ccjk.q1koQxEE.mjs';
|
|
5
5
|
import { checkAndUpdateTools } from './auto-updater.mjs';
|
|
6
|
-
import {
|
|
6
|
+
import { d as runCodexUpdate } from './codex.mjs';
|
|
7
7
|
import 'node:fs';
|
|
8
8
|
import 'node:url';
|
|
9
9
|
import 'i18next';
|
|
@@ -34,7 +34,6 @@ import './claude-config.mjs';
|
|
|
34
34
|
import '../shared/ccjk.BFQ7yr5S.mjs';
|
|
35
35
|
import './prompts.mjs';
|
|
36
36
|
import './package.mjs';
|
|
37
|
-
import '../shared/ccjk.CtSfXUSh.mjs';
|
|
38
37
|
|
|
39
38
|
class ToolUpdateScheduler {
|
|
40
39
|
/**
|
|
@@ -2,7 +2,7 @@ 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 {
|
|
5
|
+
import { j 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';
|
|
@@ -4,7 +4,7 @@ import { ensureI18nInitialized, i18n } from './index.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.
|
|
7
|
+
import { v as validateApiKey } from '../shared/ccjk.LsPZ2PYo.mjs';
|
|
8
8
|
import 'node:fs';
|
|
9
9
|
import 'node:process';
|
|
10
10
|
import 'node:url';
|
|
@@ -3,7 +3,7 @@ import { join } from 'pathe';
|
|
|
3
3
|
import { CLAUDE_VSC_CONFIG_FILE, CLAUDE_DIR, ClAUDE_CONFIG_FILE } from './constants.mjs';
|
|
4
4
|
import { ensureI18nInitialized, i18n } from './index.mjs';
|
|
5
5
|
import { readJsonConfig, writeJsonConfig, backupJsonConfig } from './json-config.mjs';
|
|
6
|
-
import { i as isWindows,
|
|
6
|
+
import { i as isWindows, d as getMcpCommand } from './platform.mjs';
|
|
7
7
|
|
|
8
8
|
function mergeArraysUnique(arr1, arr2) {
|
|
9
9
|
const combined = [...arr1 || [], ...arr2 || []];
|
|
@@ -5,7 +5,7 @@ import { ensureI18nInitialized, i18n } from './index.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 {
|
|
8
|
+
import { k 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';
|
|
@@ -29,7 +29,6 @@ import './claude-config.mjs';
|
|
|
29
29
|
import './platform.mjs';
|
|
30
30
|
import './prompts.mjs';
|
|
31
31
|
import './package.mjs';
|
|
32
|
-
import '../shared/ccjk.CtSfXUSh.mjs';
|
|
33
32
|
import 'node:child_process';
|
|
34
33
|
|
|
35
34
|
async function configureIncrementalManagement() {
|
|
@@ -179,7 +178,7 @@ async function handleAddProvider() {
|
|
|
179
178
|
defaultValue: true
|
|
180
179
|
});
|
|
181
180
|
if (setAsDefault) {
|
|
182
|
-
const { switchToProvider } = await import('./codex.mjs').then(function (n) { return n.
|
|
181
|
+
const { switchToProvider } = await import('./codex.mjs').then(function (n) { return n.m; });
|
|
183
182
|
const switched = await switchToProvider(provider.id);
|
|
184
183
|
if (switched) {
|
|
185
184
|
console.log(ansis.green(i18n.t("multi-config:profileSetAsDefault", { name: provider.name })));
|
|
@@ -374,7 +373,7 @@ ${i18n.t("codex:copyingProvider", { name: provider.name })}`));
|
|
|
374
373
|
defaultValue: false
|
|
375
374
|
});
|
|
376
375
|
if (setAsDefault) {
|
|
377
|
-
const { switchToProvider } = await import('./codex.mjs').then(function (n) { return n.
|
|
376
|
+
const { switchToProvider } = await import('./codex.mjs').then(function (n) { return n.m; });
|
|
378
377
|
const switched = await switchToProvider(copiedProvider.id);
|
|
379
378
|
if (switched) {
|
|
380
379
|
console.log(ansis.green(i18n.t("multi-config:profileSetAsDefault", { name: copiedProvider.name })));
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ensureI18nInitialized, i18n } from './index.mjs';
|
|
2
|
-
import { r as readCodexConfig,
|
|
2
|
+
import { r as readCodexConfig, i as backupCodexComplete, w as writeCodexConfig, j as writeAuthFile } from './codex.mjs';
|
|
3
3
|
import 'node:fs';
|
|
4
4
|
import 'node:process';
|
|
5
5
|
import 'node:url';
|
|
@@ -28,7 +28,6 @@ import './prompts.mjs';
|
|
|
28
28
|
import './package.mjs';
|
|
29
29
|
import '../shared/ccjk.DHbrGcgg.mjs';
|
|
30
30
|
import 'inquirer-toggle';
|
|
31
|
-
import '../shared/ccjk.CtSfXUSh.mjs';
|
|
32
31
|
import 'node:child_process';
|
|
33
32
|
|
|
34
33
|
async function addProviderToExisting(provider, apiKey, allowOverwrite = false) {
|
package/dist/chunks/codex.mjs
CHANGED
|
@@ -14,11 +14,212 @@ import { updateZcfConfig, readZcfConfig, readDefaultTomlConfig, updateTomlConfig
|
|
|
14
14
|
import { d 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,
|
|
17
|
+
import { i as isWindows, d as getMcpCommand, g 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';
|
|
21
|
-
import
|
|
21
|
+
import 'node:child_process';
|
|
22
|
+
import { homedir } from 'node:os';
|
|
23
|
+
|
|
24
|
+
const PLAYWRIGHT_PROFILES_DIR = join(homedir(), ".ccjk", "playwright");
|
|
25
|
+
function createPlaywrightMcpConfig(options = {}) {
|
|
26
|
+
const {
|
|
27
|
+
profile = "default",
|
|
28
|
+
headless = false,
|
|
29
|
+
browser = "chromium",
|
|
30
|
+
userDataDir
|
|
31
|
+
} = options;
|
|
32
|
+
const resolvedUserDataDir = userDataDir || join(PLAYWRIGHT_PROFILES_DIR, profile);
|
|
33
|
+
const args = ["-y", "@playwright/mcp@latest"];
|
|
34
|
+
args.push("--browser", browser);
|
|
35
|
+
args.push("--user-data-dir", resolvedUserDataDir);
|
|
36
|
+
if (headless) {
|
|
37
|
+
args.push("--headless");
|
|
38
|
+
}
|
|
39
|
+
return {
|
|
40
|
+
type: "stdio",
|
|
41
|
+
command: "npx",
|
|
42
|
+
args,
|
|
43
|
+
env: {}
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
const MCP_SERVICE_CONFIGS = [
|
|
47
|
+
// Documentation and Search Services - Universal (no GUI required)
|
|
48
|
+
{
|
|
49
|
+
id: "context7",
|
|
50
|
+
requiresApiKey: false,
|
|
51
|
+
config: {
|
|
52
|
+
type: "stdio",
|
|
53
|
+
command: "npx",
|
|
54
|
+
args: ["-y", "@upstash/context7-mcp@latest"],
|
|
55
|
+
env: {}
|
|
56
|
+
}
|
|
57
|
+
// Works on all platforms - no special requirements
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
id: "open-websearch",
|
|
61
|
+
requiresApiKey: false,
|
|
62
|
+
config: {
|
|
63
|
+
type: "stdio",
|
|
64
|
+
command: "npx",
|
|
65
|
+
args: ["-y", "open-websearch@latest"],
|
|
66
|
+
env: {
|
|
67
|
+
MODE: "stdio",
|
|
68
|
+
DEFAULT_SEARCH_ENGINE: "duckduckgo",
|
|
69
|
+
ALLOWED_SEARCH_ENGINES: "duckduckgo,bing,brave"
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
// Works on all platforms - no special requirements
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
id: "mcp-deepwiki",
|
|
76
|
+
requiresApiKey: false,
|
|
77
|
+
config: {
|
|
78
|
+
type: "stdio",
|
|
79
|
+
command: "npx",
|
|
80
|
+
args: ["-y", "mcp-deepwiki@latest"],
|
|
81
|
+
env: {}
|
|
82
|
+
}
|
|
83
|
+
// Works on all platforms - no special requirements
|
|
84
|
+
},
|
|
85
|
+
// Development Workflow Services
|
|
86
|
+
{
|
|
87
|
+
id: "spec-workflow",
|
|
88
|
+
requiresApiKey: false,
|
|
89
|
+
config: {
|
|
90
|
+
type: "stdio",
|
|
91
|
+
command: "npx",
|
|
92
|
+
args: ["-y", "@pimzino/spec-workflow-mcp@latest"],
|
|
93
|
+
env: {}
|
|
94
|
+
}
|
|
95
|
+
// Works on all platforms - no special requirements
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
id: "serena",
|
|
99
|
+
requiresApiKey: false,
|
|
100
|
+
config: {
|
|
101
|
+
type: "stdio",
|
|
102
|
+
command: "uvx",
|
|
103
|
+
args: ["--from", "git+https://github.com/oraios/serena", "serena", "start-mcp-server", "--context", "ide-assistant", "--enable-web-dashboard", "false"],
|
|
104
|
+
env: {}
|
|
105
|
+
},
|
|
106
|
+
platformRequirements: {
|
|
107
|
+
requiredCommands: ["uvx"]
|
|
108
|
+
// Requires uv/uvx to be installed
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
// Browser and Automation Services - Require GUI environment
|
|
112
|
+
{
|
|
113
|
+
id: "Playwright",
|
|
114
|
+
requiresApiKey: false,
|
|
115
|
+
config: createPlaywrightMcpConfig(),
|
|
116
|
+
// Uses default profile with chromium browser
|
|
117
|
+
platformRequirements: {
|
|
118
|
+
platforms: ["macos", "windows"],
|
|
119
|
+
// GUI required - exclude headless Linux/WSL/Termux
|
|
120
|
+
requiresGui: true
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
// Anthropic Official MCP Services - Universal
|
|
124
|
+
// Note: Removed low-value services: filesystem (buggy), puppeteer (duplicate of Playwright),
|
|
125
|
+
// memory (Claude has built-in memory), fetch (Claude has WebFetch), sequential-thinking (limited value)
|
|
126
|
+
{
|
|
127
|
+
id: "sqlite",
|
|
128
|
+
requiresApiKey: false,
|
|
129
|
+
config: {
|
|
130
|
+
type: "stdio",
|
|
131
|
+
command: "npx",
|
|
132
|
+
args: ["-y", "@anthropic-ai/mcp-server-sqlite@latest"],
|
|
133
|
+
env: {}
|
|
134
|
+
}
|
|
135
|
+
// Works on all platforms - no special requirements
|
|
136
|
+
}
|
|
137
|
+
];
|
|
138
|
+
async function getMcpServices() {
|
|
139
|
+
ensureI18nInitialized();
|
|
140
|
+
const mcpServiceList = [
|
|
141
|
+
// Documentation and Search Services
|
|
142
|
+
{
|
|
143
|
+
id: "context7",
|
|
144
|
+
name: i18n.t("mcp:services.context7.name"),
|
|
145
|
+
description: i18n.t("mcp:services.context7.description")
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
id: "open-websearch",
|
|
149
|
+
name: i18n.t("mcp:services.open-websearch.name"),
|
|
150
|
+
description: i18n.t("mcp:services.open-websearch.description")
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
id: "mcp-deepwiki",
|
|
154
|
+
name: i18n.t("mcp:services.mcp-deepwiki.name"),
|
|
155
|
+
description: i18n.t("mcp:services.mcp-deepwiki.description")
|
|
156
|
+
},
|
|
157
|
+
// Development Workflow Services
|
|
158
|
+
{
|
|
159
|
+
id: "spec-workflow",
|
|
160
|
+
name: i18n.t("mcp:services.spec-workflow.name"),
|
|
161
|
+
description: i18n.t("mcp:services.spec-workflow.description")
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
id: "serena",
|
|
165
|
+
name: i18n.t("mcp:services.serena.name"),
|
|
166
|
+
description: i18n.t("mcp:services.serena.description")
|
|
167
|
+
},
|
|
168
|
+
// Browser and Automation Services
|
|
169
|
+
{
|
|
170
|
+
id: "Playwright",
|
|
171
|
+
name: i18n.t("mcp:services.playwright.name"),
|
|
172
|
+
description: i18n.t("mcp:services.playwright.description")
|
|
173
|
+
},
|
|
174
|
+
// Anthropic Official MCP Services
|
|
175
|
+
// Note: Removed low-value services: filesystem (buggy), puppeteer (duplicate),
|
|
176
|
+
// memory (Claude built-in), fetch (Claude WebFetch), sequential-thinking (limited value)
|
|
177
|
+
{
|
|
178
|
+
id: "sqlite",
|
|
179
|
+
name: i18n.t("mcp:services.sqlite.name"),
|
|
180
|
+
description: i18n.t("mcp:services.sqlite.description")
|
|
181
|
+
}
|
|
182
|
+
];
|
|
183
|
+
return MCP_SERVICE_CONFIGS.map((config) => {
|
|
184
|
+
const serviceInfo = mcpServiceList.find((s) => s.id === config.id);
|
|
185
|
+
const service = {
|
|
186
|
+
id: config.id,
|
|
187
|
+
name: serviceInfo?.name || config.id,
|
|
188
|
+
description: serviceInfo?.description || "",
|
|
189
|
+
requiresApiKey: config.requiresApiKey,
|
|
190
|
+
config: config.config
|
|
191
|
+
};
|
|
192
|
+
if (config.apiKeyEnvVar) {
|
|
193
|
+
service.apiKeyEnvVar = config.apiKeyEnvVar;
|
|
194
|
+
}
|
|
195
|
+
return service;
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
async function getMcpService(id) {
|
|
199
|
+
const services = await getMcpServices();
|
|
200
|
+
return services.find((service) => service.id === id);
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
async function selectMcpServices() {
|
|
204
|
+
ensureI18nInitialized();
|
|
205
|
+
const mcpServices = await getMcpServices();
|
|
206
|
+
const choices = mcpServices.map((service) => ({
|
|
207
|
+
name: `${service.name} - ${ansis.gray(service.description)}`,
|
|
208
|
+
value: service.id,
|
|
209
|
+
selected: false
|
|
210
|
+
}));
|
|
211
|
+
const { services } = await inquirer.prompt({
|
|
212
|
+
type: "checkbox",
|
|
213
|
+
name: "services",
|
|
214
|
+
message: `${i18n.t("mcp:selectMcpServices")}${i18n.t("common:multiSelectHint")}`,
|
|
215
|
+
choices
|
|
216
|
+
});
|
|
217
|
+
if (services === void 0) {
|
|
218
|
+
console.log(ansis.yellow(i18n.t("common:cancelled")));
|
|
219
|
+
return void 0;
|
|
220
|
+
}
|
|
221
|
+
return services;
|
|
222
|
+
}
|
|
22
223
|
|
|
23
224
|
function detectConfigManagementMode() {
|
|
24
225
|
try {
|
|
@@ -1746,4 +1947,4 @@ const codex = {
|
|
|
1746
1947
|
writeCodexConfig: writeCodexConfig
|
|
1747
1948
|
};
|
|
1748
1949
|
|
|
1749
|
-
export {
|
|
1950
|
+
export { MCP_SERVICE_CONFIGS as M, applyCodexPlatformCommand as a, runCodexFullInit as b, getMcpServices as c, runCodexUpdate as d, switchCodexProvider as e, switchToOfficialLogin as f, getMcpService as g, switchToProvider as h, backupCodexComplete as i, writeAuthFile as j, detectConfigManagementMode as k, listCodexProviders as l, codex as m, readCodexConfig as r, selectMcpServices as s, writeCodexConfig as w };
|
|
@@ -5,8 +5,8 @@ import { resolveCodeToolType, isCodeToolType, DEFAULT_CODE_TOOL_TYPE } from './c
|
|
|
5
5
|
import { ensureI18nInitialized, i18n } from './index.mjs';
|
|
6
6
|
import { readZcfConfig } from './ccjk-config.mjs';
|
|
7
7
|
import { ClaudeCodeConfigManager } from './claude-code-config-manager.mjs';
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
8
|
+
import { e as switchCodexProvider, l as listCodexProviders, r as readCodexConfig, f as switchToOfficialLogin, h as switchToProvider } from './codex.mjs';
|
|
9
|
+
import { a as handleGeneralError } from '../shared/ccjk.DvIrK0wz.mjs';
|
|
10
10
|
import { a as addNumbersToChoices } from '../shared/ccjk.BFQ7yr5S.mjs';
|
|
11
11
|
import 'node:os';
|
|
12
12
|
import 'pathe';
|
|
@@ -30,7 +30,6 @@ import './prompts.mjs';
|
|
|
30
30
|
import './package.mjs';
|
|
31
31
|
import '../shared/ccjk.DHbrGcgg.mjs';
|
|
32
32
|
import 'inquirer-toggle';
|
|
33
|
-
import '../shared/ccjk.CtSfXUSh.mjs';
|
|
34
33
|
import 'node:child_process';
|
|
35
34
|
|
|
36
35
|
async function configSwitchCommand(options) {
|
package/dist/chunks/config.mjs
CHANGED
|
@@ -452,4 +452,4 @@ const config = {
|
|
|
452
452
|
updateDefaultModel: updateDefaultModel
|
|
453
453
|
};
|
|
454
454
|
|
|
455
|
-
export {
|
|
455
|
+
export { copyConfigFiles as a, backupExistingConfig as b, config as c, applyAiLanguageDirective as d, ensureClaudeDir as e, configureApi as f, getExistingApiConfig as g, getExistingModelConfig as h, updateDefaultModel as i, clearModelEnv as j, mergeAndCleanPermissions as m, promptApiConfigurationAction as p, switchToOfficialLogin as s, updateCustomModel as u };
|
package/dist/chunks/doctor.mjs
CHANGED
|
@@ -7,7 +7,7 @@ import { getApiProviderPresets } from './api-providers.mjs';
|
|
|
7
7
|
import { SETTINGS_FILE, CLAUDE_DIR } from './constants.mjs';
|
|
8
8
|
import { i18n } from './index.mjs';
|
|
9
9
|
import { g as getPermissionManager } from '../shared/ccjk.h7_W-wTs.mjs';
|
|
10
|
-
import {
|
|
10
|
+
import { c as commandExists } from './platform.mjs';
|
|
11
11
|
import { P as ProviderHealthMonitor } from '../shared/ccjk.J8YiPsOw.mjs';
|
|
12
12
|
import { platform, userInfo, homedir } from 'node:os';
|
|
13
13
|
import ora from 'ora';
|
package/dist/chunks/features.mjs
CHANGED
|
@@ -1,40 +1,47 @@
|
|
|
1
1
|
import ansis from 'ansis';
|
|
2
2
|
import inquirer from 'inquirer';
|
|
3
|
-
import { s as selectMcpServices,
|
|
3
|
+
import { s as selectMcpServices, c as getMcpServices } from './codex.mjs';
|
|
4
4
|
import { SUPPORTED_LANGS, LANG_LABELS } from './constants.mjs';
|
|
5
5
|
import { ensureI18nInitialized, i18n, changeLanguage } from './index.mjs';
|
|
6
6
|
import { updateZcfConfig, readZcfConfig } from './ccjk-config.mjs';
|
|
7
7
|
import { setupCcrConfiguration } from './config3.mjs';
|
|
8
|
-
import {
|
|
8
|
+
import { a as isCcrInstalled, b as installCcr } from './init.mjs';
|
|
9
9
|
import { r as readMcpConfig, f as fixWindowsMcpConfig, w as writeMcpConfig, b as backupMcpConfig, a as buildMcpServerConfig, m as mergeMcpServers } from './claude-config.mjs';
|
|
10
|
-
import { d as applyAiLanguageDirective,
|
|
11
|
-
import {
|
|
10
|
+
import { d as applyAiLanguageDirective, h as getExistingModelConfig, u as updateCustomModel, i as updateDefaultModel, g as getExistingApiConfig, p as promptApiConfigurationAction, f as configureApi, s as switchToOfficialLogin } from './config.mjs';
|
|
11
|
+
import { b as configureOutputStyle, m as modifyApiConfigPartially, v as validateApiKey, f as formatApiKeyDisplay } from '../shared/ccjk.LsPZ2PYo.mjs';
|
|
12
12
|
import { i as isWindows } from './platform.mjs';
|
|
13
13
|
import { a as addNumbersToChoices } from '../shared/ccjk.BFQ7yr5S.mjs';
|
|
14
14
|
import { openSettingsJson, importRecommendedPermissions, importRecommendedEnv } from './simple-config.mjs';
|
|
15
15
|
import { p as promptBoolean } from '../shared/ccjk.DHbrGcgg.mjs';
|
|
16
|
-
import 'node:child_process';
|
|
17
|
-
import 'node:os';
|
|
18
16
|
import 'node:process';
|
|
19
|
-
import 'pathe';
|
|
20
|
-
import 'node:fs';
|
|
21
17
|
import 'node:url';
|
|
22
|
-
import '
|
|
23
|
-
import '
|
|
18
|
+
import 'dayjs';
|
|
19
|
+
import 'ora';
|
|
20
|
+
import 'pathe';
|
|
21
|
+
import 'semver';
|
|
24
22
|
import 'smol-toml';
|
|
23
|
+
import 'tinyexec';
|
|
25
24
|
import './fs-operations.mjs';
|
|
26
25
|
import 'node:crypto';
|
|
26
|
+
import 'node:fs';
|
|
27
27
|
import 'node:fs/promises';
|
|
28
28
|
import './json-config.mjs';
|
|
29
|
-
import '
|
|
29
|
+
import './prompts.mjs';
|
|
30
|
+
import './package.mjs';
|
|
31
|
+
import 'node:child_process';
|
|
32
|
+
import 'node:os';
|
|
33
|
+
import 'i18next';
|
|
34
|
+
import 'i18next-fs-backend';
|
|
30
35
|
import 'node:util';
|
|
31
|
-
import '
|
|
32
|
-
import 'inquirer-toggle';
|
|
36
|
+
import '../shared/ccjk.Br91zBIG.mjs';
|
|
33
37
|
import './auto-updater.mjs';
|
|
34
|
-
import 'ora';
|
|
35
38
|
import './version-checker.mjs';
|
|
36
39
|
import 'node:path';
|
|
37
|
-
import '
|
|
40
|
+
import '../shared/ccjk.q1koQxEE.mjs';
|
|
41
|
+
import '../shared/ccjk.DvIrK0wz.mjs';
|
|
42
|
+
import './installer2.mjs';
|
|
43
|
+
import '../shared/ccjk.DE91nClQ.mjs';
|
|
44
|
+
import 'inquirer-toggle';
|
|
38
45
|
|
|
39
46
|
async function handleCancellation() {
|
|
40
47
|
ensureI18nInitialized();
|