ccg-ros2-workflow 2.2.1 → 3.0.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 (186) hide show
  1. package/README.md +211 -96
  2. package/README.zh-CN.md +256 -0
  3. package/dist/cli.mjs +15 -15
  4. package/dist/index.d.mts +61 -34
  5. package/dist/index.d.ts +61 -34
  6. package/dist/index.mjs +4 -4
  7. package/dist/shared/ccg-ros2-workflow.Bhm8c7P1.mjs +5154 -0
  8. package/package.json +31 -12
  9. package/templates/codex/AGENTS.md +348 -0
  10. package/templates/codex/agents/ccg-implement.toml +73 -0
  11. package/templates/codex/agents/ccg-research.toml +73 -0
  12. package/templates/codex/agents/ccg-review.toml +82 -0
  13. package/templates/codex/config.toml +21 -0
  14. package/templates/codex/hooks/ccg-workflow.py +253 -0
  15. package/templates/codex/hooks.json +15 -0
  16. package/templates/commands/agents/planner.md +97 -122
  17. package/templates/commands/agents/system-integrator.md +2 -2
  18. package/templates/commands/agents/team-architect.md +97 -0
  19. package/templates/commands/agents/team-qa.md +121 -0
  20. package/templates/commands/agents/team-reviewer.md +112 -0
  21. package/templates/commands/commit.md +30 -1
  22. package/templates/commands/context.md +332 -0
  23. package/templates/commands/go.md +206 -0
  24. package/templates/commands/init.md +1 -1
  25. package/templates/commands/spec-impl.md +41 -21
  26. package/templates/commands/spec-init.md +21 -27
  27. package/templates/commands/spec-plan.md +54 -21
  28. package/templates/commands/spec-research.md +78 -26
  29. package/templates/commands/spec-review.md +20 -16
  30. package/templates/{commands → commands-legacy}/analyze.md +1 -1
  31. package/templates/commands-legacy/backend.md +224 -0
  32. package/templates/commands-legacy/codex-exec.md +411 -0
  33. package/templates/{commands → commands-legacy}/debug.md +1 -1
  34. package/templates/commands-legacy/enhance.md +55 -0
  35. package/templates/{commands → commands-legacy}/feat.md +2 -2
  36. package/templates/commands-legacy/frontend.md +213 -0
  37. package/templates/{commands → commands-legacy}/optimize.md +1 -1
  38. package/templates/{commands → commands-legacy}/plan.md +1 -15
  39. package/templates/{commands → commands-legacy}/team-plan.md +1 -1
  40. package/templates/commands-legacy/team.md +475 -0
  41. package/templates/{commands → commands-legacy}/test.md +1 -1
  42. package/templates/commands-legacy/workflow.md +283 -0
  43. package/templates/engine/model-router.md +123 -0
  44. package/templates/engine/phase-guide.md +207 -0
  45. package/templates/engine/strategies/debug-investigate.md +169 -0
  46. package/templates/engine/strategies/deep-research.md +141 -0
  47. package/templates/engine/strategies/direct-fix.md +108 -0
  48. package/templates/engine/strategies/full-collaborate.md +389 -0
  49. package/templates/engine/strategies/git-action.md +43 -0
  50. package/templates/engine/strategies/guided-develop.md +282 -0
  51. package/templates/engine/strategies/optimize-measure.md +103 -0
  52. package/templates/engine/strategies/quick-implement.md +96 -0
  53. package/templates/engine/strategies/refactor-safely.md +180 -0
  54. package/templates/engine/strategies/review-audit.md +123 -0
  55. package/templates/hooks/session-start.js +100 -0
  56. package/templates/hooks/skill-router.js +144 -0
  57. package/templates/hooks/subagent-context.js +161 -0
  58. package/templates/hooks/task-utils.js +190 -0
  59. package/templates/hooks/workflow-state.js +55 -0
  60. package/templates/output-styles/abyss-command.md +56 -0
  61. package/templates/output-styles/abyss-concise.md +89 -0
  62. package/templates/output-styles/abyss-ritual.md +70 -0
  63. package/templates/output-styles/engineer-professional.md +20 -3
  64. package/templates/output-styles/laowang-engineer.md +2 -2
  65. package/templates/prompts/antigravity/analyzer.md +59 -0
  66. package/templates/prompts/antigravity/architect.md +55 -0
  67. package/templates/prompts/antigravity/builder.md +52 -0
  68. package/templates/prompts/antigravity/debugger.md +48 -0
  69. package/templates/prompts/antigravity/frontend.md +50 -0
  70. package/templates/prompts/antigravity/optimizer.md +40 -0
  71. package/templates/prompts/antigravity/reviewer.md +67 -0
  72. package/templates/prompts/antigravity/tester.md +39 -0
  73. package/templates/prompts/claude/debugger.md +1 -1
  74. package/templates/prompts/claude/reviewer.md +1 -1
  75. package/templates/prompts/codex/analyzer.md +8 -0
  76. package/templates/prompts/codex/architect.md +9 -1
  77. package/templates/prompts/codex/builder.md +61 -0
  78. package/templates/prompts/codex/debugger.md +9 -1
  79. package/templates/prompts/codex/optimizer.md +7 -0
  80. package/templates/prompts/codex/reviewer.md +7 -0
  81. package/templates/prompts/codex/tester.md +8 -1
  82. package/templates/prompts/gemini/analyzer.md +11 -3
  83. package/templates/prompts/gemini/architect.md +10 -2
  84. package/templates/prompts/gemini/debugger.md +8 -0
  85. package/templates/prompts/gemini/frontend.md +10 -2
  86. package/templates/prompts/gemini/optimizer.md +9 -2
  87. package/templates/prompts/gemini/reviewer.md +7 -0
  88. package/templates/prompts/gemini/tester.md +8 -1
  89. package/templates/rules/ccg-skill-routing.md +91 -0
  90. package/templates/rules/ccg-skills.md +65 -0
  91. package/templates/skills/SKILL.md +92 -0
  92. package/templates/skills/domains/ai/SKILL.md +34 -0
  93. package/templates/skills/domains/ai/agent-dev.md +242 -0
  94. package/templates/skills/domains/ai/llm-security.md +288 -0
  95. package/templates/skills/domains/ai/prompt-and-eval.md +279 -0
  96. package/templates/skills/domains/ai/rag-system.md +542 -0
  97. package/templates/skills/domains/architecture/SKILL.md +42 -0
  98. package/templates/skills/domains/architecture/api-design.md +225 -0
  99. package/templates/skills/domains/architecture/caching.md +299 -0
  100. package/templates/skills/domains/architecture/cloud-native.md +285 -0
  101. package/templates/skills/domains/architecture/message-queue.md +329 -0
  102. package/templates/skills/domains/architecture/security-arch.md +297 -0
  103. package/templates/skills/domains/data-engineering/SKILL.md +207 -0
  104. package/templates/skills/domains/development/SKILL.md +46 -0
  105. package/templates/skills/domains/development/cpp.md +369 -0
  106. package/templates/skills/domains/development/go.md +323 -0
  107. package/templates/skills/domains/development/java.md +277 -0
  108. package/templates/skills/domains/development/python.md +487 -0
  109. package/templates/skills/domains/development/rust.md +313 -0
  110. package/templates/skills/domains/development/shell.md +313 -0
  111. package/templates/skills/domains/development/typescript.md +277 -0
  112. package/templates/skills/domains/devops/SKILL.md +39 -0
  113. package/templates/skills/domains/devops/cost-optimization.md +272 -0
  114. package/templates/skills/domains/devops/database.md +217 -0
  115. package/templates/skills/domains/devops/devsecops.md +198 -0
  116. package/templates/skills/domains/devops/git-workflow.md +181 -0
  117. package/templates/skills/domains/devops/observability.md +280 -0
  118. package/templates/skills/domains/devops/performance.md +336 -0
  119. package/templates/skills/domains/devops/testing.md +283 -0
  120. package/templates/skills/domains/infrastructure/SKILL.md +200 -0
  121. package/templates/skills/domains/mobile/SKILL.md +224 -0
  122. package/templates/skills/domains/orchestration/SKILL.md +29 -0
  123. package/templates/skills/domains/orchestration/multi-agent.md +263 -0
  124. package/templates/skills/domains/ros2-control/SKILL.md +206 -0
  125. package/templates/skills/domains/ros2-hardware/SKILL.md +277 -0
  126. package/templates/skills/domains/ros2-manipulation/SKILL.md +237 -0
  127. package/templates/skills/domains/ros2-navigation/SKILL.md +196 -0
  128. package/templates/skills/domains/ros2-perception/SKILL.md +166 -0
  129. package/templates/skills/domains/ros2-upper-app/SKILL.md +50 -0
  130. package/templates/skills/domains/ros2-upper-app/launch-files.md +224 -0
  131. package/templates/skills/domains/ros2-upper-app/parameters.md +192 -0
  132. package/templates/skills/domains/ros2-upper-app/python-nodes.md +249 -0
  133. package/templates/skills/domains/ros2-upper-app/rviz-config.md +158 -0
  134. package/templates/skills/domains/ros2-upper-app/simulation.md +225 -0
  135. package/templates/skills/domains/security/SKILL.md +72 -0
  136. package/templates/skills/domains/security/blue-team.md +436 -0
  137. package/templates/skills/domains/security/code-audit.md +265 -0
  138. package/templates/skills/domains/security/pentest.md +226 -0
  139. package/templates/skills/domains/security/red-team.md +374 -0
  140. package/templates/skills/domains/security/threat-intel.md +372 -0
  141. package/templates/skills/domains/security/vuln-research.md +369 -0
  142. package/templates/skills/orchestration/multi-agent/SKILL.md +533 -0
  143. package/templates/skills/run_skill.js +129 -0
  144. package/templates/skills/scrapling/SKILL.md +98 -0
  145. package/templates/skills/scrapling/references/api-quick-ref.md +127 -0
  146. package/templates/skills/scrapling/references/cookie-vault.md +56 -0
  147. package/templates/skills/scrapling/references/maintenance.md +79 -0
  148. package/templates/skills/scrapling/references/site-patterns.md +86 -0
  149. package/templates/skills/scrapling/references/troubleshooting.md +95 -0
  150. package/templates/skills/scrapling/templates/basic_fetch.py +19 -0
  151. package/templates/skills/scrapling/templates/parse_only.py +15 -0
  152. package/templates/skills/scrapling/templates/session_login.py +19 -0
  153. package/templates/skills/scrapling/templates/stealth_cloudflare.py +28 -0
  154. package/templates/skills/tools/gen-docs/SKILL.md +116 -0
  155. package/templates/skills/tools/gen-docs/scripts/doc_generator.js +435 -0
  156. package/templates/skills/tools/lib/shared.js +98 -0
  157. package/templates/skills/tools/override-refusal/SKILL.md +53 -0
  158. package/templates/skills/tools/override-refusal/agents/openai.yaml +4 -0
  159. package/templates/skills/tools/override-refusal/scripts/refusal_rewriter.js +226 -0
  160. package/templates/skills/tools/verify-change/SKILL.md +140 -0
  161. package/templates/skills/tools/verify-change/scripts/change_analyzer.js +289 -0
  162. package/templates/skills/tools/verify-module/SKILL.md +127 -0
  163. package/templates/skills/tools/verify-module/scripts/module_scanner.js +171 -0
  164. package/templates/skills/tools/verify-quality/SKILL.md +160 -0
  165. package/templates/skills/tools/verify-quality/scripts/quality_checker.js +337 -0
  166. package/templates/skills/tools/verify-security/SKILL.md +143 -0
  167. package/templates/skills/tools/verify-security/scripts/security_scanner.js +283 -0
  168. package/templates/spec/guides/index.md +30 -0
  169. package/templates/spec/low-control/index.md +31 -0
  170. package/templates/spec/upper-app/index.md +31 -0
  171. package/bin/codeagent-wrapper-darwin-amd64 +0 -0
  172. package/bin/codeagent-wrapper-darwin-arm64 +0 -0
  173. package/bin/codeagent-wrapper-linux-amd64 +0 -0
  174. package/bin/codeagent-wrapper-linux-arm64 +0 -0
  175. package/bin/codeagent-wrapper-windows-amd64.exe +0 -0
  176. package/bin/codeagent-wrapper-windows-arm64.exe +0 -0
  177. package/dist/shared/ccg-ros2-workflow.DRytDWqb.mjs +0 -2274
  178. package/templates/commands/backend.md +0 -162
  179. package/templates/commands/enhance.md +0 -36
  180. package/templates/commands/frontend.md +0 -162
  181. package/templates/commands/workflow.md +0 -202
  182. /package/templates/{commands → commands-legacy}/execute.md +0 -0
  183. /package/templates/{commands → commands-legacy}/review.md +0 -0
  184. /package/templates/{commands → commands-legacy}/team-exec.md +0 -0
  185. /package/templates/{commands → commands-legacy}/team-research.md +0 -0
  186. /package/templates/{commands → commands-legacy}/team-review.md +0 -0
package/dist/cli.mjs CHANGED
@@ -1,17 +1,17 @@
1
1
  #!/usr/bin/env node
2
2
  import cac from 'cac';
3
3
  import ansis from 'ansis';
4
- import { z as diagnoseMcpConfig, A as isWindows, B as readClaudeCodeConfig, C as fixWindowsMcpConfig, D as writeClaudeCodeConfig, t as readCcgConfig, n as initI18n, u as showMainMenu, m as init, E as configMcp, F as version, l as i18n } from './shared/ccg-ros2-workflow.DRytDWqb.mjs';
4
+ import { g as diagnoseMcpConfig, v as isWindows, z as readClaudeCodeConfig, h as fixWindowsMcpConfig, H as writeClaudeCodeConfig, y as readCcgConfig, q as initI18n, o as i18n, A as showMainMenu, p as init, d as configMcp, F as version } from './shared/ccg-ros2-workflow.Bhm8c7P1.mjs';
5
5
  import 'inquirer';
6
+ import 'ora';
6
7
  import 'node:child_process';
7
8
  import 'node:util';
8
9
  import 'node:os';
10
+ import 'node:url';
9
11
  import 'pathe';
10
12
  import 'fs-extra';
11
- import 'node:url';
12
- import 'i18next';
13
- import 'ora';
14
13
  import 'smol-toml';
14
+ import 'i18next';
15
15
 
16
16
  async function diagnoseMcp() {
17
17
  console.log();
@@ -75,16 +75,16 @@ async function fixMcp() {
75
75
  function customizeHelp(sections) {
76
76
  sections.unshift({
77
77
  title: "",
78
- body: ansis.cyan.bold(`CCG-ROS2 - Claude + Codex + Gemini v${version}`)
78
+ body: ansis.cyan.bold(`CCG - Claude + Codex + Gemini v${version}`)
79
79
  });
80
80
  sections.push({
81
81
  title: ansis.yellow(i18n.t("cli:help.commands")),
82
82
  body: [
83
83
  ` ${ansis.cyan("ccg")} ${i18n.t("cli:help.commandDescriptions.showMenu")}`,
84
84
  ` ${ansis.cyan("ccg init")} | ${ansis.cyan("i")} ${i18n.t("cli:help.commandDescriptions.initConfig")}`,
85
- ` ${ansis.cyan("ccg config mcp")} \u914D\u7F6E ace-tool MCP Token`,
86
- ` ${ansis.cyan("ccg diagnose-mcp")} \u8BCA\u65AD MCP \u914D\u7F6E\u95EE\u9898`,
87
- ` ${ansis.cyan("ccg fix-mcp")} \u4FEE\u590D Windows MCP \u914D\u7F6E`,
85
+ ` ${ansis.cyan("ccg config mcp")} ${i18n.t("cli:help.commandDescriptions.configMcp")}`,
86
+ ` ${ansis.cyan("ccg diagnose-mcp")} ${i18n.t("cli:help.commandDescriptions.diagnoseMcp")}`,
87
+ ` ${ansis.cyan("ccg fix-mcp")} ${i18n.t("cli:help.commandDescriptions.fixMcp")}`,
88
88
  "",
89
89
  ansis.gray(` ${i18n.t("cli:help.shortcuts")}`),
90
90
  ` ${ansis.cyan("ccg i")} ${i18n.t("cli:help.shortcutDescriptions.quickInit")}`
@@ -135,30 +135,30 @@ async function setupCommands(cli) {
135
135
  } catch {
136
136
  await initI18n("zh-CN");
137
137
  }
138
- cli.command("", "\u663E\u793A\u4EA4\u4E92\u5F0F\u83DC\u5355\uFF08\u9ED8\u8BA4\uFF09").option("--lang, -l <lang>", "\u663E\u793A\u8BED\u8A00 (zh-CN, en)").action(async (options) => {
138
+ cli.command("", i18n.t("cli:help.commandDescriptions.showMenu")).option("--lang, -l <lang>", `${i18n.t("cli:help.optionDescriptions.displayLanguage")} (zh-CN, en)`).action(async (options) => {
139
139
  if (options.lang) {
140
140
  await initI18n(options.lang);
141
141
  }
142
142
  await showMainMenu();
143
143
  });
144
- cli.command("init", "\u521D\u59CB\u5316 CCG-ROS2 \u591A\u6A21\u578B\u534F\u4F5C\u7CFB\u7EDF").alias("i").option("--lang, -l <lang>", "\u663E\u793A\u8BED\u8A00 (zh-CN, en)").option("--force, -f", "\u5F3A\u5236\u8986\u76D6\u73B0\u6709\u914D\u7F6E").option("--skip-prompt, -s", "\u8DF3\u8FC7\u6240\u6709\u4EA4\u4E92\u5F0F\u63D0\u793A\uFF08\u975E\u4EA4\u4E92\u6A21\u5F0F\uFF09").option("--skip-mcp", "\u8DF3\u8FC7 MCP \u914D\u7F6E\uFF08\u66F4\u65B0\u65F6\u4F7F\u7528\uFF09").option("--frontend, -F <models>", "\u4E0A\u5C42\u5E94\u7528\u6A21\u578B\uFF08\u9017\u53F7\u5206\u9694: gemini,codex,claude\uFF09").option("--backend, -B <models>", "\u5E95\u5C42\u63A7\u5236\u6A21\u578B\uFF08\u9017\u53F7\u5206\u9694: codex,gemini,claude\uFF09").option("--mode, -m <mode>", "\u534F\u4F5C\u6A21\u5F0F (parallel, smart, sequential)").option("--workflows, -w <workflows>", '\u8981\u5B89\u88C5\u7684\u5DE5\u4F5C\u6D41\uFF08\u9017\u53F7\u5206\u9694\u6216 "all"\uFF09').option("--install-dir, -d <path>", "\u5B89\u88C5\u76EE\u5F55\uFF08\u9ED8\u8BA4: ~/.claude\uFF09").action(async (options) => {
144
+ cli.command("init", i18n.t("cli:help.commandDescriptions.initConfig")).alias("i").option("--lang, -l <lang>", `${i18n.t("cli:help.optionDescriptions.displayLanguage")} (zh-CN, en)`).option("--force, -f", i18n.t("cli:help.optionDescriptions.forceOverwrite")).option("--skip-prompt, -s", i18n.t("cli:help.optionDescriptions.skipAllPrompts")).option("--skip-mcp", "Skip MCP configuration (used during update)").option("--frontend, -F <models>", i18n.t("cli:help.optionDescriptions.frontendModels")).option("--backend, -B <models>", i18n.t("cli:help.optionDescriptions.backendModels")).option("--mode, -m <mode>", i18n.t("cli:help.optionDescriptions.collaborationMode")).option("--workflows, -w <workflows>", i18n.t("cli:help.optionDescriptions.workflows")).option("--install-dir, -d <path>", i18n.t("cli:help.optionDescriptions.installDir")).action(async (options) => {
145
145
  if (options.lang) {
146
146
  await initI18n(options.lang);
147
147
  }
148
148
  await init(options);
149
149
  });
150
- cli.command("diagnose-mcp", "\u8BCA\u65AD MCP \u914D\u7F6E\u95EE\u9898").action(async () => {
150
+ cli.command("diagnose-mcp", i18n.t("cli:help.commandDescriptions.diagnoseMcp")).action(async () => {
151
151
  await diagnoseMcp();
152
152
  });
153
- cli.command("fix-mcp", "\u4FEE\u590D Windows MCP \u914D\u7F6E\u95EE\u9898").action(async () => {
153
+ cli.command("fix-mcp", i18n.t("cli:help.commandDescriptions.fixMcp")).action(async () => {
154
154
  await fixMcp();
155
155
  });
156
- cli.command("config <subcommand>", "\u914D\u7F6E CCG \u8BBE\u7F6E").action(async (subcommand) => {
156
+ cli.command("config <subcommand>", i18n.t("cli:help.commandDescriptions.configMcp")).action(async (subcommand) => {
157
157
  if (subcommand === "mcp") {
158
158
  await configMcp();
159
159
  } else {
160
- console.log(ansis.red(`\u672A\u77E5\u5B50\u547D\u4EE4: ${subcommand}`));
161
- console.log(ansis.gray("\u53EF\u7528\u5B50\u547D\u4EE4: mcp"));
160
+ console.log(ansis.red(i18n.t("common:unknownSubcommand", { subcommand })));
161
+ console.log(ansis.gray(i18n.t("common:availableSubcommands", { list: "mcp" })));
162
162
  }
163
163
  });
164
164
  cli.help((sections) => customizeHelp(sections));
package/dist/index.d.mts CHANGED
@@ -13,7 +13,7 @@ interface CliOptions {
13
13
  }
14
14
 
15
15
  type SupportedLang = 'zh-CN' | 'en';
16
- type ModelType = 'codex' | 'gemini' | 'claude';
16
+ type ModelType = 'codex' | 'gemini' | 'claude' | 'antigravity';
17
17
  type CollaborationMode = 'parallel' | 'smart' | 'sequential';
18
18
  type RoutingStrategy = 'parallel' | 'fallback' | 'round-robin';
19
19
  interface ModelRouting {
@@ -32,6 +32,7 @@ interface ModelRouting {
32
32
  strategy: 'parallel';
33
33
  };
34
34
  mode: CollaborationMode;
35
+ geminiModel?: string;
35
36
  }
36
37
  interface CcgConfig {
37
38
  general: {
@@ -39,10 +40,6 @@ interface CcgConfig {
39
40
  language: SupportedLang;
40
41
  createdAt: string;
41
42
  };
42
- ros2: {
43
- distro: string;
44
- target: string;
45
- };
46
43
  routing: ModelRouting;
47
44
  workflows: {
48
45
  installed: string[];
@@ -58,6 +55,7 @@ interface CcgConfig {
58
55
  };
59
56
  performance?: {
60
57
  liteMode?: boolean;
58
+ skipImpeccable?: boolean;
61
59
  };
62
60
  }
63
61
  interface WorkflowConfig {
@@ -86,6 +84,9 @@ interface InstallResult {
86
84
  success: boolean;
87
85
  installedCommands: string[];
88
86
  installedPrompts: string[];
87
+ installedSkills?: number;
88
+ installedSkillCommands?: number;
89
+ installedRules?: boolean;
89
90
  errors: string[];
90
91
  configPath: string;
91
92
  binPath?: string;
@@ -95,6 +96,10 @@ interface AceToolConfig {
95
96
  baseUrl: string;
96
97
  token: string;
97
98
  }
99
+ interface FastContextConfig {
100
+ apiKey?: string;
101
+ includeSnippets?: boolean;
102
+ }
98
103
 
99
104
  declare function init(options?: InitOptions): Promise<void>;
100
105
 
@@ -119,11 +124,52 @@ declare function createDefaultConfig(options: {
119
124
  installedWorkflows: string[];
120
125
  mcpProvider?: string;
121
126
  liteMode?: boolean;
127
+ skipImpeccable?: boolean;
122
128
  }): CcgConfig;
123
129
  declare function createDefaultRouting(): ModelRouting;
124
130
 
125
131
  declare function getWorkflowConfigs(): WorkflowConfig[];
126
132
  declare function getWorkflowById(id: string): WorkflowConfig | undefined;
133
+
134
+ type McpInstallResult = {
135
+ success: boolean;
136
+ message: string;
137
+ configPath?: string;
138
+ };
139
+ /**
140
+ * Uninstall ace-tool MCP configuration from ~/.claude.json
141
+ */
142
+ declare function uninstallAceTool(): Promise<{
143
+ success: boolean;
144
+ message: string;
145
+ }>;
146
+ /**
147
+ * Install and configure ace-tool MCP for Claude Code.
148
+ */
149
+ declare function installAceTool(config: AceToolConfig): Promise<McpInstallResult>;
150
+ /**
151
+ * Install and configure ace-tool-rs MCP for Claude Code.
152
+ * ace-tool-rs is a Rust implementation — more lightweight and faster.
153
+ */
154
+ declare function installAceToolRs(config: AceToolConfig): Promise<McpInstallResult>;
155
+
156
+ /**
157
+ * Install Codex-mode files: AGENTS.md + .codex/config.toml + .codex/agents/*.toml
158
+ * These enable Codex CLI as an alternative lead orchestrator (Codex-led multi-model mode).
159
+ * Files are installed to ~/.codex/ (global) and user copies AGENTS.md to project root.
160
+ */
161
+ declare function installCodexMode(): Promise<{
162
+ success: boolean;
163
+ message: string;
164
+ }>;
165
+ /**
166
+ * Uninstall CCG Codex mode — only removes files installed by CCG, preserves user files.
167
+ */
168
+ declare function uninstallCodexMode(): Promise<{
169
+ success: boolean;
170
+ removed: string[];
171
+ skipped: string[];
172
+ }>;
127
173
  declare function installWorkflows(workflowIds: string[], installDir: string, force?: boolean, config?: {
128
174
  routing?: {
129
175
  mode?: string;
@@ -140,45 +186,26 @@ declare function installWorkflows(workflowIds: string[], installDir: string, for
140
186
  };
141
187
  };
142
188
  liteMode?: boolean;
189
+ mcpProvider?: string;
190
+ skipImpeccable?: boolean;
143
191
  }): Promise<InstallResult>;
144
- /**
145
- * Install and configure ace-tool MCP for Claude Code
146
- * Writes to ~/.claude.json (the correct config file for Claude Code CLI)
147
- */
148
192
  interface UninstallResult {
149
193
  success: boolean;
150
194
  removedCommands: string[];
151
195
  removedPrompts: string[];
152
196
  removedAgents: string[];
153
197
  removedSkills: string[];
198
+ removedRules: boolean;
154
199
  removedBin: boolean;
155
200
  errors: string[];
156
201
  }
157
202
  /**
158
- * Uninstall workflows by removing their command files
159
- */
160
- declare function uninstallWorkflows(installDir: string): Promise<UninstallResult>;
161
- /**
162
- * Uninstall ace-tool MCP configuration from ~/.claude.json
163
- */
164
- declare function uninstallAceTool(): Promise<{
165
- success: boolean;
166
- message: string;
167
- }>;
168
- declare function installAceTool(config: AceToolConfig): Promise<{
169
- success: boolean;
170
- message: string;
171
- configPath?: string;
172
- }>;
173
- /**
174
- * Install and configure ace-tool-rs MCP for Claude Code
175
- * ace-tool-rs is a Rust implementation of ace-tool, more lightweight and faster
203
+ * Uninstall workflows by removing their command files.
204
+ * @param options.preserveBinary — when true, skip binary removal (used during update)
176
205
  */
177
- declare function installAceToolRs(config: AceToolConfig): Promise<{
178
- success: boolean;
179
- message: string;
180
- configPath?: string;
181
- }>;
206
+ declare function uninstallWorkflows(installDir: string, options?: {
207
+ preserveBinary?: boolean;
208
+ }): Promise<UninstallResult>;
182
209
 
183
210
  /**
184
211
  * Migration utilities for v1.4.0
@@ -225,5 +252,5 @@ declare function checkForUpdates(): Promise<{
225
252
  latestVersion: string | null;
226
253
  }>;
227
254
 
228
- export { changeLanguage, checkForUpdates, compareVersions, createDefaultConfig, createDefaultRouting, getCcgDir, getConfigPath, getCurrentVersion, getLatestVersion, getWorkflowById, getWorkflowConfigs, i18n, init, initI18n, installAceTool, installAceToolRs, installWorkflows, migrateToV1_4_0, needsMigration, readCcgConfig, showMainMenu, uninstallAceTool, uninstallWorkflows, update, writeCcgConfig };
229
- export type { AceToolConfig, CcgConfig, CliOptions, CollaborationMode, InitOptions, InstallResult, ModelRouting, ModelType, RoutingStrategy, SupportedLang, WorkflowConfig };
255
+ export { changeLanguage, checkForUpdates, compareVersions, createDefaultConfig, createDefaultRouting, getCcgDir, getConfigPath, getCurrentVersion, getLatestVersion, getWorkflowById, getWorkflowConfigs, i18n, init, initI18n, installAceTool, installAceToolRs, installCodexMode, installWorkflows, migrateToV1_4_0, needsMigration, readCcgConfig, showMainMenu, uninstallAceTool, uninstallCodexMode, uninstallWorkflows, update, writeCcgConfig };
256
+ export type { AceToolConfig, CcgConfig, CliOptions, CollaborationMode, FastContextConfig, InitOptions, InstallResult, ModelRouting, ModelType, RoutingStrategy, SupportedLang, WorkflowConfig };
package/dist/index.d.ts CHANGED
@@ -13,7 +13,7 @@ interface CliOptions {
13
13
  }
14
14
 
15
15
  type SupportedLang = 'zh-CN' | 'en';
16
- type ModelType = 'codex' | 'gemini' | 'claude';
16
+ type ModelType = 'codex' | 'gemini' | 'claude' | 'antigravity';
17
17
  type CollaborationMode = 'parallel' | 'smart' | 'sequential';
18
18
  type RoutingStrategy = 'parallel' | 'fallback' | 'round-robin';
19
19
  interface ModelRouting {
@@ -32,6 +32,7 @@ interface ModelRouting {
32
32
  strategy: 'parallel';
33
33
  };
34
34
  mode: CollaborationMode;
35
+ geminiModel?: string;
35
36
  }
36
37
  interface CcgConfig {
37
38
  general: {
@@ -39,10 +40,6 @@ interface CcgConfig {
39
40
  language: SupportedLang;
40
41
  createdAt: string;
41
42
  };
42
- ros2: {
43
- distro: string;
44
- target: string;
45
- };
46
43
  routing: ModelRouting;
47
44
  workflows: {
48
45
  installed: string[];
@@ -58,6 +55,7 @@ interface CcgConfig {
58
55
  };
59
56
  performance?: {
60
57
  liteMode?: boolean;
58
+ skipImpeccable?: boolean;
61
59
  };
62
60
  }
63
61
  interface WorkflowConfig {
@@ -86,6 +84,9 @@ interface InstallResult {
86
84
  success: boolean;
87
85
  installedCommands: string[];
88
86
  installedPrompts: string[];
87
+ installedSkills?: number;
88
+ installedSkillCommands?: number;
89
+ installedRules?: boolean;
89
90
  errors: string[];
90
91
  configPath: string;
91
92
  binPath?: string;
@@ -95,6 +96,10 @@ interface AceToolConfig {
95
96
  baseUrl: string;
96
97
  token: string;
97
98
  }
99
+ interface FastContextConfig {
100
+ apiKey?: string;
101
+ includeSnippets?: boolean;
102
+ }
98
103
 
99
104
  declare function init(options?: InitOptions): Promise<void>;
100
105
 
@@ -119,11 +124,52 @@ declare function createDefaultConfig(options: {
119
124
  installedWorkflows: string[];
120
125
  mcpProvider?: string;
121
126
  liteMode?: boolean;
127
+ skipImpeccable?: boolean;
122
128
  }): CcgConfig;
123
129
  declare function createDefaultRouting(): ModelRouting;
124
130
 
125
131
  declare function getWorkflowConfigs(): WorkflowConfig[];
126
132
  declare function getWorkflowById(id: string): WorkflowConfig | undefined;
133
+
134
+ type McpInstallResult = {
135
+ success: boolean;
136
+ message: string;
137
+ configPath?: string;
138
+ };
139
+ /**
140
+ * Uninstall ace-tool MCP configuration from ~/.claude.json
141
+ */
142
+ declare function uninstallAceTool(): Promise<{
143
+ success: boolean;
144
+ message: string;
145
+ }>;
146
+ /**
147
+ * Install and configure ace-tool MCP for Claude Code.
148
+ */
149
+ declare function installAceTool(config: AceToolConfig): Promise<McpInstallResult>;
150
+ /**
151
+ * Install and configure ace-tool-rs MCP for Claude Code.
152
+ * ace-tool-rs is a Rust implementation — more lightweight and faster.
153
+ */
154
+ declare function installAceToolRs(config: AceToolConfig): Promise<McpInstallResult>;
155
+
156
+ /**
157
+ * Install Codex-mode files: AGENTS.md + .codex/config.toml + .codex/agents/*.toml
158
+ * These enable Codex CLI as an alternative lead orchestrator (Codex-led multi-model mode).
159
+ * Files are installed to ~/.codex/ (global) and user copies AGENTS.md to project root.
160
+ */
161
+ declare function installCodexMode(): Promise<{
162
+ success: boolean;
163
+ message: string;
164
+ }>;
165
+ /**
166
+ * Uninstall CCG Codex mode — only removes files installed by CCG, preserves user files.
167
+ */
168
+ declare function uninstallCodexMode(): Promise<{
169
+ success: boolean;
170
+ removed: string[];
171
+ skipped: string[];
172
+ }>;
127
173
  declare function installWorkflows(workflowIds: string[], installDir: string, force?: boolean, config?: {
128
174
  routing?: {
129
175
  mode?: string;
@@ -140,45 +186,26 @@ declare function installWorkflows(workflowIds: string[], installDir: string, for
140
186
  };
141
187
  };
142
188
  liteMode?: boolean;
189
+ mcpProvider?: string;
190
+ skipImpeccable?: boolean;
143
191
  }): Promise<InstallResult>;
144
- /**
145
- * Install and configure ace-tool MCP for Claude Code
146
- * Writes to ~/.claude.json (the correct config file for Claude Code CLI)
147
- */
148
192
  interface UninstallResult {
149
193
  success: boolean;
150
194
  removedCommands: string[];
151
195
  removedPrompts: string[];
152
196
  removedAgents: string[];
153
197
  removedSkills: string[];
198
+ removedRules: boolean;
154
199
  removedBin: boolean;
155
200
  errors: string[];
156
201
  }
157
202
  /**
158
- * Uninstall workflows by removing their command files
159
- */
160
- declare function uninstallWorkflows(installDir: string): Promise<UninstallResult>;
161
- /**
162
- * Uninstall ace-tool MCP configuration from ~/.claude.json
163
- */
164
- declare function uninstallAceTool(): Promise<{
165
- success: boolean;
166
- message: string;
167
- }>;
168
- declare function installAceTool(config: AceToolConfig): Promise<{
169
- success: boolean;
170
- message: string;
171
- configPath?: string;
172
- }>;
173
- /**
174
- * Install and configure ace-tool-rs MCP for Claude Code
175
- * ace-tool-rs is a Rust implementation of ace-tool, more lightweight and faster
203
+ * Uninstall workflows by removing their command files.
204
+ * @param options.preserveBinary — when true, skip binary removal (used during update)
176
205
  */
177
- declare function installAceToolRs(config: AceToolConfig): Promise<{
178
- success: boolean;
179
- message: string;
180
- configPath?: string;
181
- }>;
206
+ declare function uninstallWorkflows(installDir: string, options?: {
207
+ preserveBinary?: boolean;
208
+ }): Promise<UninstallResult>;
182
209
 
183
210
  /**
184
211
  * Migration utilities for v1.4.0
@@ -225,5 +252,5 @@ declare function checkForUpdates(): Promise<{
225
252
  latestVersion: string | null;
226
253
  }>;
227
254
 
228
- export { changeLanguage, checkForUpdates, compareVersions, createDefaultConfig, createDefaultRouting, getCcgDir, getConfigPath, getCurrentVersion, getLatestVersion, getWorkflowById, getWorkflowConfigs, i18n, init, initI18n, installAceTool, installAceToolRs, installWorkflows, migrateToV1_4_0, needsMigration, readCcgConfig, showMainMenu, uninstallAceTool, uninstallWorkflows, update, writeCcgConfig };
229
- export type { AceToolConfig, CcgConfig, CliOptions, CollaborationMode, InitOptions, InstallResult, ModelRouting, ModelType, RoutingStrategy, SupportedLang, WorkflowConfig };
255
+ export { changeLanguage, checkForUpdates, compareVersions, createDefaultConfig, createDefaultRouting, getCcgDir, getConfigPath, getCurrentVersion, getLatestVersion, getWorkflowById, getWorkflowConfigs, i18n, init, initI18n, installAceTool, installAceToolRs, installCodexMode, installWorkflows, migrateToV1_4_0, needsMigration, readCcgConfig, showMainMenu, uninstallAceTool, uninstallCodexMode, uninstallWorkflows, update, writeCcgConfig };
256
+ export type { AceToolConfig, CcgConfig, CliOptions, CollaborationMode, FastContextConfig, InitOptions, InstallResult, ModelRouting, ModelType, RoutingStrategy, SupportedLang, WorkflowConfig };
package/dist/index.mjs CHANGED
@@ -1,12 +1,12 @@
1
- export { c as changeLanguage, a as checkForUpdates, b as compareVersions, d as createDefaultConfig, e as createDefaultRouting, g as getCcgDir, f as getConfigPath, h as getCurrentVersion, i as getLatestVersion, j as getWorkflowById, k as getWorkflowConfigs, l as i18n, m as init, n as initI18n, o as installAceTool, p as installAceToolRs, q as installWorkflows, r as migrateToV1_4_0, s as needsMigration, t as readCcgConfig, u as showMainMenu, v as uninstallAceTool, w as uninstallWorkflows, x as update, y as writeCcgConfig } from './shared/ccg-ros2-workflow.DRytDWqb.mjs';
1
+ export { c as changeLanguage, a as checkForUpdates, b as compareVersions, e as createDefaultConfig, f as createDefaultRouting, i as getCcgDir, j as getConfigPath, k as getCurrentVersion, l as getLatestVersion, m as getWorkflowById, n as getWorkflowConfigs, o as i18n, p as init, q as initI18n, r as installAceTool, s as installAceToolRs, t as installCodexMode, u as installWorkflows, w as migrateToV1_4_0, x as needsMigration, y as readCcgConfig, A as showMainMenu, B as uninstallAceTool, C as uninstallCodexMode, D as uninstallWorkflows, E as update, G as writeCcgConfig } from './shared/ccg-ros2-workflow.Bhm8c7P1.mjs';
2
2
  import 'ansis';
3
3
  import 'inquirer';
4
+ import 'ora';
4
5
  import 'node:child_process';
5
6
  import 'node:util';
6
7
  import 'node:os';
8
+ import 'node:url';
7
9
  import 'pathe';
8
10
  import 'fs-extra';
9
- import 'node:url';
10
- import 'i18next';
11
- import 'ora';
12
11
  import 'smol-toml';
12
+ import 'i18next';