@codemieai/code 0.0.2 → 0.0.3

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 (243) hide show
  1. package/CLAUDE.md +130 -760
  2. package/README.md +283 -695
  3. package/bin/codemie-claude.js +122 -0
  4. package/bin/codemie-code.js +90 -15
  5. package/bin/codemie-codex.js +138 -0
  6. package/bin/codemie.js +1 -1
  7. package/config.example.json +10 -0
  8. package/dist/agents/adapters/claude-code.d.ts +2 -2
  9. package/dist/agents/adapters/claude-code.d.ts.map +1 -1
  10. package/dist/agents/adapters/claude-code.js +20 -42
  11. package/dist/agents/adapters/claude-code.js.map +1 -1
  12. package/dist/agents/adapters/codemie-code.d.ts +11 -2
  13. package/dist/agents/adapters/codemie-code.d.ts.map +1 -1
  14. package/dist/agents/adapters/codemie-code.js +93 -25
  15. package/dist/agents/adapters/codemie-code.js.map +1 -1
  16. package/dist/agents/adapters/codex.d.ts +2 -2
  17. package/dist/agents/adapters/codex.d.ts.map +1 -1
  18. package/dist/agents/adapters/codex.js +31 -24
  19. package/dist/agents/adapters/codex.js.map +1 -1
  20. package/dist/agents/codemie-code/agent.d.ts +89 -0
  21. package/dist/agents/codemie-code/agent.d.ts.map +1 -0
  22. package/dist/agents/codemie-code/agent.js +523 -0
  23. package/dist/agents/codemie-code/agent.js.map +1 -0
  24. package/dist/agents/codemie-code/config.d.ts +40 -0
  25. package/dist/agents/codemie-code/config.d.ts.map +1 -0
  26. package/dist/agents/codemie-code/config.js +276 -0
  27. package/dist/agents/codemie-code/config.js.map +1 -0
  28. package/dist/agents/codemie-code/filters.d.ts +91 -0
  29. package/dist/agents/codemie-code/filters.d.ts.map +1 -0
  30. package/dist/agents/codemie-code/filters.js +328 -0
  31. package/dist/agents/codemie-code/filters.js.map +1 -0
  32. package/dist/agents/codemie-code/index.d.ts +78 -0
  33. package/dist/agents/codemie-code/index.d.ts.map +1 -0
  34. package/dist/agents/codemie-code/index.js +259 -0
  35. package/dist/agents/codemie-code/index.js.map +1 -0
  36. package/dist/agents/codemie-code/prompts.d.ts +11 -0
  37. package/dist/agents/codemie-code/prompts.d.ts.map +1 -0
  38. package/dist/agents/codemie-code/prompts.js +31 -0
  39. package/dist/agents/codemie-code/prompts.js.map +1 -0
  40. package/dist/agents/codemie-code/streaming/events.d.ts +7 -0
  41. package/dist/agents/codemie-code/streaming/events.d.ts.map +1 -0
  42. package/dist/agents/codemie-code/streaming/events.js +7 -0
  43. package/dist/agents/codemie-code/streaming/events.js.map +1 -0
  44. package/dist/agents/codemie-code/streaming/formatter.d.ts +2 -0
  45. package/dist/agents/codemie-code/streaming/formatter.d.ts.map +1 -0
  46. package/dist/agents/codemie-code/streaming/formatter.js +2 -0
  47. package/dist/agents/codemie-code/streaming/formatter.js.map +1 -0
  48. package/dist/agents/codemie-code/streaming/ui.d.ts +2 -0
  49. package/dist/agents/codemie-code/streaming/ui.d.ts.map +1 -0
  50. package/dist/agents/codemie-code/streaming/ui.js +2 -0
  51. package/dist/agents/codemie-code/streaming/ui.js.map +1 -0
  52. package/dist/agents/codemie-code/tokenUtils.d.ts +108 -0
  53. package/dist/agents/codemie-code/tokenUtils.d.ts.map +1 -0
  54. package/dist/agents/codemie-code/tokenUtils.js +220 -0
  55. package/dist/agents/codemie-code/tokenUtils.js.map +1 -0
  56. package/dist/agents/codemie-code/toolMetadata.d.ts +15 -0
  57. package/dist/agents/codemie-code/toolMetadata.d.ts.map +1 -0
  58. package/dist/agents/codemie-code/toolMetadata.js +315 -0
  59. package/dist/agents/codemie-code/toolMetadata.js.map +1 -0
  60. package/dist/agents/codemie-code/tools/command.d.ts +2 -0
  61. package/dist/agents/codemie-code/tools/command.d.ts.map +1 -0
  62. package/dist/agents/codemie-code/tools/command.js +2 -0
  63. package/dist/agents/codemie-code/tools/command.js.map +1 -0
  64. package/dist/agents/codemie-code/tools/filesystem.d.ts +2 -0
  65. package/dist/agents/codemie-code/tools/filesystem.d.ts.map +1 -0
  66. package/dist/agents/codemie-code/tools/filesystem.js +2 -0
  67. package/dist/agents/codemie-code/tools/filesystem.js.map +1 -0
  68. package/dist/agents/codemie-code/tools/git.d.ts +2 -0
  69. package/dist/agents/codemie-code/tools/git.d.ts.map +1 -0
  70. package/dist/agents/codemie-code/tools/git.js +2 -0
  71. package/dist/agents/codemie-code/tools/git.js.map +1 -0
  72. package/dist/agents/codemie-code/tools/index.d.ts +19 -0
  73. package/dist/agents/codemie-code/tools/index.d.ts.map +1 -0
  74. package/dist/agents/codemie-code/tools/index.js +239 -0
  75. package/dist/agents/codemie-code/tools/index.js.map +1 -0
  76. package/dist/agents/codemie-code/tools/security.d.ts +2 -0
  77. package/dist/agents/codemie-code/tools/security.d.ts.map +1 -0
  78. package/dist/agents/codemie-code/tools/security.js +2 -0
  79. package/dist/agents/codemie-code/tools/security.js.map +1 -0
  80. package/dist/agents/codemie-code/types.d.ts +254 -0
  81. package/dist/agents/codemie-code/types.d.ts.map +1 -0
  82. package/dist/agents/codemie-code/types.js +35 -0
  83. package/dist/agents/codemie-code/types.js.map +1 -0
  84. package/dist/agents/codemie-code/ui.d.ts +83 -0
  85. package/dist/agents/codemie-code/ui.d.ts.map +1 -0
  86. package/dist/agents/codemie-code/ui.js +624 -0
  87. package/dist/agents/codemie-code/ui.js.map +1 -0
  88. package/dist/agents/registry.d.ts +1 -1
  89. package/dist/agents/registry.d.ts.map +1 -1
  90. package/dist/agents/registry.js +7 -13
  91. package/dist/agents/registry.js.map +1 -1
  92. package/dist/cli/commands/config.d.ts +3 -0
  93. package/dist/cli/commands/config.d.ts.map +1 -0
  94. package/dist/cli/commands/config.js +323 -0
  95. package/dist/cli/commands/config.js.map +1 -0
  96. package/dist/cli/commands/doctor.d.ts.map +1 -1
  97. package/dist/cli/commands/doctor.js +113 -69
  98. package/dist/cli/commands/doctor.js.map +1 -1
  99. package/dist/cli/commands/env.d.ts +3 -0
  100. package/dist/cli/commands/env.d.ts.map +1 -0
  101. package/dist/cli/commands/env.js +19 -0
  102. package/dist/cli/commands/env.js.map +1 -0
  103. package/dist/cli/commands/install.js +27 -33
  104. package/dist/cli/commands/install.js.map +1 -1
  105. package/dist/cli/commands/list.js +18 -24
  106. package/dist/cli/commands/list.js.map +1 -1
  107. package/dist/cli/commands/run.d.ts.map +1 -1
  108. package/dist/cli/commands/run.js +291 -31
  109. package/dist/cli/commands/run.js.map +1 -1
  110. package/dist/cli/commands/setup.d.ts +3 -0
  111. package/dist/cli/commands/setup.d.ts.map +1 -0
  112. package/dist/cli/commands/setup.js +357 -0
  113. package/dist/cli/commands/setup.js.map +1 -0
  114. package/dist/cli/commands/uninstall.js +24 -30
  115. package/dist/cli/commands/uninstall.js.map +1 -1
  116. package/dist/cli/commands/version.d.ts.map +1 -1
  117. package/dist/cli/commands/version.js +11 -16
  118. package/dist/cli/commands/version.js.map +1 -1
  119. package/dist/cli/index.js +47 -31
  120. package/dist/cli/index.js.map +1 -1
  121. package/dist/env/manager.js +9 -46
  122. package/dist/env/manager.js.map +1 -1
  123. package/dist/index.d.ts +6 -13
  124. package/dist/index.d.ts.map +1 -1
  125. package/dist/index.js +6 -43
  126. package/dist/index.js.map +1 -1
  127. package/dist/utils/async-tips.d.ts.map +1 -1
  128. package/dist/utils/async-tips.js +16 -55
  129. package/dist/utils/async-tips.js.map +1 -1
  130. package/dist/utils/clipboard.d.ts +16 -0
  131. package/dist/utils/clipboard.d.ts.map +1 -0
  132. package/dist/utils/clipboard.js +179 -0
  133. package/dist/utils/clipboard.js.map +1 -0
  134. package/dist/utils/config-loader.d.ts +96 -0
  135. package/dist/utils/config-loader.d.ts.map +1 -0
  136. package/dist/utils/config-loader.js +351 -0
  137. package/dist/utils/config-loader.js.map +1 -0
  138. package/dist/utils/dirname.d.ts +7 -0
  139. package/dist/utils/dirname.d.ts.map +1 -0
  140. package/dist/utils/dirname.js +11 -0
  141. package/dist/utils/dirname.js.map +1 -0
  142. package/dist/utils/errors.js +7 -17
  143. package/dist/utils/errors.js.map +1 -1
  144. package/dist/utils/exec.js +3 -6
  145. package/dist/utils/exec.js.map +1 -1
  146. package/dist/utils/first-time.d.ts +34 -0
  147. package/dist/utils/first-time.d.ts.map +1 -0
  148. package/dist/utils/first-time.js +245 -0
  149. package/dist/utils/first-time.js.map +1 -0
  150. package/dist/utils/health-checker.d.ts +20 -0
  151. package/dist/utils/health-checker.d.ts.map +1 -0
  152. package/dist/utils/health-checker.js +168 -0
  153. package/dist/utils/health-checker.js.map +1 -0
  154. package/dist/utils/logger.js +12 -18
  155. package/dist/utils/logger.js.map +1 -1
  156. package/dist/utils/model-fetcher.d.ts +21 -0
  157. package/dist/utils/model-fetcher.d.ts.map +1 -0
  158. package/dist/utils/model-fetcher.js +137 -0
  159. package/dist/utils/model-fetcher.js.map +1 -0
  160. package/dist/utils/tips.d.ts.map +1 -1
  161. package/dist/utils/tips.js +13 -52
  162. package/dist/utils/tips.js.map +1 -1
  163. package/package.json +17 -23
  164. package/scripts/README.md +80 -0
  165. package/scripts/release.sh +156 -0
  166. package/dist/agents/adapters/aider.d.ts +0 -12
  167. package/dist/agents/adapters/aider.d.ts.map +0 -1
  168. package/dist/agents/adapters/aider.js +0 -80
  169. package/dist/agents/adapters/aider.js.map +0 -1
  170. package/dist/cli/cli.d.ts +0 -4
  171. package/dist/cli/cli.d.ts.map +0 -1
  172. package/dist/cli/cli.js +0 -107
  173. package/dist/cli/cli.js.map +0 -1
  174. package/dist/cli/commands/mcp.d.ts +0 -3
  175. package/dist/cli/commands/mcp.d.ts.map +0 -1
  176. package/dist/cli/commands/mcp.js +0 -459
  177. package/dist/cli/commands/mcp.js.map +0 -1
  178. package/dist/code/agent-events.d.ts +0 -39
  179. package/dist/code/agent-events.d.ts.map +0 -1
  180. package/dist/code/agent-events.js +0 -4
  181. package/dist/code/agent-events.js.map +0 -1
  182. package/dist/code/agent.d.ts +0 -19
  183. package/dist/code/agent.d.ts.map +0 -1
  184. package/dist/code/agent.js +0 -144
  185. package/dist/code/agent.js.map +0 -1
  186. package/dist/code/config.d.ts +0 -13
  187. package/dist/code/config.d.ts.map +0 -1
  188. package/dist/code/config.js +0 -41
  189. package/dist/code/config.js.map +0 -1
  190. package/dist/code/index.d.ts +0 -19
  191. package/dist/code/index.d.ts.map +0 -1
  192. package/dist/code/index.js +0 -400
  193. package/dist/code/index.js.map +0 -1
  194. package/dist/code/prompts.d.ts +0 -2
  195. package/dist/code/prompts.d.ts.map +0 -1
  196. package/dist/code/prompts.js +0 -45
  197. package/dist/code/prompts.js.map +0 -1
  198. package/dist/code/tools/command.d.ts +0 -8
  199. package/dist/code/tools/command.d.ts.map +0 -1
  200. package/dist/code/tools/command.js +0 -83
  201. package/dist/code/tools/command.js.map +0 -1
  202. package/dist/code/tools/diff-utils.d.ts +0 -2
  203. package/dist/code/tools/diff-utils.d.ts.map +0 -1
  204. package/dist/code/tools/diff-utils.js +0 -45
  205. package/dist/code/tools/diff-utils.js.map +0 -1
  206. package/dist/code/tools/filesystem.d.ts +0 -11
  207. package/dist/code/tools/filesystem.d.ts.map +0 -1
  208. package/dist/code/tools/filesystem.js +0 -442
  209. package/dist/code/tools/filesystem.js.map +0 -1
  210. package/dist/code/tools/git.d.ts +0 -7
  211. package/dist/code/tools/git.d.ts.map +0 -1
  212. package/dist/code/tools/git.js +0 -111
  213. package/dist/code/tools/git.js.map +0 -1
  214. package/dist/code/tools/mcp.d.ts +0 -13
  215. package/dist/code/tools/mcp.d.ts.map +0 -1
  216. package/dist/code/tools/mcp.js +0 -230
  217. package/dist/code/tools/mcp.js.map +0 -1
  218. package/dist/data/tips.json +0 -118
  219. package/dist/ui/terminal-ui.d.ts +0 -73
  220. package/dist/ui/terminal-ui.d.ts.map +0 -1
  221. package/dist/ui/terminal-ui.js +0 -900
  222. package/dist/ui/terminal-ui.js.map +0 -1
  223. package/dist/utils/env-mapper.d.ts +0 -40
  224. package/dist/utils/env-mapper.d.ts.map +0 -1
  225. package/dist/utils/env-mapper.js +0 -122
  226. package/dist/utils/env-mapper.js.map +0 -1
  227. package/docs/USER_GUIDE.md +0 -573
  228. package/tests/agent-direct.test.mjs +0 -45
  229. package/tests/agent-output.test.mjs +0 -64
  230. package/tests/codemie-code.test.mjs +0 -42
  231. package/tests/context7-only.test.mjs +0 -42
  232. package/tests/conversation-flow.test.mjs +0 -63
  233. package/tests/interactive-simulation.test.mjs +0 -60
  234. package/tests/live-output.test.mjs +0 -53
  235. package/tests/mcp-context7.test.mjs +0 -105
  236. package/tests/mcp-e2e.test.mjs +0 -109
  237. package/tests/mcp-time-server.test.mjs +0 -58
  238. package/tests/streaming.test.mjs +0 -57
  239. package/tests/test-helpers.mjs +0 -94
  240. package/tests/text-wrapping.test.mjs +0 -33
  241. package/tests/tool-count.test.mjs +0 -81
  242. package/tests/ui-format.test.mjs +0 -39
  243. package/tests/ui-state.test.mjs +0 -72
@@ -1,42 +1,110 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CodeMieCodeAdapter = void 0;
4
- const code_1 = require("../../code");
5
- const logger_1 = require("../../utils/logger");
6
- const fs_1 = require("fs");
7
- const path_1 = require("path");
8
- class CodeMieCodeAdapter {
1
+ import { logger } from '../../utils/logger.js';
2
+ import { CodeMieCode } from '../codemie-code/index.js';
3
+ import { loadCodeMieConfig } from '../codemie-code/config.js';
4
+ import { join } from 'path';
5
+ import { readFileSync } from 'fs';
6
+ import { getDirname } from '../../utils/dirname.js';
7
+ export class CodeMieCodeAdapter {
9
8
  name = 'codemie-code';
10
- displayName = 'CodeMie Code';
11
- description = 'Built-in AI coding assistant powered by LiteLLM';
9
+ displayName = 'CodeMie Native';
10
+ description = 'CodeMie Native Agent - Built-in LangGraph-based coding assistant';
12
11
  async install() {
13
- logger_1.logger.info('CodeMie Code is built-in and already available');
12
+ logger.info('CodeMie Native is built-in and already available');
13
+ // No installation needed - it's built into this package
14
14
  }
15
15
  async uninstall() {
16
- logger_1.logger.warn('CodeMie Code is built-in and cannot be uninstalled');
16
+ logger.info('CodeMie Native is built-in and cannot be uninstalled');
17
+ // Cannot uninstall built-in agent
17
18
  }
18
19
  async isInstalled() {
19
- return true; // Always installed (built-in)
20
+ // Always installed since it's built-in
21
+ return true;
20
22
  }
21
- async run(args) {
22
- const workingDir = args[0] || process.cwd();
23
- const assistant = new code_1.CodeMieCode(workingDir);
24
- await assistant.initialize();
25
- await assistant.startInteractive();
26
- await assistant.dispose();
23
+ async run(args, envOverrides) {
24
+ logger.info('Starting CodeMie Native Agent...');
25
+ try {
26
+ // Check if we have a valid configuration first
27
+ const workingDir = process.cwd();
28
+ try {
29
+ await loadCodeMieConfig(workingDir);
30
+ }
31
+ catch {
32
+ throw new Error('CodeMie configuration required. Please run: codemie setup');
33
+ }
34
+ // Determine the mode based on arguments
35
+ if (args.length === 0) {
36
+ // Interactive mode
37
+ await this.runInteractive(workingDir, envOverrides);
38
+ }
39
+ else if (args[0] === '--task' && args[1]) {
40
+ // Single task execution
41
+ const task = args.slice(1).join(' ');
42
+ await this.runTask(workingDir, task, envOverrides);
43
+ }
44
+ else {
45
+ // Default to interactive with arguments as initial message
46
+ const initialMessage = args.join(' ');
47
+ await this.runInteractive(workingDir, envOverrides, initialMessage);
48
+ }
49
+ }
50
+ catch (error) {
51
+ const errorMessage = error instanceof Error ? error.message : String(error);
52
+ throw new Error(`Failed to run CodeMie Native: ${errorMessage}`);
53
+ }
54
+ }
55
+ async runInteractive(workingDir, envOverrides, initialMessage) {
56
+ // Set environment variables if provided
57
+ if (envOverrides) {
58
+ Object.assign(process.env, envOverrides);
59
+ }
60
+ const codeMie = new CodeMieCode(workingDir);
61
+ await codeMie.initialize();
62
+ if (initialMessage) {
63
+ // Execute initial message then continue interactively
64
+ console.log(`> ${initialMessage}`);
65
+ await codeMie.executeTask(initialMessage);
66
+ console.log(''); // Add spacing
67
+ }
68
+ // Start interactive session
69
+ await codeMie.startInteractive();
70
+ }
71
+ async runTask(workingDir, task, envOverrides) {
72
+ // Set environment variables if provided
73
+ if (envOverrides) {
74
+ Object.assign(process.env, envOverrides);
75
+ }
76
+ const codeMie = new CodeMieCode(workingDir);
77
+ await codeMie.initialize();
78
+ // Execute single task with modern UI and exit
79
+ const result = await codeMie.executeTaskWithUI(task);
80
+ console.log(result);
27
81
  }
28
82
  async getVersion() {
29
- // Read from package.json
30
83
  try {
31
- const packageJsonPath = (0, path_1.join)(__dirname, '../../../package.json');
32
- const packageJsonContent = (0, fs_1.readFileSync)(packageJsonPath, 'utf-8');
84
+ // Read version from package.json
85
+ const packageJsonPath = join(getDirname(import.meta.url), '../../../package.json');
86
+ const packageJsonContent = readFileSync(packageJsonPath, 'utf-8');
33
87
  const packageJson = JSON.parse(packageJsonContent);
34
- return packageJson.version;
88
+ return `v${packageJson.version} (built-in)`;
35
89
  }
36
90
  catch {
37
- return null;
91
+ return 'unknown (built-in)';
92
+ }
93
+ }
94
+ /**
95
+ * Test connection and configuration without starting interactive mode
96
+ */
97
+ async testConnection() {
98
+ try {
99
+ const result = await CodeMieCode.testConnection(process.cwd());
100
+ return result;
101
+ }
102
+ catch (error) {
103
+ return {
104
+ success: false,
105
+ error: error instanceof Error ? error.message : String(error)
106
+ };
38
107
  }
39
108
  }
40
109
  }
41
- exports.CodeMieCodeAdapter = CodeMieCodeAdapter;
42
110
  //# sourceMappingURL=codemie-code.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codemie-code.js","sourceRoot":"","sources":["../../../src/agents/adapters/codemie-code.ts"],"names":[],"mappings":";;;AACA,qCAAyC;AACzC,+CAA4C;AAC5C,2BAAkC;AAClC,+BAA4B;AAE5B,MAAa,kBAAkB;IAC7B,IAAI,GAAG,cAAc,CAAC;IACtB,WAAW,GAAG,cAAc,CAAC;IAC7B,WAAW,GAAG,iDAAiD,CAAC;IAEhE,KAAK,CAAC,OAAO;QACX,eAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,SAAS;QACb,eAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,WAAW;QACf,OAAO,IAAI,CAAC,CAAC,8BAA8B;IAC7C,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAc;QACtB,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAE5C,MAAM,SAAS,GAAG,IAAI,kBAAW,CAAC,UAAU,CAAC,CAAC;QAC9C,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;QAC7B,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;QACnC,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,UAAU;QACd,yBAAyB;QACzB,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,IAAA,WAAI,EAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;YACjE,MAAM,kBAAkB,GAAG,IAAA,iBAAY,EAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAClE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAwB,CAAC;YAC1E,OAAO,WAAW,CAAC,OAAO,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CACF;AArCD,gDAqCC"}
1
+ {"version":3,"file":"codemie-code.js","sourceRoot":"","sources":["../../../src/agents/adapters/codemie-code.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AgentAdapter } from '../registry';
1
+ import { AgentAdapter } from '../registry.js';
2
2
  export declare class CodexAdapter implements AgentAdapter {
3
3
  name: string;
4
4
  displayName: string;
@@ -6,7 +6,7 @@ export declare class CodexAdapter implements AgentAdapter {
6
6
  install(): Promise<void>;
7
7
  uninstall(): Promise<void>;
8
8
  isInstalled(): Promise<boolean>;
9
- run(args: string[]): Promise<void>;
9
+ run(args: string[], envOverrides?: Record<string, string>): Promise<void>;
10
10
  getVersion(): Promise<string | null>;
11
11
  }
12
12
  //# sourceMappingURL=codex.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../src/agents/adapters/codex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAK3C,qBAAa,YAAa,YAAW,YAAY;IAC/C,IAAI,SAAW;IACf,WAAW,SAAW;IACtB,WAAW,SAAwC;IAE7C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAYxB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAW1B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAS/B,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BlC,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAQ3C"}
1
+ {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../src/agents/adapters/codex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAK9C,qBAAa,YAAa,YAAW,YAAY;IAC/C,IAAI,SAAW;IACf,WAAW,SAAW;IACtB,WAAW,SAAwC;IAE7C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAYxB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAW1B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAS/B,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA8CzE,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAQ3C"}
@@ -1,19 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CodexAdapter = void 0;
4
- const exec_1 = require("../../utils/exec");
5
- const logger_1 = require("../../utils/logger");
6
- const child_process_1 = require("child_process");
7
- class CodexAdapter {
1
+ import { exec } from '../../utils/exec.js';
2
+ import { logger } from '../../utils/logger.js';
3
+ import { spawn } from 'child_process';
4
+ export class CodexAdapter {
8
5
  name = 'codex';
9
6
  displayName = 'Codex';
10
7
  description = 'OpenAI Codex - AI coding assistant';
11
8
  async install() {
12
- logger_1.logger.info('Installing Codex...');
9
+ logger.info('Installing Codex...');
13
10
  try {
14
- // Install via pip
15
- await (0, exec_1.exec)('pip', ['install', 'openai-codex'], { timeout: 120000 });
16
- logger_1.logger.success('Codex installed successfully');
11
+ // Install via npm
12
+ await exec('npm', ['install', '-g', '@openai/codex'], { timeout: 120000 });
13
+ logger.success('Codex installed successfully');
17
14
  }
18
15
  catch (error) {
19
16
  const errorMessage = error instanceof Error ? error.message : String(error);
@@ -21,10 +18,10 @@ class CodexAdapter {
21
18
  }
22
19
  }
23
20
  async uninstall() {
24
- logger_1.logger.info('Uninstalling Codex...');
21
+ logger.info('Uninstalling Codex...');
25
22
  try {
26
- await (0, exec_1.exec)('pip', ['uninstall', '-y', 'openai-codex']);
27
- logger_1.logger.success('Codex uninstalled successfully');
23
+ await exec('npm', ['uninstall', '-g', '@openai/codex']);
24
+ logger.success('Codex uninstalled successfully');
28
25
  }
29
26
  catch (error) {
30
27
  const errorMessage = error instanceof Error ? error.message : String(error);
@@ -33,22 +30,33 @@ class CodexAdapter {
33
30
  }
34
31
  async isInstalled() {
35
32
  try {
36
- const result = await (0, exec_1.exec)('which', ['codex']);
33
+ const result = await exec('which', ['codex']);
37
34
  return result.code === 0;
38
35
  }
39
36
  catch {
40
37
  return false;
41
38
  }
42
39
  }
43
- async run(args) {
44
- logger_1.logger.info('Starting Codex...');
45
- // Set model from environment if configured
46
- const env = { ...process.env };
47
- if (process.env.CODEX_MODEL) {
48
- env.CODEX_MODEL = process.env.CODEX_MODEL;
40
+ async run(args, envOverrides) {
41
+ logger.info('Starting Codex...');
42
+ // Merge environment variables: process.env < envOverrides
43
+ const env = {
44
+ ...process.env,
45
+ ...envOverrides
46
+ };
47
+ // Build Codex arguments with model if specified
48
+ const codexArgs = [...args];
49
+ // Check if model is already specified in args
50
+ const hasModelArg = args.some((arg, idx) => (arg === '-m' || arg === '--model') && idx < args.length - 1);
51
+ // If model not in args but available in env, add it
52
+ if (!hasModelArg && (envOverrides?.CODEMIE_MODEL || envOverrides?.OPENAI_MODEL)) {
53
+ const model = envOverrides?.CODEMIE_MODEL || envOverrides?.OPENAI_MODEL;
54
+ if (model) {
55
+ codexArgs.unshift('--model', model);
56
+ }
49
57
  }
50
58
  // Spawn Codex
51
- const child = (0, child_process_1.spawn)('codex', args, {
59
+ const child = spawn('codex', codexArgs, {
52
60
  stdio: 'inherit',
53
61
  env
54
62
  });
@@ -68,7 +76,7 @@ class CodexAdapter {
68
76
  }
69
77
  async getVersion() {
70
78
  try {
71
- const result = await (0, exec_1.exec)('codex', ['--version']);
79
+ const result = await exec('codex', ['--version']);
72
80
  return result.stdout.trim();
73
81
  }
74
82
  catch {
@@ -76,5 +84,4 @@ class CodexAdapter {
76
84
  }
77
85
  }
78
86
  }
79
- exports.CodexAdapter = CodexAdapter;
80
87
  //# sourceMappingURL=codex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/agents/adapters/codex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/agents/adapters/codex.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * CodeMie Native Agent Implementation
3
+ *
4
+ * Core LangGraph ReAct agent using LangChain v1.0+ with streaming support
5
+ */
6
+ import type { StructuredTool } from '@langchain/core/tools';
7
+ import type { BaseMessage } from '@langchain/core/messages';
8
+ import type { CodeMieConfig, EventCallback, AgentStats } from './types.js';
9
+ import type { ClipboardImage } from '../../utils/clipboard.js';
10
+ export declare class CodeMieAgent {
11
+ private agent;
12
+ private config;
13
+ private tools;
14
+ private conversationHistory;
15
+ private toolCallArgs;
16
+ private currentExecutionSteps;
17
+ private currentStepNumber;
18
+ private currentLLMTokenUsage;
19
+ private isFirstLLMCall;
20
+ private stats;
21
+ constructor(config: CodeMieConfig, tools: StructuredTool[]);
22
+ /**
23
+ * Create the appropriate LLM instance based on provider configuration
24
+ */
25
+ private createLLM;
26
+ /**
27
+ * Create a HumanMessage with optional image support (multiple images)
28
+ */
29
+ private createHumanMessage;
30
+ /**
31
+ * Stream a chat interaction with the agent
32
+ */
33
+ chatStream(message: string, onEvent: EventCallback, images?: ClipboardImage[]): Promise<void>;
34
+ /**
35
+ * Process individual stream chunks from LangGraph
36
+ */
37
+ private processStreamChunk;
38
+ /**
39
+ * Execute a single message without streaming (for non-interactive use)
40
+ */
41
+ executeMessage(message: string): Promise<string>;
42
+ /**
43
+ * Clear conversation history
44
+ */
45
+ clearHistory(): void;
46
+ /**
47
+ * Get current conversation history
48
+ */
49
+ getHistory(): BaseMessage[];
50
+ /**
51
+ * Get agent runtime statistics
52
+ */
53
+ getStats(): AgentStats;
54
+ /**
55
+ * Get available tools
56
+ */
57
+ getTools(): StructuredTool[];
58
+ /**
59
+ * Get agent configuration
60
+ */
61
+ getConfig(): CodeMieConfig;
62
+ /**
63
+ * Health check for the agent
64
+ */
65
+ healthCheck(): Promise<{
66
+ status: 'healthy' | 'unhealthy';
67
+ provider: string;
68
+ model: string;
69
+ toolCount: number;
70
+ error?: string;
71
+ }>;
72
+ /**
73
+ * Start a new LLM call step
74
+ */
75
+ private startLLMStep;
76
+ /**
77
+ * Start a new tool execution step
78
+ */
79
+ private startToolStep;
80
+ /**
81
+ * Complete an execution step
82
+ */
83
+ private completeStep;
84
+ /**
85
+ * Update aggregate statistics with token usage
86
+ */
87
+ private updateStatsWithTokenUsage;
88
+ }
89
+ //# sourceMappingURL=agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/agents/codemie-code/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAA6B,MAAM,YAAY,CAAC;AACtG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAM/D,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,mBAAmB,CAAqB;IAChD,OAAO,CAAC,YAAY,CAA+C;IACnE,OAAO,CAAC,qBAAqB,CAAuB;IACpD,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,oBAAoB,CAA2B;IACvD,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,KAAK,CAYX;gBAEU,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE;IAmB1D;;OAEG;IACH,OAAO,CAAC,SAAS;IAqEjB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA2B1B;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,GAAE,cAAc,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA0KvG;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA4F1B;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BtD;;OAEG;IACH,YAAY,IAAI,IAAI;IA4BpB;;OAEG;IACH,UAAU,IAAI,WAAW,EAAE;IAI3B;;OAEG;IACH,QAAQ,IAAI,UAAU;IAItB;;OAEG;IACH,QAAQ,IAAI,cAAc,EAAE;IAI5B;;OAEG;IACH,SAAS,IAAI,aAAa;IAQ1B;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC;QAC3B,MAAM,EAAE,SAAS,GAAG,WAAW,CAAC;QAChC,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAsBF;;OAEG;IACH,OAAO,CAAC,YAAY;IA8BpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAiBrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,OAAO,CAAC,yBAAyB;CAclC"}