@codemieai/code 0.0.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 (159) hide show
  1. package/.claude/agents/README.md +298 -0
  2. package/.claude/agents/release-manager.md +857 -0
  3. package/CLAUDE.md +856 -0
  4. package/LICENSE +201 -0
  5. package/README.md +917 -0
  6. package/bin/codemie-code.js +23 -0
  7. package/bin/codemie.js +8 -0
  8. package/dist/agents/adapters/aider.d.ts +12 -0
  9. package/dist/agents/adapters/aider.d.ts.map +1 -0
  10. package/dist/agents/adapters/aider.js +80 -0
  11. package/dist/agents/adapters/aider.js.map +1 -0
  12. package/dist/agents/adapters/claude-code.d.ts +12 -0
  13. package/dist/agents/adapters/claude-code.d.ts.map +1 -0
  14. package/dist/agents/adapters/claude-code.js +98 -0
  15. package/dist/agents/adapters/claude-code.js.map +1 -0
  16. package/dist/agents/adapters/codemie-code.d.ts +12 -0
  17. package/dist/agents/adapters/codemie-code.d.ts.map +1 -0
  18. package/dist/agents/adapters/codemie-code.js +42 -0
  19. package/dist/agents/adapters/codemie-code.js.map +1 -0
  20. package/dist/agents/adapters/codex.d.ts +12 -0
  21. package/dist/agents/adapters/codex.d.ts.map +1 -0
  22. package/dist/agents/adapters/codex.js +80 -0
  23. package/dist/agents/adapters/codex.js.map +1 -0
  24. package/dist/agents/registry.d.ts +18 -0
  25. package/dist/agents/registry.d.ts.map +1 -0
  26. package/dist/agents/registry.js +35 -0
  27. package/dist/agents/registry.js.map +1 -0
  28. package/dist/cli/cli.d.ts +4 -0
  29. package/dist/cli/cli.d.ts.map +1 -0
  30. package/dist/cli/cli.js +107 -0
  31. package/dist/cli/cli.js.map +1 -0
  32. package/dist/cli/commands/doctor.d.ts +3 -0
  33. package/dist/cli/commands/doctor.d.ts.map +1 -0
  34. package/dist/cli/commands/doctor.js +128 -0
  35. package/dist/cli/commands/doctor.js.map +1 -0
  36. package/dist/cli/commands/install.d.ts +3 -0
  37. package/dist/cli/commands/install.d.ts.map +1 -0
  38. package/dist/cli/commands/install.js +76 -0
  39. package/dist/cli/commands/install.js.map +1 -0
  40. package/dist/cli/commands/list.d.ts +3 -0
  41. package/dist/cli/commands/list.d.ts.map +1 -0
  42. package/dist/cli/commands/list.js +50 -0
  43. package/dist/cli/commands/list.js.map +1 -0
  44. package/dist/cli/commands/mcp.d.ts +3 -0
  45. package/dist/cli/commands/mcp.d.ts.map +1 -0
  46. package/dist/cli/commands/mcp.js +459 -0
  47. package/dist/cli/commands/mcp.js.map +1 -0
  48. package/dist/cli/commands/run.d.ts +3 -0
  49. package/dist/cli/commands/run.d.ts.map +1 -0
  50. package/dist/cli/commands/run.js +41 -0
  51. package/dist/cli/commands/run.js.map +1 -0
  52. package/dist/cli/commands/uninstall.d.ts +3 -0
  53. package/dist/cli/commands/uninstall.d.ts.map +1 -0
  54. package/dist/cli/commands/uninstall.js +71 -0
  55. package/dist/cli/commands/uninstall.js.map +1 -0
  56. package/dist/cli/commands/version.d.ts +3 -0
  57. package/dist/cli/commands/version.d.ts.map +1 -0
  58. package/dist/cli/commands/version.js +28 -0
  59. package/dist/cli/commands/version.js.map +1 -0
  60. package/dist/cli/index.d.ts +3 -0
  61. package/dist/cli/index.d.ts.map +1 -0
  62. package/dist/cli/index.js +50 -0
  63. package/dist/cli/index.js.map +1 -0
  64. package/dist/code/agent-events.d.ts +39 -0
  65. package/dist/code/agent-events.d.ts.map +1 -0
  66. package/dist/code/agent-events.js +4 -0
  67. package/dist/code/agent-events.js.map +1 -0
  68. package/dist/code/agent.d.ts +19 -0
  69. package/dist/code/agent.d.ts.map +1 -0
  70. package/dist/code/agent.js +144 -0
  71. package/dist/code/agent.js.map +1 -0
  72. package/dist/code/config.d.ts +13 -0
  73. package/dist/code/config.d.ts.map +1 -0
  74. package/dist/code/config.js +41 -0
  75. package/dist/code/config.js.map +1 -0
  76. package/dist/code/index.d.ts +19 -0
  77. package/dist/code/index.d.ts.map +1 -0
  78. package/dist/code/index.js +400 -0
  79. package/dist/code/index.js.map +1 -0
  80. package/dist/code/prompts.d.ts +2 -0
  81. package/dist/code/prompts.d.ts.map +1 -0
  82. package/dist/code/prompts.js +45 -0
  83. package/dist/code/prompts.js.map +1 -0
  84. package/dist/code/tools/command.d.ts +8 -0
  85. package/dist/code/tools/command.d.ts.map +1 -0
  86. package/dist/code/tools/command.js +83 -0
  87. package/dist/code/tools/command.js.map +1 -0
  88. package/dist/code/tools/diff-utils.d.ts +2 -0
  89. package/dist/code/tools/diff-utils.d.ts.map +1 -0
  90. package/dist/code/tools/diff-utils.js +45 -0
  91. package/dist/code/tools/diff-utils.js.map +1 -0
  92. package/dist/code/tools/filesystem.d.ts +11 -0
  93. package/dist/code/tools/filesystem.d.ts.map +1 -0
  94. package/dist/code/tools/filesystem.js +442 -0
  95. package/dist/code/tools/filesystem.js.map +1 -0
  96. package/dist/code/tools/git.d.ts +7 -0
  97. package/dist/code/tools/git.d.ts.map +1 -0
  98. package/dist/code/tools/git.js +111 -0
  99. package/dist/code/tools/git.js.map +1 -0
  100. package/dist/code/tools/mcp.d.ts +13 -0
  101. package/dist/code/tools/mcp.d.ts.map +1 -0
  102. package/dist/code/tools/mcp.js +230 -0
  103. package/dist/code/tools/mcp.js.map +1 -0
  104. package/dist/data/tips.json +118 -0
  105. package/dist/env/manager.d.ts +14 -0
  106. package/dist/env/manager.d.ts.map +1 -0
  107. package/dist/env/manager.js +99 -0
  108. package/dist/env/manager.js.map +1 -0
  109. package/dist/index.d.ts +14 -0
  110. package/dist/index.d.ts.map +1 -0
  111. package/dist/index.js +47 -0
  112. package/dist/index.js.map +1 -0
  113. package/dist/ui/terminal-ui.d.ts +73 -0
  114. package/dist/ui/terminal-ui.d.ts.map +1 -0
  115. package/dist/ui/terminal-ui.js +900 -0
  116. package/dist/ui/terminal-ui.js.map +1 -0
  117. package/dist/utils/async-tips.d.ts +64 -0
  118. package/dist/utils/async-tips.d.ts.map +1 -0
  119. package/dist/utils/async-tips.js +242 -0
  120. package/dist/utils/async-tips.js.map +1 -0
  121. package/dist/utils/env-mapper.d.ts +40 -0
  122. package/dist/utils/env-mapper.d.ts.map +1 -0
  123. package/dist/utils/env-mapper.js +122 -0
  124. package/dist/utils/env-mapper.js.map +1 -0
  125. package/dist/utils/errors.d.ts +25 -0
  126. package/dist/utils/errors.d.ts.map +1 -0
  127. package/dist/utils/errors.js +58 -0
  128. package/dist/utils/errors.js.map +1 -0
  129. package/dist/utils/exec.d.ts +12 -0
  130. package/dist/utils/exec.d.ts.map +1 -0
  131. package/dist/utils/exec.js +49 -0
  132. package/dist/utils/exec.js.map +1 -0
  133. package/dist/utils/logger.d.ts +19 -0
  134. package/dist/utils/logger.d.ts.map +1 -0
  135. package/dist/utils/logger.js +53 -0
  136. package/dist/utils/logger.js.map +1 -0
  137. package/dist/utils/tips.d.ts +35 -0
  138. package/dist/utils/tips.d.ts.map +1 -0
  139. package/dist/utils/tips.js +132 -0
  140. package/dist/utils/tips.js.map +1 -0
  141. package/docs/USER_GUIDE.md +573 -0
  142. package/eslint.config.mjs +43 -0
  143. package/package.json +66 -0
  144. package/tests/agent-direct.test.mjs +45 -0
  145. package/tests/agent-output.test.mjs +64 -0
  146. package/tests/codemie-code.test.mjs +42 -0
  147. package/tests/context7-only.test.mjs +42 -0
  148. package/tests/conversation-flow.test.mjs +63 -0
  149. package/tests/interactive-simulation.test.mjs +60 -0
  150. package/tests/live-output.test.mjs +53 -0
  151. package/tests/mcp-context7.test.mjs +105 -0
  152. package/tests/mcp-e2e.test.mjs +109 -0
  153. package/tests/mcp-time-server.test.mjs +58 -0
  154. package/tests/streaming.test.mjs +57 -0
  155. package/tests/test-helpers.mjs +94 -0
  156. package/tests/text-wrapping.test.mjs +33 -0
  157. package/tests/tool-count.test.mjs +81 -0
  158. package/tests/ui-format.test.mjs +39 -0
  159. package/tests/ui-state.test.mjs +72 -0
@@ -0,0 +1,459 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.createMCPCommand = createMCPCommand;
40
+ const commander_1 = require("commander");
41
+ const fs = __importStar(require("fs/promises"));
42
+ const path = __importStar(require("path"));
43
+ const os = __importStar(require("os"));
44
+ const chalk_1 = __importDefault(require("chalk"));
45
+ const errors_js_1 = require("../../utils/errors.js");
46
+ function createMCPCommand() {
47
+ const mcp = new commander_1.Command('mcp');
48
+ mcp
49
+ .description('Manage MCP (Model Context Protocol) servers for CodeMie Code');
50
+ // List command
51
+ mcp
52
+ .command('list')
53
+ .description('List all available MCP servers')
54
+ .option('-v, --verbose', 'Show detailed configuration')
55
+ .action(async (options) => {
56
+ await listMCPServers(options.verbose);
57
+ });
58
+ // Add command
59
+ mcp
60
+ .command('add <name> <command-or-url>')
61
+ .description('Add a new MCP server configuration')
62
+ .option('-t, --transport <type>', 'Transport type (stdio, sse, streamable_http)', 'stdio')
63
+ .option('-a, --args <args...>', 'Command arguments (for stdio transport)')
64
+ .option('-e, --env <vars...>', 'Environment variables (KEY=VALUE format)')
65
+ .action(async (name, commandOrUrl, options) => {
66
+ await addMCPServer(name, commandOrUrl, options);
67
+ });
68
+ // Remove command
69
+ mcp
70
+ .command('remove <name>')
71
+ .alias('rm')
72
+ .description('Remove an MCP server configuration')
73
+ .action(async (name) => {
74
+ await removeMCPServer(name);
75
+ });
76
+ // Test command
77
+ mcp
78
+ .command('test <server>')
79
+ .description('Test if an MCP server configuration is valid')
80
+ .action(async (serverName) => {
81
+ await testMCPServer(serverName);
82
+ });
83
+ // Servers command
84
+ mcp
85
+ .command('servers')
86
+ .description('Show which MCP servers would be loaded')
87
+ .option('-s, --servers <names>', 'Comma-separated list of server names')
88
+ .action(async (options) => {
89
+ await showServersToLoad(options.servers);
90
+ });
91
+ return mcp;
92
+ }
93
+ async function loadMCPConfigs() {
94
+ const toolkit = await loadToolkitServers();
95
+ const global = await loadGlobalServers();
96
+ return { toolkit, global };
97
+ }
98
+ async function loadToolkitServers() {
99
+ const bundledPath = path.join(__dirname, '../../../mcp/servers.json');
100
+ try {
101
+ const content = await fs.readFile(bundledPath, 'utf-8');
102
+ return JSON.parse(content);
103
+ }
104
+ catch {
105
+ return null;
106
+ }
107
+ }
108
+ async function loadGlobalServers() {
109
+ const globalConfigPath = path.join(os.homedir(), '.codemie', 'config.json');
110
+ try {
111
+ const content = await fs.readFile(globalConfigPath, 'utf-8');
112
+ const config = JSON.parse(content);
113
+ if (config.mcpServers) {
114
+ return { mcpServers: config.mcpServers };
115
+ }
116
+ return null;
117
+ }
118
+ catch {
119
+ return null;
120
+ }
121
+ }
122
+ function getAllServers(toolkit, global) {
123
+ const allServers = {};
124
+ // Add toolkit servers first
125
+ if (toolkit?.mcpServers) {
126
+ Object.assign(allServers, toolkit.mcpServers);
127
+ }
128
+ // Global servers override toolkit servers
129
+ if (global?.mcpServers) {
130
+ Object.assign(allServers, global.mcpServers);
131
+ }
132
+ return allServers;
133
+ }
134
+ function formatCommand(config) {
135
+ if (config.command) {
136
+ const command = config.command;
137
+ const args = config.args || [];
138
+ if (args.length > 0) {
139
+ const argsStr = args.slice(0, 2).join(' ');
140
+ return args.length > 2 ? `${command} ${argsStr}...` : `${command} ${argsStr}`;
141
+ }
142
+ return command;
143
+ }
144
+ else if (config.url) {
145
+ return config.url;
146
+ }
147
+ return '-';
148
+ }
149
+ function getServerType(config) {
150
+ if (config.command) {
151
+ if (config.command === 'npx')
152
+ return 'Node.js';
153
+ if (config.command === 'uvx' || config.command === 'python')
154
+ return 'Python';
155
+ return 'External';
156
+ }
157
+ return 'HTTP';
158
+ }
159
+ async function listMCPServers(verbose) {
160
+ console.log(chalk_1.default.bold.cyan('\n═══════════════════════════════════════════════'));
161
+ console.log(chalk_1.default.bold.cyan(' Available MCP Servers for CodeMie Code'));
162
+ console.log(chalk_1.default.bold.cyan('═══════════════════════════════════════════════\n'));
163
+ const { toolkit, global } = await loadMCPConfigs();
164
+ const allServers = getAllServers(toolkit, global);
165
+ if (Object.keys(allServers).length === 0) {
166
+ console.log(chalk_1.default.yellow('No MCP servers found in any configuration.\n'));
167
+ console.log(chalk_1.default.dim('To add MCP servers, edit:'));
168
+ console.log(chalk_1.default.dim(` ${path.join(os.homedir(), '.codemie', 'config.json')}\n`));
169
+ console.log(chalk_1.default.dim('Example configuration:'));
170
+ console.log(chalk_1.default.dim(' "mcpServers": {'));
171
+ console.log(chalk_1.default.dim(' "my-server": {'));
172
+ console.log(chalk_1.default.dim(' "command": "npx",'));
173
+ console.log(chalk_1.default.dim(' "args": ["-y", "@my/mcp-server"]'));
174
+ console.log(chalk_1.default.dim(' }'));
175
+ console.log(chalk_1.default.dim(' }'));
176
+ return;
177
+ }
178
+ // Print table header
179
+ const nameWidth = 20;
180
+ const transportWidth = 12;
181
+ const commandWidth = 35;
182
+ const sourceWidth = 18;
183
+ console.log(chalk_1.default.cyan(padRight('Server Name', nameWidth)) +
184
+ chalk_1.default.green(padRight('Transport', transportWidth)) +
185
+ chalk_1.default.blue(padRight('Command/URL', commandWidth)) +
186
+ chalk_1.default.yellow(padRight('Source', sourceWidth)));
187
+ console.log(chalk_1.default.gray('─'.repeat(nameWidth + transportWidth + commandWidth + sourceWidth)));
188
+ // Get toolkit and global server names for source attribution
189
+ const toolkitServerNames = toolkit?.mcpServers ? Object.keys(toolkit.mcpServers) : [];
190
+ const globalServerNames = global?.mcpServers ? Object.keys(global.mcpServers) : [];
191
+ // Print servers
192
+ for (const [name, config] of Object.entries(allServers)) {
193
+ const transport = config.transport || 'stdio';
194
+ const command = formatCommand(config);
195
+ const source = globalServerNames.includes(name)
196
+ ? (toolkitServerNames.includes(name) ? 'Global (override)' : 'Global Config')
197
+ : 'Toolkit';
198
+ console.log(chalk_1.default.cyan(padRight(name, nameWidth)) +
199
+ chalk_1.default.green(padRight(transport, transportWidth)) +
200
+ chalk_1.default.blue(padRight(command, commandWidth)) +
201
+ chalk_1.default.yellow(padRight(source, sourceWidth)));
202
+ if (verbose && config.env && Object.keys(config.env).length > 0) {
203
+ const envVars = Object.keys(config.env).join(', ');
204
+ console.log(chalk_1.default.dim(` Environment: ${envVars}`));
205
+ }
206
+ }
207
+ console.log();
208
+ // Show config paths
209
+ console.log(chalk_1.default.cyan('Configuration Files:'));
210
+ const bundledPath = path.join(__dirname, '../../../mcp/servers.json');
211
+ if (toolkit) {
212
+ console.log(chalk_1.default.dim(` • Toolkit: ${bundledPath}`));
213
+ }
214
+ const globalPath = path.join(os.homedir(), '.codemie', 'config.json');
215
+ if (global) {
216
+ console.log(chalk_1.default.dim(` • Global: ${globalPath}`));
217
+ }
218
+ console.log();
219
+ console.log(chalk_1.default.dim('To use these servers with codemie-code:'));
220
+ console.log(chalk_1.default.dim(' • Auto-loaded: codemie-code'));
221
+ console.log(chalk_1.default.dim(' (all configured servers load automatically)'));
222
+ console.log();
223
+ console.log(chalk_1.default.dim(' • Specific servers: codemie-code --mcp-servers filesystem,cli-mcp-server'));
224
+ console.log(chalk_1.default.dim(' (load only specified servers)\n'));
225
+ }
226
+ async function testMCPServer(serverName) {
227
+ const { toolkit, global } = await loadMCPConfigs();
228
+ const allServers = getAllServers(toolkit, global);
229
+ if (!allServers[serverName]) {
230
+ console.log(chalk_1.default.red(`\n✗ Server '${serverName}' not found in configuration.\n`));
231
+ console.log(chalk_1.default.yellow('Available servers:'));
232
+ for (const name of Object.keys(allServers)) {
233
+ console.log(chalk_1.default.dim(` • ${name}`));
234
+ }
235
+ console.log();
236
+ console.log(chalk_1.default.dim('Use \'codemie-code mcp list\' to see all servers'));
237
+ return;
238
+ }
239
+ const config = allServers[serverName];
240
+ const source = global?.mcpServers?.[serverName] ? 'Global Config' : 'Toolkit Config';
241
+ console.log(chalk_1.default.bold.cyan(`\n╔═══════════════════════════════════════════════╗`));
242
+ console.log(chalk_1.default.bold.cyan(`║ MCP Server Test: ${padRight(serverName, 28)}║`));
243
+ console.log(chalk_1.default.bold.cyan(`╚═══════════════════════════════════════════════╝\n`));
244
+ console.log(chalk_1.default.green(`✓ Server '${serverName}' found in configuration`));
245
+ console.log(chalk_1.default.cyan('Source: ') + source);
246
+ console.log(chalk_1.default.cyan('Transport: ') + (config.transport || 'stdio'));
247
+ const transport = config.transport || 'stdio';
248
+ if (transport === 'stdio') {
249
+ if (config.command) {
250
+ console.log(chalk_1.default.cyan('Command: ') + config.command);
251
+ if (config.args && config.args.length > 0) {
252
+ console.log(chalk_1.default.cyan('Arguments: ') + config.args.join(' '));
253
+ }
254
+ }
255
+ else {
256
+ console.log(chalk_1.default.yellow('⚠ Missing \'command\' field for stdio transport'));
257
+ }
258
+ }
259
+ else if (transport === 'sse' || transport === 'streamable_http') {
260
+ if (config.url) {
261
+ console.log(chalk_1.default.cyan('URL: ') + config.url);
262
+ }
263
+ else {
264
+ console.log(chalk_1.default.yellow(`⚠ Missing 'url' field for ${transport} transport`));
265
+ }
266
+ }
267
+ if (config.env && Object.keys(config.env).length > 0) {
268
+ const envVars = Object.keys(config.env).join(', ');
269
+ console.log(chalk_1.default.cyan('Environment Variables: ') + envVars);
270
+ }
271
+ console.log();
272
+ console.log(chalk_1.default.dim('To use this server:'));
273
+ console.log(chalk_1.default.dim(` codemie-code --mcp-servers ${serverName}\n`));
274
+ }
275
+ async function showServersToLoad(serversParam) {
276
+ if (!serversParam) {
277
+ console.log(chalk_1.default.yellow('\nNo MCP servers specified. Use --servers option.\n'));
278
+ console.log(chalk_1.default.dim('Example usage:'));
279
+ console.log(chalk_1.default.dim(' codemie-code mcp servers --servers filesystem,cli-mcp-server\n'));
280
+ return;
281
+ }
282
+ const serverNames = serversParam.split(',').map(s => s.trim()).filter(Boolean);
283
+ if (serverNames.length === 0) {
284
+ console.log(chalk_1.default.yellow('\nNo valid server names provided\n'));
285
+ return;
286
+ }
287
+ const { toolkit, global } = await loadMCPConfigs();
288
+ const allServers = getAllServers(toolkit, global);
289
+ const missingServers = serverNames.filter(name => !allServers[name]);
290
+ const availableServers = serverNames.filter(name => allServers[name]);
291
+ if (missingServers.length > 0) {
292
+ console.log(chalk_1.default.red('\n✗ The following servers were not found:'));
293
+ for (const server of missingServers) {
294
+ console.log(chalk_1.default.dim(` • ${server}`));
295
+ }
296
+ console.log();
297
+ console.log(chalk_1.default.yellow('Use \'codemie-code mcp list\' to see available servers\n'));
298
+ }
299
+ if (availableServers.length > 0) {
300
+ console.log(chalk_1.default.green('\n✓ The following servers would be loaded:\n'));
301
+ const nameWidth = 22;
302
+ const transportWidth = 12;
303
+ const commandWidth = 35;
304
+ const typeWidth = 10;
305
+ console.log(chalk_1.default.cyan(padRight('Server', nameWidth)) +
306
+ chalk_1.default.green(padRight('Transport', transportWidth)) +
307
+ chalk_1.default.blue(padRight('Command/URL', commandWidth)) +
308
+ chalk_1.default.yellow(padRight('Type', typeWidth)));
309
+ console.log(chalk_1.default.gray('─'.repeat(nameWidth + transportWidth + commandWidth + typeWidth)));
310
+ for (const name of availableServers) {
311
+ const config = allServers[name];
312
+ const transport = config.transport || 'stdio';
313
+ const command = formatCommand(config);
314
+ const type = getServerType(config);
315
+ console.log(chalk_1.default.cyan(padRight(name, nameWidth)) +
316
+ chalk_1.default.green(padRight(transport, transportWidth)) +
317
+ chalk_1.default.blue(padRight(command, commandWidth)) +
318
+ chalk_1.default.yellow(padRight(type, typeWidth)));
319
+ }
320
+ console.log();
321
+ console.log(chalk_1.default.dim('Start codemie-code with these servers:'));
322
+ console.log(chalk_1.default.dim(` codemie-code --mcp-servers ${availableServers.join(',')}\n`));
323
+ }
324
+ }
325
+ function padRight(str, width) {
326
+ if (str.length >= width) {
327
+ return str.substring(0, width - 3) + '...';
328
+ }
329
+ return str + ' '.repeat(width - str.length);
330
+ }
331
+ async function ensureCodemieDir() {
332
+ const codemieDir = path.join(os.homedir(), '.codemie');
333
+ try {
334
+ await fs.mkdir(codemieDir, { recursive: true });
335
+ }
336
+ catch (error) {
337
+ throw new Error(`Failed to create .codemie directory: ${(0, errors_js_1.getErrorMessage)(error)}`);
338
+ }
339
+ }
340
+ async function loadGlobalConfig() {
341
+ const globalConfigPath = path.join(os.homedir(), '.codemie', 'config.json');
342
+ try {
343
+ const content = await fs.readFile(globalConfigPath, 'utf-8');
344
+ return JSON.parse(content);
345
+ }
346
+ catch (error) {
347
+ if (error && typeof error === 'object' && 'code' in error && error.code === 'ENOENT') {
348
+ return {};
349
+ }
350
+ throw error;
351
+ }
352
+ }
353
+ async function saveGlobalConfig(config) {
354
+ await ensureCodemieDir();
355
+ const globalConfigPath = path.join(os.homedir(), '.codemie', 'config.json');
356
+ await fs.writeFile(globalConfigPath, JSON.stringify(config, null, 2) + '\n', 'utf-8');
357
+ }
358
+ async function addMCPServer(name, commandOrUrl, options) {
359
+ // Validate transport type
360
+ const validTransports = ['stdio', 'sse', 'streamable_http'];
361
+ if (!validTransports.includes(options.transport)) {
362
+ console.log(chalk_1.default.red(`\n✗ Invalid transport type: ${options.transport}`));
363
+ console.log(chalk_1.default.yellow(`Valid types: ${validTransports.join(', ')}\n`));
364
+ return;
365
+ }
366
+ // Build server configuration
367
+ const serverConfig = {
368
+ transport: options.transport
369
+ };
370
+ if (options.transport === 'stdio') {
371
+ serverConfig.command = commandOrUrl;
372
+ if (options.args && options.args.length > 0) {
373
+ serverConfig.args = options.args;
374
+ }
375
+ }
376
+ else {
377
+ serverConfig.url = commandOrUrl;
378
+ }
379
+ // Parse environment variables
380
+ if (options.env && options.env.length > 0) {
381
+ serverConfig.env = {};
382
+ for (const envVar of options.env) {
383
+ const [key, ...valueParts] = envVar.split('=');
384
+ const value = valueParts.join('=');
385
+ if (key && value) {
386
+ serverConfig.env[key] = value;
387
+ }
388
+ else {
389
+ console.log(chalk_1.default.yellow(`\n⚠ Invalid environment variable format: ${envVar}`));
390
+ console.log(chalk_1.default.dim('Expected format: KEY=VALUE\n'));
391
+ return;
392
+ }
393
+ }
394
+ }
395
+ try {
396
+ // Load global config
397
+ const config = await loadGlobalConfig();
398
+ // Initialize mcpServers if not exists
399
+ if (!config.mcpServers || typeof config.mcpServers !== 'object') {
400
+ config.mcpServers = {};
401
+ }
402
+ const mcpServers = config.mcpServers;
403
+ // Check if server already exists
404
+ const isUpdate = mcpServers[name] !== undefined;
405
+ // Add/update server
406
+ mcpServers[name] = serverConfig;
407
+ config.mcpServers = mcpServers;
408
+ // Save config
409
+ await saveGlobalConfig(config);
410
+ // Success message
411
+ if (isUpdate) {
412
+ console.log(chalk_1.default.green(`\n✓ Updated MCP server configuration: ${name}`));
413
+ }
414
+ else {
415
+ console.log(chalk_1.default.green(`\n✓ Added MCP server configuration: ${name}`));
416
+ }
417
+ // Show configuration
418
+ console.log(chalk_1.default.cyan('\nConfiguration:'));
419
+ console.log(JSON.stringify(serverConfig, null, 2));
420
+ console.log(chalk_1.default.dim(`\nSaved to: ${path.join(os.homedir(), '.codemie', 'config.json')}`));
421
+ console.log(chalk_1.default.dim(`\nTo use this server:`));
422
+ console.log(chalk_1.default.dim(` codemie-code --mcp-servers ${name}\n`));
423
+ }
424
+ catch (error) {
425
+ console.log(chalk_1.default.red(`\n✗ Failed to add MCP server: ${(0, errors_js_1.getErrorMessage)(error)}\n`));
426
+ }
427
+ }
428
+ async function removeMCPServer(name) {
429
+ try {
430
+ // Load global config
431
+ const config = await loadGlobalConfig();
432
+ // Check if mcpServers exists
433
+ if (!config.mcpServers || typeof config.mcpServers !== 'object') {
434
+ console.log(chalk_1.default.yellow(`\n⚠ No MCP servers configured\n`));
435
+ return;
436
+ }
437
+ const mcpServers = config.mcpServers;
438
+ // Check if server exists
439
+ if (!mcpServers[name]) {
440
+ console.log(chalk_1.default.yellow(`\n⚠ MCP server '${name}' not found in global configuration\n`));
441
+ console.log(chalk_1.default.dim('Available servers:'));
442
+ for (const serverName of Object.keys(mcpServers)) {
443
+ console.log(chalk_1.default.dim(` • ${serverName}`));
444
+ }
445
+ console.log();
446
+ return;
447
+ }
448
+ // Remove server
449
+ delete mcpServers[name];
450
+ config.mcpServers = mcpServers;
451
+ // Save config
452
+ await saveGlobalConfig(config);
453
+ console.log(chalk_1.default.green(`\n✓ Removed MCP server: ${name}\n`));
454
+ }
455
+ catch (error) {
456
+ console.log(chalk_1.default.red(`\n✗ Failed to remove MCP server: ${(0, errors_js_1.getErrorMessage)(error)}\n`));
457
+ }
458
+ }
459
+ //# sourceMappingURL=mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/cli/commands/mcp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createRunCommand(): Command;
3
+ //# sourceMappingURL=run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,gBAAgB,IAAI,OAAO,CAqC1C"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createRunCommand = createRunCommand;
4
+ const commander_1 = require("commander");
5
+ const registry_1 = require("../../agents/registry");
6
+ const logger_1 = require("../../utils/logger");
7
+ const errors_1 = require("../../utils/errors");
8
+ function createRunCommand() {
9
+ const command = new commander_1.Command('run');
10
+ command
11
+ .description('Run an agent')
12
+ .argument('<agent>', 'Agent name to run')
13
+ .argument('[args...]', 'Additional arguments to pass to the agent')
14
+ .option('-m, --model <model>', 'Model to use')
15
+ .action(async (agentName, args, options) => {
16
+ try {
17
+ const agent = registry_1.AgentRegistry.getAgent(agentName);
18
+ if (!agent) {
19
+ throw new errors_1.AgentNotFoundError(agentName);
20
+ }
21
+ // Check if installed
22
+ if (!(await agent.isInstalled())) {
23
+ logger_1.logger.error(`${agent.displayName} is not installed. Install it first with: codemie install ${agentName}`);
24
+ process.exit(1);
25
+ }
26
+ // Set model environment variable if provided
27
+ if (options.model) {
28
+ const envVar = `${agentName.toUpperCase().replace('-', '_')}_MODEL`;
29
+ process.env[envVar] = options.model;
30
+ }
31
+ // Run the agent
32
+ await agent.run(args);
33
+ }
34
+ catch (error) {
35
+ logger_1.logger.error('Failed to run agent:', error);
36
+ process.exit(1);
37
+ }
38
+ });
39
+ return command;
40
+ }
41
+ //# sourceMappingURL=run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":";;AAKA,4CAqCC;AA1CD,yCAAoC;AACpC,oDAAsD;AACtD,+CAA4C;AAC5C,+CAAwD;AAExD,SAAgB,gBAAgB;IAC9B,MAAM,OAAO,GAAG,IAAI,mBAAO,CAAC,KAAK,CAAC,CAAC;IAEnC,OAAO;SACJ,WAAW,CAAC,cAAc,CAAC;SAC3B,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;SACxC,QAAQ,CAAC,WAAW,EAAE,2CAA2C,CAAC;SAClE,MAAM,CAAC,qBAAqB,EAAE,cAAc,CAAC;SAC7C,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,IAAc,EAAE,OAAO,EAAE,EAAE;QAC3D,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,wBAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAEhD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,2BAAkB,CAAC,SAAS,CAAC,CAAC;YAC1C,CAAC;YAED,qBAAqB;YACrB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;gBACjC,eAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,WAAW,6DAA6D,SAAS,EAAE,CAAC,CAAC;gBAC3G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,6CAA6C;YAC7C,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,MAAM,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC;gBACpE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;YACtC,CAAC;YAED,gBAAgB;YAChB,MAAM,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,eAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;YAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createUninstallCommand(): Command;
3
+ //# sourceMappingURL=uninstall.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,sBAAsB,IAAI,OAAO,CAmEhD"}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createUninstallCommand = createUninstallCommand;
7
+ const commander_1 = require("commander");
8
+ const registry_1 = require("../../agents/registry");
9
+ const logger_1 = require("../../utils/logger");
10
+ const errors_1 = require("../../utils/errors");
11
+ const ora_1 = __importDefault(require("ora"));
12
+ const chalk_1 = __importDefault(require("chalk"));
13
+ function createUninstallCommand() {
14
+ const command = new commander_1.Command('uninstall');
15
+ command
16
+ .description('Uninstall an agent')
17
+ .argument('[agent]', 'Agent name to uninstall')
18
+ .action(async (agentName) => {
19
+ try {
20
+ // If no agent name provided, show installed agents
21
+ if (!agentName) {
22
+ const installedAgents = await registry_1.AgentRegistry.getInstalledAgents();
23
+ if (installedAgents.length === 0) {
24
+ console.log();
25
+ console.log(chalk_1.default.yellow('No agents are currently installed.'));
26
+ console.log();
27
+ console.log(chalk_1.default.cyan('💡 Tip:') + ' Run ' + chalk_1.default.blueBright('codemie list') + ' to see all available agents');
28
+ console.log();
29
+ return;
30
+ }
31
+ console.log();
32
+ console.log(chalk_1.default.bold('Installed agents:\n'));
33
+ for (const agent of installedAgents) {
34
+ const version = await agent.getVersion();
35
+ const versionStr = version ? chalk_1.default.gray(` (${version})`) : '';
36
+ console.log(chalk_1.default.bold(` ${agent.displayName}`) + versionStr);
37
+ console.log(` Command: ${chalk_1.default.cyan(`codemie uninstall ${agent.name}`)}`);
38
+ console.log(` ${chalk_1.default.gray(agent.description)}`);
39
+ console.log();
40
+ }
41
+ console.log(chalk_1.default.cyan('💡 Tip:') + ' Run ' + chalk_1.default.blueBright('codemie uninstall <agent>') + ' to uninstall an agent');
42
+ console.log();
43
+ return;
44
+ }
45
+ const agent = registry_1.AgentRegistry.getAgent(agentName);
46
+ if (!agent) {
47
+ throw new errors_1.AgentNotFoundError(agentName);
48
+ }
49
+ // Check if installed
50
+ if (!(await agent.isInstalled())) {
51
+ logger_1.logger.info(`${agent.displayName} is not installed`);
52
+ return;
53
+ }
54
+ const spinner = (0, ora_1.default)(`Uninstalling ${agent.displayName}...`).start();
55
+ try {
56
+ await agent.uninstall();
57
+ spinner.succeed(`${agent.displayName} uninstalled successfully`);
58
+ }
59
+ catch (error) {
60
+ spinner.fail(`Failed to uninstall ${agent.displayName}`);
61
+ throw error;
62
+ }
63
+ }
64
+ catch (error) {
65
+ logger_1.logger.error('Uninstallation failed:', error);
66
+ process.exit(1);
67
+ }
68
+ });
69
+ return command;
70
+ }
71
+ //# sourceMappingURL=uninstall.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/cli/commands/uninstall.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createVersionCommand(): Command;
3
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,oBAAoB,IAAI,OAAO,CAiB9C"}