erosolar-cli 2.1.230 → 2.1.234

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 (110) hide show
  1. package/agents/erosolar-security.rules.json +84 -0
  2. package/config/security-deployment.json +10 -9
  3. package/dist/bin/cliMode.d.ts +12 -0
  4. package/dist/bin/cliMode.d.ts.map +1 -0
  5. package/dist/bin/cliMode.js +27 -0
  6. package/dist/bin/cliMode.js.map +1 -0
  7. package/dist/bin/erosolar.js +47 -46
  8. package/dist/bin/erosolar.js.map +1 -1
  9. package/dist/capabilities/index.d.ts +1 -0
  10. package/dist/capabilities/index.d.ts.map +1 -1
  11. package/dist/capabilities/index.js +1 -0
  12. package/dist/capabilities/index.js.map +1 -1
  13. package/dist/capabilities/taoCapability.d.ts +13 -0
  14. package/dist/capabilities/taoCapability.d.ts.map +1 -0
  15. package/dist/capabilities/taoCapability.js +20 -0
  16. package/dist/capabilities/taoCapability.js.map +1 -0
  17. package/dist/contracts/agent-profiles.schema.json +16 -0
  18. package/dist/contracts/tools.schema.json +12 -0
  19. package/dist/core/agent.d.ts +6 -0
  20. package/dist/core/agent.d.ts.map +1 -1
  21. package/dist/core/agent.js +22 -0
  22. package/dist/core/agent.js.map +1 -1
  23. package/dist/core/agentOrchestrator.d.ts +3 -12
  24. package/dist/core/agentOrchestrator.d.ts.map +1 -1
  25. package/dist/core/agentOrchestrator.js +199 -107
  26. package/dist/core/agentOrchestrator.js.map +1 -1
  27. package/dist/core/baseToolFactory.d.ts +187 -0
  28. package/dist/core/baseToolFactory.d.ts.map +1 -0
  29. package/dist/core/baseToolFactory.js +352 -0
  30. package/dist/core/baseToolFactory.js.map +1 -0
  31. package/dist/core/constants.d.ts +5 -0
  32. package/dist/core/constants.d.ts.map +1 -0
  33. package/dist/core/constants.js +5 -0
  34. package/dist/core/constants.js.map +1 -0
  35. package/dist/core/errors/index.d.ts +50 -0
  36. package/dist/core/errors/index.d.ts.map +1 -0
  37. package/dist/core/errors/index.js +156 -0
  38. package/dist/core/errors/index.js.map +1 -0
  39. package/dist/core/errors/safetyValidator.d.ts.map +1 -1
  40. package/dist/core/errors/safetyValidator.js +6 -137
  41. package/dist/core/errors/safetyValidator.js.map +1 -1
  42. package/dist/headless/headlessApp.d.ts.map +1 -1
  43. package/dist/headless/headlessApp.js +2 -15
  44. package/dist/headless/headlessApp.js.map +1 -1
  45. package/dist/plugins/tools/nodeDefaults.d.ts.map +1 -1
  46. package/dist/plugins/tools/nodeDefaults.js +2 -0
  47. package/dist/plugins/tools/nodeDefaults.js.map +1 -1
  48. package/dist/plugins/tools/tao/taoPlugin.d.ts +3 -0
  49. package/dist/plugins/tools/tao/taoPlugin.d.ts.map +1 -0
  50. package/dist/plugins/tools/tao/taoPlugin.js +14 -0
  51. package/dist/plugins/tools/tao/taoPlugin.js.map +1 -0
  52. package/dist/providers/baseProvider.d.ts +148 -0
  53. package/dist/providers/baseProvider.d.ts.map +1 -0
  54. package/dist/providers/baseProvider.js +284 -0
  55. package/dist/providers/baseProvider.js.map +1 -0
  56. package/dist/shell/commandRegistry.d.ts +122 -0
  57. package/dist/shell/commandRegistry.d.ts.map +1 -0
  58. package/dist/shell/commandRegistry.js +371 -0
  59. package/dist/shell/commandRegistry.js.map +1 -0
  60. package/dist/shell/shellApp.d.ts.map +1 -1
  61. package/dist/shell/shellApp.js +2 -15
  62. package/dist/shell/shellApp.js.map +1 -1
  63. package/dist/tools/bashTools.d.ts.map +1 -1
  64. package/dist/tools/bashTools.js +1 -5
  65. package/dist/tools/bashTools.js.map +1 -1
  66. package/dist/tools/tao/index.d.ts +28 -0
  67. package/dist/tools/tao/index.d.ts.map +1 -0
  68. package/dist/tools/tao/index.js +33 -0
  69. package/dist/tools/tao/index.js.map +1 -0
  70. package/dist/tools/tao/intentParser.d.ts +9 -0
  71. package/dist/tools/tao/intentParser.d.ts.map +1 -0
  72. package/dist/tools/tao/intentParser.js +163 -0
  73. package/dist/tools/tao/intentParser.js.map +1 -0
  74. package/dist/tools/tao/rlEngine.d.ts +40 -0
  75. package/dist/tools/tao/rlEngine.d.ts.map +1 -0
  76. package/dist/tools/tao/rlEngine.js +237 -0
  77. package/dist/tools/tao/rlEngine.js.map +1 -0
  78. package/dist/tools/tao/sessionState.d.ts +9 -0
  79. package/dist/tools/tao/sessionState.d.ts.map +1 -0
  80. package/dist/tools/tao/sessionState.js +18 -0
  81. package/dist/tools/tao/sessionState.js.map +1 -0
  82. package/dist/tools/tao/types.d.ts +109 -0
  83. package/dist/tools/tao/types.d.ts.map +1 -0
  84. package/dist/tools/tao/types.js +5 -0
  85. package/dist/tools/tao/types.js.map +1 -0
  86. package/dist/tools/tao/verification.d.ts +23 -0
  87. package/dist/tools/tao/verification.d.ts.map +1 -0
  88. package/dist/tools/tao/verification.js +211 -0
  89. package/dist/tools/tao/verification.js.map +1 -0
  90. package/dist/tools/taoTools.d.ts +23 -0
  91. package/dist/tools/taoTools.d.ts.map +1 -0
  92. package/dist/tools/taoTools.js +14499 -0
  93. package/dist/tools/taoTools.js.map +1 -0
  94. package/dist/ui/UnifiedUIRenderer.d.ts +5 -0
  95. package/dist/ui/UnifiedUIRenderer.d.ts.map +1 -1
  96. package/dist/ui/UnifiedUIRenderer.js +49 -20
  97. package/dist/ui/UnifiedUIRenderer.js.map +1 -1
  98. package/dist/ui/index.d.ts +102 -0
  99. package/dist/ui/index.d.ts.map +1 -0
  100. package/dist/ui/index.js +120 -0
  101. package/dist/ui/index.js.map +1 -0
  102. package/dist/ui/orchestration/UIUpdateCoordinator.d.ts.map +1 -1
  103. package/dist/ui/orchestration/UIUpdateCoordinator.js +7 -0
  104. package/dist/ui/orchestration/UIUpdateCoordinator.js.map +1 -1
  105. package/dist/utils/packageInfo.d.ts +14 -0
  106. package/dist/utils/packageInfo.d.ts.map +1 -0
  107. package/dist/utils/packageInfo.js +45 -0
  108. package/dist/utils/packageInfo.js.map +1 -0
  109. package/package.json +3 -3
  110. package/scripts/deploy-security-capabilities.js +157 -0
@@ -1,3 +1,4 @@
1
+ import { TASK_FULLY_COMPLETE } from './constants.js';
1
2
  import { TaskCompletionDetector } from './taskCompletionDetector.js';
2
3
  /**
3
4
  * Single-pass orchestration: drive the agent to finish as much as possible
@@ -13,7 +14,7 @@ export class AgentOrchestrator {
13
14
  const enforceActions = options?.enforceActions ?? true;
14
15
  const verificationMode = options?.verificationMode ?? 'auto';
15
16
  const singlePassFocus = options?.singlePassFocus ?? true;
16
- const maxAttempts = Math.max(1, options?.maxAttempts ?? 5);
17
+ const maxAttempts = Math.max(1, options?.maxAttempts ?? 6);
17
18
  const completionDetector = new TaskCompletionDetector();
18
19
  const contextualGuidance = this.buildContextualGuidance(request);
19
20
  const attempts = [];
@@ -46,11 +47,10 @@ export class AgentOrchestrator {
46
47
  attempts.push(attempt);
47
48
  finalAttempt = attempt;
48
49
  exitReason = attempt.exitReason;
49
- if (!this.shouldContinue(exitReason, attempts)) {
50
- break;
51
- }
52
- if (attempts.length >= maxAttempts) {
53
- maxAttemptsHit = true;
50
+ // Single exit check - combines completion and limit detection
51
+ maxAttemptsHit = attempts.length >= maxAttempts;
52
+ const continueRun = this.shouldContinue(attempts, maxAttempts);
53
+ if (!continueRun || maxAttemptsHit) {
54
54
  break;
55
55
  }
56
56
  nextPrompt = this.buildContinuationPrompt(request, attempt, attempts.length + 1, enforceActions, contextualGuidance);
@@ -111,20 +111,85 @@ export class AgentOrchestrator {
111
111
  return { summary, limitations, recommendations };
112
112
  }
113
113
  /**
114
- * Generate intelligent insight by analyzing the actual conversation context.
115
- * Includes honest assessment of what was/wasn't verified.
114
+ * Generate comprehensive insight summary for user transparency.
115
+ * Shows what was done, what might be incomplete, and potential concerns.
116
116
  */
117
- async generateInsightSummary(request, _response, toolsUsed, exitReason, _attemptsCount, maxAttemptsHit, completion, attempts) {
118
- // Get the actual conversation history for real context
117
+ async generateInsightSummary(_request, _response, toolsUsed, exitReason, attemptsCount, maxAttemptsHit, completion, attempts) {
119
118
  const history = this.agent.getHistory();
120
- const context = this.extractContextAndLimitations(history, toolsUsed, attempts);
121
- // Skip summary only for truly clean completions with verified output
122
- if (exitReason === 'complete' && !completion.shouldVerify && context.hasVerification && !context.hasErrors) {
119
+ const ctx = this.extractContextAndLimitations(history, toolsUsed, attempts);
120
+ // Build comprehensive summary sections
121
+ const sections = [];
122
+ // 1. What was done - key findings and actions
123
+ if (ctx.keyFindings.length > 0) {
124
+ const findings = ctx.keyFindings.slice(0, 3).join('; ');
125
+ sections.push(`Done: ${findings}`);
126
+ }
127
+ // 2. Tool execution summary
128
+ const allTools = attempts.flatMap(a => a.toolExecutions);
129
+ const successfulTools = allTools.filter(t => t.success);
130
+ const failedTools = allTools.filter(t => !t.success);
131
+ if (allTools.length > 0) {
132
+ const toolSummary = [];
133
+ if (successfulTools.length > 0) {
134
+ const uniqueTools = [...new Set(successfulTools.map(t => t.name))];
135
+ toolSummary.push(`${successfulTools.length} tool calls (${uniqueTools.slice(0, 4).join(', ')}${uniqueTools.length > 4 ? '...' : ''})`);
136
+ }
137
+ if (failedTools.length > 0) {
138
+ toolSummary.push(`${failedTools.length} failed`);
139
+ }
140
+ if (toolSummary.length > 0) {
141
+ sections.push(`Tools: ${toolSummary.join(', ')}`);
142
+ }
143
+ }
144
+ else if (toolsUsed.length === 0) {
145
+ sections.push('Tools: none used (response may be ungrounded)');
146
+ }
147
+ // 3. Verification status
148
+ const verifyParts = [];
149
+ if (ctx.ranTests)
150
+ verifyParts.push('tests ran');
151
+ if (ctx.hasVerification && !ctx.ranTests)
152
+ verifyParts.push('build checked');
153
+ if (ctx.madeEdits && !ctx.ranTests)
154
+ verifyParts.push('edits NOT tested');
155
+ if (ctx.hasErrors)
156
+ verifyParts.push('ERRORS detected');
157
+ if (ctx.hasWarnings)
158
+ verifyParts.push('warnings present');
159
+ if (verifyParts.length > 0) {
160
+ sections.push(`Status: ${verifyParts.join(', ')}`);
161
+ }
162
+ // 4. Completion status and concerns
163
+ const concerns = [];
164
+ if (maxAttemptsHit && exitReason !== 'complete') {
165
+ concerns.push(`stopped after ${attemptsCount} attempts (may be incomplete)`);
166
+ }
167
+ if (exitReason === 'incomplete') {
168
+ concerns.push('task may not be fully complete');
169
+ }
170
+ if (completion.shouldVerify) {
171
+ concerns.push('manual verification recommended');
172
+ }
173
+ // 5. Honest limitations - what AI cannot guarantee
174
+ if (ctx.limitations.length > 0) {
175
+ const limitationsStr = ctx.limitations.slice(0, 3).join(', ');
176
+ concerns.push(limitationsStr);
177
+ }
178
+ // Add concerns section if any
179
+ if (concerns.length > 0) {
180
+ sections.push(`Note: ${concerns.join('; ')}`);
181
+ }
182
+ // 6. Potential hallucination warning for ungrounded responses
183
+ if (toolsUsed.length === 0 && !ctx.hasVerification) {
184
+ sections.push('⚠️ No tool verification - response based on model knowledge only');
185
+ }
186
+ // Return null only for clean, verified completions
187
+ if (sections.length === 0 ||
188
+ (exitReason === 'complete' && !completion.shouldVerify &&
189
+ ctx.hasVerification && !ctx.hasErrors && ctx.limitations.length === 0)) {
123
190
  return null;
124
191
  }
125
- // Build insight with limitations baked in
126
- const insight = await this.buildIntelligentInsight(request, exitReason, maxAttemptsHit, completion, context);
127
- return insight;
192
+ return sections.join(' | ');
128
193
  }
129
194
  /**
130
195
  * Extract context AND limitations from the run.
@@ -181,128 +246,118 @@ export class AgentOrchestrator {
181
246
  }
182
247
  }
183
248
  }
184
- // Build honest limitations - be clear about what AI orchestration cannot guarantee
249
+ // Intelligent limitation analysis - context-aware reasoning about what could go wrong
250
+ const toolNames = allTools.map(t => t.name);
251
+ const assistantMessages = relevant.filter(m => m.role === 'assistant').map(m => String(m.content || ''));
252
+ const lastAssistant = assistantMessages[assistantMessages.length - 1] || '';
253
+ // 1. Verification gaps
185
254
  if (!ranTests) {
186
- limitations.push('no tests ran');
187
- }
188
- if (madeEdits && !ranTests) {
189
- limitations.push('edits untested');
255
+ if (madeEdits) {
256
+ limitations.push('code edits made but no tests executed - behavior unverified');
257
+ }
258
+ else {
259
+ limitations.push('no automated tests ran');
260
+ }
190
261
  }
191
262
  if (madeEdits && !hasVerification) {
192
- limitations.push('no build/lint check');
263
+ limitations.push('no build or lint check performed after edits');
193
264
  }
265
+ // 2. Tool execution concerns
194
266
  if (toolsUsed.length === 0) {
195
- limitations.push('no tools used - ungrounded response');
267
+ limitations.push('response not grounded in tool execution - may contain assumptions');
196
268
  }
197
- if (allTools.some(t => !t.success)) {
198
- limitations.push('some tools failed');
269
+ const failedToolNames = allTools.filter(t => !t.success).map(t => t.name);
270
+ if (failedToolNames.length > 0) {
271
+ const unique = [...new Set(failedToolNames)];
272
+ limitations.push(`${unique.length} tool(s) failed: ${unique.slice(0, 3).join(', ')}${unique.length > 3 ? '...' : ''}`);
199
273
  }
200
- // Core AI limitations - always honest about what we can't know
274
+ // 3. Potential hallucination indicators
275
+ if (lastAssistant) {
276
+ // Check for speculative language suggesting uncertainty
277
+ if (/\b(might|may|could|possibly|probably|likely|assume|guess|think)\b/i.test(lastAssistant)) {
278
+ if (!/\b(definitely|confirmed|verified|tested|checked)\b/i.test(lastAssistant)) {
279
+ limitations.push('response contains speculative language - verify claims');
280
+ }
281
+ }
282
+ // Check for claims without tool evidence
283
+ if (/\b(fixed|resolved|completed|works now)\b/i.test(lastAssistant) && !ranTests && !hasVerification) {
284
+ limitations.push('completion claimed without verification - manually confirm');
285
+ }
286
+ }
287
+ // 4. Edge case and scope concerns
201
288
  if (madeEdits) {
202
- // AI can't truly verify runtime behavior, edge cases, or production impact
289
+ // Analyze edit scope
290
+ const editCount = allTools.filter(t => ['edit', 'edit_file', 'write', 'write_file'].includes(t.name) && t.success).length;
291
+ if (editCount > 3) {
292
+ limitations.push(`${editCount} files edited - review each for correctness`);
293
+ }
203
294
  if (!ranTests) {
204
- limitations.push('runtime behavior unverified');
295
+ limitations.push('edge cases and error handling paths untested');
205
296
  }
206
297
  }
207
- return { keyFindings, hasErrors, hasWarnings, hasVerification, ranTests, madeEdits, limitations };
208
- }
209
- /**
210
- * Build intelligent insight by asking LLM to analyze the run context.
211
- * Always uses AI generation - no static fallbacks.
212
- */
213
- async buildIntelligentInsight(request, exitReason, maxAttemptsHit, _completion, context) {
214
- // Build context summary for LLM
215
- const statusParts = [];
216
- if (context.hasErrors)
217
- statusParts.push('errors occurred');
218
- if (context.hasWarnings)
219
- statusParts.push('warnings present');
220
- if (context.madeEdits)
221
- statusParts.push('files edited');
222
- if (context.ranTests)
223
- statusParts.push('tests ran');
224
- if (!context.hasVerification)
225
- statusParts.push('no verification');
226
- if (maxAttemptsHit && exitReason !== 'complete')
227
- statusParts.push('stopped early');
228
- const prompt = `Analyze this AI task run and provide ONE concise sentence insight for a developer.
229
- Be specific about what happened, what worked/failed, and any limitations.
230
-
231
- Task: ${this.truncateForPrompt(request, 120)}
232
- Exit: ${exitReason}
233
- Status: ${statusParts.join(', ') || 'completed'}
234
- ${context.keyFindings.length > 0 ? `Findings:\n${context.keyFindings.slice(0, 5).join('\n')}` : ''}
235
- ${context.limitations.length > 0 ? `Limitations: ${context.limitations.join(', ')}` : ''}
236
-
237
- Reply with ONLY one sentence (no preamble, no "Here is", no quotes). Be honest about gaps.`;
238
- try {
239
- const insight = await this.agent.send(prompt, false);
240
- this.agent.drainToolExecutions();
241
- return this.extractCoreSentence(insight);
298
+ // 5. Security and production concerns
299
+ if (toolNames.includes('bash')) {
300
+ const bashOutputs = relevant.filter(m => m.role === 'tool').map(m => String(m.content || ''));
301
+ const hasSensitiveOps = bashOutputs.some(o => /\b(rm -rf|chmod 777|sudo|password|secret|token|key=)\b/i.test(o));
302
+ if (hasSensitiveOps) {
303
+ limitations.push('sensitive operations detected - review security implications');
304
+ }
242
305
  }
243
- catch {
244
- return null;
306
+ // 6. Incomplete task indicators
307
+ if (hasErrors && !keyFindings.some(f => /fixed|resolved/i.test(f))) {
308
+ limitations.push('errors detected but not explicitly resolved');
245
309
  }
246
- }
247
- /**
248
- * Extract core sentence from LLM response.
249
- */
250
- extractCoreSentence(text) {
251
- if (!text)
252
- return null;
253
- const cleaned = text
254
- .replace(/```[\s\S]*?```/g, '')
255
- .replace(/\*\*([^*]+)\*\*/g, '$1')
256
- .replace(/^[\s\S]*?(?:insight|key|outcome|issue|note):\s*/i, '')
257
- .replace(/\s+/g, ' ')
258
- .trim();
259
- // Get first real sentence, skip meta-sentences
260
- const sentences = cleaned.split(/(?<=[.!?])\s+/);
261
- for (const s of sentences) {
262
- if (/^(here|this|the key|based on|looking)/i.test(s))
263
- continue;
264
- if (s.length >= 15 && s.length <= 120)
265
- return s.trim();
266
- }
267
- if (cleaned.length > 100) {
268
- return cleaned.slice(0, 97) + '...';
269
- }
270
- return cleaned || null;
271
- }
272
- truncateForPrompt(text, maxLength = 800) {
273
- if (!text)
274
- return '';
275
- const trimmed = text.trim();
276
- if (trimmed.length <= maxLength)
277
- return trimmed;
278
- return `${trimmed.slice(0, maxLength - 3)}...`;
310
+ return { keyFindings, hasErrors, hasWarnings, hasVerification, ranTests, madeEdits, limitations };
279
311
  }
280
312
  buildSinglePassPrompt(originalRequest, enforceActions, contextualGuidance) {
281
313
  const actionLine = enforceActions
282
- ? '- Use tools to complete the task.'
314
+ ? '- Use tools to complete the task. Act immediately instead of re-planning.'
283
315
  : '- Provide your best response.';
284
316
  const guidanceBlock = this.formatContextualGuidance(contextualGuidance);
285
317
  return `${originalRequest.trim()}
286
318
 
287
319
  ${actionLine}
288
320
  - Finish as much as possible now.
321
+ - Favor direct execution over additional planning.
322
+ - Run quick verification (tests/build) when claiming completion.
289
323
  - Show outputs as evidence.
290
324
  - End with TASK_FULLY_COMPLETE when done.${guidanceBlock}`;
291
325
  }
292
- shouldContinue(exitReason, attempts) {
293
- // Only continue on incomplete - no-action after multiple attempts means we're stuck
294
- if (exitReason !== 'incomplete') {
326
+ shouldContinue(attempts, maxAttempts) {
327
+ if (!attempts.length) {
295
328
  return false;
296
329
  }
330
+ const latest = attempts[attempts.length - 1];
331
+ const exitReason = latest.exitReason;
332
+ if (attempts.length >= maxAttempts) {
333
+ return false;
334
+ }
335
+ // Allow recovery attempts for common failure modes before giving up
336
+ if (exitReason === 'no-action') {
337
+ const noActionAttempts = attempts.filter((a) => a.exitReason === 'no-action').length;
338
+ return noActionAttempts < 2;
339
+ }
340
+ if (exitReason === 'verification-needed') {
341
+ const verificationAttempts = attempts.filter((a) => a.exitReason === 'verification-needed').length;
342
+ return verificationAttempts < 2;
343
+ }
344
+ if (exitReason === 'empty-response') {
345
+ const emptyResponses = attempts.filter((a) => a.exitReason === 'empty-response').length;
346
+ return emptyResponses < 2;
347
+ }
348
+ if (exitReason === 'blocked') {
349
+ const blockedResponses = attempts.filter((a) => a.exitReason === 'blocked').length;
350
+ return blockedResponses < 2;
351
+ }
297
352
  // Detect repetition loops - if last 3 attempts had no new tool usage, stop
298
- if (attempts.length >= 3) {
353
+ if (exitReason === 'incomplete' && attempts.length >= 3) {
299
354
  const recentAttempts = attempts.slice(-3);
300
355
  const allNoTools = recentAttempts.every(a => a.toolsUsed.length === 0);
301
356
  if (allNoTools) {
302
357
  return false; // Stuck in a loop with no progress
303
358
  }
304
359
  }
305
- return true;
360
+ return exitReason === 'incomplete';
306
361
  }
307
362
  buildContinuationPrompt(originalRequest, attempt, nextAttemptNumber, enforceActions, contextualGuidance) {
308
363
  const actionLine = enforceActions
@@ -313,17 +368,46 @@ ${actionLine}
313
368
  ? `Tools used: ${attempt.toolsUsed.join(', ')}.`
314
369
  : '';
315
370
  const guidanceBlock = this.formatContextualGuidance(contextualGuidance);
371
+ const recoveryGuidance = this.buildRecoveryGuidance(attempt);
372
+ const recoveryBlock = recoveryGuidance.length
373
+ ? `\nRecovery focus:\n${recoveryGuidance.map((line) => `- ${line}`).join('\n')}`
374
+ : '';
316
375
  return `${originalRequest.trim()}
317
376
 
318
377
  Pass ${nextAttemptNumber}: ${reason}
319
378
  ${toolContext}
320
379
  ${actionLine}
321
- - End with TASK_FULLY_COMPLETE when done.${guidanceBlock}`;
380
+ - End with TASK_FULLY_COMPLETE when done.${guidanceBlock}${recoveryBlock}`;
381
+ }
382
+ buildRecoveryGuidance(attempt) {
383
+ const guidance = [];
384
+ if (attempt.exitReason === 'no-action' || attempt.analysis.planOnly || !attempt.analysis.tookAction) {
385
+ guidance.push('Skip more planning; call tools now (read/search -> edit/run checks).');
386
+ }
387
+ if (attempt.exitReason === 'verification-needed') {
388
+ guidance.push('Run verification now (tests/build) and include the output before stopping.');
389
+ }
390
+ if (attempt.exitReason === 'empty-response') {
391
+ guidance.push('Provide a substantive update with tool calls and outputs; previous reply was empty.');
392
+ }
393
+ if (attempt.exitReason === 'blocked') {
394
+ guidance.push('Proceed with available context without asking for more input; use tools to unblock.');
395
+ }
396
+ const failedTools = attempt.toolExecutions.filter((tool) => !tool.success).map((tool) => tool.name);
397
+ if (failedTools.length > 0) {
398
+ const uniqueFailed = Array.from(new Set(failedTools));
399
+ guidance.push(`Retry failed tools with fixes or alternatives (${uniqueFailed.join(', ')}).`);
400
+ }
401
+ return guidance;
322
402
  }
323
403
  buildContextualGuidance(request) {
324
404
  const normalized = request.toLowerCase();
325
405
  const guidance = [];
326
406
  guidance.push('Ground responses in actual code; read files before suggesting changes.');
407
+ const isLargePaste = normalized.length > 4000 || normalized.split('\n').length > 120;
408
+ if (isLargePaste) {
409
+ guidance.push('Work directly with the provided long input; avoid asking for more detail and act on it.');
410
+ }
327
411
  const bugSweep = /\bbugs?\b|\bdefects?\b|\bissues?\b|\bbug\s+report\b/.test(normalized);
328
412
  if (bugSweep) {
329
413
  guidance.push('Search broadly for related issues.');
@@ -332,6 +416,10 @@ ${actionLine}
332
416
  if (needsUnderstanding) {
333
417
  guidance.push('Skim project structure before detailed analysis.');
334
418
  }
419
+ const securityWork = /\b(pentest|red\s*team|offensive|exploit|attack|apt|threat|recon|scan|payload|shell|persistence|tao|security testing)\b/.test(normalized);
420
+ if (securityWork) {
421
+ guidance.push('For security/offensive tasks use the TAO suite (TaoOps for NL planning; KineticOps/Recon/Fuzz/Payload/Persist/Hash/NetCraft for execution) and show evidence.');
422
+ }
335
423
  return guidance;
336
424
  }
337
425
  formatContextualGuidance(guidance) {
@@ -348,6 +436,10 @@ ${actionLine}
348
436
  return attempt.completion.reason
349
437
  ? `verification was requested (${attempt.completion.reason}).`
350
438
  : 'verification was requested.';
439
+ case 'empty-response':
440
+ return 'previous response was empty or non-substantive.';
441
+ case 'blocked':
442
+ return 'model reported being blocked; continue with available context and tools.';
351
443
  case 'incomplete':
352
444
  default:
353
445
  return attempt.completion.reason
@@ -412,7 +504,7 @@ ${actionLine}
412
504
  hasExplicitCompletion(response) {
413
505
  if (!response.trim())
414
506
  return false;
415
- if (response.includes('TASK_FULLY_COMPLETE'))
507
+ if (response.includes(TASK_FULLY_COMPLETE))
416
508
  return true;
417
509
  const completionPatterns = [
418
510
  /\btask(s)? (is|are)?\s*complete\b/i,
@@ -425,7 +517,7 @@ ${actionLine}
425
517
  }
426
518
  hasCompletionContradiction(response) {
427
519
  // Skip contradiction check if TASK_FULLY_COMPLETE is present - explicit marker takes precedence
428
- if (response.includes('TASK_FULLY_COMPLETE')) {
520
+ if (response.includes(TASK_FULLY_COMPLETE)) {
429
521
  return false;
430
522
  }
431
523
  const contradictions = [
@@ -1 +1 @@
1
- {"version":3,"file":"agentOrchestrator.js","sourceRoot":"","sources":["../../src/core/agentOrchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentOrchestrator.js","sourceRoot":"","sources":["../../src/core/agentOrchestrator.ts"],"names":[],"mappings":"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"}