ccjk 1.5.0 → 2.0.2
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/README.ja.md +249 -297
- package/README.ko.md +241 -290
- package/README.md +222 -364
- package/README.zh-CN.md +553 -295
- package/dist/chunks/claude-code-config-manager.mjs +7 -7
- package/dist/chunks/claude-code-incremental-manager.mjs +1 -1
- package/dist/chunks/codex-config-switch.mjs +3 -3
- package/dist/chunks/codex-provider-manager.mjs +1 -1
- package/dist/chunks/codex-uninstaller.mjs +2 -2
- package/dist/chunks/commands.mjs +1 -1
- package/dist/chunks/features.mjs +10 -10
- package/dist/chunks/simple-config.mjs +321 -389
- package/dist/chunks/smart-guide.mjs +234 -0
- package/dist/cli.mjs +1795 -433
- package/dist/i18n/locales/en/configuration.json +12 -1
- package/dist/i18n/locales/en/marketplace.json +84 -0
- package/dist/i18n/locales/en/menu.json +38 -1
- package/dist/i18n/locales/en/skills.json +140 -0
- package/dist/i18n/locales/en/smartGuide.json +49 -0
- package/dist/i18n/locales/en/subagent.json +69 -0
- package/dist/i18n/locales/en/superpowers.json +58 -0
- package/dist/i18n/locales/zh-CN/configuration.json +12 -1
- package/dist/i18n/locales/zh-CN/marketplace.json +84 -0
- package/dist/i18n/locales/zh-CN/menu.json +38 -1
- package/dist/i18n/locales/zh-CN/skills.json +140 -0
- package/dist/i18n/locales/zh-CN/smartGuide.json +49 -0
- package/dist/i18n/locales/zh-CN/subagent.json +69 -0
- package/dist/i18n/locales/zh-CN/superpowers.json +58 -0
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.mjs +366 -7
- package/package.json +26 -27
- package/templates/common/skills/en/brainstorming.md +64 -0
- package/templates/common/skills/en/code-review.md +81 -0
- package/templates/common/skills/en/documentation-gen.md +808 -0
- package/templates/common/skills/en/executing-plans.md +75 -0
- package/templates/common/skills/en/git-commit.md +216 -0
- package/templates/common/skills/en/interview.md +223 -0
- package/templates/common/skills/en/migration-assistant.md +312 -0
- package/templates/common/skills/en/performance-profiling.md +576 -0
- package/templates/common/skills/en/pr-review.md +341 -0
- package/templates/common/skills/en/refactoring.md +384 -0
- package/templates/common/skills/en/security-audit.md +462 -0
- package/templates/common/skills/en/systematic-debugging.md +82 -0
- package/templates/common/skills/en/tdd-workflow.md +93 -0
- package/templates/common/skills/en/verification.md +81 -0
- package/templates/common/skills/en/workflow.md +370 -0
- package/templates/common/skills/en/writing-plans.md +78 -0
- package/templates/common/skills/zh-CN/documentation-gen.md +807 -0
- package/templates/common/skills/zh-CN/migration-assistant.md +318 -0
- package/templates/common/skills/zh-CN/performance-profiling.md +746 -0
- package/templates/common/skills/zh-CN/pr-review.md +341 -0
- package/templates/common/skills/zh-CN/refactoring.md +384 -0
- package/templates/common/skills/zh-CN/security-audit.md +462 -0
- package/templates/common/smart-guide/en/smart-guide.md +72 -0
- package/templates/common/smart-guide/zh-CN/smart-guide.md +72 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import dayjs from 'dayjs';
|
|
2
2
|
import { join } from 'pathe';
|
|
3
|
-
import {
|
|
3
|
+
import { U as ZCF_CONFIG_FILE, Z as ZCF_CONFIG_DIR, cU as ensureDir, cV as readDefaultTomlConfig, cW as createDefaultTomlConfig, cX as exists, cB as readJsonConfig, cY as writeTomlConfig, z as SETTINGS_FILE, cZ as clearModelEnv, c_ as copyFile } from './simple-config.mjs';
|
|
4
4
|
import 'node:fs';
|
|
5
5
|
import 'node:process';
|
|
6
6
|
import 'ansis';
|
|
@@ -185,15 +185,15 @@ class ClaudeCodeConfigManager {
|
|
|
185
185
|
* Apply profile settings to Claude Code runtime
|
|
186
186
|
*/
|
|
187
187
|
static async applyProfileSettings(profile) {
|
|
188
|
-
const { ensureI18nInitialized, i18n } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
188
|
+
const { ensureI18nInitialized, i18n } = await import('./simple-config.mjs').then(function (n) { return n.d6; });
|
|
189
189
|
ensureI18nInitialized();
|
|
190
190
|
try {
|
|
191
191
|
if (!profile) {
|
|
192
|
-
const { switchToOfficialLogin } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
192
|
+
const { switchToOfficialLogin } = await import('./simple-config.mjs').then(function (n) { return n.da; });
|
|
193
193
|
switchToOfficialLogin();
|
|
194
194
|
return;
|
|
195
195
|
}
|
|
196
|
-
const { readJsonConfig: readJsonConfig2, writeJsonConfig } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
196
|
+
const { readJsonConfig: readJsonConfig2, writeJsonConfig } = await import('./simple-config.mjs').then(function (n) { return n.d8; });
|
|
197
197
|
const settings = readJsonConfig2(SETTINGS_FILE) || {};
|
|
198
198
|
if (!settings.env)
|
|
199
199
|
settings.env = {};
|
|
@@ -206,7 +206,7 @@ class ClaudeCodeConfigManager {
|
|
|
206
206
|
settings.env.ANTHROPIC_AUTH_TOKEN = profile.apiKey;
|
|
207
207
|
delete settings.env.ANTHROPIC_API_KEY;
|
|
208
208
|
} else if (profile.authType === "ccr_proxy") {
|
|
209
|
-
const { readCcrConfig } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
209
|
+
const { readCcrConfig } = await import('./simple-config.mjs').then(function (n) { return n.db; });
|
|
210
210
|
const ccrConfig = readCcrConfig();
|
|
211
211
|
if (!ccrConfig) {
|
|
212
212
|
throw new Error(i18n.t("ccr:ccrNotConfigured") || "CCR proxy configuration not found");
|
|
@@ -241,7 +241,7 @@ class ClaudeCodeConfigManager {
|
|
|
241
241
|
clearModelEnv(settings.env);
|
|
242
242
|
}
|
|
243
243
|
writeJsonConfig(SETTINGS_FILE, settings);
|
|
244
|
-
const { setPrimaryApiKey, addCompletedOnboarding } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
244
|
+
const { setPrimaryApiKey, addCompletedOnboarding } = await import('./simple-config.mjs').then(function (n) { return n.d9; });
|
|
245
245
|
setPrimaryApiKey();
|
|
246
246
|
addCompletedOnboarding();
|
|
247
247
|
if (shouldRestartCcr) {
|
|
@@ -602,7 +602,7 @@ class ClaudeCodeConfigManager {
|
|
|
602
602
|
*/
|
|
603
603
|
static async syncCcrProfile() {
|
|
604
604
|
try {
|
|
605
|
-
const { readCcrConfig } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
605
|
+
const { readCcrConfig } = await import('./simple-config.mjs').then(function (n) { return n.db; });
|
|
606
606
|
const ccrConfig = readCcrConfig();
|
|
607
607
|
if (!ccrConfig) {
|
|
608
608
|
await this.ensureCcrProfileExists(ccrConfig);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import ansis from 'ansis';
|
|
2
2
|
import inquirer from 'inquirer';
|
|
3
|
-
import {
|
|
3
|
+
import { cm as ensureI18nInitialized, ch as i18n, cx as addNumbersToChoices, cT as validateApiKey, cr as promptBoolean } from './simple-config.mjs';
|
|
4
4
|
import { ClaudeCodeConfigManager } from './claude-code-config-manager.mjs';
|
|
5
5
|
import 'node:fs';
|
|
6
6
|
import 'node:process';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import ansis from 'ansis';
|
|
2
2
|
import inquirer from 'inquirer';
|
|
3
|
-
import {
|
|
3
|
+
import { cm as ensureI18nInitialized, b2 as detectConfigManagementMode, ch as i18n, cx as addNumbersToChoices, cr as promptBoolean, cB as readJsonConfig, H as CODEX_AUTH_FILE } from './simple-config.mjs';
|
|
4
4
|
import { deleteProviders, addProviderToExisting, editExistingProvider } from './codex-provider-manager.mjs';
|
|
5
5
|
import 'node:fs';
|
|
6
6
|
import 'node:process';
|
|
@@ -168,7 +168,7 @@ async function handleAddProvider() {
|
|
|
168
168
|
defaultValue: true
|
|
169
169
|
});
|
|
170
170
|
if (setAsDefault) {
|
|
171
|
-
const { switchToProvider } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
171
|
+
const { switchToProvider } = await import('./simple-config.mjs').then(function (n) { return n.dd; });
|
|
172
172
|
const switched = await switchToProvider(provider.id);
|
|
173
173
|
if (switched) {
|
|
174
174
|
console.log(ansis.green(i18n.t("multi-config:profileSetAsDefault", { name: provider.name })));
|
|
@@ -363,7 +363,7 @@ ${i18n.t("codex:copyingProvider", { name: provider.name })}`));
|
|
|
363
363
|
defaultValue: false
|
|
364
364
|
});
|
|
365
365
|
if (setAsDefault) {
|
|
366
|
-
const { switchToProvider } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
366
|
+
const { switchToProvider } = await import('./simple-config.mjs').then(function (n) { return n.dd; });
|
|
367
367
|
const switched = await switchToProvider(copiedProvider.id);
|
|
368
368
|
if (switched) {
|
|
369
369
|
console.log(ansis.green(i18n.t("multi-config:profileSetAsDefault", { name: copiedProvider.name })));
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { cm as ensureI18nInitialized, aR as readCodexConfig, ch as i18n, ay as backupCodexComplete, b1 as writeCodexConfig, b0 as writeAuthFile } from './simple-config.mjs';
|
|
2
2
|
import 'node:fs';
|
|
3
3
|
import 'node:process';
|
|
4
4
|
import 'ansis';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { pathExists } from 'fs-extra';
|
|
2
2
|
import { join } from 'pathe';
|
|
3
|
-
import {
|
|
3
|
+
import { F as CODEX_DIR, G as CODEX_CONFIG_FILE, cD as moveToTrash, ch as i18n, H as CODEX_AUTH_FILE, I as CODEX_AGENTS_FILE, J as CODEX_PROMPTS_DIR } from './simple-config.mjs';
|
|
4
4
|
import 'node:fs';
|
|
5
5
|
import 'node:process';
|
|
6
6
|
import 'ansis';
|
|
@@ -154,7 +154,7 @@ class CodexUninstaller {
|
|
|
154
154
|
warnings: []
|
|
155
155
|
};
|
|
156
156
|
try {
|
|
157
|
-
const { uninstallCodeTool } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
157
|
+
const { uninstallCodeTool } = await import('./simple-config.mjs').then(function (n) { return n.de; });
|
|
158
158
|
const success = await uninstallCodeTool("codex");
|
|
159
159
|
if (success) {
|
|
160
160
|
result.removed.push("@openai/codex");
|
package/dist/chunks/commands.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { exec } from 'node:child_process';
|
|
2
2
|
import { promisify } from 'node:util';
|
|
3
3
|
import ansis from 'ansis';
|
|
4
|
-
import {
|
|
4
|
+
import { cm as ensureI18nInitialized, ch as i18n } from './simple-config.mjs';
|
|
5
5
|
import 'node:fs';
|
|
6
6
|
import 'node:process';
|
|
7
7
|
import 'inquirer';
|
package/dist/chunks/features.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import ansis from 'ansis';
|
|
2
2
|
import inquirer from 'inquirer';
|
|
3
|
-
import {
|
|
3
|
+
import { ch as i18n, cm as ensureI18nInitialized, a3 as SUPPORTED_LANGS, cx as addNumbersToChoices, a4 as LANG_LABELS, cE as updateZcfConfig, cS as changeLanguage, cA as readZcfConfig, cr as promptBoolean, x as openSettingsJson, w as importRecommendedPermissions, u as importRecommendedEnv, bu as applyAiLanguageDirective, c$ as configureOutputStyle, bs as getExistingModelConfig, bp as updateCustomModel, bq as updateDefaultModel, d0 as isWindows, am as readMcpConfig, ar as fixWindowsMcpConfig, an as writeMcpConfig, d1 as selectMcpServices, ao as backupMcpConfig, d2 as getMcpServices, aq as buildMcpServerConfig, ap as mergeMcpServers, co as isCcrInstalled, cp as installCcr, d3 as setupCcrConfiguration, bt as getExistingApiConfig, bw as promptApiConfigurationAction, d4 as modifyApiConfigPartially, cT as validateApiKey, bn as configureApi, d5 as formatApiKeyDisplay, bv as switchToOfficialLogin } from './simple-config.mjs';
|
|
4
4
|
import 'node:fs';
|
|
5
5
|
import 'node:process';
|
|
6
6
|
import 'pathe';
|
|
@@ -353,7 +353,7 @@ ${ansis.blue(`\u2139 ${i18n.t("configuration:existingLanguageConfig") || "Existi
|
|
|
353
353
|
return;
|
|
354
354
|
}
|
|
355
355
|
}
|
|
356
|
-
const { selectAiOutputLanguage } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
356
|
+
const { selectAiOutputLanguage } = await import('./simple-config.mjs').then(function (n) { return n.dc; });
|
|
357
357
|
const aiOutputLang = await selectAiOutputLanguage();
|
|
358
358
|
applyAiLanguageDirective(aiOutputLang);
|
|
359
359
|
updateZcfConfig({ aiOutputLang });
|
|
@@ -386,7 +386,7 @@ async function changeScriptLanguageFeature(currentLang) {
|
|
|
386
386
|
}
|
|
387
387
|
async function configureCodexDefaultModelFeature() {
|
|
388
388
|
ensureI18nInitialized();
|
|
389
|
-
const { readCodexConfig } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
389
|
+
const { readCodexConfig } = await import('./simple-config.mjs').then(function (n) { return n.dd; });
|
|
390
390
|
const existingConfig = readCodexConfig();
|
|
391
391
|
const currentModel = existingConfig?.model;
|
|
392
392
|
if (currentModel) {
|
|
@@ -487,7 +487,7 @@ ${ansis.blue(`\u2139 ${i18n.t("configuration:existingLanguageConfig") || "Existi
|
|
|
487
487
|
return;
|
|
488
488
|
}
|
|
489
489
|
}
|
|
490
|
-
const { selectAiOutputLanguage } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
490
|
+
const { selectAiOutputLanguage } = await import('./simple-config.mjs').then(function (n) { return n.dc; });
|
|
491
491
|
const aiOutputLang = await selectAiOutputLanguage();
|
|
492
492
|
await updateCodexLanguageDirective(aiOutputLang);
|
|
493
493
|
updateZcfConfig({ aiOutputLang });
|
|
@@ -495,14 +495,14 @@ ${ansis.blue(`\u2139 ${i18n.t("configuration:existingLanguageConfig") || "Existi
|
|
|
495
495
|
} else if (option === "systemPrompt") {
|
|
496
496
|
const zcfConfig = readZcfConfig();
|
|
497
497
|
const currentLang = zcfConfig?.aiOutputLang || "English";
|
|
498
|
-
const { runCodexSystemPromptSelection } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
498
|
+
const { runCodexSystemPromptSelection } = await import('./simple-config.mjs').then(function (n) { return n.dd; });
|
|
499
499
|
await runCodexSystemPromptSelection();
|
|
500
500
|
await ensureLanguageDirectiveInAgents(currentLang);
|
|
501
501
|
console.log(ansis.green(`\u2714 ${i18n.t("configuration:systemPromptConfigured")}`));
|
|
502
502
|
}
|
|
503
503
|
}
|
|
504
504
|
async function updateCodexModelProvider(modelProvider) {
|
|
505
|
-
const { readCodexConfig, writeCodexConfig, backupCodexConfig, getBackupMessage } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
505
|
+
const { readCodexConfig, writeCodexConfig, backupCodexConfig, getBackupMessage } = await import('./simple-config.mjs').then(function (n) { return n.dd; });
|
|
506
506
|
const backupPath = backupCodexConfig();
|
|
507
507
|
if (backupPath) {
|
|
508
508
|
console.log(ansis.gray(getBackupMessage(backupPath)));
|
|
@@ -523,7 +523,7 @@ async function updateCodexModelProvider(modelProvider) {
|
|
|
523
523
|
writeCodexConfig(updatedConfig);
|
|
524
524
|
}
|
|
525
525
|
async function ensureLanguageDirectiveInAgents(aiOutputLang) {
|
|
526
|
-
const { readFile, writeFile, exists } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
526
|
+
const { readFile, writeFile, exists } = await import('./simple-config.mjs').then(function (n) { return n.d7; });
|
|
527
527
|
const { homedir } = await import('node:os');
|
|
528
528
|
const { join } = await import('pathe');
|
|
529
529
|
const CODEX_AGENTS_FILE = join(homedir(), ".codex", "AGENTS.md");
|
|
@@ -541,7 +541,7 @@ async function ensureLanguageDirectiveInAgents(aiOutputLang) {
|
|
|
541
541
|
const langLabel = languageLabels[aiOutputLang] || aiOutputLang;
|
|
542
542
|
const hasLanguageDirective = /\*\*Most Important:\s*Always respond in [^*]+\*\*/i.test(content);
|
|
543
543
|
if (!hasLanguageDirective) {
|
|
544
|
-
const { backupCodexAgents, getBackupMessage } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
544
|
+
const { backupCodexAgents, getBackupMessage } = await import('./simple-config.mjs').then(function (n) { return n.dd; });
|
|
545
545
|
const backupPath = backupCodexAgents();
|
|
546
546
|
if (backupPath) {
|
|
547
547
|
console.log(ansis.gray(getBackupMessage(backupPath)));
|
|
@@ -558,8 +558,8 @@ async function ensureLanguageDirectiveInAgents(aiOutputLang) {
|
|
|
558
558
|
}
|
|
559
559
|
}
|
|
560
560
|
async function updateCodexLanguageDirective(aiOutputLang) {
|
|
561
|
-
const { readFile, writeFile, exists } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
562
|
-
const { backupCodexAgents, getBackupMessage } = await import('./simple-config.mjs').then(function (n) { return n.
|
|
561
|
+
const { readFile, writeFile, exists } = await import('./simple-config.mjs').then(function (n) { return n.d7; });
|
|
562
|
+
const { backupCodexAgents, getBackupMessage } = await import('./simple-config.mjs').then(function (n) { return n.dd; });
|
|
563
563
|
const { homedir } = await import('node:os');
|
|
564
564
|
const { join } = await import('pathe');
|
|
565
565
|
const CODEX_AGENTS_FILE = join(homedir(), ".codex", "AGENTS.md");
|