claude-code-workflow 6.2.9 → 6.3.1

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 (205) hide show
  1. package/.claude/CLAUDE.md +17 -2
  2. package/.claude/commands/workflow/lite-plan.md +7 -4
  3. package/.claude/workflows/cli-templates/protocols/analysis-protocol.md +11 -4
  4. package/.claude/workflows/cli-templates/protocols/write-protocol.md +10 -75
  5. package/.claude/workflows/cli-tools-usage.md +14 -24
  6. package/.claude/workflows/context-tools-ace.md +105 -0
  7. package/.codex/AGENTS.md +51 -1
  8. package/.codex/prompts/compact.md +378 -0
  9. package/.gemini/GEMINI.md +57 -20
  10. package/ccw/dist/cli.d.ts.map +1 -1
  11. package/ccw/dist/cli.js +3 -1
  12. package/ccw/dist/cli.js.map +1 -1
  13. package/ccw/dist/commands/cli.d.ts +2 -0
  14. package/ccw/dist/commands/cli.d.ts.map +1 -1
  15. package/ccw/dist/commands/cli.js +129 -8
  16. package/ccw/dist/commands/cli.js.map +1 -1
  17. package/ccw/dist/commands/hook.d.ts.map +1 -1
  18. package/ccw/dist/commands/hook.js +3 -2
  19. package/ccw/dist/commands/hook.js.map +1 -1
  20. package/ccw/dist/config/litellm-api-config-manager.d.ts +180 -0
  21. package/ccw/dist/config/litellm-api-config-manager.d.ts.map +1 -0
  22. package/ccw/dist/config/litellm-api-config-manager.js +770 -0
  23. package/ccw/dist/config/litellm-api-config-manager.js.map +1 -0
  24. package/ccw/dist/config/provider-models.d.ts +73 -0
  25. package/ccw/dist/config/provider-models.d.ts.map +1 -0
  26. package/ccw/dist/config/provider-models.js +172 -0
  27. package/ccw/dist/config/provider-models.js.map +1 -0
  28. package/ccw/dist/core/cache-manager.d.ts.map +1 -1
  29. package/ccw/dist/core/cache-manager.js +3 -5
  30. package/ccw/dist/core/cache-manager.js.map +1 -1
  31. package/ccw/dist/core/dashboard-generator.d.ts.map +1 -1
  32. package/ccw/dist/core/dashboard-generator.js +3 -1
  33. package/ccw/dist/core/dashboard-generator.js.map +1 -1
  34. package/ccw/dist/core/routes/cli-routes.d.ts.map +1 -1
  35. package/ccw/dist/core/routes/cli-routes.js +208 -0
  36. package/ccw/dist/core/routes/cli-routes.js.map +1 -1
  37. package/ccw/dist/core/routes/codexlens-routes.d.ts.map +1 -1
  38. package/ccw/dist/core/routes/codexlens-routes.js +234 -18
  39. package/ccw/dist/core/routes/codexlens-routes.js.map +1 -1
  40. package/ccw/dist/core/routes/hooks-routes.d.ts.map +1 -1
  41. package/ccw/dist/core/routes/hooks-routes.js +30 -32
  42. package/ccw/dist/core/routes/hooks-routes.js.map +1 -1
  43. package/ccw/dist/core/routes/litellm-api-routes.d.ts +21 -0
  44. package/ccw/dist/core/routes/litellm-api-routes.d.ts.map +1 -0
  45. package/ccw/dist/core/routes/litellm-api-routes.js +780 -0
  46. package/ccw/dist/core/routes/litellm-api-routes.js.map +1 -0
  47. package/ccw/dist/core/routes/litellm-routes.d.ts +20 -0
  48. package/ccw/dist/core/routes/litellm-routes.d.ts.map +1 -0
  49. package/ccw/dist/core/routes/litellm-routes.js +85 -0
  50. package/ccw/dist/core/routes/litellm-routes.js.map +1 -0
  51. package/ccw/dist/core/routes/mcp-routes.js +2 -2
  52. package/ccw/dist/core/routes/mcp-routes.js.map +1 -1
  53. package/ccw/dist/core/routes/status-routes.d.ts.map +1 -1
  54. package/ccw/dist/core/routes/status-routes.js +39 -0
  55. package/ccw/dist/core/routes/status-routes.js.map +1 -1
  56. package/ccw/dist/core/server.d.ts.map +1 -1
  57. package/ccw/dist/core/server.js +15 -1
  58. package/ccw/dist/core/server.js.map +1 -1
  59. package/ccw/dist/mcp-server/index.js +1 -1
  60. package/ccw/dist/mcp-server/index.js.map +1 -1
  61. package/ccw/dist/tools/claude-cli-tools.d.ts +97 -0
  62. package/ccw/dist/tools/claude-cli-tools.d.ts.map +1 -0
  63. package/ccw/dist/tools/claude-cli-tools.js +276 -0
  64. package/ccw/dist/tools/claude-cli-tools.js.map +1 -0
  65. package/ccw/dist/tools/cli-executor.d.ts.map +1 -1
  66. package/ccw/dist/tools/cli-executor.js +80 -20
  67. package/ccw/dist/tools/cli-executor.js.map +1 -1
  68. package/ccw/dist/tools/codex-lens.d.ts +9 -2
  69. package/ccw/dist/tools/codex-lens.d.ts.map +1 -1
  70. package/ccw/dist/tools/codex-lens.js +114 -9
  71. package/ccw/dist/tools/codex-lens.js.map +1 -1
  72. package/ccw/dist/tools/context-cache-store.d.ts +136 -0
  73. package/ccw/dist/tools/context-cache-store.d.ts.map +1 -0
  74. package/ccw/dist/tools/context-cache-store.js +256 -0
  75. package/ccw/dist/tools/context-cache-store.js.map +1 -0
  76. package/ccw/dist/tools/context-cache.d.ts +56 -0
  77. package/ccw/dist/tools/context-cache.d.ts.map +1 -0
  78. package/ccw/dist/tools/context-cache.js +294 -0
  79. package/ccw/dist/tools/context-cache.js.map +1 -0
  80. package/ccw/dist/tools/core-memory.d.ts.map +1 -1
  81. package/ccw/dist/tools/core-memory.js +33 -19
  82. package/ccw/dist/tools/core-memory.js.map +1 -1
  83. package/ccw/dist/tools/index.d.ts.map +1 -1
  84. package/ccw/dist/tools/index.js +2 -0
  85. package/ccw/dist/tools/index.js.map +1 -1
  86. package/ccw/dist/tools/litellm-client.d.ts +85 -0
  87. package/ccw/dist/tools/litellm-client.d.ts.map +1 -0
  88. package/ccw/dist/tools/litellm-client.js +188 -0
  89. package/ccw/dist/tools/litellm-client.js.map +1 -0
  90. package/ccw/dist/tools/litellm-executor.d.ts +34 -0
  91. package/ccw/dist/tools/litellm-executor.d.ts.map +1 -0
  92. package/ccw/dist/tools/litellm-executor.js +192 -0
  93. package/ccw/dist/tools/litellm-executor.js.map +1 -0
  94. package/ccw/dist/tools/pattern-parser.d.ts +55 -0
  95. package/ccw/dist/tools/pattern-parser.d.ts.map +1 -0
  96. package/ccw/dist/tools/pattern-parser.js +237 -0
  97. package/ccw/dist/tools/pattern-parser.js.map +1 -0
  98. package/ccw/dist/tools/smart-search.d.ts +1 -0
  99. package/ccw/dist/tools/smart-search.d.ts.map +1 -1
  100. package/ccw/dist/tools/smart-search.js +117 -41
  101. package/ccw/dist/tools/smart-search.js.map +1 -1
  102. package/ccw/dist/types/litellm-api-config.d.ts +294 -0
  103. package/ccw/dist/types/litellm-api-config.d.ts.map +1 -0
  104. package/ccw/dist/types/litellm-api-config.js +8 -0
  105. package/ccw/dist/types/litellm-api-config.js.map +1 -0
  106. package/ccw/src/cli.ts +3 -1
  107. package/ccw/src/commands/cli.ts +153 -9
  108. package/ccw/src/commands/hook.ts +3 -2
  109. package/ccw/src/config/.litellm-api-config-manager.ts.2025-12-23T11-57-43-727Z.bak +441 -0
  110. package/ccw/src/config/litellm-api-config-manager.ts +1012 -0
  111. package/ccw/src/config/provider-models.ts +222 -0
  112. package/ccw/src/core/cache-manager.ts +292 -294
  113. package/ccw/src/core/dashboard-generator.ts +3 -1
  114. package/ccw/src/core/routes/cli-routes.ts +234 -0
  115. package/ccw/src/core/routes/codexlens-routes.ts +241 -19
  116. package/ccw/src/core/routes/hooks-routes.ts +399 -405
  117. package/ccw/src/core/routes/litellm-api-routes.ts +930 -0
  118. package/ccw/src/core/routes/litellm-routes.ts +107 -0
  119. package/ccw/src/core/routes/mcp-routes.ts +1271 -1271
  120. package/ccw/src/core/routes/status-routes.ts +51 -0
  121. package/ccw/src/core/server.ts +15 -1
  122. package/ccw/src/mcp-server/index.ts +1 -1
  123. package/ccw/src/templates/dashboard-css/12-cli-legacy.css +44 -0
  124. package/ccw/src/templates/dashboard-css/18-cli-settings.css +34 -0
  125. package/ccw/src/templates/dashboard-css/31-api-settings.css +2265 -0
  126. package/ccw/src/templates/dashboard-js/components/cli-history.js +15 -8
  127. package/ccw/src/templates/dashboard-js/components/cli-status.js +376 -9
  128. package/ccw/src/templates/dashboard-js/components/navigation.js +329 -313
  129. package/ccw/src/templates/dashboard-js/i18n.js +589 -3
  130. package/ccw/src/templates/dashboard-js/views/api-settings.js +3362 -0
  131. package/ccw/src/templates/dashboard-js/views/cli-manager.js +212 -24
  132. package/ccw/src/templates/dashboard-js/views/codexlens-manager.js +1265 -27
  133. package/ccw/src/templates/dashboard.html +840 -831
  134. package/ccw/src/tools/claude-cli-tools.ts +371 -0
  135. package/ccw/src/tools/cli-executor.ts +87 -20
  136. package/ccw/src/tools/codex-lens.ts +146 -9
  137. package/ccw/src/tools/context-cache-store.ts +368 -0
  138. package/ccw/src/tools/context-cache.ts +393 -0
  139. package/ccw/src/tools/core-memory.ts +33 -19
  140. package/ccw/src/tools/index.ts +2 -0
  141. package/ccw/src/tools/litellm-client.ts +246 -0
  142. package/ccw/src/tools/litellm-executor.ts +241 -0
  143. package/ccw/src/tools/pattern-parser.ts +329 -0
  144. package/ccw/src/tools/smart-search.ts +142 -41
  145. package/ccw/src/types/litellm-api-config.ts +402 -0
  146. package/ccw-litellm/README.md +180 -0
  147. package/ccw-litellm/pyproject.toml +35 -0
  148. package/ccw-litellm/src/ccw_litellm/__init__.py +47 -0
  149. package/ccw-litellm/src/ccw_litellm/__pycache__/__init__.cpython-313.pyc +0 -0
  150. package/ccw-litellm/src/ccw_litellm/__pycache__/cli.cpython-313.pyc +0 -0
  151. package/ccw-litellm/src/ccw_litellm/cli.py +108 -0
  152. package/ccw-litellm/src/ccw_litellm/clients/__init__.py +12 -0
  153. package/ccw-litellm/src/ccw_litellm/clients/__pycache__/__init__.cpython-313.pyc +0 -0
  154. package/ccw-litellm/src/ccw_litellm/clients/__pycache__/litellm_embedder.cpython-313.pyc +0 -0
  155. package/ccw-litellm/src/ccw_litellm/clients/__pycache__/litellm_llm.cpython-313.pyc +0 -0
  156. package/ccw-litellm/src/ccw_litellm/clients/litellm_embedder.py +251 -0
  157. package/ccw-litellm/src/ccw_litellm/clients/litellm_llm.py +165 -0
  158. package/ccw-litellm/src/ccw_litellm/config/__init__.py +22 -0
  159. package/ccw-litellm/src/ccw_litellm/config/__pycache__/__init__.cpython-313.pyc +0 -0
  160. package/ccw-litellm/src/ccw_litellm/config/__pycache__/loader.cpython-313.pyc +0 -0
  161. package/ccw-litellm/src/ccw_litellm/config/__pycache__/models.cpython-313.pyc +0 -0
  162. package/ccw-litellm/src/ccw_litellm/config/loader.py +316 -0
  163. package/ccw-litellm/src/ccw_litellm/config/models.py +130 -0
  164. package/ccw-litellm/src/ccw_litellm/interfaces/__init__.py +14 -0
  165. package/ccw-litellm/src/ccw_litellm/interfaces/__pycache__/__init__.cpython-313.pyc +0 -0
  166. package/ccw-litellm/src/ccw_litellm/interfaces/__pycache__/embedder.cpython-313.pyc +0 -0
  167. package/ccw-litellm/src/ccw_litellm/interfaces/__pycache__/llm.cpython-313.pyc +0 -0
  168. package/ccw-litellm/src/ccw_litellm/interfaces/embedder.py +52 -0
  169. package/ccw-litellm/src/ccw_litellm/interfaces/llm.py +45 -0
  170. package/codex-lens/src/codexlens/__pycache__/config.cpython-313.pyc +0 -0
  171. package/codex-lens/src/codexlens/cli/__pycache__/commands.cpython-313.pyc +0 -0
  172. package/codex-lens/src/codexlens/cli/__pycache__/embedding_manager.cpython-313.pyc +0 -0
  173. package/codex-lens/src/codexlens/cli/__pycache__/model_manager.cpython-313.pyc +0 -0
  174. package/codex-lens/src/codexlens/cli/__pycache__/output.cpython-313.pyc +0 -0
  175. package/codex-lens/src/codexlens/cli/commands.py +360 -22
  176. package/codex-lens/src/codexlens/cli/embedding_manager.py +660 -56
  177. package/codex-lens/src/codexlens/cli/model_manager.py +31 -18
  178. package/codex-lens/src/codexlens/cli/output.py +12 -1
  179. package/codex-lens/src/codexlens/config.py +93 -0
  180. package/codex-lens/src/codexlens/search/__pycache__/chain_search.cpython-313.pyc +0 -0
  181. package/codex-lens/src/codexlens/search/__pycache__/hybrid_search.cpython-313.pyc +0 -0
  182. package/codex-lens/src/codexlens/search/__pycache__/ranking.cpython-313.pyc +0 -0
  183. package/codex-lens/src/codexlens/search/chain_search.py +6 -2
  184. package/codex-lens/src/codexlens/search/hybrid_search.py +44 -21
  185. package/codex-lens/src/codexlens/search/ranking.py +1 -1
  186. package/codex-lens/src/codexlens/semantic/__init__.py +42 -0
  187. package/codex-lens/src/codexlens/semantic/__pycache__/__init__.cpython-313.pyc +0 -0
  188. package/codex-lens/src/codexlens/semantic/__pycache__/base.cpython-313.pyc +0 -0
  189. package/codex-lens/src/codexlens/semantic/__pycache__/chunker.cpython-313.pyc +0 -0
  190. package/codex-lens/src/codexlens/semantic/__pycache__/embedder.cpython-313.pyc +0 -0
  191. package/codex-lens/src/codexlens/semantic/__pycache__/factory.cpython-313.pyc +0 -0
  192. package/codex-lens/src/codexlens/semantic/__pycache__/gpu_support.cpython-313.pyc +0 -0
  193. package/codex-lens/src/codexlens/semantic/__pycache__/litellm_embedder.cpython-313.pyc +0 -0
  194. package/codex-lens/src/codexlens/semantic/__pycache__/vector_store.cpython-313.pyc +0 -0
  195. package/codex-lens/src/codexlens/semantic/base.py +61 -0
  196. package/codex-lens/src/codexlens/semantic/chunker.py +43 -20
  197. package/codex-lens/src/codexlens/semantic/embedder.py +60 -13
  198. package/codex-lens/src/codexlens/semantic/factory.py +98 -0
  199. package/codex-lens/src/codexlens/semantic/gpu_support.py +225 -3
  200. package/codex-lens/src/codexlens/semantic/litellm_embedder.py +144 -0
  201. package/codex-lens/src/codexlens/semantic/rotational_embedder.py +434 -0
  202. package/codex-lens/src/codexlens/semantic/vector_store.py +33 -8
  203. package/codex-lens/src/codexlens/storage/migrations/__pycache__/migration_004_dual_fts.cpython-313.pyc +0 -0
  204. package/package.json +3 -1
  205. package/.codex/prompts.zip +0 -0
@@ -0,0 +1,97 @@
1
+ export interface ClaudeCliTool {
2
+ enabled: boolean;
3
+ isBuiltin: boolean;
4
+ command: string;
5
+ description: string;
6
+ }
7
+ export interface ClaudeCacheSettings {
8
+ injectionMode: 'auto' | 'manual' | 'disabled';
9
+ defaultPrefix: string;
10
+ defaultSuffix: string;
11
+ }
12
+ export interface ClaudeCliToolsConfig {
13
+ $schema?: string;
14
+ version: string;
15
+ tools: Record<string, ClaudeCliTool>;
16
+ customEndpoints: Array<{
17
+ id: string;
18
+ name: string;
19
+ enabled: boolean;
20
+ }>;
21
+ defaultTool: string;
22
+ settings: {
23
+ promptFormat: 'plain' | 'yaml' | 'json';
24
+ smartContext: {
25
+ enabled: boolean;
26
+ maxFiles: number;
27
+ };
28
+ nativeResume: boolean;
29
+ recursiveQuery: boolean;
30
+ cache: ClaudeCacheSettings;
31
+ codeIndexMcp: 'codexlens' | 'ace';
32
+ };
33
+ }
34
+ /**
35
+ * Load CLI tools configuration with fallback:
36
+ * 1. Project: {projectDir}/.claude/cli-tools.json
37
+ * 2. Global: ~/.claude/cli-tools.json
38
+ * 3. Default config
39
+ */
40
+ export declare function loadClaudeCliTools(projectDir: string): ClaudeCliToolsConfig & {
41
+ _source?: string;
42
+ };
43
+ /**
44
+ * Save CLI tools configuration to project .claude/cli-tools.json
45
+ * Always saves to project directory (not global)
46
+ */
47
+ export declare function saveClaudeCliTools(projectDir: string, config: ClaudeCliToolsConfig & {
48
+ _source?: string;
49
+ }): void;
50
+ /**
51
+ * Update enabled status for a specific tool
52
+ */
53
+ export declare function updateClaudeToolEnabled(projectDir: string, toolName: string, enabled: boolean): ClaudeCliToolsConfig;
54
+ /**
55
+ * Update cache settings
56
+ */
57
+ export declare function updateClaudeCacheSettings(projectDir: string, cacheSettings: Partial<ClaudeCacheSettings>): ClaudeCliToolsConfig;
58
+ /**
59
+ * Update default tool
60
+ */
61
+ export declare function updateClaudeDefaultTool(projectDir: string, defaultTool: string): ClaudeCliToolsConfig;
62
+ /**
63
+ * Add custom endpoint
64
+ */
65
+ export declare function addClaudeCustomEndpoint(projectDir: string, endpoint: {
66
+ id: string;
67
+ name: string;
68
+ enabled: boolean;
69
+ }): ClaudeCliToolsConfig;
70
+ /**
71
+ * Remove custom endpoint
72
+ */
73
+ export declare function removeClaudeCustomEndpoint(projectDir: string, endpointId: string): ClaudeCliToolsConfig;
74
+ /**
75
+ * Get config source info
76
+ */
77
+ export declare function getClaudeCliToolsInfo(projectDir: string): {
78
+ projectPath: string;
79
+ globalPath: string;
80
+ activePath: string;
81
+ source: 'project' | 'global' | 'default';
82
+ };
83
+ /**
84
+ * Update Code Index MCP provider and switch CLAUDE.md reference
85
+ * Strategy: Only modify global user-level CLAUDE.md (~/.claude/CLAUDE.md)
86
+ * This is consistent with Chinese response and Windows platform settings
87
+ */
88
+ export declare function updateCodeIndexMcp(projectDir: string, provider: 'codexlens' | 'ace'): {
89
+ success: boolean;
90
+ error?: string;
91
+ config?: ClaudeCliToolsConfig;
92
+ };
93
+ /**
94
+ * Get current Code Index MCP provider
95
+ */
96
+ export declare function getCodeIndexMcp(projectDir: string): 'codexlens' | 'ace';
97
+ //# sourceMappingURL=claude-cli-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-cli-tools.d.ts","sourceRoot":"","sources":["../../src/tools/claude-cli-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,276 @@
1
+ /**
2
+ * Claude CLI Tools Configuration Manager
3
+ * Manages .claude/cli-tools.json with fallback:
4
+ * 1. Project workspace: {projectDir}/.claude/cli-tools.json (priority)
5
+ * 2. Global: ~/.claude/cli-tools.json (fallback)
6
+ */
7
+ import * as fs from 'fs';
8
+ import * as path from 'path';
9
+ import * as os from 'os';
10
+ // ========== Default Config ==========
11
+ const DEFAULT_CONFIG = {
12
+ version: '1.0.0',
13
+ tools: {
14
+ gemini: {
15
+ enabled: true,
16
+ isBuiltin: true,
17
+ command: 'gemini',
18
+ description: 'Google AI for code analysis'
19
+ },
20
+ qwen: {
21
+ enabled: true,
22
+ isBuiltin: true,
23
+ command: 'qwen',
24
+ description: 'Alibaba AI assistant'
25
+ },
26
+ codex: {
27
+ enabled: true,
28
+ isBuiltin: true,
29
+ command: 'codex',
30
+ description: 'OpenAI code generation'
31
+ },
32
+ claude: {
33
+ enabled: true,
34
+ isBuiltin: true,
35
+ command: 'claude',
36
+ description: 'Anthropic AI assistant'
37
+ }
38
+ },
39
+ customEndpoints: [],
40
+ defaultTool: 'gemini',
41
+ settings: {
42
+ promptFormat: 'plain',
43
+ smartContext: {
44
+ enabled: false,
45
+ maxFiles: 10
46
+ },
47
+ nativeResume: true,
48
+ recursiveQuery: true,
49
+ cache: {
50
+ injectionMode: 'auto',
51
+ defaultPrefix: '',
52
+ defaultSuffix: ''
53
+ },
54
+ codeIndexMcp: 'codexlens' // Default to CodexLens
55
+ }
56
+ };
57
+ // ========== Helper Functions ==========
58
+ function getProjectConfigPath(projectDir) {
59
+ return path.join(projectDir, '.claude', 'cli-tools.json');
60
+ }
61
+ function getGlobalConfigPath() {
62
+ return path.join(os.homedir(), '.claude', 'cli-tools.json');
63
+ }
64
+ /**
65
+ * Resolve config path with fallback:
66
+ * 1. Project: {projectDir}/.claude/cli-tools.json
67
+ * 2. Global: ~/.claude/cli-tools.json
68
+ * Returns { path, source } where source is 'project' | 'global' | 'default'
69
+ */
70
+ function resolveConfigPath(projectDir) {
71
+ const projectPath = getProjectConfigPath(projectDir);
72
+ if (fs.existsSync(projectPath)) {
73
+ return { path: projectPath, source: 'project' };
74
+ }
75
+ const globalPath = getGlobalConfigPath();
76
+ if (fs.existsSync(globalPath)) {
77
+ return { path: globalPath, source: 'global' };
78
+ }
79
+ return { path: projectPath, source: 'default' };
80
+ }
81
+ function ensureClaudeDir(projectDir) {
82
+ const claudeDir = path.join(projectDir, '.claude');
83
+ if (!fs.existsSync(claudeDir)) {
84
+ fs.mkdirSync(claudeDir, { recursive: true });
85
+ }
86
+ }
87
+ // ========== Main Functions ==========
88
+ /**
89
+ * Load CLI tools configuration with fallback:
90
+ * 1. Project: {projectDir}/.claude/cli-tools.json
91
+ * 2. Global: ~/.claude/cli-tools.json
92
+ * 3. Default config
93
+ */
94
+ export function loadClaudeCliTools(projectDir) {
95
+ const resolved = resolveConfigPath(projectDir);
96
+ try {
97
+ if (resolved.source === 'default') {
98
+ // No config file found, return defaults
99
+ return { ...DEFAULT_CONFIG, _source: 'default' };
100
+ }
101
+ const content = fs.readFileSync(resolved.path, 'utf-8');
102
+ const parsed = JSON.parse(content);
103
+ // Merge with defaults
104
+ const config = {
105
+ ...DEFAULT_CONFIG,
106
+ ...parsed,
107
+ tools: { ...DEFAULT_CONFIG.tools, ...(parsed.tools || {}) },
108
+ settings: {
109
+ ...DEFAULT_CONFIG.settings,
110
+ ...(parsed.settings || {}),
111
+ smartContext: {
112
+ ...DEFAULT_CONFIG.settings.smartContext,
113
+ ...(parsed.settings?.smartContext || {})
114
+ },
115
+ cache: {
116
+ ...DEFAULT_CONFIG.settings.cache,
117
+ ...(parsed.settings?.cache || {})
118
+ }
119
+ },
120
+ _source: resolved.source
121
+ };
122
+ console.log(`[claude-cli-tools] Loaded config from ${resolved.source}: ${resolved.path}`);
123
+ return config;
124
+ }
125
+ catch (err) {
126
+ console.error('[claude-cli-tools] Error loading config:', err);
127
+ return { ...DEFAULT_CONFIG, _source: 'default' };
128
+ }
129
+ }
130
+ /**
131
+ * Save CLI tools configuration to project .claude/cli-tools.json
132
+ * Always saves to project directory (not global)
133
+ */
134
+ export function saveClaudeCliTools(projectDir, config) {
135
+ ensureClaudeDir(projectDir);
136
+ const configPath = getProjectConfigPath(projectDir);
137
+ // Remove internal _source field before saving
138
+ const { _source, ...configToSave } = config;
139
+ try {
140
+ fs.writeFileSync(configPath, JSON.stringify(configToSave, null, 2), 'utf-8');
141
+ console.log(`[claude-cli-tools] Saved config to project: ${configPath}`);
142
+ }
143
+ catch (err) {
144
+ console.error('[claude-cli-tools] Error saving config:', err);
145
+ throw new Error(`Failed to save CLI tools config: ${err}`);
146
+ }
147
+ }
148
+ /**
149
+ * Update enabled status for a specific tool
150
+ */
151
+ export function updateClaudeToolEnabled(projectDir, toolName, enabled) {
152
+ const config = loadClaudeCliTools(projectDir);
153
+ if (config.tools[toolName]) {
154
+ config.tools[toolName].enabled = enabled;
155
+ saveClaudeCliTools(projectDir, config);
156
+ }
157
+ return config;
158
+ }
159
+ /**
160
+ * Update cache settings
161
+ */
162
+ export function updateClaudeCacheSettings(projectDir, cacheSettings) {
163
+ const config = loadClaudeCliTools(projectDir);
164
+ config.settings.cache = {
165
+ ...config.settings.cache,
166
+ ...cacheSettings
167
+ };
168
+ saveClaudeCliTools(projectDir, config);
169
+ return config;
170
+ }
171
+ /**
172
+ * Update default tool
173
+ */
174
+ export function updateClaudeDefaultTool(projectDir, defaultTool) {
175
+ const config = loadClaudeCliTools(projectDir);
176
+ config.defaultTool = defaultTool;
177
+ saveClaudeCliTools(projectDir, config);
178
+ return config;
179
+ }
180
+ /**
181
+ * Add custom endpoint
182
+ */
183
+ export function addClaudeCustomEndpoint(projectDir, endpoint) {
184
+ const config = loadClaudeCliTools(projectDir);
185
+ // Check if endpoint already exists
186
+ const existingIndex = config.customEndpoints.findIndex(e => e.id === endpoint.id);
187
+ if (existingIndex >= 0) {
188
+ config.customEndpoints[existingIndex] = endpoint;
189
+ }
190
+ else {
191
+ config.customEndpoints.push(endpoint);
192
+ }
193
+ saveClaudeCliTools(projectDir, config);
194
+ return config;
195
+ }
196
+ /**
197
+ * Remove custom endpoint
198
+ */
199
+ export function removeClaudeCustomEndpoint(projectDir, endpointId) {
200
+ const config = loadClaudeCliTools(projectDir);
201
+ config.customEndpoints = config.customEndpoints.filter(e => e.id !== endpointId);
202
+ saveClaudeCliTools(projectDir, config);
203
+ return config;
204
+ }
205
+ /**
206
+ * Get config source info
207
+ */
208
+ export function getClaudeCliToolsInfo(projectDir) {
209
+ const resolved = resolveConfigPath(projectDir);
210
+ return {
211
+ projectPath: getProjectConfigPath(projectDir),
212
+ globalPath: getGlobalConfigPath(),
213
+ activePath: resolved.path,
214
+ source: resolved.source
215
+ };
216
+ }
217
+ /**
218
+ * Update Code Index MCP provider and switch CLAUDE.md reference
219
+ * Strategy: Only modify global user-level CLAUDE.md (~/.claude/CLAUDE.md)
220
+ * This is consistent with Chinese response and Windows platform settings
221
+ */
222
+ export function updateCodeIndexMcp(projectDir, provider) {
223
+ try {
224
+ // Update config
225
+ const config = loadClaudeCliTools(projectDir);
226
+ config.settings.codeIndexMcp = provider;
227
+ saveClaudeCliTools(projectDir, config);
228
+ // Only update global CLAUDE.md (consistent with Chinese response / Windows platform)
229
+ const globalClaudeMdPath = path.join(os.homedir(), '.claude', 'CLAUDE.md');
230
+ if (!fs.existsSync(globalClaudeMdPath)) {
231
+ // If global CLAUDE.md doesn't exist, check project-level
232
+ const projectClaudeMdPath = path.join(projectDir, '.claude', 'CLAUDE.md');
233
+ if (fs.existsSync(projectClaudeMdPath)) {
234
+ let content = fs.readFileSync(projectClaudeMdPath, 'utf-8');
235
+ // Define patterns for both formats
236
+ const codexlensPattern = /@~\/\.claude\/workflows\/context-tools\.md/g;
237
+ const acePattern = /@~\/\.claude\/workflows\/context-tools-ace\.md/g;
238
+ if (provider === 'ace') {
239
+ content = content.replace(codexlensPattern, '@~/.claude/workflows/context-tools-ace.md');
240
+ }
241
+ else {
242
+ content = content.replace(acePattern, '@~/.claude/workflows/context-tools.md');
243
+ }
244
+ fs.writeFileSync(projectClaudeMdPath, content, 'utf-8');
245
+ console.log(`[claude-cli-tools] Updated project CLAUDE.md to use ${provider} (no global CLAUDE.md found)`);
246
+ }
247
+ }
248
+ else {
249
+ // Update global CLAUDE.md (primary target)
250
+ let content = fs.readFileSync(globalClaudeMdPath, 'utf-8');
251
+ const codexlensPattern = /@~\/\.claude\/workflows\/context-tools\.md/g;
252
+ const acePattern = /@~\/\.claude\/workflows\/context-tools-ace\.md/g;
253
+ if (provider === 'ace') {
254
+ content = content.replace(codexlensPattern, '@~/.claude/workflows/context-tools-ace.md');
255
+ }
256
+ else {
257
+ content = content.replace(acePattern, '@~/.claude/workflows/context-tools.md');
258
+ }
259
+ fs.writeFileSync(globalClaudeMdPath, content, 'utf-8');
260
+ console.log(`[claude-cli-tools] Updated global CLAUDE.md to use ${provider}`);
261
+ }
262
+ return { success: true, config };
263
+ }
264
+ catch (err) {
265
+ console.error('[claude-cli-tools] Error updating Code Index MCP:', err);
266
+ return { success: false, error: err.message };
267
+ }
268
+ }
269
+ /**
270
+ * Get current Code Index MCP provider
271
+ */
272
+ export function getCodeIndexMcp(projectDir) {
273
+ const config = loadClaudeCliTools(projectDir);
274
+ return config.settings.codeIndexMcp || 'codexlens';
275
+ }
276
+ //# sourceMappingURL=claude-cli-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-cli-tools.js","sourceRoot":"","sources":["../../src/tools/claude-cli-tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli-executor.d.ts","sourceRoot":"","sources":["../../src/tools/cli-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-executor.d.ts","sourceRoot":"","sources":["../../src/tools/cli-executor.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,9 @@ import { z } from 'zod';
6
6
  import { spawn } from 'child_process';
7
7
  import { existsSync, readdirSync } from 'fs';
8
8
  import { join } from 'path';
9
+ // LiteLLM integration
10
+ import { executeLiteLLMEndpoint } from './litellm-executor.js';
11
+ import { findEndpointById } from '../config/litellm-api-config-manager.js';
9
12
  // Native resume support
10
13
  import { trackNewSession, supportsNativeResume } from './native-session-discovery.js';
11
14
  import { determineResumeStrategy, buildContextPrefix, getResumeModeDescription } from './resume-strategy.js';
@@ -40,7 +43,7 @@ const ParamsSchema = z.object({
40
43
  model: z.string().optional(),
41
44
  cd: z.string().optional(),
42
45
  includeDirs: z.string().optional(),
43
- timeout: z.number().default(300000),
46
+ timeout: z.number().default(0), // 0 = no internal timeout, controlled by external caller (e.g., bash timeout)
44
47
  resume: z.union([z.boolean(), z.string()]).optional(), // true = last, string = single ID or comma-separated IDs
45
48
  id: z.string().optional(), // Custom execution ID (e.g., IMPL-001-step1)
46
49
  noNative: z.boolean().optional(), // Force prompt concatenation instead of native resume
@@ -186,9 +189,8 @@ function buildCommand(params) {
186
189
  args.push(nativeResume.sessionId);
187
190
  }
188
191
  // Codex resume still supports additional flags
189
- if (dir) {
190
- args.push('-C', dir);
191
- }
192
+ // Note: -C is NOT used because spawn's cwd already sets the working directory
193
+ // Using both would cause path to be applied twice (e.g., codex-lens/codex-lens)
192
194
  // Permission configuration based on mode:
193
195
  // - analysis: --full-auto (read-only sandbox, no prompts) - safer for read operations
194
196
  // - write/auto: --dangerously-bypass-approvals-and-sandbox (full access for modifications)
@@ -213,9 +215,8 @@ function buildCommand(params) {
213
215
  else {
214
216
  // Standard exec mode
215
217
  args.push('exec');
216
- if (dir) {
217
- args.push('-C', dir);
218
- }
218
+ // Note: -C is NOT used because spawn's cwd already sets the working directory
219
+ // Using both would cause path to be applied twice (e.g., codex-lens/codex-lens)
219
220
  // Permission configuration based on mode:
220
221
  // - analysis: --full-auto (read-only sandbox, no prompts) - safer for read operations
221
222
  // - write/auto: --dangerously-bypass-approvals-and-sandbox (full access for modifications)
@@ -405,6 +406,60 @@ async function executeCliTool(params, onOutput) {
405
406
  // Determine working directory early (needed for conversation lookup)
406
407
  const workingDir = cd || process.cwd();
407
408
  ensureHistoryDir(workingDir); // Ensure history directory exists
409
+ // NEW: Check if model is a custom LiteLLM endpoint ID
410
+ if (model && !['gemini', 'qwen', 'codex'].includes(tool)) {
411
+ const endpoint = findEndpointById(workingDir, model);
412
+ if (endpoint) {
413
+ // Route to LiteLLM executor
414
+ if (onOutput) {
415
+ onOutput({ type: 'stderr', data: `[Routing to LiteLLM endpoint: ${model}]\n` });
416
+ }
417
+ const result = await executeLiteLLMEndpoint({
418
+ prompt,
419
+ endpointId: model,
420
+ baseDir: workingDir,
421
+ cwd: cd,
422
+ includeDirs: includeDirs ? includeDirs.split(',').map(d => d.trim()) : undefined,
423
+ enableCache: true,
424
+ onOutput: onOutput || undefined,
425
+ });
426
+ // Convert LiteLLM result to ExecutionOutput format
427
+ const startTime = Date.now();
428
+ const endTime = Date.now();
429
+ const duration = endTime - startTime;
430
+ const execution = {
431
+ id: customId || `${Date.now()}-litellm`,
432
+ timestamp: new Date(startTime).toISOString(),
433
+ tool: 'litellm',
434
+ model: result.model,
435
+ mode,
436
+ prompt,
437
+ status: result.success ? 'success' : 'error',
438
+ exit_code: result.success ? 0 : 1,
439
+ duration_ms: duration,
440
+ output: {
441
+ stdout: result.output,
442
+ stderr: result.error || '',
443
+ truncated: false,
444
+ },
445
+ };
446
+ const conversation = convertToConversation(execution);
447
+ // Try to save to history
448
+ try {
449
+ saveConversation(workingDir, conversation);
450
+ }
451
+ catch (err) {
452
+ console.error('[CLI Executor] Failed to save LiteLLM history:', err.message);
453
+ }
454
+ return {
455
+ success: result.success,
456
+ execution,
457
+ conversation,
458
+ stdout: result.output,
459
+ stderr: result.error || '',
460
+ };
461
+ }
462
+ }
408
463
  // Get SQLite store for native session lookup
409
464
  const store = await getSqliteStore(workingDir);
410
465
  // Determine conversation ID and load existing conversation
@@ -792,18 +847,23 @@ async function executeCliTool(params, onOutput) {
792
847
  child.on('error', (error) => {
793
848
  reject(new Error(`Failed to spawn ${tool}: ${error.message}`));
794
849
  });
795
- // Timeout handling
796
- const timeoutId = setTimeout(() => {
797
- timedOut = true;
798
- child.kill('SIGTERM');
799
- setTimeout(() => {
800
- if (!child.killed) {
801
- child.kill('SIGKILL');
802
- }
803
- }, 5000);
804
- }, timeout);
850
+ // Timeout handling (timeout=0 disables internal timeout, controlled by external caller)
851
+ let timeoutId = null;
852
+ if (timeout > 0) {
853
+ timeoutId = setTimeout(() => {
854
+ timedOut = true;
855
+ child.kill('SIGTERM');
856
+ setTimeout(() => {
857
+ if (!child.killed) {
858
+ child.kill('SIGKILL');
859
+ }
860
+ }, 5000);
861
+ }, timeout);
862
+ }
805
863
  child.on('close', () => {
806
- clearTimeout(timeoutId);
864
+ if (timeoutId) {
865
+ clearTimeout(timeoutId);
866
+ }
807
867
  });
808
868
  });
809
869
  }
@@ -847,8 +907,8 @@ Modes:
847
907
  },
848
908
  timeout: {
849
909
  type: 'number',
850
- description: 'Timeout in milliseconds (default: 300000 = 5 minutes)',
851
- default: 300000
910
+ description: 'Timeout in milliseconds (default: 0 = disabled, controlled by external caller)',
911
+ default: 0
852
912
  }
853
913
  },
854
914
  required: ['tool', 'prompt']