cmdr-agent 1.3.0 → 2.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 (95) hide show
  1. package/dist/bin/cmdr.js +2 -1
  2. package/dist/bin/cmdr.js.map +1 -1
  3. package/dist/src/agents/executor.d.ts +32 -0
  4. package/dist/src/agents/executor.d.ts.map +1 -0
  5. package/dist/src/agents/executor.js +50 -0
  6. package/dist/src/agents/executor.js.map +1 -0
  7. package/dist/src/agents/index.d.ts +7 -0
  8. package/dist/src/agents/index.d.ts.map +1 -0
  9. package/dist/src/agents/index.js +7 -0
  10. package/dist/src/agents/index.js.map +1 -0
  11. package/dist/src/agents/registry.d.ts +36 -0
  12. package/dist/src/agents/registry.d.ts.map +1 -0
  13. package/dist/src/agents/registry.js +168 -0
  14. package/dist/src/agents/registry.js.map +1 -0
  15. package/dist/src/agents/subagent-tool.d.ts +27 -0
  16. package/dist/src/agents/subagent-tool.d.ts.map +1 -0
  17. package/dist/src/agents/subagent-tool.js +36 -0
  18. package/dist/src/agents/subagent-tool.js.map +1 -0
  19. package/dist/src/cli/args.d.ts +1 -0
  20. package/dist/src/cli/args.d.ts.map +1 -1
  21. package/dist/src/cli/args.js +4 -0
  22. package/dist/src/cli/args.js.map +1 -1
  23. package/dist/src/cli/commands.d.ts.map +1 -1
  24. package/dist/src/cli/commands.js +92 -4
  25. package/dist/src/cli/commands.js.map +1 -1
  26. package/dist/src/cli/ink/App.d.ts +4 -0
  27. package/dist/src/cli/ink/App.d.ts.map +1 -1
  28. package/dist/src/cli/ink/App.js +266 -27
  29. package/dist/src/cli/ink/App.js.map +1 -1
  30. package/dist/src/cli/ink/StatusBar.d.ts +17 -0
  31. package/dist/src/cli/ink/StatusBar.d.ts.map +1 -0
  32. package/dist/src/cli/ink/StatusBar.js +32 -0
  33. package/dist/src/cli/ink/StatusBar.js.map +1 -0
  34. package/dist/src/cli/repl.d.ts +1 -0
  35. package/dist/src/cli/repl.d.ts.map +1 -1
  36. package/dist/src/cli/repl.js +112 -3
  37. package/dist/src/cli/repl.js.map +1 -1
  38. package/dist/src/cli/theme.d.ts +42 -22
  39. package/dist/src/cli/theme.d.ts.map +1 -1
  40. package/dist/src/cli/theme.js +25 -1
  41. package/dist/src/cli/theme.js.map +1 -1
  42. package/dist/src/cli/themes.d.ts +57 -0
  43. package/dist/src/cli/themes.d.ts.map +1 -0
  44. package/dist/src/cli/themes.js +98 -0
  45. package/dist/src/cli/themes.js.map +1 -0
  46. package/dist/src/commands/index.d.ts +3 -0
  47. package/dist/src/commands/index.d.ts.map +1 -0
  48. package/dist/src/commands/index.js +2 -0
  49. package/dist/src/commands/index.js.map +1 -0
  50. package/dist/src/commands/loader.d.ts +35 -0
  51. package/dist/src/commands/loader.d.ts.map +1 -0
  52. package/dist/src/commands/loader.js +134 -0
  53. package/dist/src/commands/loader.js.map +1 -0
  54. package/dist/src/config/config-loader.d.ts.map +1 -1
  55. package/dist/src/config/config-loader.js +2 -0
  56. package/dist/src/config/config-loader.js.map +1 -1
  57. package/dist/src/config/defaults.d.ts.map +1 -1
  58. package/dist/src/config/defaults.js +1 -0
  59. package/dist/src/config/defaults.js.map +1 -1
  60. package/dist/src/config/schema.d.ts +3 -0
  61. package/dist/src/config/schema.d.ts.map +1 -1
  62. package/dist/src/config/schema.js +1 -0
  63. package/dist/src/config/schema.js.map +1 -1
  64. package/dist/src/core/agent-runner.d.ts.map +1 -1
  65. package/dist/src/core/agent-runner.js +29 -4
  66. package/dist/src/core/agent-runner.js.map +1 -1
  67. package/dist/src/core/agent.d.ts +1 -1
  68. package/dist/src/core/agent.d.ts.map +1 -1
  69. package/dist/src/core/agent.js +4 -3
  70. package/dist/src/core/agent.js.map +1 -1
  71. package/dist/src/core/types.d.ts +1 -0
  72. package/dist/src/core/types.d.ts.map +1 -1
  73. package/dist/src/llm/model-registry.d.ts +25 -0
  74. package/dist/src/llm/model-registry.d.ts.map +1 -1
  75. package/dist/src/llm/model-registry.js +217 -24
  76. package/dist/src/llm/model-registry.js.map +1 -1
  77. package/dist/src/llm/model-watcher.d.ts +26 -0
  78. package/dist/src/llm/model-watcher.d.ts.map +1 -0
  79. package/dist/src/llm/model-watcher.js +130 -0
  80. package/dist/src/llm/model-watcher.js.map +1 -0
  81. package/dist/src/llm/ollama.d.ts +5 -0
  82. package/dist/src/llm/ollama.d.ts.map +1 -1
  83. package/dist/src/llm/ollama.js +151 -25
  84. package/dist/src/llm/ollama.js.map +1 -1
  85. package/dist/src/session/project-context.d.ts.map +1 -1
  86. package/dist/src/session/project-context.js +54 -4
  87. package/dist/src/session/project-context.js.map +1 -1
  88. package/dist/src/session/session-manager.d.ts +7 -0
  89. package/dist/src/session/session-manager.d.ts.map +1 -1
  90. package/dist/src/session/session-manager.js +30 -0
  91. package/dist/src/session/session-manager.js.map +1 -1
  92. package/dist/src/tools/built-in/glob.d.ts.map +1 -1
  93. package/dist/src/tools/built-in/glob.js +4 -3
  94. package/dist/src/tools/built-in/glob.js.map +1 -1
  95. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/cli/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/cli/commands.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,8 @@ import type { UndoManager } from '../../session/undo-manager.js';
18
18
  import type { PluginManager } from '../../plugins/plugin-manager.js';
19
19
  import type { McpClient } from '../../plugins/mcp-client.js';
20
20
  import type { ToolRegistry } from '../../tools/registry.js';
21
+ import type { AgentRegistry } from '../../agents/registry.js';
22
+ import type { CommandLoader } from '../../commands/loader.js';
21
23
  export interface InkAppProps {
22
24
  agent: Agent;
23
25
  session: SessionManager;
@@ -31,6 +33,8 @@ export interface InkAppProps {
31
33
  pluginManager: PluginManager;
32
34
  mcpClient: McpClient;
33
35
  toolRegistry: ToolRegistry;
36
+ agentRegistry: AgentRegistry;
37
+ commandLoader: CommandLoader;
34
38
  ollamaUrl: string;
35
39
  verbose: boolean;
36
40
  doSave: () => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../../src/cli/ink/App.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAA;AAGvE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAkE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACjI,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAI9D,OAAO,EACsD,cAAc,EAC1E,MAAM,sCAAsC,CAAA;AAE7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAkE3D,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,KAAK,CAAA;IACZ,OAAO,EAAE,cAAc,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,OAAO,EAAE,UAAU,CAAA;IACnB,YAAY,EAAE,YAAY,CAAA;IAC1B,gBAAgB,CAAC,EAAE,UAAU,CAAA;IAC7B,WAAW,EAAE,WAAW,CAAA;IACxB,WAAW,EAAE,WAAW,CAAA;IACxB,aAAa,EAAE,aAAa,CAAA;IAC5B,SAAS,EAAE,SAAS,CAAA;IACpB,YAAY,EAAE,YAAY,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,SAAS,EAAE,cAAc,CAAA;CAC1B;AAoED,MAAM,CAAC,OAAO,UAAU,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,KAAK,CAAC,YAAY,CAwsBlE"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../../src/cli/ink/App.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAA;AAGvE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAkE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACjI,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAI9D,OAAO,EACsD,cAAc,EAC1E,MAAM,sCAAsC,CAAA;AAE7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAmE7D,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,KAAK,CAAA;IACZ,OAAO,EAAE,cAAc,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,OAAO,EAAE,UAAU,CAAA;IACnB,YAAY,EAAE,YAAY,CAAA;IAC1B,gBAAgB,CAAC,EAAE,UAAU,CAAA;IAC7B,WAAW,EAAE,WAAW,CAAA;IACxB,WAAW,EAAE,WAAW,CAAA;IACxB,aAAa,EAAE,aAAa,CAAA;IAC5B,SAAS,EAAE,SAAS,CAAA;IACpB,YAAY,EAAE,YAAY,CAAA;IAC1B,aAAa,EAAE,aAAa,CAAA;IAC5B,aAAa,EAAE,aAAa,CAAA;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,SAAS,EAAE,cAAc,CAAA;CAC1B;AAoED,MAAM,CAAC,OAAO,UAAU,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,KAAK,CAAC,YAAY,CAw7BlE"}
@@ -14,6 +14,7 @@ import { getDefaultContextLength } from '../../llm/model-registry.js';
14
14
  import { isSlashCommand, parseSlashCommand, getCommand } from '../commands.js';
15
15
  import { saveSession, loadSession, } from '../../session/session-persistence.js';
16
16
  import { getTeamPreset } from '../../core/presets.js';
17
+ import StatusBar from './StatusBar.js';
17
18
  // We use chalk directly for coloring since Ink <Text> color props are limited
18
19
  import chalk from 'chalk';
19
20
  const GREEN = chalk.hex('#00FF41');
@@ -111,7 +112,7 @@ function nextId() {
111
112
  return `line-${++lineCounter}`;
112
113
  }
113
114
  export default function App(props) {
114
- const { agent, session, permissionManager, adapter, orchestrator, costTracker, undoManager, pluginManager, mcpClient, toolRegistry, ollamaUrl, verbose, doSave, autoSaver, } = props;
115
+ const { agent, session, permissionManager, adapter, orchestrator, costTracker, undoManager, pluginManager, mcpClient, toolRegistry, agentRegistry, commandLoader, ollamaUrl, verbose, doSave, autoSaver, } = props;
115
116
  const { exit } = useApp();
116
117
  const [state, setState] = useState('idle');
117
118
  const [inputValue, setInputValue] = useState('');
@@ -119,6 +120,12 @@ export default function App(props) {
119
120
  const [spinnerText, setSpinnerText] = useState('');
120
121
  const [approval, setApproval] = useState(null);
121
122
  const [approvalInput, setApprovalInput] = useState('');
123
+ const approvalQueueRef = useRef([]);
124
+ const abortRef = useRef(null);
125
+ const [tokensIn, setTokensIn] = useState(0);
126
+ const [tokensOut, setTokensOut] = useState(0);
127
+ const [turnCount, setTurnCount] = useState(0);
128
+ const planModeRef = useRef(false);
122
129
  const currentModelRef = useRef(props.model);
123
130
  const activeTeamRef = useRef(props.activeTeamConfig);
124
131
  const stateRef = useRef(state);
@@ -227,17 +234,39 @@ export default function App(props) {
227
234
  let currentTool = '';
228
235
  let currentToolInput = {};
229
236
  let toolCallCount = 0;
237
+ const abortController = new AbortController();
238
+ abortRef.current = abortController;
230
239
  const callbacks = {
231
240
  onToolApproval: (toolName, input, riskLevel) => {
232
241
  return new Promise((resolve) => {
233
242
  stopSpinnerFn();
234
- setApproval({ toolName, input, riskLevel, resolve });
235
- setState('waiting_approval');
243
+ const request = { toolName, input, riskLevel, resolve };
244
+ // If we're already showing an approval prompt, queue this one
245
+ if (stateRef.current === 'waiting_approval') {
246
+ approvalQueueRef.current.push(request);
247
+ }
248
+ else {
249
+ setApproval(request);
250
+ setState('waiting_approval');
251
+ }
236
252
  });
237
253
  },
238
254
  };
255
+ // ── Pre-call compaction: prevent context overflow before hitting the LLM ──
256
+ session.syncFromAgent(agent.getHistory());
257
+ const contextLimit = getDefaultContextLength(currentModelRef.current);
258
+ if (session.tokenCount > contextLimit * 0.70) {
259
+ try {
260
+ const stats = await session.compact(adapter, currentModelRef.current);
261
+ agent.replaceMessages(session.messages);
262
+ appendOutput(` ${DIM(`◇ pre-compacted: ${stats.before} → ${stats.after} messages (saved ~${stats.tokensSaved} tokens)`)}`);
263
+ }
264
+ catch {
265
+ // best effort — will try emergency compaction on failure
266
+ }
267
+ }
239
268
  try {
240
- for await (const event of agent.stream(message, callbacks)) {
269
+ for await (const event of agent.stream(message, callbacks, abortController.signal)) {
241
270
  switch (event.type) {
242
271
  case 'text': {
243
272
  if (firstText) {
@@ -253,10 +282,15 @@ export default function App(props) {
253
282
  case 'tool_use': {
254
283
  stopSpinnerFn();
255
284
  if (!firstText) {
256
- // Flush accumulated text
285
+ // Flush accumulated text — strip raw tool_call/thought blocks
257
286
  if (fullOutput) {
258
- const formatted = fullOutput.split('\n').map(l => ` ${PURPLE('│')} ${l}`).join('\n');
259
- appendOutput(formatted);
287
+ let displayText = fullOutput;
288
+ displayText = displayText.replace(/```tool_call[\s\S]*?```/g, '').trim();
289
+ displayText = displayText.replace(/```thought[\s\S]*?```/g, '').trim();
290
+ if (displayText) {
291
+ const formatted = displayText.split('\n').map(l => ` ${PURPLE('│')} ${l}`).join('\n');
292
+ appendOutput(formatted);
293
+ }
260
294
  fullOutput = '';
261
295
  }
262
296
  firstText = true;
@@ -278,7 +312,7 @@ export default function App(props) {
278
312
  return `${DIM(k + ':')} ${WHITE(val)}`;
279
313
  })
280
314
  .join(' ');
281
- appendOutput(` ${TOOL_SYM} ${CYAN.bold(block.name)} ${toolSummary}`);
315
+ appendOutput(` ${YELLOW('⟳')} ${CYAN.bold(block.name)} ${toolSummary}`);
282
316
  startSpinner('tool', block.name);
283
317
  break;
284
318
  }
@@ -317,17 +351,89 @@ export default function App(props) {
317
351
  catch (err) {
318
352
  stopSpinnerFn();
319
353
  const msg = err instanceof Error ? err.message : String(err);
320
- if (msg.includes('not found') || msg.includes('404') || (msg.includes('model') && msg.includes('pull'))) {
354
+ // ── Emergency compaction on context overflow ──
355
+ const isContextOverflow = msg.includes('context') || msg.includes('too long') ||
356
+ msg.includes('exceeds') || msg.includes('num_ctx') || msg.includes('out of memory');
357
+ if (isContextOverflow) {
358
+ appendOutput(` ${YELLOW('⚠')} ${DIM('Context overflow detected — emergency compacting...')}`);
359
+ session.syncFromAgent(agent.getHistory());
360
+ session.emergencyCompact();
361
+ agent.replaceMessages(session.messages);
362
+ appendOutput(` ${DIM('◇ emergency compacted — retrying...')}`);
363
+ // Retry once with compacted context
364
+ try {
365
+ startSpinner('thinking');
366
+ fullOutput = '';
367
+ firstText = true;
368
+ for await (const event of agent.stream('', callbacks, abortController.signal)) {
369
+ switch (event.type) {
370
+ case 'text': {
371
+ if (firstText) {
372
+ stopSpinnerFn();
373
+ firstText = false;
374
+ }
375
+ fullOutput += event.data;
376
+ break;
377
+ }
378
+ case 'tool_use': {
379
+ stopSpinnerFn();
380
+ const block = event.data;
381
+ currentTool = block.name;
382
+ currentToolInput = block.input;
383
+ toolCallCount++;
384
+ const toolSummary = Object.entries(block.input)
385
+ .map(([k, v]) => {
386
+ const val = typeof v === 'string' ? v.slice(0, 80) : JSON.stringify(v).slice(0, 80);
387
+ return `${DIM(k + ':')} ${WHITE(val)}`;
388
+ }).join(' ');
389
+ appendOutput(` ${YELLOW('⟳')} ${CYAN.bold(block.name)} ${toolSummary}`);
390
+ startSpinner('tool', block.name);
391
+ break;
392
+ }
393
+ case 'tool_result': {
394
+ stopSpinnerFn();
395
+ const block = event.data;
396
+ appendOutput(summarizeToolResult(currentTool, currentToolInput, block.content, block.is_error));
397
+ currentTool = '';
398
+ currentToolInput = {};
399
+ startSpinner('thinking');
400
+ firstText = true;
401
+ break;
402
+ }
403
+ case 'done': {
404
+ stopSpinnerFn();
405
+ break;
406
+ }
407
+ case 'error': {
408
+ stopSpinnerFn();
409
+ appendOutput(`\n ${ERROR_SYM} ${RED.bold(event.data.message)}\n`);
410
+ break;
411
+ }
412
+ }
413
+ }
414
+ }
415
+ catch (retryErr) {
416
+ stopSpinnerFn();
417
+ const retryMsg = retryErr instanceof Error ? retryErr.message : String(retryErr);
418
+ appendOutput(`\n ${ERROR_SYM} ${RED.bold(`Retry after compaction failed: ${retryMsg}`)}\n`);
419
+ }
420
+ }
421
+ else if (msg.includes('not found') || msg.includes('404') || (msg.includes('model') && msg.includes('pull'))) {
321
422
  appendOutput(`\n ${ERROR_SYM} ${RED.bold(`Model '${currentModelRef.current}' not found. Run ${GREEN('/models')} to see available models or ${GREEN('/model <name>')} to switch.`)}\n`);
322
423
  }
323
424
  else {
324
425
  appendOutput(`\n ${ERROR_SYM} ${RED.bold(msg)}\n`);
325
426
  }
326
427
  }
327
- // Flush remaining text
428
+ // Flush remaining text — strip raw tool_call/thought blocks from display
328
429
  if (fullOutput) {
329
- const formatted = fullOutput.split('\n').map(l => ` ${PURPLE('│')} ${l}`).join('\n');
330
- appendOutput(formatted);
430
+ let displayText = fullOutput;
431
+ displayText = displayText.replace(/```tool_call[\s\S]*?```/g, '').trim();
432
+ displayText = displayText.replace(/```thought[\s\S]*?```/g, '').trim();
433
+ if (displayText) {
434
+ const formatted = displayText.split('\n').map(l => ` ${PURPLE('│')} ${l}`).join('\n');
435
+ appendOutput(formatted);
436
+ }
331
437
  }
332
438
  if (fullOutput || !firstText) {
333
439
  appendOutput('');
@@ -341,6 +447,9 @@ export default function App(props) {
341
447
  : '';
342
448
  appendOutput(` ${DIM(summary)}${tokenInfo}`);
343
449
  costTracker.record(currentModelRef.current, tokens.input_tokens, tokens.output_tokens, toolCallCount);
450
+ setTokensIn(prev => prev + tokens.input_tokens);
451
+ setTokensOut(prev => prev + tokens.output_tokens);
452
+ setTurnCount(prev => prev + 1);
344
453
  session.syncFromAgent(agent.getHistory());
345
454
  // Auto-compact if needed
346
455
  if (session.shouldCompact()) {
@@ -419,6 +528,11 @@ export default function App(props) {
419
528
  currentModelRef.current = model;
420
529
  agent.setModel(model);
421
530
  session.updateContextLength(getDefaultContextLength(model));
531
+ // Reset token counters for the new model
532
+ costTracker.reset();
533
+ setTokensIn(0);
534
+ setTokensOut(0);
535
+ setTurnCount(0);
422
536
  },
423
537
  clearHistory: () => {
424
538
  session.clear();
@@ -491,22 +605,53 @@ export default function App(props) {
491
605
  return false;
492
606
  }
493
607
  if (result === '__AGENTS_STATUS__') {
494
- if (!activeTeamRef.current) {
495
- appendOutput(` ${DIM('ℹ')} ${WHITE(`Solo mode (agent: ${GREEN('cmdr')}). Use /team <preset> for multi-agent.`)}`);
608
+ const agents = agentRegistry.list();
609
+ if (agents.length === 0) {
610
+ appendOutput(` ${DIM('No subagents loaded. Place .md files in .cmdr/agents/ or ~/.cmdr/agents/')}`);
496
611
  }
497
612
  else {
498
- const status = orchestrator.getStatus();
499
- const lines = ['', ` ${PURPLE.bold(`Team: ${activeTeamRef.current.name}`)}`, ''];
500
- for (const agentCfg of activeTeamRef.current.agents) {
501
- const agentStatus = status?.agents.find(a => a.name === agentCfg.name);
502
- const statusLabel = agentStatus ? DIM(agentStatus.status) : DIM('idle');
503
- lines.push(` ${GREEN('•')} ${WHITE(agentCfg.name.padEnd(12))} ${statusLabel}`);
613
+ const lines = ['', ` ${PURPLE.bold('Subagents')} ${DIM(`(${agents.length})`)}`, ''];
614
+ for (const ag of agents) {
615
+ const sourceLabel = ag.source === 'bundled' ? DIM('[bundled]') : ag.source === 'user' ? DIM('[user]') : DIM('[project]');
616
+ const toolCount = ag.tools.length;
617
+ lines.push(` ${GREEN('•')} ${CYAN(ag.name.padEnd(16))} ${WHITE(ag.description.slice(0, 60))}`);
618
+ lines.push(` ${DIM(`${toolCount} tools · ${ag.maxTurns} turns · temp ${ag.temperature}`)} ${sourceLabel}`);
504
619
  }
505
620
  lines.push('');
621
+ lines.push(` ${DIM('Use @<name> <task> to delegate, or /agents info <name> for details.')}`);
622
+ lines.push('');
506
623
  appendLines(lines);
507
624
  }
508
625
  return false;
509
626
  }
627
+ if (typeof result === 'string' && result.startsWith('__AGENT_INFO__:')) {
628
+ const agentName = result.slice('__AGENT_INFO__:'.length);
629
+ const ag = agentRegistry.get(agentName);
630
+ if (!ag) {
631
+ appendOutput(` ${ERROR_SYM} ${RED(`Unknown agent: ${agentName}`)}`);
632
+ }
633
+ else {
634
+ const lines = [
635
+ '',
636
+ ` ${PURPLE.bold(ag.name)} ${DIM(`[${ag.source}]`)}`,
637
+ ` ${WHITE(ag.description)}`,
638
+ '',
639
+ ` ${DIM('Kind:')} ${ag.kind}`,
640
+ ` ${DIM('Model:')} ${ag.model ?? 'inherit from parent'}`,
641
+ ` ${DIM('Temperature:')} ${ag.temperature}`,
642
+ ` ${DIM('Max turns:')} ${ag.maxTurns}`,
643
+ ` ${DIM('Tools:')} ${ag.tools.join(', ') || 'none'}`,
644
+ ` ${DIM('Source:')} ${ag.filePath}`,
645
+ '',
646
+ ` ${DIM('System prompt:')}`,
647
+ ...ag.systemPrompt.split('\n').slice(0, 10).map(l => ` ${DIM('│')} ${WHITE(l)}`),
648
+ ag.systemPrompt.split('\n').length > 10 ? ` ${DIM(` ... (${ag.systemPrompt.split('\n').length - 10} more lines)`)}` : '',
649
+ '',
650
+ ];
651
+ appendLines(lines.filter(Boolean));
652
+ }
653
+ return false;
654
+ }
510
655
  if (result === '__TASKS_STATUS__') {
511
656
  const status = orchestrator.getStatus();
512
657
  if (!status) {
@@ -618,11 +763,45 @@ export default function App(props) {
618
763
  }
619
764
  return false;
620
765
  }
766
+ if (result === '__CUSTOM_COMMANDS_LIST__') {
767
+ const cmds = commandLoader.list();
768
+ if (cmds.length === 0) {
769
+ appendOutput(` ${DIM('No custom commands. Create with /command create <name>')}`);
770
+ }
771
+ else {
772
+ const lines = ['', ` ${PURPLE.bold('Custom commands')} ${DIM(`(${cmds.length})`)}`, ''];
773
+ for (const cmd of cmds) {
774
+ lines.push(` ${GREEN('•')} ${CYAN('/' + cmd.name.padEnd(16))} ${WHITE(cmd.description)} ${DIM(`[${cmd.source}]`)}`);
775
+ }
776
+ lines.push('');
777
+ lines.push(` ${DIM('Run with: /<name> <arguments>')}`);
778
+ lines.push('');
779
+ appendLines(lines);
780
+ }
781
+ return false;
782
+ }
783
+ if (typeof result === 'string' && result.startsWith('__CUSTOM_COMMAND_CREATE__:')) {
784
+ const cmdName = result.slice('__CUSTOM_COMMAND_CREATE__:'.length);
785
+ const filePath = commandLoader.scaffold(cmdName, process.cwd());
786
+ appendOutput(` ${DIM('ℹ')} ${WHITE(`Created command scaffold: ${GREEN(filePath)}`)}`);
787
+ commandLoader.loadAll(process.cwd());
788
+ return false;
789
+ }
790
+ if (result === '__PLAN_TOGGLE__') {
791
+ planModeRef.current = !planModeRef.current;
792
+ if (planModeRef.current) {
793
+ appendOutput(` ${PURPLE('◈')} ${WHITE('Plan mode')} ${GREEN('ON')} ${DIM('— agent will only analyze and plan, no changes')}`);
794
+ }
795
+ else {
796
+ appendOutput(` ${PURPLE('◈')} ${WHITE('Plan mode')} ${RED('OFF')} ${DIM('— full tool access restored')}`);
797
+ }
798
+ return false;
799
+ }
621
800
  if (result)
622
801
  appendOutput(String(result));
623
802
  return false;
624
803
  }, [agent, session, permissionManager, adapter, ollamaUrl, toolRegistry,
625
- orchestrator, costTracker, undoManager, pluginManager, mcpClient,
804
+ orchestrator, costTracker, undoManager, pluginManager, mcpClient, commandLoader,
626
805
  cleanupAndExit, appendOutput, appendLines]);
627
806
  // ---------------------------------------------------------------------------
628
807
  // Submit handler
@@ -639,13 +818,51 @@ export default function App(props) {
639
818
  setState('processing');
640
819
  try {
641
820
  if (isSlashCommand(input)) {
642
- const shouldExit = await processCommand(input);
643
- if (shouldExit)
644
- return;
821
+ // Check if it's a custom command first
822
+ const { name: cmdName, args: cmdArgs } = parseSlashCommand(input);
823
+ const customCmd = commandLoader.get(cmdName);
824
+ if (customCmd && !getCommand(cmdName)) {
825
+ // Resolve template and send as user message
826
+ const resolved = commandLoader.resolve(customCmd, cmdArgs, process.cwd());
827
+ if (planModeRef.current) {
828
+ const planMsg = `[System: PLAN MODE is active. Analyze only — do NOT make changes. Produce a numbered step-by-step plan.]\n\n${resolved}`;
829
+ await handleUserMessage(planMsg);
830
+ }
831
+ else {
832
+ await handleUserMessage(resolved);
833
+ }
834
+ }
835
+ else {
836
+ const shouldExit = await processCommand(input);
837
+ if (shouldExit)
838
+ return;
839
+ }
840
+ }
841
+ else if (input.startsWith('@')) {
842
+ // @agent syntax: @investigator explain the auth flow
843
+ const spaceIdx = input.indexOf(' ');
844
+ const agentName = spaceIdx === -1 ? input.slice(1) : input.slice(1, spaceIdx);
845
+ const agentTask = spaceIdx === -1 ? '' : input.slice(spaceIdx + 1).trim();
846
+ if (agentRegistry.has(agentName)) {
847
+ if (!agentTask) {
848
+ appendOutput(` ${ERROR_SYM} ${RED('Usage:')} @${agentName} <task description>`);
849
+ }
850
+ else {
851
+ const delegateMsg = `[System: The user has requested the "${agentName}" subagent. Please immediately call the "${agentName}" tool with the following task: ${agentTask}]`;
852
+ await handleUserMessage(delegateMsg);
853
+ }
854
+ }
855
+ else {
856
+ appendOutput(` ${ERROR_SYM} ${RED(`Unknown agent: ${agentName}`)}. Use /agents to list available agents.`);
857
+ }
645
858
  }
646
859
  else if (activeTeamRef.current) {
647
860
  await handleTeamMessage(input, activeTeamRef.current);
648
861
  }
862
+ else if (planModeRef.current) {
863
+ const planMsg = `[System: PLAN MODE is active. Analyze the request and produce a numbered step-by-step plan. Do NOT make any changes.]\n\n${input}`;
864
+ await handleUserMessage(planMsg);
865
+ }
649
866
  else {
650
867
  await handleUserMessage(input);
651
868
  }
@@ -673,7 +890,21 @@ export default function App(props) {
673
890
  return;
674
891
  }
675
892
  lastSigintRef.current = now;
676
- if (stateRef.current === 'processing') {
893
+ if (stateRef.current === 'processing' || stateRef.current === 'waiting_approval') {
894
+ // Abort the current agent turn
895
+ if (abortRef.current) {
896
+ abortRef.current.abort();
897
+ abortRef.current = null;
898
+ }
899
+ // Drain any pending approval queue
900
+ for (const pending of approvalQueueRef.current) {
901
+ pending.resolve('deny');
902
+ }
903
+ approvalQueueRef.current = [];
904
+ if (approval) {
905
+ approval.resolve('deny');
906
+ setApproval(null);
907
+ }
677
908
  appendOutput(`\n ${DIM('Interrupt — press Ctrl+C again to exit.')}`);
678
909
  }
679
910
  else if (stateRef.current === 'idle') {
@@ -706,7 +937,15 @@ export default function App(props) {
706
937
  }
707
938
  const resolve = approval.resolve;
708
939
  setApproval(null);
709
- setState('processing');
940
+ // Show next queued approval, or return to processing
941
+ const next = approvalQueueRef.current.shift();
942
+ if (next) {
943
+ setApproval(next);
944
+ // Stay in waiting_approval state
945
+ }
946
+ else {
947
+ setState('processing');
948
+ }
710
949
  resolve(decision);
711
950
  }, [approval]);
712
951
  // ---------------------------------------------------------------------------
@@ -717,6 +956,6 @@ export default function App(props) {
717
956
  ? val.length > 120 ? val.slice(0, 120) + DIM('...') : val
718
957
  : JSON.stringify(val).slice(0, 120);
719
958
  return _jsx(Text, { children: ` ${DIM(key + ':')} ${WHITE(display)}` }, key);
720
- }), _jsx(Text, { children: '' }), _jsx(Text, { children: ` ${GREEN('y')}${DIM('es')} ${DIM('/')} ${RED('n')}${DIM('o')} ${DIM('/')} ${PURPLE('a')}${DIM('lways allow this tool')}` }), _jsxs(Box, { children: [_jsx(Text, { children: ` ${YELLOW('?')} ` }), _jsx(TextInput, { value: approvalInput, onChange: setApprovalInput, onSubmit: handleApprovalSubmit })] })] })), state === 'idle' && (_jsxs(Box, { children: [_jsxs(Text, { children: [GREEN.bold('❯'), " "] }), _jsx(TextInput, { value: inputValue, onChange: setInputValue, onSubmit: handleSubmit })] }))] }));
959
+ }), _jsx(Text, { children: '' }), _jsx(Text, { children: ` ${GREEN('y')}${DIM('es')} ${DIM('/')} ${RED('n')}${DIM('o')} ${DIM('/')} ${PURPLE('a')}${DIM('lways allow this tool')}` }), _jsxs(Box, { children: [_jsx(Text, { children: ` ${YELLOW('?')} ` }), _jsx(TextInput, { value: approvalInput, onChange: setApprovalInput, onSubmit: handleApprovalSubmit })] })] })), state === 'idle' && (_jsxs(Box, { flexDirection: "column", children: [_jsx(StatusBar, { model: currentModelRef.current, tokensIn: tokensIn, tokensOut: tokensOut, turns: turnCount, agentCount: agentRegistry.list().length, permissionMode: permissionManager.getMode(), cwd: process.cwd() }), _jsxs(Box, { children: [_jsxs(Text, { children: [GREEN.bold('❯'), " "] }), _jsx(TextInput, { value: inputValue, onChange: setInputValue, onSubmit: handleSubmit })] })] }))] }));
721
960
  }
722
961
  //# sourceMappingURL=App.js.map