jiva-core 0.3.3 → 0.3.4-dev.945ddfc

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 (108) hide show
  1. package/README.md +232 -570
  2. package/dist/code/agent.d.ts +105 -0
  3. package/dist/code/agent.d.ts.map +1 -0
  4. package/dist/code/agent.js +697 -0
  5. package/dist/code/agent.js.map +1 -0
  6. package/dist/code/file-lock.d.ts +15 -0
  7. package/dist/code/file-lock.d.ts.map +1 -0
  8. package/dist/code/file-lock.js +36 -0
  9. package/dist/code/file-lock.js.map +1 -0
  10. package/dist/code/lsp/client.d.ts +30 -0
  11. package/dist/code/lsp/client.d.ts.map +1 -0
  12. package/dist/code/lsp/client.js +181 -0
  13. package/dist/code/lsp/client.js.map +1 -0
  14. package/dist/code/lsp/language.d.ts +12 -0
  15. package/dist/code/lsp/language.d.ts.map +1 -0
  16. package/dist/code/lsp/language.js +145 -0
  17. package/dist/code/lsp/language.js.map +1 -0
  18. package/dist/code/lsp/manager.d.ts +39 -0
  19. package/dist/code/lsp/manager.d.ts.map +1 -0
  20. package/dist/code/lsp/manager.js +108 -0
  21. package/dist/code/lsp/manager.js.map +1 -0
  22. package/dist/code/lsp/server.d.ts +15 -0
  23. package/dist/code/lsp/server.d.ts.map +1 -0
  24. package/dist/code/lsp/server.js +78 -0
  25. package/dist/code/lsp/server.js.map +1 -0
  26. package/dist/code/tools/bash.d.ts +3 -0
  27. package/dist/code/tools/bash.d.ts.map +1 -0
  28. package/dist/code/tools/bash.js +110 -0
  29. package/dist/code/tools/bash.js.map +1 -0
  30. package/dist/code/tools/edit.d.ts +11 -0
  31. package/dist/code/tools/edit.d.ts.map +1 -0
  32. package/dist/code/tools/edit.js +459 -0
  33. package/dist/code/tools/edit.js.map +1 -0
  34. package/dist/code/tools/glob.d.ts +3 -0
  35. package/dist/code/tools/glob.d.ts.map +1 -0
  36. package/dist/code/tools/glob.js +62 -0
  37. package/dist/code/tools/glob.js.map +1 -0
  38. package/dist/code/tools/grep.d.ts +3 -0
  39. package/dist/code/tools/grep.d.ts.map +1 -0
  40. package/dist/code/tools/grep.js +147 -0
  41. package/dist/code/tools/grep.js.map +1 -0
  42. package/dist/code/tools/index.d.ts +31 -0
  43. package/dist/code/tools/index.d.ts.map +1 -0
  44. package/dist/code/tools/index.js +9 -0
  45. package/dist/code/tools/index.js.map +1 -0
  46. package/dist/code/tools/read.d.ts +3 -0
  47. package/dist/code/tools/read.d.ts.map +1 -0
  48. package/dist/code/tools/read.js +120 -0
  49. package/dist/code/tools/read.js.map +1 -0
  50. package/dist/code/tools/spawn.d.ts +3 -0
  51. package/dist/code/tools/spawn.d.ts.map +1 -0
  52. package/dist/code/tools/spawn.js +49 -0
  53. package/dist/code/tools/spawn.js.map +1 -0
  54. package/dist/code/tools/write.d.ts +3 -0
  55. package/dist/code/tools/write.d.ts.map +1 -0
  56. package/dist/code/tools/write.js +82 -0
  57. package/dist/code/tools/write.js.map +1 -0
  58. package/dist/core/agent-interface.d.ts +54 -0
  59. package/dist/core/agent-interface.d.ts.map +1 -0
  60. package/dist/core/agent-interface.js +8 -0
  61. package/dist/core/agent-interface.js.map +1 -0
  62. package/dist/core/config.d.ts +71 -0
  63. package/dist/core/config.d.ts.map +1 -1
  64. package/dist/core/config.js +16 -0
  65. package/dist/core/config.js.map +1 -1
  66. package/dist/core/conversation-manager.d.ts +4 -1
  67. package/dist/core/conversation-manager.d.ts.map +1 -1
  68. package/dist/core/conversation-manager.js +47 -17
  69. package/dist/core/conversation-manager.js.map +1 -1
  70. package/dist/core/dual-agent.d.ts +3 -10
  71. package/dist/core/dual-agent.d.ts.map +1 -1
  72. package/dist/core/dual-agent.js +42 -117
  73. package/dist/core/dual-agent.js.map +1 -1
  74. package/dist/core/manager-agent.d.ts +30 -1
  75. package/dist/core/manager-agent.d.ts.map +1 -1
  76. package/dist/core/manager-agent.js +109 -17
  77. package/dist/core/manager-agent.js.map +1 -1
  78. package/dist/core/worker-agent.d.ts +5 -2
  79. package/dist/core/worker-agent.d.ts.map +1 -1
  80. package/dist/core/worker-agent.js +48 -51
  81. package/dist/core/worker-agent.js.map +1 -1
  82. package/dist/index.d.ts +3 -0
  83. package/dist/index.d.ts.map +1 -1
  84. package/dist/index.js +2 -0
  85. package/dist/index.js.map +1 -1
  86. package/dist/interfaces/cli/index.js +88 -25
  87. package/dist/interfaces/cli/index.js.map +1 -1
  88. package/dist/interfaces/cli/repl.d.ts +8 -2
  89. package/dist/interfaces/cli/repl.d.ts.map +1 -1
  90. package/dist/interfaces/cli/repl.js +39 -3
  91. package/dist/interfaces/cli/repl.js.map +1 -1
  92. package/dist/interfaces/http/routes/chat.js +2 -2
  93. package/dist/interfaces/http/routes/chat.js.map +1 -1
  94. package/dist/interfaces/http/session-manager.d.ts +7 -4
  95. package/dist/interfaces/http/session-manager.d.ts.map +1 -1
  96. package/dist/interfaces/http/session-manager.js +38 -15
  97. package/dist/interfaces/http/session-manager.js.map +1 -1
  98. package/dist/models/base.d.ts +8 -0
  99. package/dist/models/base.d.ts.map +1 -1
  100. package/dist/models/harmony.d.ts +7 -1
  101. package/dist/models/harmony.d.ts.map +1 -1
  102. package/dist/models/harmony.js +21 -3
  103. package/dist/models/harmony.js.map +1 -1
  104. package/dist/models/krutrim.d.ts +30 -0
  105. package/dist/models/krutrim.d.ts.map +1 -1
  106. package/dist/models/krutrim.js +51 -8
  107. package/dist/models/krutrim.js.map +1 -1
  108. package/package.json +8 -6
@@ -1 +1 @@
1
- {"version":3,"file":"dual-agent.js","sourceRoot":"","sources":["../../src/core/dual-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dual-agent.js","sourceRoot":"","sources":["../../src/core/dual-agent.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ import { ModelOrchestrator } from '../models/orchestrator.js';
13
13
  import { WorkspaceManager } from './workspace.js';
14
14
  import { PersonaManager } from '../personas/persona-manager.js';
15
15
  import { AgentContext } from './types/agent-context.js';
16
+ import { WorkerResult } from './worker-agent.js';
16
17
  import { Message } from '../models/base.js';
17
18
  export interface ManagerTask {
18
19
  userRequest: string;
@@ -21,6 +22,8 @@ export interface ManagerTask {
21
22
  export interface ManagerPlan {
22
23
  subtasks: string[];
23
24
  reasoning: string;
25
+ /** True when the user's message is purely conversational — no task execution needed. */
26
+ conversational?: boolean;
24
27
  }
25
28
  export interface ManagerDecision {
26
29
  isComplete: boolean;
@@ -47,14 +50,38 @@ export declare class ManagerAgent {
47
50
  * Review Worker's results and decide next action
48
51
  */
49
52
  reviewResults(subtask: string, workerResult: string): Promise<ManagerDecision>;
53
+ /**
54
+ * Review a Worker's subtask result and decide whether to accept it or request a retry.
55
+ *
56
+ * Rules (fast-path first — avoids an LLM call for the common case):
57
+ * - AUTO-ACCEPT: tools were used AND the result is substantive (>100 chars)
58
+ * - AUTO-REJECT: no tools were used at all (pure hallucination / text-only response)
59
+ * - LLM REVIEW: tools were used but result is suspiciously short (<100 chars)
60
+ *
61
+ * Returns { accepted: true } or { accepted: false, specificCorrection: "…" }.
62
+ * The specificCorrection is a clean, targeted instruction — NOT a stacked prefix.
63
+ */
64
+ reviewSubtaskResult(subtask: string, workerResult: WorkerResult, originalRequest: string): Promise<{
65
+ accepted: boolean;
66
+ specificCorrection?: string;
67
+ }>;
50
68
  /**
51
69
  * Create final response for user
52
70
  */
53
71
  synthesizeResponse(allResults: {
54
72
  subtask: string;
55
73
  result: string;
56
- approved?: boolean;
74
+ accepted?: boolean;
57
75
  }[], agentContext?: AgentContext): Promise<string>;
76
+ /**
77
+ * Respond directly to a conversational message — no planning or tool execution.
78
+ * Used when `createPlan()` signals `conversational: true`.
79
+ *
80
+ * @param userConversationHistory - The full user-facing conversation so far
81
+ * (already includes the current user message at the tail).
82
+ * @param agentContext - Current agent context for directive injection.
83
+ */
84
+ directReply(userConversationHistory: Message[], agentContext?: AgentContext): Promise<string>;
58
85
  /**
59
86
  * Parse a JSON plan from LLM output. Extracts the first JSON object found.
60
87
  */
@@ -66,6 +93,8 @@ export declare class ManagerAgent {
66
93
  /**
67
94
  * Validate that each subtask is a reasonable, actionable instruction.
68
95
  * Removes garbage entries like separators, prose fragments, or empty strings.
96
+ *
97
+ * @param isConversational - When true, allow an empty list (no min-1 enforcement).
69
98
  */
70
99
  private validateSubtasks;
71
100
  private extractSection;
@@ -1 +1 @@
1
- {"version":3,"file":"manager-agent.d.ts","sourceRoot":"","sources":["../../src/core/manager-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAI5C,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,mBAAmB,CAAiB;gBAEhC,YAAY,EAAE,iBAAiB,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAAE,cAAc;IAgBzG,OAAO,CAAC,sBAAsB;IA0C9B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAwBzB;;OAEG;IACG,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IA4EtF;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAoDpF;;OAEG;IACG,kBAAkB,CAAC,UAAU,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IA2C7I;;OAEG;IACH,OAAO,CAAC,aAAa;IAkBrB;;OAEG;YACW,gBAAgB;IAmC9B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAqBxB,OAAO,CAAC,cAAc;IAMtB,sBAAsB,IAAI,OAAO,EAAE;IAInC,iBAAiB;CAIlB"}
1
+ {"version":3,"file":"manager-agent.d.ts","sourceRoot":"","sources":["../../src/core/manager-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAI5C,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,wFAAwF;IACxF,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,mBAAmB,CAAiB;gBAEhC,YAAY,EAAE,iBAAiB,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAAE,cAAc;IAgBzG,OAAO,CAAC,sBAAsB;IA0C9B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAwBzB;;OAEG;IACG,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAwFtF;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAoDpF;;;;;;;;;;OAUG;IACG,mBAAmB,CACvB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAuD9D;;OAEG;IACG,kBAAkB,CAAC,UAAU,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IA2C7I;;;;;;;OAOG;IACG,WAAW,CACf,uBAAuB,EAAE,OAAO,EAAE,EAClC,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,MAAM,CAAC;IAUlB;;OAEG;IACH,OAAO,CAAC,aAAa;IAkBrB;;OAEG;YACW,gBAAgB;IAmC9B;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAsBxB,OAAO,CAAC,cAAc;IAMtB,sBAAsB,IAAI,OAAO,EAAE;IAInC,iBAAiB;CAIlB"}
@@ -121,9 +121,15 @@ Guidelines:
121
121
  - Trust Worker to handle file operations, error checking, and iteration
122
122
  - Each subtask MUST be a clear, actionable instruction - NOT prose, advice, or explanation
123
123
 
124
+ CONVERSATIONAL MESSAGES:
125
+ - If the message is purely conversational (greeting, thank-you, compliment, acknowledgment, small talk) with NO actionable task embedded, return:
126
+ {"conversational": true, "subtasks": [], "reasoning": "Conversational message — no task required"}
127
+ - Do NOT invent tasks from prior conversation context just because a topic was mentioned earlier.
128
+
124
129
  Respond ONLY with valid JSON in this exact format (no other text before or after):
125
130
  {
126
131
  "reasoning": "<brief explanation of your high-level approach>",
132
+ "conversational": false,
127
133
  "subtasks": [
128
134
  "<subtask 1 - a clear, actionable instruction>",
129
135
  "<subtask 2 - only if truly necessary>"
@@ -151,13 +157,19 @@ Respond ONLY with valid JSON in this exact format (no other text before or after
151
157
  logger.warn('[Manager] Failed to parse plan JSON, attempting LLM cleanup');
152
158
  plan = await this.cleanPlanWithLLM(response.content);
153
159
  }
154
- // Validate subtasks - filter out garbage entries
155
- plan.subtasks = this.validateSubtasks(plan.subtasks);
156
- logger.info(`[Manager] Reasoning: ${plan.reasoning}`);
157
- logger.info(`[Manager] Plan: ${plan.subtasks.length} subtasks`);
158
- plan.subtasks.forEach((task, i) => logger.info(` ${i + 1}. ${task}`));
160
+ const isConversational = !!plan.conversational;
161
+ // Validate subtasks - filter out garbage entries (allow empty list for conversational)
162
+ plan.subtasks = this.validateSubtasks(plan.subtasks, isConversational);
163
+ if (isConversational) {
164
+ logger.info('[Manager] Conversational message detected skipping task execution');
165
+ }
166
+ else {
167
+ logger.info(`[Manager] Reasoning: ${plan.reasoning}`);
168
+ logger.info(`[Manager] Plan: ${plan.subtasks.length} subtasks`);
169
+ plan.subtasks.forEach((task, i) => logger.info(` ${i + 1}. ${task}`));
170
+ }
159
171
  orchestrationLogger.logManagerPlanCreated(plan.subtasks, plan.reasoning);
160
- return { subtasks: plan.subtasks, reasoning: plan.reasoning };
172
+ return { subtasks: plan.subtasks, reasoning: plan.reasoning, conversational: isConversational };
161
173
  }
162
174
  /**
163
175
  * Review Worker's results and decide next action
@@ -205,27 +217,87 @@ NEXT_ACTION: <what to do next, if CONTINUE>`;
205
217
  nextAction: nextAction || undefined,
206
218
  };
207
219
  }
220
+ /**
221
+ * Review a Worker's subtask result and decide whether to accept it or request a retry.
222
+ *
223
+ * Rules (fast-path first — avoids an LLM call for the common case):
224
+ * - AUTO-ACCEPT: tools were used AND the result is substantive (>100 chars)
225
+ * - AUTO-REJECT: no tools were used at all (pure hallucination / text-only response)
226
+ * - LLM REVIEW: tools were used but result is suspiciously short (<100 chars)
227
+ *
228
+ * Returns { accepted: true } or { accepted: false, specificCorrection: "…" }.
229
+ * The specificCorrection is a clean, targeted instruction — NOT a stacked prefix.
230
+ */
231
+ async reviewSubtaskResult(subtask, workerResult, originalRequest) {
232
+ // Fast-path accept: tools were used and result has substance
233
+ if (workerResult.toolsUsed.length > 0 && workerResult.result.length >= 100) {
234
+ logger.info(`[Manager] Auto-accepted subtask (${workerResult.toolsUsed.length} tools used, ${workerResult.result.length} chars)`);
235
+ return { accepted: true };
236
+ }
237
+ // Fast-path reject: no tools at all — pure text-only response (hallucination)
238
+ if (workerResult.toolsUsed.length === 0) {
239
+ logger.warn(`[Manager] Auto-rejected subtask — Worker used no tools`);
240
+ const correction = `You produced a text-only response without using any tools. You MUST use the available tools to complete this task. Do not fabricate or infer data — call the appropriate tools now.\n\nOriginal task: ${subtask}`;
241
+ return { accepted: false, specificCorrection: correction };
242
+ }
243
+ // Edge case: tools used but result is very short — ask LLM to judge
244
+ logger.info(`[Manager] LLM review: tools=${workerResult.toolsUsed.length}, result length=${workerResult.result.length}`);
245
+ const reviewPrompt = `You are reviewing whether a Worker agent's result satisfactorily completes a subtask.
246
+
247
+ Original user request: ${originalRequest}
248
+
249
+ Subtask assigned to Worker: ${subtask}
250
+
251
+ Tools used by Worker: ${workerResult.toolsUsed.join(', ')}
252
+
253
+ Worker's result:
254
+ ${workerResult.result}
255
+
256
+ DECISION RULES:
257
+ - ACCEPT if the Worker gathered real data and provided a substantive result, even if partial
258
+ - REJECT only if the result is clearly empty, fabricated, or completely off-task
259
+
260
+ Respond with ONLY one of:
261
+ ACCEPT
262
+ REJECT: <one sentence explaining what specific data is still missing>`;
263
+ const response = await this.orchestrator.chat({
264
+ messages: [
265
+ { role: 'system', content: 'You are a task reviewer. Reply with ACCEPT or REJECT: <reason>.' },
266
+ { role: 'user', content: reviewPrompt },
267
+ ],
268
+ temperature: 0.1,
269
+ });
270
+ const verdict = response.content.trim();
271
+ if (verdict.startsWith('REJECT')) {
272
+ const reason = verdict.replace(/^REJECT:?\s*/i, '').trim();
273
+ logger.warn(`[Manager] LLM rejected subtask: ${reason}`);
274
+ const correction = `The previous attempt was insufficient: ${reason}\n\nRetry the subtask using the appropriate tools: ${subtask}`;
275
+ return { accepted: false, specificCorrection: correction };
276
+ }
277
+ logger.info(`[Manager] LLM accepted subtask`);
278
+ return { accepted: true };
279
+ }
208
280
  /**
209
281
  * Create final response for user
210
282
  */
211
283
  async synthesizeResponse(allResults, agentContext) {
212
284
  logger.info('[Manager] Synthesizing final response...');
213
285
  orchestrationLogger.logManagerSynthesize(allResults.length);
214
- const approvedResults = allResults.filter(r => r.approved !== false);
215
- const failedResults = allResults.filter(r => r.approved === false);
216
- const completedSection = approvedResults.length > 0
217
- ? `Validated Completed Work:\n${approvedResults.map((r, i) => `${i + 1}. ${r.subtask}\nResult: ${r.result}`).join('\n\n')}`
218
- : 'No subtasks were validated as successfully completed.';
286
+ const acceptedResults = allResults.filter(r => r.accepted !== false);
287
+ const failedResults = allResults.filter(r => r.accepted === false);
288
+ const completedSection = acceptedResults.length > 0
289
+ ? `Completed Work:\n${acceptedResults.map((r, i) => `${i + 1}. ${r.subtask}\nResult: ${r.result}`).join('\n\n')}`
290
+ : 'No subtasks completed successfully.';
219
291
  const failedSection = failedResults.length > 0
220
- ? `\n\nSubtasks That Did NOT Complete Successfully (Client validation rejected these):\n${failedResults.map((r, i) => `${i + 1}. ${r.subtask}\nWorker output (unvalidated): ${r.result}`).join('\n\n')}`
292
+ ? `\n\nSubtasks That Could Not Be Completed:\n${failedResults.map((r, i) => `${i + 1}. ${r.subtask}\nWorker output: ${r.result}`).join('\n\n')}`
221
293
  : '';
222
294
  const synthesisPrompt = `Based on the work below, create a final response for the user.
223
295
 
224
- IMPORTANT: Some subtasks may not have been completed successfully — the Client validation agent explicitly rejected them. You MUST be honest about what was and was not accomplished. Do NOT claim files were created, actions were performed, or results were produced if the corresponding subtask is listed as failed.
296
+ IMPORTANT: Be honest about what was and was not accomplished. Do NOT claim results were produced if the corresponding subtask is listed as failed.
225
297
 
226
298
  ${completedSection}${failedSection}
227
299
 
228
- Create a clear, honest response that accurately reflects what was accomplished and what was not. If work failed, explain what happened and what the user should expect.`;
300
+ Create a clear, honest response that accurately reflects what was accomplished. If any work failed, explain briefly what happened.`;
229
301
  this.conversationHistory.push({
230
302
  role: 'user',
231
303
  content: synthesisPrompt,
@@ -241,6 +313,23 @@ Create a clear, honest response that accurately reflects what was accomplished a
241
313
  logger.info('[Manager] Final response created');
242
314
  return response.content;
243
315
  }
316
+ /**
317
+ * Respond directly to a conversational message — no planning or tool execution.
318
+ * Used when `createPlan()` signals `conversational: true`.
319
+ *
320
+ * @param userConversationHistory - The full user-facing conversation so far
321
+ * (already includes the current user message at the tail).
322
+ * @param agentContext - Current agent context for directive injection.
323
+ */
324
+ async directReply(userConversationHistory, agentContext) {
325
+ const systemMessages = this.getSystemMessages(agentContext);
326
+ const response = await this.orchestrator.chat({
327
+ messages: [...systemMessages, ...userConversationHistory],
328
+ temperature: 0.7, // Slightly higher for natural conversation
329
+ });
330
+ logger.info('[Manager] Direct conversational reply produced');
331
+ return response.content;
332
+ }
244
333
  /**
245
334
  * Parse a JSON plan from LLM output. Extracts the first JSON object found.
246
335
  */
@@ -297,8 +386,10 @@ Return ONLY valid JSON in this exact format (no other text):
297
386
  /**
298
387
  * Validate that each subtask is a reasonable, actionable instruction.
299
388
  * Removes garbage entries like separators, prose fragments, or empty strings.
389
+ *
390
+ * @param isConversational - When true, allow an empty list (no min-1 enforcement).
300
391
  */
301
- validateSubtasks(subtasks) {
392
+ validateSubtasks(subtasks, isConversational = false) {
302
393
  const validated = subtasks.filter(task => {
303
394
  const trimmed = task.trim();
304
395
  // Reject empty or too-short entries
@@ -312,8 +403,9 @@ Return ONLY valid JSON in this exact format (no other text):
312
403
  return false;
313
404
  return true;
314
405
  });
315
- // Ensure at least one subtask
316
- if (validated.length === 0) {
406
+ // Enforce at least one subtask for real task plans.
407
+ // For conversational messages the LLM intentionally returns subtasks: [] — allow that.
408
+ if (validated.length === 0 && !isConversational) {
317
409
  logger.warn('[Manager] All subtasks filtered out, preserving first original');
318
410
  return subtasks.length > 0 ? [subtasks[0]] : ['Complete the user request'];
319
411
  }
@@ -1 +1 @@
1
- {"version":3,"file":"manager-agent.js","sourceRoot":"","sources":["../../src/core/manager-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager-agent.js","sourceRoot":"","sources":["../../src/core/manager-agent.ts"],"names":[],"mappings":"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"}
@@ -49,8 +49,11 @@ export declare class WorkerAgent {
49
49
  executeSubtask(subtask: WorkerSubtask, agentContext?: AgentContext): Promise<WorkerResult>;
50
50
  private extractReasoning;
51
51
  /**
52
- * Determine if we should prompt Worker to check for completion
53
- * This helps prevent over-iteration by asking Worker to confirm task is done
52
+ * Determine if we should prompt Worker to check for completion.
53
+ * Fires every 3 successful tool calls (regardless of tool type) so research
54
+ * tasks (yfinance, brave-search, etc.) get a "are you done?" nudge just like
55
+ * file-operation tasks do. Also fires when we are approaching the iteration
56
+ * cap so the model has a chance to synthesise before hitting the hard limit.
54
57
  */
55
58
  private shouldPromptForCompletion;
56
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"worker-agent.d.ts","sourceRoot":"","sources":["../../src/core/worker-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAsBxD,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,WAAW,EAAE,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAsB;gBAGzC,YAAY,EAAE,iBAAiB,EAC/B,UAAU,EAAE,gBAAgB,EAC5B,SAAS,EAAE,gBAAgB,EAC3B,aAAa,GAAE,MAAU,EACzB,cAAc,CAAC,EAAE,cAAc;IAqBjC;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAI5C;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAkmBhG,OAAO,CAAC,gBAAgB;IAMxB;;;OAGG;IACH,OAAO,CAAC,yBAAyB;CA4ClC"}
1
+ {"version":3,"file":"worker-agent.d.ts","sourceRoot":"","sources":["../../src/core/worker-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAsBxD,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,WAAW,EAAE,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAsB;gBAGzC,YAAY,EAAE,iBAAiB,EAC/B,UAAU,EAAE,gBAAgB,EAC5B,SAAS,EAAE,gBAAgB,EAC3B,aAAa,GAAE,MAAW,EAC1B,cAAc,CAAC,EAAE,cAAc;IAqBjC;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAI5C;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAgnBhG,OAAO,CAAC,gBAAgB;IAMxB;;;;;;OAMG;IACH,OAAO,CAAC,yBAAyB;CAqBlC"}
@@ -18,7 +18,7 @@ export class WorkerAgent {
18
18
  agentSpawner;
19
19
  maxIterations;
20
20
  contextMemory;
21
- constructor(orchestrator, mcpManager, workspace, maxIterations = 5, personaManager) {
21
+ constructor(orchestrator, mcpManager, workspace, maxIterations = 20, personaManager) {
22
22
  this.orchestrator = orchestrator;
23
23
  this.mcpManager = mcpManager;
24
24
  this.workspace = workspace;
@@ -346,32 +346,26 @@ Please complete this subtask and report your findings.`,
346
346
  // Check for tool calls
347
347
  if (response.toolCalls && response.toolCalls.length > 0) {
348
348
  logger.info(` [Worker] Using ${response.toolCalls.length} tool(s)`);
349
- // Detect repetitive tool calls BEFORE executing
349
+ // Detect repetitive tool calls BEFORE executing.
350
+ // Only block exact-same (tool + args) duplicates — calling the same tool
351
+ // with DIFFERENT arguments (e.g. yfinance_get_ticker_info for MSFT then NVDA)
352
+ // is intentional and must NOT be blocked.
350
353
  const proposedTools = response.toolCalls.map(tc => {
351
354
  const args = JSON.parse(tc.function.arguments);
352
355
  return `${tc.function.name}:${JSON.stringify(args)}`;
353
356
  });
354
- // Check if we're about to repeat the same tool call (name-only check)
355
- const lastToolCalls = toolsUsed.slice(-2);
356
- const isRepetitive = proposedTools.some(proposed => {
357
- const toolName = proposed.split(':')[0];
358
- return lastToolCalls.filter(t => t === toolName).length >= 2;
359
- });
360
- // Exact-signature check: catches same tool + same args within a subtask.
361
- // This catches the case where the model reads the same file twice in
362
- // consecutive iterations before the name-only check triggers.
363
357
  const exactDuplicate = proposedTools.some(sig => executedToolSignatures.has(sig));
364
- if ((isRepetitive && iteration >= 2) || exactDuplicate) {
358
+ if (exactDuplicate) {
359
+ const dupSig = proposedTools.find(sig => executedToolSignatures.has(sig)) || '';
360
+ const dupToolName = dupSig.split(':')[0];
365
361
  logger.warn(` [Worker] Detected repetitive tool usage - interrupting loop`);
366
362
  conversationHistory.push({
367
363
  role: 'user',
368
- content: `STOP: You are calling the same tool with the same arguments repeatedly. Do NOT repeat it again.
364
+ content: `STOP: You already called \`${dupToolName}\` with these exact arguments in a previous step. Do NOT repeat the same call.
369
365
 
370
366
  You have two choices:
371
- 1. If there is a DIFFERENT next step required to complete the subtask, take it now using the appropriate tool.
372
- 2. If all required work is genuinely complete, respond with a thorough description of everything accomplished — do NOT call any more tools.
373
-
374
- Do not assume the task is complete just because one step succeeded. Review what the subtask requires and check whether you have actually finished all of it.`,
367
+ 1. If more work remains (e.g. other symbols, other queries), call the tool with DIFFERENT arguments now.
368
+ 2. If all required work is genuinely complete, respond with a thorough description of everything accomplished — do NOT call any more tools.`,
375
369
  });
376
370
  continue; // Skip executing the repetitive tools, let model reconsider
377
371
  }
@@ -534,11 +528,30 @@ IMPORTANT: Do not claim completion unless the core deliverable (e.g. the file wr
534
528
  return false;
535
529
  });
536
530
  if (hasSuccessfulTools && !hasToolFailures) {
537
- // Tools ran but the model never produced a conclusive text response.
538
- // Report the actual tools used so the Client coherence check can verify
539
- // whether the right work was done do NOT claim overall success here.
540
- finalResult = `Max iterations reached. Tools executed (${toolsUsed.length}): ${toolsUsed.join(', ')}. The model did not produce a final confirmation. Validation required.`;
541
- logger.warn(`[Worker] Max iterations reached after ${toolsUsed.length} tool(s) — no conclusive response from model`);
531
+ // Tools ran successfully but the model never produced a conclusive text
532
+ // response. All the gathered data is in conversationHistory make one
533
+ // final LLM call with NO tools so the model is forced to synthesise a
534
+ // text answer from what it already has rather than calling more tools.
535
+ logger.warn(`[Worker] Max iterations reached after ${toolsUsed.length} tool(s) — forcing synthesis response`);
536
+ try {
537
+ conversationHistory.push({
538
+ role: 'user',
539
+ content: 'You have already gathered all the data above. ' +
540
+ 'NOW write your final comprehensive response using ONLY what you have already collected — ' +
541
+ 'do not call any more tools. Summarise all findings clearly and completely.',
542
+ });
543
+ const synthResponse = await this.orchestrator.chatWithFallback({ messages: conversationHistory }, // no `tools` field → forces text-only reply
544
+ useToolCallingFallback);
545
+ finalResult =
546
+ synthResponse.content ||
547
+ `Max iterations reached. Tools executed (${toolsUsed.length}): ${toolsUsed.join(', ')}.`;
548
+ logger.info(`[Worker] Forced synthesis produced ${finalResult.length} chars`);
549
+ }
550
+ catch (synthError) {
551
+ const errMsg = synthError instanceof Error ? synthError.message : String(synthError);
552
+ logger.warn(`[Worker] Forced synthesis failed: ${errMsg}`);
553
+ finalResult = `Max iterations reached. Tools executed (${toolsUsed.length}): ${toolsUsed.join(', ')}.`;
554
+ }
542
555
  }
543
556
  else if (hasToolFailures) {
544
557
  // Build a specific failure summary from the circuit breaker data
@@ -593,42 +606,26 @@ IMPORTANT: Do not claim completion unless the core deliverable (e.g. the file wr
593
606
  return reasoningMatch ? reasoningMatch[1].trim() : '';
594
607
  }
595
608
  /**
596
- * Determine if we should prompt Worker to check for completion
597
- * This helps prevent over-iteration by asking Worker to confirm task is done
609
+ * Determine if we should prompt Worker to check for completion.
610
+ * Fires every 3 successful tool calls (regardless of tool type) so research
611
+ * tasks (yfinance, brave-search, etc.) get a "are you done?" nudge just like
612
+ * file-operation tasks do. Also fires when we are approaching the iteration
613
+ * cap so the model has a chance to synthesise before hitting the hard limit.
598
614
  */
599
615
  shouldPromptForCompletion(toolsUsed, currentIteration) {
600
- // Don't prompt on first iteration - let Worker do initial work
616
+ // Don't prompt on the very first iteration let Worker do initial work first.
601
617
  if (currentIteration === 0) {
602
618
  return false;
603
619
  }
604
- // Immediate prompt after browser navigation - that's usually the end of the task
605
- const hasBrowserNavigation = toolsUsed.some(tool => tool.includes('browser_navigate'));
606
- if (hasBrowserNavigation) {
620
+ // Approaching the iteration limit give the model one last chance to wrap up.
621
+ const nearIterationLimit = this.maxIterations > 0 &&
622
+ currentIteration >= Math.floor(this.maxIterations * 0.7);
623
+ if (nearIterationLimit) {
607
624
  return true;
608
625
  }
609
- // Detect repetitive tool usage - sign of stuck loop
610
- const lastThreeTools = toolsUsed.slice(-3);
611
- if (lastThreeTools.length === 3 &&
612
- lastThreeTools[0] === lastThreeTools[1] &&
613
- lastThreeTools[1] === lastThreeTools[2]) {
614
- return true; // Same tool called 3 times in a row - prompt for completion
615
- }
616
- // Don't prompt too frequently - only every 2 iterations after first
617
- if (currentIteration % 2 !== 0) {
618
- return false;
619
- }
620
- // Prompt only when genuinely substantive operations have completed.
621
- // 'create_directory' is intentionally excluded — it is a setup step, not
622
- // evidence that the main deliverable (e.g. file content) has been written.
623
- // Pure tool-free responses (e.g. "explain X") never reach this point because
624
- // no tools means hasSignificantOperations is false.
625
- const hasSignificantOperations = toolsUsed.some(tool => tool.includes('write') ||
626
- tool.includes('edit') ||
627
- tool.includes('read') ||
628
- tool.includes('browser') ||
629
- tool.includes('navigate') ||
630
- (tool.includes('create') && !tool.includes('directory') && !tool.includes('dir')));
631
- return hasSignificantOperations && toolsUsed.length >= 2;
626
+ // Fire every 3 successful tool calls for any tool type
627
+ // (at 3, 6, 9, 12 … tools accumulated).
628
+ return toolsUsed.length >= 3 && toolsUsed.length % 3 === 0;
632
629
  }
633
630
  }
634
631
  //# sourceMappingURL=worker-agent.js.map