duocode 1.2.0 → 1.2.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 (68) hide show
  1. package/dist/ast/locks.js +2 -1
  2. package/dist/ast/locks.js.map +1 -1
  3. package/dist/cli.js +14 -4
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/doctor.d.ts +1 -1
  6. package/dist/commands/doctor.js +54 -11
  7. package/dist/commands/doctor.js.map +1 -1
  8. package/dist/commands/duo.js +19 -19
  9. package/dist/commands/duo.js.map +1 -1
  10. package/dist/commands/github.js +15 -1
  11. package/dist/commands/github.js.map +1 -1
  12. package/dist/commands/status.d.ts +2 -0
  13. package/dist/commands/status.js +95 -0
  14. package/dist/commands/status.js.map +1 -0
  15. package/dist/config/loader.js +4 -1
  16. package/dist/config/loader.js.map +1 -1
  17. package/dist/context/project_context.js +5 -0
  18. package/dist/context/project_context.js.map +1 -1
  19. package/dist/db/queries.d.ts +0 -2
  20. package/dist/db/queries.js +0 -10
  21. package/dist/db/queries.js.map +1 -1
  22. package/dist/db/schema.d.ts +0 -6
  23. package/dist/db/schema.js +0 -15
  24. package/dist/db/schema.js.map +1 -1
  25. package/dist/duo/duo_orchestrator.js +1 -1
  26. package/dist/duo/duo_orchestrator.js.map +1 -1
  27. package/dist/duo/swarm_orchestrator.js +14 -6
  28. package/dist/duo/swarm_orchestrator.js.map +1 -1
  29. package/dist/github/mcp_client.js +8 -2
  30. package/dist/github/mcp_client.js.map +1 -1
  31. package/dist/orchestrator/intent_parser.d.ts +1 -1
  32. package/dist/orchestrator/intent_parser.js +15 -5
  33. package/dist/orchestrator/intent_parser.js.map +1 -1
  34. package/dist/orchestrator/task_runner.d.ts +0 -2
  35. package/dist/orchestrator/task_runner.js +85 -74
  36. package/dist/orchestrator/task_runner.js.map +1 -1
  37. package/dist/providers/anthropic.js +1 -1
  38. package/dist/providers/cost_tracker.js +28 -44
  39. package/dist/providers/cost_tracker.js.map +1 -1
  40. package/dist/providers/duo_pair_router.d.ts +1 -2
  41. package/dist/providers/duo_pair_router.js +1 -3
  42. package/dist/providers/duo_pair_router.js.map +1 -1
  43. package/dist/providers/factory.js +5 -5
  44. package/dist/providers/factory.js.map +1 -1
  45. package/dist/providers/openrouter.js +38 -29
  46. package/dist/providers/openrouter.js.map +1 -1
  47. package/dist/providers/router.js +106 -103
  48. package/dist/providers/router.js.map +1 -1
  49. package/dist/setup/browser.js +6 -6
  50. package/dist/setup/browser.js.map +1 -1
  51. package/dist/tools/agent_loop.d.ts +2 -0
  52. package/dist/tools/agent_loop.js +68 -19
  53. package/dist/tools/agent_loop.js.map +1 -1
  54. package/dist/tools/definitions.d.ts +2 -1
  55. package/dist/tools/definitions.js +23 -1
  56. package/dist/tools/definitions.js.map +1 -1
  57. package/dist/tools/executor.js +121 -29
  58. package/dist/tools/executor.js.map +1 -1
  59. package/dist/tools/permissions.js +14 -4
  60. package/dist/tools/permissions.js.map +1 -1
  61. package/dist/ui/banner.d.ts +1 -0
  62. package/dist/ui/banner.js +18 -1
  63. package/dist/ui/banner.js.map +1 -1
  64. package/dist/ui/callbacks.js +5 -2
  65. package/dist/ui/callbacks.js.map +1 -1
  66. package/dist/ui/dashboard.js +2 -1
  67. package/dist/ui/dashboard.js.map +1 -1
  68. package/package.json +1 -1
@@ -1,185 +1,189 @@
1
1
  import { CapabilityAuctionEngine } from "./auction.js";
2
2
  import { withRetry, timeoutSignal } from "./retry.js";
3
3
  export const DEFAULT_MODEL_PROFILES = [
4
+ // ── Anthropic direct API ─────────────────────────────────────
4
5
  {
5
- model: "gpt-5.3-codex",
6
- provider: "openai",
7
- capabilities: ["deep_reasoning", "code_generation", "tool_use", "streaming"],
6
+ model: "claude-opus-4-6",
7
+ provider: "anthropic",
8
+ capabilities: ["deep_reasoning", "architecture", "code_generation", "code_review", "tool_use", "streaming"],
8
9
  supportsStreaming: true,
9
10
  supportsTools: true,
10
- contextWindow: 256000,
11
+ contextWindow: 200000,
11
12
  maxOutputTokens: 32000,
12
- avgLatencyMs: 1800,
13
- defaultScore: 0.96,
14
- roleAffinity: { architect: 0.85, executor: 0.92 },
13
+ avgLatencyMs: 3500,
14
+ defaultScore: 0.97,
15
+ roleAffinity: { architect: 0.95, executor: 0.80 },
15
16
  },
16
17
  {
17
- model: "gpt-5.2",
18
- provider: "openai",
19
- capabilities: ["deep_reasoning", "code_generation", "streaming"],
18
+ model: "claude-sonnet-4-6",
19
+ provider: "anthropic",
20
+ capabilities: ["deep_reasoning", "code_generation", "code_refactoring", "tool_use", "streaming"],
20
21
  supportsStreaming: true,
21
22
  supportsTools: true,
22
23
  contextWindow: 200000,
23
- maxOutputTokens: 24000,
24
- avgLatencyMs: 1400,
25
- defaultScore: 0.9,
26
- roleAffinity: { architect: 0.82, executor: 0.80 },
24
+ maxOutputTokens: 64000,
25
+ avgLatencyMs: 2000,
26
+ defaultScore: 0.93,
27
+ roleAffinity: { architect: 0.88, executor: 0.90 },
27
28
  },
28
29
  {
29
- model: "o4-mini",
30
- provider: "openai",
31
- capabilities: ["routing", "tool_use", "fast_response", "streaming"],
30
+ model: "claude-haiku-4-5-20251001",
31
+ provider: "anthropic",
32
+ capabilities: ["code_generation", "fast_response", "tool_use", "streaming"],
32
33
  supportsStreaming: true,
33
34
  supportsTools: true,
34
- contextWindow: 128000,
35
- maxOutputTokens: 16000,
36
- avgLatencyMs: 650,
35
+ contextWindow: 200000,
36
+ maxOutputTokens: 8000,
37
+ avgLatencyMs: 800,
37
38
  defaultScore: 0.82,
38
- roleAffinity: { architect: 0.40, executor: 0.55 },
39
+ roleAffinity: { architect: 0.40, executor: 0.70 },
39
40
  },
41
+ // ── OpenAI direct API ─────────────────────────────────────────
40
42
  {
41
- model: "claude-sonnet-4-5",
42
- provider: "anthropic",
43
- capabilities: ["deep_reasoning", "code_generation", "tool_use", "streaming"],
43
+ model: "gpt-4o",
44
+ provider: "openai",
45
+ capabilities: ["deep_reasoning", "code_generation", "code_refactoring", "tool_use", "streaming"],
44
46
  supportsStreaming: true,
45
47
  supportsTools: true,
46
- contextWindow: 200000,
47
- maxOutputTokens: 24000,
48
- avgLatencyMs: 1500,
49
- defaultScore: 0.93,
50
- roleAffinity: { architect: 0.90, executor: 0.85 },
48
+ contextWindow: 128000,
49
+ maxOutputTokens: 16384,
50
+ avgLatencyMs: 2000,
51
+ defaultScore: 0.92,
52
+ roleAffinity: { architect: 0.85, executor: 0.88 },
51
53
  },
52
54
  {
53
- model: "claude-sonnet-5",
54
- provider: "anthropic",
55
- capabilities: ["deep_reasoning", "architecture", "code_generation", "tool_use", "streaming"],
55
+ model: "gpt-4o-mini",
56
+ provider: "openai",
57
+ capabilities: ["code_generation", "fast_response", "tool_use", "streaming"],
56
58
  supportsStreaming: true,
57
59
  supportsTools: true,
58
- contextWindow: 200000,
59
- maxOutputTokens: 24000,
60
- avgLatencyMs: 1700,
61
- defaultScore: 0.95,
62
- roleAffinity: { architect: 0.93, executor: 0.75 },
60
+ contextWindow: 128000,
61
+ maxOutputTokens: 16384,
62
+ avgLatencyMs: 900,
63
+ defaultScore: 0.82,
64
+ roleAffinity: { architect: 0.45, executor: 0.72 },
63
65
  },
66
+ // ── OpenRouter-exclusive models ───────────────────────────────
67
+ // (only routed when OPENAI_BASE_URL contains "openrouter")
64
68
  {
65
- model: "z-ai/glm-5-20260211",
69
+ model: "deepseek/deepseek-r1",
66
70
  provider: "openrouter",
67
71
  capabilities: ["deep_reasoning", "architecture", "code_generation", "tool_use", "streaming"],
68
72
  supportsStreaming: true,
69
73
  supportsTools: true,
70
- contextWindow: 202752,
71
- maxOutputTokens: 131072,
72
- avgLatencyMs: 1800,
74
+ contextWindow: 64000,
75
+ maxOutputTokens: 32768,
76
+ avgLatencyMs: 3000,
73
77
  defaultScore: 0.92,
74
- roleAffinity: { architect: 0.82, executor: 0.80 },
78
+ roleAffinity: { architect: 0.90, executor: 0.75 },
75
79
  },
76
80
  {
77
- model: "qwen/qwen3-max-thinking-20260123",
81
+ model: "deepseek/deepseek-v3",
78
82
  provider: "openrouter",
79
- capabilities: ["deep_reasoning", "architecture", "code_generation", "tool_use", "streaming"],
83
+ capabilities: ["code_generation", "code_refactoring", "tool_use", "streaming"],
80
84
  supportsStreaming: true,
81
85
  supportsTools: true,
82
- contextWindow: 262144,
86
+ contextWindow: 64000,
83
87
  maxOutputTokens: 32768,
84
- avgLatencyMs: 2200,
85
- defaultScore: 0.93,
86
- roleAffinity: { architect: 0.88, executor: 0.68 },
88
+ avgLatencyMs: 1500,
89
+ defaultScore: 0.88,
90
+ roleAffinity: { architect: 0.72, executor: 0.88 },
87
91
  },
88
92
  {
89
- model: "qwen/qwen3-coder-next-2025-02-03",
93
+ model: "google/gemini-flash-1.5",
90
94
  provider: "openrouter",
91
- capabilities: ["code_generation", "code_refactoring", "tool_use", "streaming", "test_generation", "fast_response"],
95
+ capabilities: ["code_generation", "fast_response", "tool_use", "streaming"],
92
96
  supportsStreaming: true,
93
97
  supportsTools: true,
94
- contextWindow: 262144,
95
- maxOutputTokens: 65536,
98
+ contextWindow: 1000000,
99
+ maxOutputTokens: 8192,
96
100
  avgLatencyMs: 800,
97
- defaultScore: 0.87,
98
- roleAffinity: { architect: 0.40, executor: 0.85 },
101
+ defaultScore: 0.84,
102
+ roleAffinity: { architect: 0.60, executor: 0.80 },
99
103
  },
100
104
  {
101
- model: "moonshotai/kimi-k2.5-0127",
105
+ model: "qwen/qwen-2.5-coder-32b-instruct",
102
106
  provider: "openrouter",
103
- capabilities: ["deep_reasoning", "code_generation", "tool_use", "streaming"],
107
+ capabilities: ["code_generation", "code_refactoring", "test_generation", "tool_use", "streaming"],
104
108
  supportsStreaming: true,
105
109
  supportsTools: true,
106
- contextWindow: 262144,
107
- maxOutputTokens: 32768,
108
- avgLatencyMs: 1500,
109
- defaultScore: 0.89,
110
- roleAffinity: { architect: 0.80, executor: 0.70 },
110
+ contextWindow: 128000,
111
+ maxOutputTokens: 16384,
112
+ avgLatencyMs: 1200,
113
+ defaultScore: 0.85,
114
+ roleAffinity: { architect: 0.50, executor: 0.88 },
111
115
  },
112
116
  {
113
- model: "minimax/minimax-m2.5-20260211",
117
+ model: "meta-llama/llama-3.3-70b-instruct",
114
118
  provider: "openrouter",
115
- capabilities: ["deep_reasoning", "code_generation", "tool_use", "streaming"],
119
+ capabilities: ["code_generation", "code_review", "tool_use", "streaming"],
116
120
  supportsStreaming: true,
117
121
  supportsTools: true,
118
- contextWindow: 1048576,
119
- maxOutputTokens: 65536,
120
- avgLatencyMs: 1400,
121
- defaultScore: 0.91,
122
- roleAffinity: { architect: 0.82, executor: 0.78 },
122
+ contextWindow: 128000,
123
+ maxOutputTokens: 8192,
124
+ avgLatencyMs: 1000,
125
+ defaultScore: 0.82,
126
+ roleAffinity: { architect: 0.55, executor: 0.78 },
123
127
  },
124
128
  {
125
- model: "deepseek/deepseek-v3.2-20251201",
129
+ model: "mistralai/mistral-large-2411",
126
130
  provider: "openrouter",
127
- capabilities: ["deep_reasoning", "code_generation", "code_refactoring", "tool_use", "streaming"],
131
+ capabilities: ["deep_reasoning", "code_generation", "tool_use", "streaming"],
128
132
  supportsStreaming: true,
129
133
  supportsTools: true,
130
- contextWindow: 163840,
131
- maxOutputTokens: 65536,
132
- avgLatencyMs: 1200,
133
- defaultScore: 0.90,
134
- roleAffinity: { architect: 0.84, executor: 0.82 },
134
+ contextWindow: 128000,
135
+ maxOutputTokens: 8192,
136
+ avgLatencyMs: 1400,
137
+ defaultScore: 0.86,
138
+ roleAffinity: { architect: 0.80, executor: 0.80 },
135
139
  },
136
140
  {
137
- model: "google/gemini-3-flash-preview-20251217",
141
+ model: "x-ai/grok-2-1212",
138
142
  provider: "openrouter",
139
- capabilities: ["code_generation", "fast_response", "tool_use", "streaming"],
143
+ capabilities: ["code_generation", "deep_reasoning", "tool_use", "streaming"],
140
144
  supportsStreaming: true,
141
145
  supportsTools: true,
142
- contextWindow: 1048576,
143
- maxOutputTokens: 65536,
144
- avgLatencyMs: 600,
146
+ contextWindow: 131072,
147
+ maxOutputTokens: 32768,
148
+ avgLatencyMs: 1800,
145
149
  defaultScore: 0.88,
146
- roleAffinity: { architect: 0.65, executor: 0.85 },
150
+ roleAffinity: { architect: 0.75, executor: 0.85 },
147
151
  },
148
152
  {
149
- model: "gpt-oss-120b",
150
- provider: "openai",
151
- capabilities: ["deep_reasoning", "code_generation", "tool_use", "streaming"],
153
+ model: "minimax/minimax-m2.5",
154
+ provider: "openrouter",
155
+ capabilities: ["deep_reasoning", "code_generation", "code_refactoring", "tool_use", "streaming"],
152
156
  supportsStreaming: true,
153
157
  supportsTools: true,
154
- contextWindow: 200000,
155
- maxOutputTokens: 32000,
156
- avgLatencyMs: 1600,
157
- defaultScore: 0.91,
158
- roleAffinity: { architect: 0.83, executor: 0.80 },
158
+ contextWindow: 196608,
159
+ maxOutputTokens: 65536,
160
+ avgLatencyMs: 2500,
161
+ defaultScore: 0.88,
162
+ roleAffinity: { architect: 0.75, executor: 0.88 },
159
163
  },
160
164
  {
161
- model: "x-ai/grok-4.1-fast",
165
+ model: "moonshotai/kimi-k2.5",
162
166
  provider: "openrouter",
163
- capabilities: ["code_generation", "fast_response", "tool_use", "streaming"],
167
+ capabilities: ["deep_reasoning", "architecture", "code_generation", "code_refactoring", "tool_use", "streaming"],
164
168
  supportsStreaming: true,
165
169
  supportsTools: true,
166
- contextWindow: 131072,
167
- maxOutputTokens: 32768,
168
- avgLatencyMs: 700,
169
- defaultScore: 0.87,
170
- roleAffinity: { architect: 0.60, executor: 0.82 },
170
+ contextWindow: 262144,
171
+ maxOutputTokens: 65536,
172
+ avgLatencyMs: 2000,
173
+ defaultScore: 0.89,
174
+ roleAffinity: { architect: 0.82, executor: 0.85 },
171
175
  },
172
176
  {
173
- model: "arcee-ai/trinity-large-preview",
177
+ model: "z-ai/glm-5",
174
178
  provider: "openrouter",
175
- capabilities: ["deep_reasoning", "code_generation", "tool_use", "streaming"],
179
+ capabilities: ["deep_reasoning", "architecture", "code_generation", "tool_use", "streaming"],
176
180
  supportsStreaming: true,
177
181
  supportsTools: true,
178
- contextWindow: 131072,
182
+ contextWindow: 204800,
179
183
  maxOutputTokens: 32768,
180
- avgLatencyMs: 1300,
181
- defaultScore: 0.86,
182
- roleAffinity: { architect: 0.78, executor: 0.75 },
184
+ avgLatencyMs: 2500,
185
+ defaultScore: 0.88,
186
+ roleAffinity: { architect: 0.88, executor: 0.80 },
183
187
  },
184
188
  ];
185
189
  const DEFAULT_ESTIMATED_INPUT_TOKENS = 1000;
@@ -541,7 +545,6 @@ export class ProviderRouter {
541
545
  const response = await withRetry(async (signal) => {
542
546
  const ts = timeoutSignal(this.timeoutMs);
543
547
  // Combine external signal (if any) with timeout
544
- const _effectiveSignal = signal ?? ts.signal;
545
548
  try {
546
549
  return await provider.generate({
547
550
  ...request,
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/providers/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/providers/router.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { exec } from "node:child_process";
1
+ import { execFile } from "node:child_process";
2
2
  export function openBrowser(url) {
3
- const cmd = process.platform === "darwin"
4
- ? `open "${url}"`
3
+ const [cmd, args] = process.platform === "darwin"
4
+ ? ["open", [url]]
5
5
  : process.platform === "win32"
6
- ? `start "" "${url}"`
7
- : `xdg-open "${url}"`;
8
- exec(cmd, () => {
6
+ ? ["cmd", ["/c", "start", "", url]]
7
+ : ["xdg-open", [url]];
8
+ execFile(cmd, args, () => {
9
9
  // fire-and-forget — ignore errors (user sees the URL in terminal)
10
10
  });
11
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/setup/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,MAAM,GAAG,GACP,OAAO,CAAC,QAAQ,KAAK,QAAQ;QAC3B,CAAC,CAAC,SAAS,GAAG,GAAG;QACjB,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO;YAC5B,CAAC,CAAC,aAAa,GAAG,GAAG;YACrB,CAAC,CAAC,aAAa,GAAG,GAAG,CAAC;IAE5B,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;QACb,kEAAkE;IACpE,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/setup/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GACf,OAAO,CAAC,QAAQ,KAAK,QAAQ;QAC3B,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO;YAC5B,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAE5B,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE;QACvB,kEAAkE;IACpE,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -40,5 +40,7 @@ export interface AgentLoopResult {
40
40
  fileChanges: FileChange[];
41
41
  totalCostUsd: number;
42
42
  iterations: number;
43
+ /** True if the loop stopped because maxIterations was reached */
44
+ hitIterationLimit: boolean;
43
45
  }
44
46
  export declare function runAgentLoop(options: AgentLoopOptions): Promise<AgentLoopResult>;
@@ -25,33 +25,80 @@ export async function runAgentLoop(options) {
25
25
  // Refresh tools each iteration so discover_tools activations take effect
26
26
  const tools = options.tools
27
27
  ?? (registry ? registry.getActiveTools() : ALL_TOOLS);
28
- const result = await providerRouter.generate({
29
- model,
30
- messages,
31
- tools,
32
- toolChoice: "auto",
33
- temperature,
34
- maxOutputTokens,
35
- });
36
- totalCostUsd += result.costUsd;
37
- const response = result.response;
38
- if (response.text) {
39
- textParts.push(response.text);
40
- if (options.onText)
41
- options.onText(response.text);
28
+ // Attempt streaming for real-time text output; fall back to generate on failure
29
+ let responseText = "";
30
+ let responseToolCalls = [];
31
+ try {
32
+ for await (const event of providerRouter.stream({
33
+ model,
34
+ messages,
35
+ tools,
36
+ toolChoice: "auto",
37
+ temperature,
38
+ maxOutputTokens,
39
+ })) {
40
+ if (event.type === "text-delta") {
41
+ responseText += event.delta;
42
+ if (options.onText)
43
+ options.onText(event.delta);
44
+ }
45
+ else if (event.type === "tool-call") {
46
+ responseToolCalls.push(event.call);
47
+ }
48
+ else if (event.type === "done") {
49
+ // Merge tool calls from done event (for providers that batch them)
50
+ if (event.response.toolCalls.length > 0 && responseToolCalls.length === 0) {
51
+ responseToolCalls = event.response.toolCalls;
52
+ }
53
+ // Use response text as fallback if no deltas were emitted
54
+ if (!responseText && event.response.text) {
55
+ responseText = event.response.text;
56
+ if (options.onText)
57
+ options.onText(responseText);
58
+ }
59
+ }
60
+ else if (event.type === "error") {
61
+ throw event.error;
62
+ }
63
+ }
64
+ }
65
+ catch (streamErr) {
66
+ // Log the streaming failure before falling back so operators know degradation occurred
67
+ log.warn("Streaming failed, falling back to generate", {
68
+ error: streamErr instanceof Error ? streamErr.message : String(streamErr),
69
+ });
70
+ // Streaming failed — fall back to non-streaming generate
71
+ responseText = "";
72
+ responseToolCalls = [];
73
+ const fallback = await providerRouter.generate({
74
+ model,
75
+ messages,
76
+ tools,
77
+ toolChoice: "auto",
78
+ temperature,
79
+ maxOutputTokens,
80
+ });
81
+ totalCostUsd += fallback.costUsd;
82
+ responseText = fallback.response.text ?? "";
83
+ responseToolCalls = fallback.response.toolCalls ?? [];
84
+ if (options.onText && responseText)
85
+ options.onText(responseText);
86
+ }
87
+ if (responseText) {
88
+ textParts.push(responseText);
42
89
  }
43
90
  // No tool calls → model is done
44
- if (response.toolCalls.length === 0) {
91
+ if (responseToolCalls.length === 0) {
45
92
  break;
46
93
  }
47
94
  // Append the assistant turn (with tool calls attached)
48
95
  messages.push({
49
96
  role: "assistant",
50
- content: response.text || "",
51
- toolCalls: response.toolCalls,
97
+ content: responseText || "",
98
+ toolCalls: responseToolCalls,
52
99
  });
53
100
  // Execute each requested tool
54
- for (const call of response.toolCalls) {
101
+ for (const call of responseToolCalls) {
55
102
  toolCallCount++;
56
103
  log.debug("Tool call", { tool: call.name });
57
104
  const toolResult = await executeTool({
@@ -72,7 +119,8 @@ export async function runAgentLoop(options) {
72
119
  });
73
120
  }
74
121
  }
75
- if (iterations >= maxIterations) {
122
+ const hitIterationLimit = iterations >= maxIterations;
123
+ if (hitIterationLimit) {
76
124
  log.warn("Agent loop reached max iterations", { maxIterations });
77
125
  }
78
126
  return {
@@ -81,6 +129,7 @@ export async function runAgentLoop(options) {
81
129
  fileChanges,
82
130
  totalCostUsd,
83
131
  iterations,
132
+ hitIterationLimit,
84
133
  };
85
134
  }
86
135
  //# sourceMappingURL=agent_loop.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent_loop.js","sourceRoot":"","sources":["../../src/tools/agent_loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent_loop.js","sourceRoot":"","sources":["../../src/tools/agent_loop.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,9 @@ export declare const TOOL_WRITE_FILE: ToolDefinition;
9
9
  export declare const TOOL_EDIT_FILE: ToolDefinition;
10
10
  export declare const TOOL_LIST_DIRECTORY: ToolDefinition;
11
11
  export declare const TOOL_SEARCH_FILES: ToolDefinition;
12
+ export declare const TOOL_GLOB_FILES: ToolDefinition;
12
13
  export declare const TOOL_RUN_COMMAND: ToolDefinition;
13
14
  export declare const ALL_TOOLS: ToolDefinition[];
14
15
  import type { RegisteredTool } from "./tool_registry.js";
15
- /** Wrap the 6 core tools as RegisteredTool[] with alwaysActive: true. */
16
+ /** Wrap the 7 core tools as RegisteredTool[] with alwaysActive: true. */
16
17
  export declare function coreToolsAsRegistered(): RegisteredTool[];
@@ -72,6 +72,26 @@ export const TOOL_SEARCH_FILES = {
72
72
  required: ["path", "pattern"],
73
73
  },
74
74
  };
75
+ export const TOOL_GLOB_FILES = {
76
+ name: "glob_files",
77
+ description: "Find files matching a glob pattern. " +
78
+ "Supports ** (any path depth), * (any chars except /), and ? (single char). " +
79
+ "Returns matching file paths relative to the search directory.",
80
+ inputSchema: {
81
+ type: "object",
82
+ properties: {
83
+ pattern: {
84
+ type: "string",
85
+ description: "Glob pattern (e.g. '**/*.ts', 'src/**/*.test.*', '*.json')",
86
+ },
87
+ path: {
88
+ type: "string",
89
+ description: "Base directory to search in (default: project root)",
90
+ },
91
+ },
92
+ required: ["pattern"],
93
+ },
94
+ };
75
95
  export const TOOL_RUN_COMMAND = {
76
96
  name: "run_command",
77
97
  description: "Execute a shell command and return stdout, stderr, and exit code. " +
@@ -98,10 +118,11 @@ export const ALL_TOOLS = [
98
118
  TOOL_EDIT_FILE,
99
119
  TOOL_LIST_DIRECTORY,
100
120
  TOOL_SEARCH_FILES,
121
+ TOOL_GLOB_FILES,
101
122
  TOOL_RUN_COMMAND,
102
123
  ];
103
124
  import { estimateToolTokens } from "./tool_registry.js";
104
- /** Wrap the 6 core tools as RegisteredTool[] with alwaysActive: true. */
125
+ /** Wrap the 7 core tools as RegisteredTool[] with alwaysActive: true. */
105
126
  export function coreToolsAsRegistered() {
106
127
  const tagMap = {
107
128
  read_file: ["read", "file", "view", "open", "cat"],
@@ -109,6 +130,7 @@ export function coreToolsAsRegistered() {
109
130
  edit_file: ["edit", "file", "modify", "replace", "patch"],
110
131
  list_directory: ["list", "directory", "ls", "folder", "tree"],
111
132
  search_files: ["search", "find", "grep", "regex", "pattern"],
133
+ glob_files: ["glob", "find", "files", "pattern", "wildcard", "match"],
112
134
  run_command: ["run", "command", "shell", "bash", "execute", "terminal"],
113
135
  };
114
136
  return ALL_TOOLS.map((def) => ({