erosolar-cli 2.1.151 → 2.1.153
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.
- package/dist/contracts/agent-schemas.json +5 -0
- package/dist/core/agent.d.ts +22 -0
- package/dist/core/agent.d.ts.map +1 -1
- package/dist/core/agent.js +273 -38
- package/dist/core/agent.js.map +1 -1
- package/dist/shell/interactiveShell.d.ts +1 -0
- package/dist/shell/interactiveShell.d.ts.map +1 -1
- package/dist/shell/interactiveShell.js +72 -0
- package/dist/shell/interactiveShell.js.map +1 -1
- package/dist/tools/bashTools.d.ts.map +1 -1
- package/dist/tools/bashTools.js +101 -8
- package/dist/tools/bashTools.js.map +1 -1
- package/dist/ui/ShellUIAdapter.d.ts +5 -0
- package/dist/ui/ShellUIAdapter.d.ts.map +1 -1
- package/dist/ui/ShellUIAdapter.js +13 -0
- package/dist/ui/ShellUIAdapter.js.map +1 -1
- package/package.json +1 -1
|
@@ -539,6 +539,11 @@
|
|
|
539
539
|
"command": "/permissions",
|
|
540
540
|
"description": "Configure tool permissions (allow/deny rules)",
|
|
541
541
|
"category": "configuration"
|
|
542
|
+
},
|
|
543
|
+
{
|
|
544
|
+
"command": "/update",
|
|
545
|
+
"description": "Check for updates and configure auto-update preference",
|
|
546
|
+
"category": "configuration"
|
|
542
547
|
}
|
|
543
548
|
],
|
|
544
549
|
|
package/dist/core/agent.d.ts
CHANGED
|
@@ -72,6 +72,9 @@ export declare class AgentRuntime {
|
|
|
72
72
|
private lastToolCallSignature;
|
|
73
73
|
private repeatedToolCallCount;
|
|
74
74
|
private static readonly MAX_REPEATED_TOOL_CALLS;
|
|
75
|
+
private recentToolCalls;
|
|
76
|
+
private static readonly TOOL_HISTORY_SIZE;
|
|
77
|
+
private static readonly BEHAVIORAL_LOOP_THRESHOLD;
|
|
75
78
|
constructor(options: AgentOptions);
|
|
76
79
|
/**
|
|
77
80
|
* Request cancellation of the current operation.
|
|
@@ -118,6 +121,25 @@ export declare class AgentRuntime {
|
|
|
118
121
|
* and response contains verifiable claims (implementation, build success, etc.)
|
|
119
122
|
*/
|
|
120
123
|
private triggerVerificationIfNeeded;
|
|
124
|
+
/**
|
|
125
|
+
* Extract a "command hash" from tool arguments for behavioral loop detection.
|
|
126
|
+
* For execute_bash, this is the actual command. For other tools, key identifying args.
|
|
127
|
+
*/
|
|
128
|
+
private extractCmdHash;
|
|
129
|
+
/**
|
|
130
|
+
* Check for behavioral loops - model calling the same tool with similar args repeatedly.
|
|
131
|
+
* Returns an error message if a loop is detected, null otherwise.
|
|
132
|
+
*
|
|
133
|
+
* This catches patterns like:
|
|
134
|
+
* - "git status -sb" called 5 times (same command, different outputs)
|
|
135
|
+
* - Repeated file reads of the same file
|
|
136
|
+
* - Repeated searches with the same pattern
|
|
137
|
+
*/
|
|
138
|
+
private checkBehavioralLoop;
|
|
139
|
+
/**
|
|
140
|
+
* Reset behavioral loop tracking (called when user provides new input or task completes)
|
|
141
|
+
*/
|
|
142
|
+
private resetBehavioralLoopTracking;
|
|
121
143
|
getHistory(): ConversationMessage[];
|
|
122
144
|
loadHistory(history: ConversationMessage[]): void;
|
|
123
145
|
clearHistory(): void;
|
package/dist/core/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAGhB,KAAK,aAAa,EAEnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAkC,KAAK,YAAY,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/core/agent.js
CHANGED
|
@@ -7,7 +7,12 @@ const MAX_CONTEXT_RECOVERY_ATTEMPTS = 3;
|
|
|
7
7
|
/**
|
|
8
8
|
* Maximum number of auto-continuation attempts when model expresses intent but doesn't act
|
|
9
9
|
*/
|
|
10
|
-
const MAX_AUTO_CONTINUE_ATTEMPTS =
|
|
10
|
+
const MAX_AUTO_CONTINUE_ATTEMPTS = 5;
|
|
11
|
+
/**
|
|
12
|
+
* Threshold for short completion - responses shorter than this can be valid completions.
|
|
13
|
+
* Anything longer after tool work needs scrutiny.
|
|
14
|
+
*/
|
|
15
|
+
const SHORT_COMPLETION_THRESHOLD = 80;
|
|
11
16
|
// Streaming runs without timeouts - we let the model take as long as it needs
|
|
12
17
|
/**
|
|
13
18
|
* Patterns that indicate the model intends to take action but hasn't yet
|
|
@@ -95,8 +100,124 @@ const AUTO_CONTINUE_PROMPTS = [
|
|
|
95
100
|
'Continue.',
|
|
96
101
|
'Keep going. Call tools.',
|
|
97
102
|
'You stopped mid-task. Continue with tools.',
|
|
103
|
+
'Do not summarize. Act with tools or ask a specific question.',
|
|
104
|
+
'Use tools to complete the task.',
|
|
98
105
|
];
|
|
99
106
|
const PREMATURE_CONCLUSION_PROMPT = 'Show specific code. Call read_file on the matches.';
|
|
107
|
+
/**
|
|
108
|
+
* Patterns that indicate genuine completion of a task.
|
|
109
|
+
* These are short, definitive statements that signal work is done.
|
|
110
|
+
*/
|
|
111
|
+
const COMPLETION_SIGNAL_PATTERNS = [
|
|
112
|
+
// Explicit done signals
|
|
113
|
+
/^(done|complete|finished|all set)[.!]?$/i,
|
|
114
|
+
// Short confirmations with specifics
|
|
115
|
+
/^(removed|deleted|fixed|created|updated|added)\s+.{1,50}[.!]?$/i,
|
|
116
|
+
// "X is now Y" short statements
|
|
117
|
+
/^.{1,30}\s+is\s+now\s+.{1,30}[.!]?$/i,
|
|
118
|
+
// Task completion with count
|
|
119
|
+
/^(cleaned|removed|fixed|updated)\s+\d+\s+.{1,30}[.!]?$/i,
|
|
120
|
+
];
|
|
121
|
+
/**
|
|
122
|
+
* Patterns that indicate errors, failures, or incomplete work.
|
|
123
|
+
* When these are present, auto-continue should kick in to fix the issues.
|
|
124
|
+
* This is a PROGRAMMATIC check - if errors are reported, the task is NOT complete.
|
|
125
|
+
*/
|
|
126
|
+
const ERROR_INDICATOR_PATTERNS = [
|
|
127
|
+
// Build/compile errors
|
|
128
|
+
/\b(error|errors|fail(s|ed|ure|ing)?|broken|crash(es|ed|ing)?)\b/i,
|
|
129
|
+
// Test failures
|
|
130
|
+
/\b(test(s)?\s+(fail|failing|failed)|failing\s+test)/i,
|
|
131
|
+
// TypeScript/compilation errors
|
|
132
|
+
/\b(typescript|ts|type)\s+error/i,
|
|
133
|
+
/\bts\(\d+,\d+\)/i, // TS error format like ts(700,45)
|
|
134
|
+
// Remaining/unresolved issues
|
|
135
|
+
/\b(persists?|remains?|still\s+(has|have|is|are|broken|failing))\b/i,
|
|
136
|
+
/\b(unresolved|outstanding|remaining)\s+(error|issue|problem)/i,
|
|
137
|
+
// Explicit incomplete signals
|
|
138
|
+
/\b(didn'?t|did\s+not|couldn'?t|could\s+not|wasn'?t|was\s+not)\s+(work|succeed|complete|finish|pass)/i,
|
|
139
|
+
/\b(skipped|blocked|cannot|unable\s+to)\b/i,
|
|
140
|
+
];
|
|
141
|
+
/**
|
|
142
|
+
* Check if response contains error indicators that mean work is NOT complete.
|
|
143
|
+
* This is a simple, programmatic check - no complex NLP needed.
|
|
144
|
+
*/
|
|
145
|
+
function containsErrorIndicators(content) {
|
|
146
|
+
return ERROR_INDICATOR_PATTERNS.some(p => p.test(content));
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Check if response is a genuine completion signal (short, definitive statement).
|
|
150
|
+
* Returns true if the model is signaling it's actually done with the task.
|
|
151
|
+
* IMPORTANT: Returns false if error indicators are present - model should continue.
|
|
152
|
+
*/
|
|
153
|
+
function isCompletionSignal(content) {
|
|
154
|
+
const trimmed = content.trim();
|
|
155
|
+
// PROGRAMMATIC: If errors are reported, this is NOT a valid completion
|
|
156
|
+
if (containsErrorIndicators(trimmed)) {
|
|
157
|
+
return false;
|
|
158
|
+
}
|
|
159
|
+
// Very short responses (<50 chars) with completion patterns are genuine signals
|
|
160
|
+
if (trimmed.length < 50) {
|
|
161
|
+
return COMPLETION_SIGNAL_PATTERNS.some(p => p.test(trimmed));
|
|
162
|
+
}
|
|
163
|
+
// Responses asking user for direction are valid stops
|
|
164
|
+
if (/\b(would you like|shall I|want me to|anything else)\b/i.test(trimmed) && trimmed.length < 200) {
|
|
165
|
+
return true;
|
|
166
|
+
}
|
|
167
|
+
// File:line citations indicate concrete work was shown
|
|
168
|
+
const hasCitation = /\b\w+\.(ts|js|tsx|jsx|py|go|rs|java|c|cpp|h|md|json|yaml|yml):\d+\b/.test(trimmed);
|
|
169
|
+
if (hasCitation) {
|
|
170
|
+
return true;
|
|
171
|
+
}
|
|
172
|
+
return false;
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* PROGRAMMATIC CHECK: After tool calls, should we auto-continue?
|
|
176
|
+
*
|
|
177
|
+
* SIMPLE RULE: After tools, model should ONLY stop if:
|
|
178
|
+
* 1. It asks the user a question (ends with ?)
|
|
179
|
+
* 2. It gives a very short completion (< 80 chars) WITHOUT planning words
|
|
180
|
+
*
|
|
181
|
+
* Everything else = CONTINUE. This is intentionally aggressive.
|
|
182
|
+
* The model should either be DONE (short message) or ASKING (question).
|
|
183
|
+
* Long explanations after tool work = continue to force action.
|
|
184
|
+
*/
|
|
185
|
+
function shouldContinueAfterTools(content) {
|
|
186
|
+
const trimmed = content.trim();
|
|
187
|
+
// No content after tools = continue to get results
|
|
188
|
+
if (trimmed.length === 0) {
|
|
189
|
+
return true;
|
|
190
|
+
}
|
|
191
|
+
// ALWAYS CONTINUE: Error indicators mean work isn't done
|
|
192
|
+
if (containsErrorIndicators(trimmed)) {
|
|
193
|
+
return true;
|
|
194
|
+
}
|
|
195
|
+
// ALWAYS CONTINUE: Intent/planning patterns mean model wants to do more
|
|
196
|
+
if (INTENT_WITHOUT_ACTION_PATTERNS.some(p => p.test(trimmed))) {
|
|
197
|
+
return true;
|
|
198
|
+
}
|
|
199
|
+
// VALID STOP: Model asking user a question (ends with ?)
|
|
200
|
+
if (/\?\s*$/.test(trimmed)) {
|
|
201
|
+
return false;
|
|
202
|
+
}
|
|
203
|
+
// VALID STOP: Explicit user-direction phrases
|
|
204
|
+
if (/\b(would you like|shall I|want me to|do you want|should I|what would you prefer)\b/i.test(trimmed)) {
|
|
205
|
+
return false;
|
|
206
|
+
}
|
|
207
|
+
// VALID STOP: Very short completion (< 80 chars) - likely "Done." or similar
|
|
208
|
+
// But ONLY if it doesn't have planning words
|
|
209
|
+
if (trimmed.length < SHORT_COMPLETION_THRESHOLD) {
|
|
210
|
+
const hasPlanningWords = /\b(i'll|i will|let me|i need|i'm going|will now|going to|first|next|now i)\b/i.test(trimmed);
|
|
211
|
+
if (!hasPlanningWords) {
|
|
212
|
+
return false; // Short and not planning = valid completion
|
|
213
|
+
}
|
|
214
|
+
// Short but has planning words = continue
|
|
215
|
+
return true;
|
|
216
|
+
}
|
|
217
|
+
// CONTINUE: Long response after tools = likely narrating/summarizing
|
|
218
|
+
// Force model to either ask a question or give a short completion
|
|
219
|
+
return true;
|
|
220
|
+
}
|
|
100
221
|
/**
|
|
101
222
|
* Check if response indicates intent to act without actually acting
|
|
102
223
|
* This detects when the model says "let me do X" but doesn't call any tools
|
|
@@ -112,6 +233,11 @@ function shouldAutoContinue(content, hasToolCalls, hasReasoningContent = false)
|
|
|
112
233
|
if (withoutThinking.length === 0) {
|
|
113
234
|
return false;
|
|
114
235
|
}
|
|
236
|
+
// PROGRAMMATIC: If response reports errors/failures, auto-continue to fix them
|
|
237
|
+
// This is critical - if model reports "error persists" or "build failed", it should continue
|
|
238
|
+
if (containsErrorIndicators(withoutThinking)) {
|
|
239
|
+
return true;
|
|
240
|
+
}
|
|
115
241
|
// If model output thinking/reasoning without much content, likely needs prompting
|
|
116
242
|
if (hasReasoningContent && withoutThinking.length < 30) {
|
|
117
243
|
return true;
|
|
@@ -164,6 +290,11 @@ export class AgentRuntime {
|
|
|
164
290
|
lastToolCallSignature = null;
|
|
165
291
|
repeatedToolCallCount = 0;
|
|
166
292
|
static MAX_REPEATED_TOOL_CALLS = 3;
|
|
293
|
+
// Behavioral loop detection: track recent tool calls to catch repetitive patterns
|
|
294
|
+
// e.g., calling "execute_bash" with "git status" 5 times even if output differs slightly
|
|
295
|
+
recentToolCalls = [];
|
|
296
|
+
static TOOL_HISTORY_SIZE = 12;
|
|
297
|
+
static BEHAVIORAL_LOOP_THRESHOLD = 4; // Same tool+cmd 4+ times in last 12 = stuck
|
|
167
298
|
constructor(options) {
|
|
168
299
|
this.provider = options.provider;
|
|
169
300
|
this.toolRuntime = options.toolRuntime;
|
|
@@ -215,8 +346,9 @@ export class AgentRuntime {
|
|
|
215
346
|
if (!prompt) {
|
|
216
347
|
return '';
|
|
217
348
|
}
|
|
218
|
-
// Reset cancellation flag at start of new request
|
|
349
|
+
// Reset cancellation flag and loop tracking at start of new request
|
|
219
350
|
this.cancellationRequested = false;
|
|
351
|
+
this.resetBehavioralLoopTracking();
|
|
220
352
|
// Handle multi-line paste: show summary to user, send full content to AI
|
|
221
353
|
if (isMultilinePaste(prompt)) {
|
|
222
354
|
const processed = processPaste(prompt);
|
|
@@ -264,7 +396,14 @@ export class AgentRuntime {
|
|
|
264
396
|
// Reset recovery attempts on successful generation
|
|
265
397
|
contextRecoveryAttempts = 0;
|
|
266
398
|
if (response.type === 'tool_calls') {
|
|
267
|
-
//
|
|
399
|
+
// BEHAVIORAL LOOP DETECTION: Check if model is stuck calling same tool repeatedly
|
|
400
|
+
const behavioralLoopResult = this.checkBehavioralLoop(response.toolCalls);
|
|
401
|
+
if (behavioralLoopResult) {
|
|
402
|
+
this.emitAssistantMessage(behavioralLoopResult, { isFinal: true, usage, contextStats });
|
|
403
|
+
this.messages.push({ role: 'assistant', content: behavioralLoopResult });
|
|
404
|
+
return behavioralLoopResult;
|
|
405
|
+
}
|
|
406
|
+
// Loop detection: check if same tool calls are being repeated (exact signature match)
|
|
268
407
|
const toolSignature = response.toolCalls
|
|
269
408
|
.map((t) => `${t.name}:${JSON.stringify(t.arguments)}`)
|
|
270
409
|
.sort()
|
|
@@ -299,23 +438,20 @@ export class AgentRuntime {
|
|
|
299
438
|
}
|
|
300
439
|
this.messages.push(assistantMessage);
|
|
301
440
|
await this.resolveToolCalls(response.toolCalls);
|
|
302
|
-
//
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
441
|
+
// PROGRAMMATIC CONTINUATION: After tool work, model must either:
|
|
442
|
+
// 1. Call more tools (already handled by continue above)
|
|
443
|
+
// 2. Give a short completion signal
|
|
444
|
+
// 3. Ask user for direction
|
|
445
|
+
// PROGRAMMATIC: If model outputs narrative instead of concrete findings, continue
|
|
446
|
+
if (this._autoContinueEnabled && autoContinueAttempts < MAX_AUTO_CONTINUE_ATTEMPTS) {
|
|
447
|
+
if (shouldContinueAfterTools(narration ?? '')) {
|
|
307
448
|
autoContinueAttempts++;
|
|
308
|
-
const
|
|
309
|
-
? PREMATURE_CONCLUSION_PROMPT
|
|
310
|
-
: AUTO_CONTINUE_PROMPTS[Math.min(autoContinueAttempts - 1, AUTO_CONTINUE_PROMPTS.length - 1)];
|
|
449
|
+
const promptIndex = Math.min(autoContinueAttempts - 1, AUTO_CONTINUE_PROMPTS.length - 1);
|
|
311
450
|
this.messages.push({
|
|
312
451
|
role: 'user',
|
|
313
|
-
content:
|
|
452
|
+
content: AUTO_CONTINUE_PROMPTS[promptIndex],
|
|
314
453
|
});
|
|
315
|
-
|
|
316
|
-
? 'Model gave premature summary without concrete findings. Prompting to dig deeper...'
|
|
317
|
-
: 'Model expressed intent to continue investigation...';
|
|
318
|
-
this.callbacks.onAutoContinue?.(autoContinueAttempts, MAX_AUTO_CONTINUE_ATTEMPTS, message);
|
|
454
|
+
this.callbacks.onAutoContinue?.(autoContinueAttempts, MAX_AUTO_CONTINUE_ATTEMPTS, 'Model narrated instead of completing. Prompting to continue...');
|
|
319
455
|
continue;
|
|
320
456
|
}
|
|
321
457
|
}
|
|
@@ -497,7 +633,15 @@ export class AgentRuntime {
|
|
|
497
633
|
}
|
|
498
634
|
// Check if we got tool calls
|
|
499
635
|
if (toolCalls.length > 0) {
|
|
500
|
-
//
|
|
636
|
+
// BEHAVIORAL LOOP DETECTION: Check if model is stuck calling same tool repeatedly
|
|
637
|
+
// This catches patterns like "git status" called 5 times even with slightly different outputs
|
|
638
|
+
const behavioralLoopResult = this.checkBehavioralLoop(toolCalls);
|
|
639
|
+
if (behavioralLoopResult) {
|
|
640
|
+
this.emitAssistantMessage(behavioralLoopResult, { isFinal: true, usage, contextStats, wasStreamed: true });
|
|
641
|
+
this.messages.push({ role: 'assistant', content: behavioralLoopResult });
|
|
642
|
+
return behavioralLoopResult;
|
|
643
|
+
}
|
|
644
|
+
// Loop detection: check if same tool calls are being repeated (exact signature match)
|
|
501
645
|
const toolSignature = toolCalls
|
|
502
646
|
.map((t) => `${t.name}:${JSON.stringify(t.arguments)}`)
|
|
503
647
|
.sort()
|
|
@@ -531,18 +675,22 @@ export class AgentRuntime {
|
|
|
531
675
|
};
|
|
532
676
|
this.messages.push(assistantMessage);
|
|
533
677
|
await this.resolveToolCalls(toolCalls);
|
|
534
|
-
//
|
|
535
|
-
//
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
678
|
+
// PROGRAMMATIC CONTINUATION: After tool work, model must either:
|
|
679
|
+
// 1. Call more tools (already handled by continue above)
|
|
680
|
+
// 2. Give a short completion signal
|
|
681
|
+
// 3. Ask user for direction
|
|
682
|
+
// PROGRAMMATIC: If model outputs narrative instead of concrete findings, continue
|
|
683
|
+
if (this._autoContinueEnabled && autoContinueAttempts < MAX_AUTO_CONTINUE_ATTEMPTS) {
|
|
684
|
+
if (shouldContinueAfterTools(narration ?? '')) {
|
|
685
|
+
autoContinueAttempts++;
|
|
686
|
+
const promptIndex = Math.min(autoContinueAttempts - 1, AUTO_CONTINUE_PROMPTS.length - 1);
|
|
687
|
+
this.messages.push({
|
|
688
|
+
role: 'user',
|
|
689
|
+
content: AUTO_CONTINUE_PROMPTS[promptIndex],
|
|
690
|
+
});
|
|
691
|
+
this.callbacks.onAutoContinue?.(autoContinueAttempts, MAX_AUTO_CONTINUE_ATTEMPTS, 'Model narrated instead of completing. Prompting to continue...');
|
|
692
|
+
continue;
|
|
693
|
+
}
|
|
546
694
|
}
|
|
547
695
|
// Reset auto-continue counter since model appears to be done
|
|
548
696
|
autoContinueAttempts = 0;
|
|
@@ -568,15 +716,20 @@ export class AgentRuntime {
|
|
|
568
716
|
});
|
|
569
717
|
continue;
|
|
570
718
|
}
|
|
571
|
-
//
|
|
572
|
-
|
|
573
|
-
if
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
719
|
+
// PROGRAMMATIC CHECK: Text-only responses after tool work need scrutiny
|
|
720
|
+
// If model outputs substantial narrative without tools, it's likely summarizing
|
|
721
|
+
// Check if this is a genuine completion or a premature summary
|
|
722
|
+
if (this._autoContinueEnabled && autoContinueAttempts < MAX_AUTO_CONTINUE_ATTEMPTS) {
|
|
723
|
+
// Intent patterns still catch "let me X" without tools
|
|
724
|
+
if (shouldAutoContinue(reply, false)) {
|
|
725
|
+
autoContinueAttempts++;
|
|
726
|
+
this.emitAssistantMessage(reply, { isFinal: false, usage, contextStats, wasStreamed: true });
|
|
727
|
+
this.messages.push({ role: 'assistant', content: reply });
|
|
728
|
+
const promptIndex = Math.min(autoContinueAttempts - 1, AUTO_CONTINUE_PROMPTS.length - 1);
|
|
729
|
+
this.messages.push({ role: 'user', content: AUTO_CONTINUE_PROMPTS[promptIndex] });
|
|
730
|
+
this.callbacks.onAutoContinue?.(autoContinueAttempts, MAX_AUTO_CONTINUE_ATTEMPTS, 'Model expressed intent but didn\'t act. Prompting to continue...');
|
|
731
|
+
continue;
|
|
732
|
+
}
|
|
580
733
|
}
|
|
581
734
|
// Final message - mark as streamed to avoid double-display in UI
|
|
582
735
|
if (reply) {
|
|
@@ -749,6 +902,88 @@ export class AgentRuntime {
|
|
|
749
902
|
model: this.modelId,
|
|
750
903
|
});
|
|
751
904
|
}
|
|
905
|
+
/**
|
|
906
|
+
* Extract a "command hash" from tool arguments for behavioral loop detection.
|
|
907
|
+
* For execute_bash, this is the actual command. For other tools, key identifying args.
|
|
908
|
+
*/
|
|
909
|
+
extractCmdHash(name, args) {
|
|
910
|
+
// For bash/execute commands, extract the command itself
|
|
911
|
+
if (name === 'execute_bash' || name === 'Bash') {
|
|
912
|
+
const cmd = args['command'];
|
|
913
|
+
if (cmd) {
|
|
914
|
+
// Normalize: trim, take first 100 chars, remove variable parts like timestamps
|
|
915
|
+
return cmd.trim().slice(0, 100).replace(/\d{10,}/g, 'N');
|
|
916
|
+
}
|
|
917
|
+
}
|
|
918
|
+
// For file operations, use the path
|
|
919
|
+
if (name === 'read_file' || name === 'Read' || name === 'read_files') {
|
|
920
|
+
const path = args['path'] || args['file_path'] || args['paths'];
|
|
921
|
+
if (path)
|
|
922
|
+
return `path:${JSON.stringify(path).slice(0, 100)}`;
|
|
923
|
+
}
|
|
924
|
+
if (name === 'list_files' || name === 'Glob') {
|
|
925
|
+
const path = args['path'] || args['pattern'];
|
|
926
|
+
if (path)
|
|
927
|
+
return `path:${JSON.stringify(path).slice(0, 100)}`;
|
|
928
|
+
}
|
|
929
|
+
// For search, use the query/pattern
|
|
930
|
+
if (name === 'Grep' || name === 'grep' || name === 'search') {
|
|
931
|
+
const pattern = args['pattern'] || args['query'];
|
|
932
|
+
if (pattern)
|
|
933
|
+
return `search:${String(pattern).slice(0, 100)}`;
|
|
934
|
+
}
|
|
935
|
+
// Default: use first significant arg value
|
|
936
|
+
const firstArg = Object.values(args)[0];
|
|
937
|
+
if (firstArg) {
|
|
938
|
+
return String(firstArg).slice(0, 100);
|
|
939
|
+
}
|
|
940
|
+
return 'no-args';
|
|
941
|
+
}
|
|
942
|
+
/**
|
|
943
|
+
* Check for behavioral loops - model calling the same tool with similar args repeatedly.
|
|
944
|
+
* Returns an error message if a loop is detected, null otherwise.
|
|
945
|
+
*
|
|
946
|
+
* This catches patterns like:
|
|
947
|
+
* - "git status -sb" called 5 times (same command, different outputs)
|
|
948
|
+
* - Repeated file reads of the same file
|
|
949
|
+
* - Repeated searches with the same pattern
|
|
950
|
+
*/
|
|
951
|
+
checkBehavioralLoop(toolCalls) {
|
|
952
|
+
// Track each tool call
|
|
953
|
+
for (const call of toolCalls) {
|
|
954
|
+
const cmdHash = this.extractCmdHash(call.name, call.arguments ?? {});
|
|
955
|
+
this.recentToolCalls.push({ name: call.name, cmdHash });
|
|
956
|
+
}
|
|
957
|
+
// Keep only recent history
|
|
958
|
+
while (this.recentToolCalls.length > AgentRuntime.TOOL_HISTORY_SIZE) {
|
|
959
|
+
this.recentToolCalls.shift();
|
|
960
|
+
}
|
|
961
|
+
// Count occurrences of each tool+cmdHash combination
|
|
962
|
+
const counts = new Map();
|
|
963
|
+
for (const { name, cmdHash } of this.recentToolCalls) {
|
|
964
|
+
const key = `${name}:${cmdHash}`;
|
|
965
|
+
counts.set(key, (counts.get(key) ?? 0) + 1);
|
|
966
|
+
}
|
|
967
|
+
// Check if any combination exceeds threshold
|
|
968
|
+
for (const [key, count] of counts) {
|
|
969
|
+
if (count >= AgentRuntime.BEHAVIORAL_LOOP_THRESHOLD) {
|
|
970
|
+
// Reset history to prevent immediate re-trigger
|
|
971
|
+
this.recentToolCalls = [];
|
|
972
|
+
// Extract the problematic tool name for a helpful message
|
|
973
|
+
const toolName = key.split(':')[0];
|
|
974
|
+
return `Behavioral loop detected: "${toolName}" called ${count} times with similar arguments. The task appears stuck. Please try a different approach or provide more specific instructions.`;
|
|
975
|
+
}
|
|
976
|
+
}
|
|
977
|
+
return null;
|
|
978
|
+
}
|
|
979
|
+
/**
|
|
980
|
+
* Reset behavioral loop tracking (called when user provides new input or task completes)
|
|
981
|
+
*/
|
|
982
|
+
resetBehavioralLoopTracking() {
|
|
983
|
+
this.recentToolCalls = [];
|
|
984
|
+
this.lastToolCallSignature = null;
|
|
985
|
+
this.repeatedToolCallCount = 0;
|
|
986
|
+
}
|
|
752
987
|
getHistory() {
|
|
753
988
|
return this.messages.map(cloneMessage);
|
|
754
989
|
}
|
package/dist/core/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -447,6 +447,7 @@ export declare class InteractiveShell {
|
|
|
447
447
|
private handleTerminalSetupCommand;
|
|
448
448
|
private handleApprovalsCommand;
|
|
449
449
|
private handlePermissionsCommand;
|
|
450
|
+
private handleUpdateCommand;
|
|
450
451
|
private handleInitCommand;
|
|
451
452
|
private handleCompactCommand;
|
|
452
453
|
private updateActiveSession;
|