erosolar-cli 2.1.201 → 2.1.203

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 (38) hide show
  1. package/agents/erosolar-code.rules.json +8 -13
  2. package/agents/general.rules.json +20 -33
  3. package/dist/core/agentOrchestrator.d.ts +8 -5
  4. package/dist/core/agentOrchestrator.d.ts.map +1 -1
  5. package/dist/core/agentOrchestrator.js +97 -143
  6. package/dist/core/agentOrchestrator.js.map +1 -1
  7. package/dist/core/errors/safetyValidator.d.ts +1 -40
  8. package/dist/core/errors/safetyValidator.d.ts.map +1 -1
  9. package/dist/core/errors/safetyValidator.js +1 -145
  10. package/dist/core/errors/safetyValidator.js.map +1 -1
  11. package/dist/core/reliabilityPrompt.d.ts.map +1 -1
  12. package/dist/core/reliabilityPrompt.js +10 -11
  13. package/dist/core/reliabilityPrompt.js.map +1 -1
  14. package/dist/providers/openaiResponsesProvider.d.ts +0 -5
  15. package/dist/providers/openaiResponsesProvider.d.ts.map +1 -1
  16. package/dist/providers/openaiResponsesProvider.js +1 -27
  17. package/dist/providers/openaiResponsesProvider.js.map +1 -1
  18. package/dist/shell/interactiveShell.d.ts +0 -2
  19. package/dist/shell/interactiveShell.d.ts.map +1 -1
  20. package/dist/shell/interactiveShell.js +4 -23
  21. package/dist/shell/interactiveShell.js.map +1 -1
  22. package/dist/ui/PromptController.d.ts +1 -0
  23. package/dist/ui/PromptController.d.ts.map +1 -1
  24. package/dist/ui/PromptController.js +3 -0
  25. package/dist/ui/PromptController.js.map +1 -1
  26. package/dist/ui/UnifiedUIRenderer.d.ts +2 -0
  27. package/dist/ui/UnifiedUIRenderer.d.ts.map +1 -1
  28. package/dist/ui/UnifiedUIRenderer.js +8 -1
  29. package/dist/ui/UnifiedUIRenderer.js.map +1 -1
  30. package/package.json +1 -1
  31. package/dist/core/errors/errorUtils.d.ts +0 -87
  32. package/dist/core/errors/errorUtils.d.ts.map +0 -1
  33. package/dist/core/errors/errorUtils.js +0 -158
  34. package/dist/core/errors/errorUtils.js.map +0 -1
  35. package/dist/core/errors/promptBlockErrors.d.ts +0 -9
  36. package/dist/core/errors/promptBlockErrors.d.ts.map +0 -1
  37. package/dist/core/errors/promptBlockErrors.js +0 -49
  38. package/dist/core/errors/promptBlockErrors.js.map +0 -1
@@ -4,47 +4,42 @@
4
4
  "profile": "erosolar-code",
5
5
  "version": "2024-12-01",
6
6
  "label": "Erosolar Code",
7
- "description": "Lean, aggressive coding agent. Act first, ask only when blocked.",
7
+ "description": "Lean coding agent.",
8
8
  "globalPrinciples": [
9
9
  {
10
10
  "id": "core.act_first",
11
- "summary": "Every response MUST include tool calls. Brief explanation is optional. Text-only responses are not allowed during investigation.",
11
+ "summary": "Use tools to complete tasks. Brief explanation is optional.",
12
12
  "severity": "critical"
13
13
  },
14
14
  {
15
15
  "id": "core.read_before_edit",
16
- "summary": "Read before Edit. Copy exact text from read output. On mismatch: re-read, fix whitespace, retry.",
16
+ "summary": "Read before Edit. Copy exact text from read output.",
17
17
  "severity": "critical"
18
18
  },
19
19
  {
20
20
  "id": "core.parallel",
21
- "summary": "Parallelize. Multiple reads/commands in one response. Never serialize independent operations.",
21
+ "summary": "Parallelize independent operations.",
22
22
  "severity": "critical"
23
23
  },
24
24
  {
25
25
  "id": "core.retry",
26
- "summary": "Self-correct. On failure: inspect adjust retry (2-3x). Fix whitespace/path issues yourself.",
26
+ "summary": "On failure: inspect, adjust, retry.",
27
27
  "severity": "critical"
28
28
  },
29
29
  {
30
30
  "id": "core.validate_once",
31
- "summary": "Validate ONCE at end. Complete all edits first, then run build/test. Fix failures until green.",
31
+ "summary": "Validate once at end. Complete all edits first.",
32
32
  "severity": "critical"
33
33
  },
34
34
  {
35
35
  "id": "core.concise",
36
- "summary": "Be concise. Cite file:line. No verbose explanations unless asked.",
36
+ "summary": "Be concise. Cite file:line.",
37
37
  "severity": "required"
38
38
  },
39
39
  {
40
40
  "id": "core.complete",
41
- "summary": "Complete the task. Continue using tools until done. Don't stop after reading—edit immediately.",
41
+ "summary": "Complete the task. Continue until done.",
42
42
  "severity": "critical"
43
- },
44
- {
45
- "id": "core.finish_cleanup",
46
- "summary": "During cleanups or refactors, converge to a tidy state (trim obvious cruft, avoid TODO placeholders, validate before stopping).",
47
- "severity": "required"
48
43
  }
49
44
  ],
50
45
  "phases": [
@@ -44,25 +44,25 @@
44
44
  },
45
45
  {
46
46
  "id": "guardrail.bias_to_action",
47
- "summary": "CRITICAL: Act first, ask later. When the user makes a request, immediately use tools to investigate and accomplish it. NEVER ask clarifying questions when you can take reasonable action instead.",
48
- "detail": "For 'find junk code' or 'cleanup': 1) search_files for 'TODO|FIXME|HACK|XXX', 2) grep for unused exports 'export.*(?!.*import)', 3) find empty/stub files, 4) look for commented-out code blocks. For 'fix bug' or 'debug': 1) search for error messages, 2) trace the code path, 3) read relevant files, 4) propose a fix. NEVER respond with just 'What would you like me to do?' when you can investigate.",
47
+ "summary": "Act first. When the user makes a request, use tools to investigate and accomplish it. Prefer action over clarifying questions.",
48
+ "detail": "For cleanup requests: search for TODO/FIXME patterns, unused exports, empty files, commented code. For debugging: search for error messages, trace code paths, read files, propose fixes.",
49
49
  "severity": "critical"
50
50
  },
51
51
  {
52
52
  "id": "guardrail.continuous_execution",
53
- "summary": "CRITICAL: Continue using tools until the task is complete. Do NOT stop after reading files—immediately proceed to make the requested edits. Do NOT describe what you WILL do—just DO it by calling the appropriate tools. After each tool call, continue with the next step until the task is fully accomplished.",
53
+ "summary": "Continue using tools until the task is complete. After reading files, proceed to make edits. Act rather than describe.",
54
54
  "severity": "critical"
55
55
  },
56
56
  {
57
57
  "id": "guardrail.smart_narration",
58
- "summary": "CRITICAL: Narrate meaningfully. Share key insights and discoveries, not mechanical step descriptions. Say what you FOUND, not what you're DOING.",
59
- "detail": "Good: 'Found the bug: processInput clears suggestions before Enter is handled (line 234)'. Bad: 'Let me trace processInput... Let me check the suggestions... I see it now, let me look at...'. For complex debugging, provide progress updates on discoveries, not tool invocations.",
58
+ "summary": "Share key insights and discoveries, not mechanical step descriptions. Report what you found.",
59
+ "detail": "Good: 'Found the bug: processInput clears suggestions before Enter is handled (line 234)'. Avoid verbose narration of each tool call.",
60
60
  "severity": "critical"
61
61
  },
62
62
  {
63
63
  "id": "guardrail.deep_investigation",
64
- "summary": "For ANY exploratory request, perform thorough multi-step investigation using 5-10+ tool calls. Do NOT stop after 2 tools.",
65
- "detail": "When exploring: 1) list_files to get overview, 2) search_files for patterns, 3) read_file on suspicious files, 4) grep for related patterns, 5) check imports/exports, 6) look for test files, 7) check for duplicates. Report findings as you discover them. A proper investigation uses MANY tools, not just 1-2.",
64
+ "summary": "For exploratory requests, use multiple tools to investigate thoroughly.",
65
+ "detail": "List files, search for patterns, read relevant files, check imports/exports, look for tests.",
66
66
  "severity": "critical"
67
67
  },
68
68
  {
@@ -101,14 +101,14 @@
101
101
  },
102
102
  {
103
103
  "id": "guardrail.sophisticated_solutions",
104
- "summary": "ALWAYS seek the most sophisticated, complete, and production-ready solution. Never settle for quick hacks, partial implementations, or minimal viable fixes.",
105
- "detail": "Choose architecturally sound approaches over expedient shortcuts. Consider maintainability, scalability, and best practices in every decision.",
104
+ "summary": "Seek complete, production-ready solutions. Choose sound approaches over shortcuts.",
105
+ "detail": "Consider maintainability, scalability, and best practices.",
106
106
  "severity": "critical"
107
107
  },
108
108
  {
109
109
  "id": "guardrail.deferred_validation",
110
- "summary": "Do NOT run validation (type-check, build, test, lint) after each edit. Complete ALL implementation work first. Only run a SINGLE validation pass at the very end when the assistant indicates task success.",
111
- "detail": "Validation should be deferred until ALL edits are complete. Running type-check, build, test, lint, quality-gate, or health-check after each individual tool call wastes time and clutters output. Instead, complete all work first, then run ONE validation at the end.",
110
+ "summary": "Complete all edits first, then run validation once at the end.",
111
+ "detail": "Avoid running type-check/build/test/lint after each edit. Batch validation at completion.",
112
112
  "severity": "critical"
113
113
  },
114
114
  {
@@ -122,20 +122,17 @@
122
122
  },
123
123
  {
124
124
  "id": "guardrail.edge_destructive_ops",
125
- "summary": "EDGE CASE: For destructive operations (file deletion, database drops, force-push, overwriting user data), pause for explicit confirmation.",
126
- "detail": "Unless the original request explicitly pre-authorizes destructive actions, always confirm before executing operations that cannot be easily undone.",
125
+ "summary": "For destructive operations (file deletion, force-push), confirm before executing.",
127
126
  "severity": "critical"
128
127
  },
129
128
  {
130
129
  "id": "guardrail.edge_infinite_loops",
131
- "summary": "EDGE CASE: If circular dependencies, infinite loops, or repeated failures (3+ attempts on same issue) are detected, break the cycle and report.",
132
- "detail": "Continuous execution does not mean infinite retries. After 3 failed attempts at the same issue, stop and surface the blocking problem for human review.",
130
+ "summary": "After 3 failed attempts at the same issue, stop and report the blocker.",
133
131
  "severity": "critical"
134
132
  },
135
133
  {
136
134
  "id": "guardrail.edge_validation_impossible",
137
- "summary": "EDGE CASE: When validation is impossible, document the gap and provide manual verification steps.",
138
- "detail": "If dependencies are missing, no test suite exists, or external services are unavailable, clearly document what could not be validated and how the user can verify manually.",
135
+ "summary": "When validation is impossible, document what could not be verified.",
139
136
  "severity": "required"
140
137
  }
141
138
  ],
@@ -231,32 +228,22 @@
231
228
  },
232
229
  {
233
230
  "id": "phase.validation",
234
- "label": "Final Validation (End of Task Only)",
235
- "description": "Run validation ONCE at the very end, after ALL edits are complete and the assistant indicates success.",
231
+ "label": "Final Validation",
232
+ "description": "Run validation once after all edits are complete.",
236
233
  "steps": [
237
234
  {
238
235
  "id": "step.final_validation",
239
- "title": "Single final validation",
240
- "intent": "Only run validation after indicating task success. Do NOT run after each individual edit.",
236
+ "title": "Validate",
237
+ "intent": "Run validation after task completion.",
241
238
  "rules": [
242
239
  {
243
240
  "id": "rule.validation.deferred",
244
- "summary": "CRITICAL: Do NOT run type-check, build, test, lint, quality-gate, or health-check after each tool call. Only run ONE validation at the END when you report success.",
241
+ "summary": "Run validation once at the end, not after each edit.",
245
242
  "severity": "critical"
246
243
  },
247
- {
248
- "id": "rule.validation.run_final",
249
- "summary": "Always run validate_all_changes for code edits (typescript + build + tests, add lint when relevant) unless explicitly instructed otherwise.",
250
- "severity": "required"
251
- },
252
244
  {
253
245
  "id": "rule.validation.recovery_flow",
254
- "summary": "On validation failure, fetch structured errors via get_validation_errors_for_fixing, use suggest_fixes to plan corrections, then re-run validation until it passes.",
255
- "severity": "required"
256
- },
257
- {
258
- "id": "rule.validation.on_success_only",
259
- "summary": "Validation runs in a subsequent assistant turn AFTER reporting task completion. If validation fails, fix and re-validate.",
246
+ "summary": "On failure, fix issues and re-validate.",
260
247
  "severity": "required"
261
248
  }
262
249
  ]
@@ -20,7 +20,7 @@ export interface OrchestratorResult {
20
20
  tookAction: boolean;
21
21
  completion: CompletionAnalysis;
22
22
  exitReason: OrchestratorExitReason;
23
- statusSummary: string;
23
+ statusSummary: string | null;
24
24
  limitations: string[];
25
25
  recommendations: string[];
26
26
  }
@@ -34,10 +34,13 @@ export declare class AgentOrchestrator {
34
34
  runToCompletion(request: string, options?: OrchestratorOptions): Promise<OrchestratorResult>;
35
35
  private resolveExitReason;
36
36
  private buildStatusSummary;
37
- private buildFallbackStatusSummary;
38
- private buildSummaryTail;
39
- private generateStatusSummaryWithLLM;
40
- private sanitizeSummaryText;
37
+ /**
38
+ * Generate a high-signal insight about what happened in this run.
39
+ * Focus on meaning, not metadata.
40
+ */
41
+ private generateInsightSummary;
42
+ private sanitizeInsight;
43
+ private buildFallbackInsight;
41
44
  private truncateForPrompt;
42
45
  private buildSinglePassPrompt;
43
46
  private shouldContinue;
@@ -1 +1 @@
1
- {"version":3,"file":"agentOrchestrator.d.ts","sourceRoot":"","sources":["../../src/core/agentOrchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAuB,MAAM,YAAY,CAAC;AACpE,OAAO,EAA0B,KAAK,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAE9F,MAAM,MAAM,sBAAsB,GAC9B,UAAU,GACV,qBAAqB,GACrB,WAAW,GACX,gBAAgB,GAChB,SAAS,GACT,YAAY,CAAC;AAEjB,MAAM,WAAW,mBAAmB;IAClC,2CAA2C;IAC3C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IACvC,gEAAgE;IAChE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mGAAmG;IACnG,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,kBAAkB,CAAC;IAC/B,UAAU,EAAE,sBAAsB,CAAC;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAWD;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;gBAEzB,KAAK,EAAE,YAAY;IAIzB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAiGlG,OAAO,CAAC,iBAAiB;YAyBX,kBAAkB;IAwFhC,OAAO,CAAC,0BAA0B;IAqClC,OAAO,CAAC,gBAAgB;YAKV,4BAA4B;IAwC1C,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,qBAAqB;IAoB7B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,uBAAuB;IA2B/B,OAAO,CAAC,uBAAuB;IA2C/B,OAAO,CAAC,wBAAwB;IAMhC,OAAO,CAAC,0BAA0B;IAgBlC,OAAO,CAAC,eAAe;IAwCvB,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,qBAAqB;IAa7B,OAAO,CAAC,0BAA0B;IAelC,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,SAAS;IAKjB;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;CAmB7B"}
1
+ {"version":3,"file":"agentOrchestrator.d.ts","sourceRoot":"","sources":["../../src/core/agentOrchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAuB,MAAM,YAAY,CAAC;AACpE,OAAO,EAA0B,KAAK,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAE9F,MAAM,MAAM,sBAAsB,GAC9B,UAAU,GACV,qBAAqB,GACrB,WAAW,GACX,gBAAgB,GAChB,SAAS,GACT,YAAY,CAAC;AAEjB,MAAM,WAAW,mBAAmB;IAClC,2CAA2C;IAC3C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IACvC,gEAAgE;IAChE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mGAAmG;IACnG,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,kBAAkB,CAAC;IAC/B,UAAU,EAAE,sBAAsB,CAAC;IACnC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAWD;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;gBAEzB,KAAK,EAAE,YAAY;IAIzB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAiGlG,OAAO,CAAC,iBAAiB;YAyBX,kBAAkB;IAwChC;;;OAGG;YACW,sBAAsB;IAoDpC,OAAO,CAAC,eAAe;IAwBvB,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,qBAAqB;IAmB7B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,uBAAuB;IAyB/B,OAAO,CAAC,uBAAuB;IAsB/B,OAAO,CAAC,wBAAwB;IAMhC,OAAO,CAAC,0BAA0B;IAgBlC,OAAO,CAAC,eAAe;IAwCvB,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,qBAAqB;IAa7B,OAAO,CAAC,0BAA0B;IAelC,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,SAAS;IAKjB;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;CAmB7B"}
@@ -93,137 +93,99 @@ export class AgentOrchestrator {
93
93
  }
94
94
  return 'incomplete';
95
95
  }
96
- async buildStatusSummary(request, response, analysis, completion, toolsUsed, exitReason, attemptsCount, maxAttemptsHit, attempts) {
97
- const limitations = [
98
- attemptsCount === 1
99
- ? 'Single-pass orchestration attempted to finish in one shot.'
100
- : `Iterative orchestration ran ${attemptsCount} passes toward completion.`,
101
- 'Evidence is limited to the tools invoked during these passes.',
102
- ];
103
- if (maxAttemptsHit) {
104
- limitations.push('Stopped after reaching the configured attempt limit; more work may remain.');
105
- }
106
- if (analysis.planOnly) {
107
- limitations.push(toolsUsed.length === 0
108
- ? 'The responses were plan-only; no concrete tool actions were observed.'
109
- : 'One or more responses read like planning despite using tools; ensure evidence-backed actions.');
110
- }
96
+ async buildStatusSummary(request, response, _analysis, completion, toolsUsed, exitReason, attemptsCount, maxAttemptsHit, attempts) {
97
+ // Generate intelligent insight - the only thing users care about
98
+ const summary = await this.generateInsightSummary(request, response, toolsUsed, exitReason, attemptsCount, maxAttemptsHit, completion, attempts);
99
+ // Minimal limitations/recommendations - only surface critical issues
100
+ const limitations = [];
101
+ const recommendations = [];
111
102
  if (toolsUsed.length === 0) {
112
- limitations.push('No tools executed, so no command output or file evidence is available.');
103
+ limitations.push('No tools ran.');
113
104
  }
114
- if (completion.shouldVerify) {
115
- limitations.push('Verification recommended by completion detector; a secondary check was not performed.');
105
+ if (maxAttemptsHit && exitReason !== 'complete') {
106
+ limitations.push('Hit attempt limit.');
116
107
  }
117
- const recommendations = ['Consider running focused checks/tests to validate the outcome.'];
118
108
  if (completion.shouldVerify) {
119
- recommendations.push('Run targeted verification steps or tests to validate the claims.');
120
- }
121
- if (maxAttemptsHit) {
122
- recommendations.push('Increase maxAttempts or re-run to continue progress toward completion.');
123
- }
124
- switch (exitReason) {
125
- case 'no-action':
126
- recommendations.push('Execute concrete actions (read/search/edit/test) and capture outputs.');
127
- break;
128
- case 'blocked':
129
- recommendations.push('Unblock missing credentials/permissions and retry with tool actions.');
130
- break;
131
- case 'incomplete':
132
- recommendations.push('Continue work with tool usage to gather evidence and close gaps.');
133
- break;
134
- case 'empty-response':
135
- recommendations.push('Re-run with a concrete action or ask a focused follow-up question.');
136
- break;
137
- case 'complete':
138
- default:
139
- break;
109
+ recommendations.push('Verify the output.');
140
110
  }
141
- const deterministicSummary = this.buildFallbackStatusSummary(request, completion, toolsUsed, exitReason, attemptsCount);
142
- const aiSummary = await this.generateStatusSummaryWithLLM({
143
- request,
144
- response,
145
- toolsUsed,
146
- attemptsCount,
147
- analysis,
148
- completion,
149
- limitations,
150
- recommendations,
151
- exitReason,
152
- });
153
- const summaryTail = this.buildSummaryTail(exitReason, toolsUsed, attemptsCount);
154
- const summary = aiSummary ? `${aiSummary} | ${summaryTail}` : deterministicSummary;
155
111
  return { summary, limitations, recommendations };
156
112
  }
157
- buildFallbackStatusSummary(request, completion, toolsUsed, exitReason, attemptsCount) {
158
- const evidenceLine = toolsUsed.length ? `Tools used: ${toolsUsed.join(', ')}.` : 'No tools used.';
159
- const reasonLine = (() => {
160
- switch (exitReason) {
161
- case 'complete':
162
- return completion.shouldVerify
163
- ? 'Model claims completion but suggested verification.'
164
- : 'Model signaled completion.';
165
- case 'verification-needed':
166
- return 'Model requested verification before declaring completion.';
167
- case 'no-action':
168
- return 'No concrete actions detected; likely plan-only.';
169
- case 'empty-response':
170
- return 'Received an empty response.';
171
- case 'blocked':
172
- return 'Model indicated it is blocked or missing prerequisites.';
173
- case 'incomplete':
174
- default:
175
- return 'Orchestration did not reach a confident completion signal.';
176
- }
177
- })();
178
- return [
179
- `Request: ${request.trim()}`,
180
- `Exit: ${exitReason}`,
181
- reasonLine,
182
- evidenceLine,
183
- `Attempts: ${attemptsCount}.`,
184
- ].join(' | ');
185
- }
186
- buildSummaryTail(exitReason, toolsUsed, attemptsCount) {
187
- const evidenceLine = toolsUsed.length ? `Tools: ${toolsUsed.join(', ')}.` : 'Tools: none.';
188
- return [`Exit: ${exitReason}`, evidenceLine, `Attempts: ${attemptsCount}.`].join(' | ');
189
- }
190
- async generateStatusSummaryWithLLM(params) {
191
- const limitationText = params.limitations.length ? params.limitations.join(' | ') : 'None noted.';
192
- const recommendationText = params.recommendations.length ? params.recommendations.join(' | ') : 'None.';
193
- const finalResponseExcerpt = this.truncateForPrompt(params.response, 800);
194
- const prompt = [
195
- 'You are the orchestrator for a CLI AI agent. Summarize the entire run for the user.',
196
- 'Return one tight sentence (no markdown) that explains: what was asked, whether the run finished or failed, key actions/tools, and remaining gaps/tests/risks or verification needs.',
197
- 'Do not ask questions. Do not invent work or tools. Mention limitations or verification flags if present.',
198
- `User request: ${params.request.trim()}`,
199
- `Exit reason: ${params.exitReason}`,
200
- `Attempts: ${params.attemptsCount}`,
201
- `Actions observed: ${params.analysis.tookAction ? 'yes' : 'no'}; plan-only tone: ${params.analysis.planOnly ? 'yes' : 'no'}`,
202
- `Completion: isComplete=${params.completion.isComplete} shouldVerify=${params.completion.shouldVerify} reason=${params.completion.reason ?? 'none'}`,
203
- `Tools used: ${params.toolsUsed.length ? params.toolsUsed.join(', ') : 'none'}`,
204
- `Limitations: ${limitationText}`,
205
- `Recommendations: ${recommendationText}`,
206
- `Final response excerpt: ${finalResponseExcerpt}`,
207
- ].join('\n');
113
+ /**
114
+ * Generate a high-signal insight about what happened in this run.
115
+ * Focus on meaning, not metadata.
116
+ */
117
+ async generateInsightSummary(request, response, toolsUsed, exitReason, attemptsCount, maxAttemptsHit, completion, attempts) {
118
+ // Build a lean context for the insight generator
119
+ const toolsSummary = toolsUsed.length
120
+ ? `Used: ${[...new Set(toolsUsed)].slice(0, 5).join(', ')}${toolsUsed.length > 5 ? '...' : ''}`
121
+ : 'No tools used';
122
+ const issues = [];
123
+ if (exitReason === 'no-action')
124
+ issues.push('no concrete actions taken');
125
+ if (exitReason === 'blocked')
126
+ issues.push('blocked on missing access/info');
127
+ if (exitReason === 'empty-response')
128
+ issues.push('empty response');
129
+ if (maxAttemptsHit && exitReason !== 'complete')
130
+ issues.push('stopped early');
131
+ if (completion.shouldVerify)
132
+ issues.push('needs verification');
133
+ // Extract key outcomes from attempts
134
+ const editsMade = attempts.some(a => a.toolExecutions.some(t => ['edit', 'edit_file', 'write', 'write_file'].includes(t.name) && t.success));
135
+ const testsRan = attempts.some(a => a.toolExecutions.some(t => t.name === 'bash' && t.success && /test|jest|pytest|npm run/.test(String(t.name))));
136
+ const responseExcerpt = this.truncateForPrompt(response, 400);
137
+ const prompt = `What was accomplished? One sentence, be specific about outcomes.
138
+
139
+ Task: ${this.truncateForPrompt(request, 150)}
140
+ Result: ${exitReason}${issues.length ? ` (${issues.join(', ')})` : ''}
141
+ ${toolsSummary}${editsMade ? ', made edits' : ''}${testsRan ? ', ran tests' : ''}
142
+ ${attemptsCount > 1 ? `Took ${attemptsCount} passes.` : ''}
143
+
144
+ Response excerpt:
145
+ ${responseExcerpt}`;
208
146
  try {
209
- const summary = await this.agent.send(prompt, false);
210
- // Clear any tool executions triggered by the summarization prompt
147
+ const insight = await this.agent.send(prompt, false);
211
148
  this.agent.drainToolExecutions();
212
- const cleaned = this.sanitizeSummaryText(summary);
213
- return cleaned || null;
149
+ return this.sanitizeInsight(insight);
214
150
  }
215
151
  catch {
152
+ // Fallback: generate a simple deterministic summary
153
+ return this.buildFallbackInsight(exitReason, toolsUsed, editsMade, issues);
154
+ }
155
+ }
156
+ sanitizeInsight(text) {
157
+ if (!text)
216
158
  return null;
159
+ // Remove any tool call attempts, markdown, or verbose preamble
160
+ let cleaned = text
161
+ .replace(/```[\s\S]*?```/g, '')
162
+ .replace(/\*\*[\s\S]*?\*\*/g, '')
163
+ .replace(/^(Here's|I |The |This |Based on|Looking at|After|Upon).*?:/i, '')
164
+ .replace(/\s+/g, ' ')
165
+ .trim();
166
+ // Take first sentence if multiple
167
+ const firstSentence = cleaned.match(/^[^.!?]+[.!?]/);
168
+ if (firstSentence) {
169
+ cleaned = firstSentence[0];
170
+ }
171
+ // Enforce length limit
172
+ if (cleaned.length > 200) {
173
+ cleaned = cleaned.slice(0, 197) + '...';
217
174
  }
175
+ return cleaned || null;
218
176
  }
219
- sanitizeSummaryText(summary) {
220
- if (!summary)
221
- return '';
222
- const normalized = summary.replace(/\s+/g, ' ').trim();
223
- if (!normalized)
224
- return '';
225
- const limit = 320;
226
- return normalized.length > limit ? `${normalized.slice(0, limit - 3)}...` : normalized;
177
+ buildFallbackInsight(exitReason, toolsUsed, editsMade, issues) {
178
+ if (exitReason === 'complete') {
179
+ if (editsMade)
180
+ return 'Task completed with file changes.';
181
+ if (toolsUsed.length)
182
+ return 'Task completed.';
183
+ return 'Responded without tool actions.';
184
+ }
185
+ if (issues.length) {
186
+ return `Stopped: ${issues.join(', ')}.`;
187
+ }
188
+ return null;
227
189
  }
228
190
  truncateForPrompt(text, maxLength = 800) {
229
191
  if (!text)
@@ -235,56 +197,48 @@ export class AgentOrchestrator {
235
197
  }
236
198
  buildSinglePassPrompt(originalRequest, enforceActions, contextualGuidance) {
237
199
  const actionLine = enforceActions
238
- ? '- Take concrete actions with available tools (list_files/glob/search/read/bash/edit/git); do not stop at planning.'
239
- : '- Provide the strongest single response you can.';
200
+ ? '- Use tools to complete the task.'
201
+ : '- Provide your best response.';
240
202
  const guidanceBlock = this.formatContextualGuidance(contextualGuidance);
241
203
  return `${originalRequest.trim()}
242
204
 
243
- Single-pass orchestration:
244
205
  ${actionLine}
245
- - Do not defer work or ask to continue; finish as much as possible now.
246
- - Show command outputs and file changes as evidence.
247
- - Reply with TASK_FULLY_COMPLETE only when everything is actually done.${guidanceBlock}`;
206
+ - Finish as much as possible now.
207
+ - Show outputs as evidence.
208
+ - End with TASK_FULLY_COMPLETE when done.${guidanceBlock}`;
248
209
  }
249
210
  shouldContinue(exitReason) {
250
211
  return exitReason === 'incomplete' || exitReason === 'no-action';
251
212
  }
252
213
  buildContinuationPrompt(originalRequest, attempt, nextAttemptNumber, enforceActions, contextualGuidance) {
253
214
  const actionLine = enforceActions
254
- ? '- Continue taking concrete actions with available tools; avoid plan-only replies.'
255
- : '- Provide the strongest single response you can now.';
215
+ ? '- Continue with tools.'
216
+ : '- Provide your best response.';
256
217
  const reason = this.describeContinuationReason(attempt);
257
218
  const toolContext = attempt.toolsUsed.length
258
- ? `Tools used so far: ${attempt.toolsUsed.join(', ')}.`
259
- : 'No tools executed yet.';
219
+ ? `Tools used: ${attempt.toolsUsed.join(', ')}.`
220
+ : '';
260
221
  const guidanceBlock = this.formatContextualGuidance(contextualGuidance);
261
222
  return `${originalRequest.trim()}
262
223
 
263
- Continuation pass #${nextAttemptNumber}: ${reason}
224
+ Pass ${nextAttemptNumber}: ${reason}
264
225
  ${toolContext}
265
226
  ${actionLine}
266
- - Deliver the requested output with evidence from tool outputs.
267
- - If complete, end with "TASK_FULLY_COMPLETE".
268
- - If blocked, state the blocker plainly.${guidanceBlock}`;
227
+ - End with TASK_FULLY_COMPLETE when done.${guidanceBlock}`;
269
228
  }
270
229
  buildContextualGuidance(request) {
271
230
  const normalized = request.toLowerCase();
272
- const guidance = new Set();
273
- guidance.add('Apply a repo-wide sweep for every prompt: list files, skim README/docs, and inspect key source modules before answering so responses stay grounded in real code and concepts.');
274
- guidance.add('Perform thorough analysis of relevant source code and conceptual flows/architecture (search/read plus quick lint/test when fast); do not rely on assumptions or high-level plans.');
275
- guidance.add('Surface conceptual gaps, data contracts, and domain edge cases you notice while reading code—not just implementation steps.');
231
+ const guidance = [];
232
+ guidance.push('Ground responses in actual code; read files before suggesting changes.');
276
233
  const bugSweep = /\bbugs?\b|\bdefects?\b|\bissues?\b|\bbug\s+report\b/.test(normalized);
277
- const needsUnderstanding = /\bexplain\b|\bunders(?:tand|tanding)\b|\boverview\b|\bsummar(y|ize)\b|\bwalk\s+through\b/.test(normalized);
278
234
  if (bugSweep) {
279
- guidance.add('Treat this as a repository-wide bug sweep: scan the whole codebase (search, read, lint) instead of relying only on a default test command.');
280
- guidance.add('Prefer a mix of static inspection and targeted, fast checks; summarize evidence from across the repo before answering.');
235
+ guidance.push('Search broadly for related issues.');
281
236
  }
282
- if (needsUnderstanding || bugSweep) {
283
- guidance.add('Build a quick map of the project (list files, skim README/docs) before deeper actions so explanations are grounded.');
237
+ const needsUnderstanding = /\bexplain\b|\bunders(?:tand|tanding)\b|\boverview\b|\bsummar(y|ize)\b|\bwalk\s+through\b/.test(normalized);
238
+ if (needsUnderstanding) {
239
+ guidance.push('Skim project structure before detailed analysis.');
284
240
  }
285
- guidance.add('After any test command, state what that test covers and explicitly call out notable gaps or untested cases; keep tests scoped for speed when possible.');
286
- guidance.add('If a run is long, remind the user they can press Ctrl+C to stop early.');
287
- return Array.from(guidance);
241
+ return guidance;
288
242
  }
289
243
  formatContextualGuidance(guidance) {
290
244
  if (!guidance.length)
@@ -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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"}