ccg-workflow 1.7.4 → 1.7.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import cac from 'cac';
|
|
3
3
|
import ansis from 'ansis';
|
|
4
|
-
import { y as diagnoseMcpConfig, z as isWindows, A as readClaudeCodeConfig, B as fixWindowsMcpConfig, C as writeClaudeCodeConfig, r as readCcgConfig, b as initI18n, s as showMainMenu, i as init, D as configMcp, E as version, a as i18n } from './shared/ccg-workflow.
|
|
4
|
+
import { y as diagnoseMcpConfig, z as isWindows, A as readClaudeCodeConfig, B as fixWindowsMcpConfig, C as writeClaudeCodeConfig, r as readCcgConfig, b as initI18n, s as showMainMenu, i as init, D as configMcp, E as version, a as i18n } from './shared/ccg-workflow.B7LrdmRN.mjs';
|
|
5
5
|
import 'inquirer';
|
|
6
6
|
import 'node:os';
|
|
7
7
|
import 'pathe';
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { c as changeLanguage, v as checkForUpdates, x as compareVersions, d as createDefaultConfig, e as createDefaultRouting, g as getCcgDir, f as getConfigPath, q as getCurrentVersion, t as getLatestVersion, j as getWorkflowById, h as getWorkflowConfigs, a as i18n, i as init, b as initI18n, l as installAceTool, k as installWorkflows, o as migrateToV1_4_0, p as needsMigration, r as readCcgConfig, s as showMainMenu, n as uninstallAceTool, m as uninstallWorkflows, u as update, w as writeCcgConfig } from './shared/ccg-workflow.
|
|
1
|
+
export { c as changeLanguage, v as checkForUpdates, x as compareVersions, d as createDefaultConfig, e as createDefaultRouting, g as getCcgDir, f as getConfigPath, q as getCurrentVersion, t as getLatestVersion, j as getWorkflowById, h as getWorkflowConfigs, a as i18n, i as init, b as initI18n, l as installAceTool, k as installWorkflows, o as migrateToV1_4_0, p as needsMigration, r as readCcgConfig, s as showMainMenu, n as uninstallAceTool, m as uninstallWorkflows, u as update, w as writeCcgConfig } from './shared/ccg-workflow.B7LrdmRN.mjs';
|
|
2
2
|
import 'ansis';
|
|
3
3
|
import 'inquirer';
|
|
4
4
|
import 'node:os';
|
|
@@ -10,7 +10,7 @@ import { parse, stringify } from 'smol-toml';
|
|
|
10
10
|
import { exec } from 'node:child_process';
|
|
11
11
|
import { promisify } from 'node:util';
|
|
12
12
|
|
|
13
|
-
const version = "1.7.
|
|
13
|
+
const version = "1.7.5";
|
|
14
14
|
|
|
15
15
|
function isWindows() {
|
|
16
16
|
return process.platform === "win32";
|
|
@@ -246,6 +246,17 @@ const WORKFLOW_CONFIGS = [
|
|
|
246
246
|
description: "\u53CC\u6A21\u578B\u4EE3\u7801\u5BA1\u67E5\uFF0C\u65E0\u53C2\u6570\u65F6\u81EA\u52A8\u5BA1\u67E5 git diff",
|
|
247
247
|
descriptionEn: "Dual-model code review, auto-review git diff when no args"
|
|
248
248
|
},
|
|
249
|
+
{
|
|
250
|
+
id: "enhance",
|
|
251
|
+
name: "Prompt \u589E\u5F3A",
|
|
252
|
+
nameEn: "Prompt Enhancement",
|
|
253
|
+
category: "development",
|
|
254
|
+
commands: ["enhance"],
|
|
255
|
+
defaultSelected: true,
|
|
256
|
+
order: 9.5,
|
|
257
|
+
description: "ace-tool Prompt \u589E\u5F3A\u5DE5\u5177",
|
|
258
|
+
descriptionEn: "ace-tool prompt enhancement"
|
|
259
|
+
},
|
|
249
260
|
{
|
|
250
261
|
id: "init-project",
|
|
251
262
|
name: "\u9879\u76EE\u521D\u59CB\u5316",
|
|
@@ -1675,74 +1686,6 @@ async function update() {
|
|
|
1675
1686
|
console.log(ansis.red(`\u274C \u66F4\u65B0\u5931\u8D25: ${error}`));
|
|
1676
1687
|
}
|
|
1677
1688
|
}
|
|
1678
|
-
async function askReconfigureRouting(currentRouting) {
|
|
1679
|
-
console.log();
|
|
1680
|
-
console.log(ansis.cyan.bold("\u{1F527} \u6A21\u578B\u8DEF\u7531\u914D\u7F6E"));
|
|
1681
|
-
console.log();
|
|
1682
|
-
if (currentRouting) {
|
|
1683
|
-
console.log(ansis.gray("\u5F53\u524D\u914D\u7F6E:"));
|
|
1684
|
-
console.log(` ${ansis.cyan("\u524D\u7AEF\u6A21\u578B:")} ${currentRouting.frontend.models.map((m) => ansis.green(m)).join(", ")}`);
|
|
1685
|
-
console.log(` ${ansis.cyan("\u540E\u7AEF\u6A21\u578B:")} ${currentRouting.backend.models.map((m) => ansis.blue(m)).join(", ")}`);
|
|
1686
|
-
console.log();
|
|
1687
|
-
}
|
|
1688
|
-
const { reconfigure } = await inquirer.prompt([{
|
|
1689
|
-
type: "confirm",
|
|
1690
|
-
name: "reconfigure",
|
|
1691
|
-
message: "\u662F\u5426\u91CD\u65B0\u914D\u7F6E\u524D\u7AEF\u548C\u540E\u7AEF\u6A21\u578B\uFF1F",
|
|
1692
|
-
default: false
|
|
1693
|
-
}]);
|
|
1694
|
-
if (!reconfigure) {
|
|
1695
|
-
return null;
|
|
1696
|
-
}
|
|
1697
|
-
console.log();
|
|
1698
|
-
const { selectedFrontend } = await inquirer.prompt([{
|
|
1699
|
-
type: "checkbox",
|
|
1700
|
-
name: "selectedFrontend",
|
|
1701
|
-
message: i18n.t("init:selectFrontendModels"),
|
|
1702
|
-
choices: [
|
|
1703
|
-
{ name: "Gemini", value: "gemini", checked: currentRouting?.frontend.models.includes("gemini") ?? true },
|
|
1704
|
-
{ name: "Claude", value: "claude", checked: currentRouting?.frontend.models.includes("claude") ?? false },
|
|
1705
|
-
{ name: "Codex", value: "codex", checked: currentRouting?.frontend.models.includes("codex") ?? false }
|
|
1706
|
-
],
|
|
1707
|
-
validate: (answer) => answer.length > 0 || i18n.t("init:validation.selectAtLeastOne")
|
|
1708
|
-
}]);
|
|
1709
|
-
const { selectedBackend } = await inquirer.prompt([{
|
|
1710
|
-
type: "checkbox",
|
|
1711
|
-
name: "selectedBackend",
|
|
1712
|
-
message: i18n.t("init:selectBackendModels"),
|
|
1713
|
-
choices: [
|
|
1714
|
-
{ name: "Codex", value: "codex", checked: currentRouting?.backend.models.includes("codex") ?? true },
|
|
1715
|
-
{ name: "Gemini", value: "gemini", checked: currentRouting?.backend.models.includes("gemini") ?? false },
|
|
1716
|
-
{ name: "Claude", value: "claude", checked: currentRouting?.backend.models.includes("claude") ?? false }
|
|
1717
|
-
],
|
|
1718
|
-
validate: (answer) => answer.length > 0 || i18n.t("init:validation.selectAtLeastOne")
|
|
1719
|
-
}]);
|
|
1720
|
-
const frontendModels = selectedFrontend;
|
|
1721
|
-
const backendModels = selectedBackend;
|
|
1722
|
-
const newRouting = {
|
|
1723
|
-
frontend: {
|
|
1724
|
-
models: frontendModels,
|
|
1725
|
-
primary: frontendModels[0],
|
|
1726
|
-
strategy: frontendModels.length > 1 ? "parallel" : "fallback"
|
|
1727
|
-
},
|
|
1728
|
-
backend: {
|
|
1729
|
-
models: backendModels,
|
|
1730
|
-
primary: backendModels[0],
|
|
1731
|
-
strategy: backendModels.length > 1 ? "parallel" : "fallback"
|
|
1732
|
-
},
|
|
1733
|
-
review: {
|
|
1734
|
-
models: [.../* @__PURE__ */ new Set([...frontendModels, ...backendModels])],
|
|
1735
|
-
strategy: "parallel"
|
|
1736
|
-
},
|
|
1737
|
-
mode: currentRouting?.mode || "smart"
|
|
1738
|
-
};
|
|
1739
|
-
console.log();
|
|
1740
|
-
console.log(ansis.green("\u2713 \u65B0\u914D\u7F6E:"));
|
|
1741
|
-
console.log(` ${ansis.cyan("\u524D\u7AEF\u6A21\u578B:")} ${frontendModels.map((m) => ansis.green(m)).join(", ")}`);
|
|
1742
|
-
console.log(` ${ansis.cyan("\u540E\u7AEF\u6A21\u578B:")} ${backendModels.map((m) => ansis.blue(m)).join(", ")}`);
|
|
1743
|
-
console.log();
|
|
1744
|
-
return newRouting;
|
|
1745
|
-
}
|
|
1746
1689
|
async function performUpdate(fromVersion, toVersion, isNewVersion) {
|
|
1747
1690
|
console.log();
|
|
1748
1691
|
console.log(ansis.yellow.bold("\u2699\uFE0F \u5F00\u59CB\u66F4\u65B0..."));
|
|
@@ -1757,16 +1700,16 @@ async function performUpdate(fromVersion, toVersion, isNewVersion) {
|
|
|
1757
1700
|
return;
|
|
1758
1701
|
}
|
|
1759
1702
|
const config = await readCcgConfig();
|
|
1760
|
-
|
|
1761
|
-
spinner = ora("\u6B63\u5728\u5220\u9664\u65E7\u5DE5\u4F5C\u6D41\u5E76\u5B89\u88C5\u65B0\u5DE5\u4F5C\u6D41...").start();
|
|
1703
|
+
spinner = ora("\u6B63\u5728\u66F4\u65B0\u5DE5\u4F5C\u6D41\u548C codeagent-wrapper \u4E8C\u8FDB\u5236...").start();
|
|
1762
1704
|
try {
|
|
1763
1705
|
const workflows = config?.workflows?.installed || [];
|
|
1764
1706
|
const installDir = join(homedir(), ".claude");
|
|
1765
1707
|
const result = await installWorkflows(workflows, installDir, true, {
|
|
1766
|
-
routing:
|
|
1708
|
+
routing: config?.routing
|
|
1709
|
+
// Use existing routing (fixed: Gemini frontend + Codex backend)
|
|
1767
1710
|
});
|
|
1768
1711
|
if (result.success) {
|
|
1769
|
-
spinner.succeed("\u5DE5\u4F5C\u6D41\u66F4\u65B0\u6210\u529F");
|
|
1712
|
+
spinner.succeed("\u5DE5\u4F5C\u6D41\u548C\u4E8C\u8FDB\u5236\u6587\u4EF6\u66F4\u65B0\u6210\u529F");
|
|
1770
1713
|
console.log();
|
|
1771
1714
|
console.log(ansis.cyan(`\u5DF2\u66F4\u65B0 ${result.installedCommands.length} \u4E2A\u547D\u4EE4:`));
|
|
1772
1715
|
for (const cmd of result.installedCommands) {
|
|
@@ -1774,15 +1717,8 @@ async function performUpdate(fromVersion, toVersion, isNewVersion) {
|
|
|
1774
1717
|
}
|
|
1775
1718
|
if (config) {
|
|
1776
1719
|
config.general.version = toVersion;
|
|
1777
|
-
if (newRouting) {
|
|
1778
|
-
config.routing = newRouting;
|
|
1779
|
-
}
|
|
1780
1720
|
await writeCcgConfig(config);
|
|
1781
1721
|
}
|
|
1782
|
-
if (newRouting) {
|
|
1783
|
-
console.log();
|
|
1784
|
-
console.log(ansis.green("\u2713 \u6A21\u578B\u8DEF\u7531\u914D\u7F6E\u5DF2\u66F4\u65B0"));
|
|
1785
|
-
}
|
|
1786
1722
|
} else {
|
|
1787
1723
|
spinner.fail("\u66F4\u65B0\u5931\u8D25");
|
|
1788
1724
|
console.log(ansis.red("\u90E8\u5206\u6587\u4EF6\u66F4\u65B0\u5931\u8D25:"));
|