bernard-agent 0.7.0 → 0.8.0

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 (45) hide show
  1. package/README.md +96 -50
  2. package/dist/agent.d.ts +7 -4
  3. package/dist/agent.js +88 -127
  4. package/dist/agent.js.map +1 -1
  5. package/dist/config.d.ts +13 -1
  6. package/dist/config.js +66 -4
  7. package/dist/config.js.map +1 -1
  8. package/dist/critic.d.ts +32 -0
  9. package/dist/critic.js +118 -0
  10. package/dist/critic.js.map +1 -0
  11. package/dist/cron/runner.js +54 -34
  12. package/dist/cron/runner.js.map +1 -1
  13. package/dist/output.d.ts +6 -4
  14. package/dist/output.js +31 -10
  15. package/dist/output.js.map +1 -1
  16. package/dist/overlap-checker.d.ts +61 -0
  17. package/dist/overlap-checker.js +106 -0
  18. package/dist/overlap-checker.js.map +1 -0
  19. package/dist/pac.d.ts +37 -0
  20. package/dist/pac.js +69 -0
  21. package/dist/pac.js.map +1 -0
  22. package/dist/rag-query.js +2 -1
  23. package/dist/rag-query.js.map +1 -1
  24. package/dist/rag-worker.js +4 -3
  25. package/dist/rag-worker.js.map +1 -1
  26. package/dist/repl.js +160 -4
  27. package/dist/repl.js.map +1 -1
  28. package/dist/specialist-candidates.d.ts +13 -0
  29. package/dist/specialist-candidates.js.map +1 -1
  30. package/dist/specialist-detector.d.ts +20 -5
  31. package/dist/specialist-detector.js +72 -9
  32. package/dist/specialist-detector.js.map +1 -1
  33. package/dist/specialist-matcher.d.ts +5 -0
  34. package/dist/specialist-matcher.js +1 -0
  35. package/dist/specialist-matcher.js.map +1 -1
  36. package/dist/tools/datetime.d.ts +6 -0
  37. package/dist/tools/datetime.js +38 -1
  38. package/dist/tools/datetime.js.map +1 -1
  39. package/dist/tools/mcp-url.js +1 -1
  40. package/dist/tools/mcp-url.js.map +1 -1
  41. package/dist/tools/specialist-run.js +37 -12
  42. package/dist/tools/specialist-run.js.map +1 -1
  43. package/dist/tools/subagent.js +37 -12
  44. package/dist/tools/subagent.js.map +1 -1
  45. package/package.json +1 -1
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -14,8 +14,14 @@ export interface BernardConfig {
14
14
  ragEnabled: boolean;
15
15
  /** Color theme name for terminal output. */
16
16
  theme: string;
17
+ /** Maximum number of sequential LLM calls (steps) per agent loop. */
18
+ maxSteps: number;
17
19
  /** Whether critic mode (planning + verification) is active. */
18
20
  criticMode: boolean;
21
+ /** Whether to auto-create specialists above the confidence threshold. */
22
+ autoCreateSpecialists: boolean;
23
+ /** Confidence threshold for auto-creating specialists (0-1). */
24
+ autoCreateThreshold: number;
19
25
  /** Anthropic API key, if available. */
20
26
  anthropicApiKey?: string;
21
27
  /** OpenAI API key, if available. */
@@ -32,7 +38,7 @@ export declare const PROVIDER_ENV_VARS: Record<string, string>;
32
38
  * default value, human-readable description, and corresponding env var.
33
39
  */
34
40
  export declare const OPTIONS_REGISTRY: Record<string, {
35
- configKey: 'maxTokens' | 'shellTimeout' | 'tokenWindow';
41
+ configKey: 'maxTokens' | 'shellTimeout' | 'tokenWindow' | 'maxSteps';
36
42
  default: number;
37
43
  description: string;
38
44
  envVar: string;
@@ -48,9 +54,12 @@ export declare function savePreferences(prefs: {
48
54
  maxTokens?: number;
49
55
  shellTimeout?: number;
50
56
  tokenWindow?: number;
57
+ maxSteps?: number;
51
58
  theme?: string;
52
59
  autoUpdate?: boolean;
53
60
  criticMode?: boolean;
61
+ autoCreateSpecialists?: boolean;
62
+ autoCreateThreshold?: number;
54
63
  }): void;
55
64
  /**
56
65
  * Reads stored preferences from the config directory.
@@ -63,9 +72,12 @@ export declare function loadPreferences(): {
63
72
  maxTokens?: number;
64
73
  shellTimeout?: number;
65
74
  tokenWindow?: number;
75
+ maxSteps?: number;
66
76
  theme?: string;
67
77
  autoUpdate?: boolean;
68
78
  criticMode?: boolean;
79
+ autoCreateSpecialists?: boolean;
80
+ autoCreateThreshold?: number;
69
81
  };
70
82
  /**
71
83
  * Stores an API key for the given provider in the config directory (mode 0600).
package/dist/config.js CHANGED
@@ -56,6 +56,9 @@ const DEFAULT_PROVIDER = 'anthropic';
56
56
  const DEFAULT_MAX_TOKENS = 4096;
57
57
  const DEFAULT_SHELL_TIMEOUT = 30000;
58
58
  const DEFAULT_TOKEN_WINDOW = 0;
59
+ const DEFAULT_MAX_STEPS = 25;
60
+ const DEFAULT_AUTO_CREATE_SPECIALISTS = false;
61
+ const DEFAULT_AUTO_CREATE_THRESHOLD = 0.8;
59
62
  /** Maps each provider name to the environment variable that holds its API key. */
60
63
  exports.PROVIDER_ENV_VARS = {
61
64
  anthropic: 'ANTHROPIC_API_KEY',
@@ -87,6 +90,12 @@ exports.OPTIONS_REGISTRY = {
87
90
  description: 'Context window size for compression (0 = auto-detect from model)',
88
91
  envVar: 'BERNARD_TOKEN_WINDOW',
89
92
  },
93
+ 'max-steps': {
94
+ configKey: 'maxSteps',
95
+ default: DEFAULT_MAX_STEPS,
96
+ description: 'Maximum agent loop iterations per request (controls tool call chain length)',
97
+ envVar: 'BERNARD_MAX_STEPS',
98
+ },
90
99
  };
91
100
  /**
92
101
  * Persists user preferences to the config directory.
@@ -105,11 +114,17 @@ function savePreferences(prefs) {
105
114
  data.shellTimeout = prefs.shellTimeout;
106
115
  if (prefs.tokenWindow !== undefined)
107
116
  data.tokenWindow = prefs.tokenWindow;
117
+ if (prefs.maxSteps !== undefined)
118
+ data.maxSteps = prefs.maxSteps;
108
119
  if (prefs.theme !== undefined)
109
120
  data.theme = prefs.theme;
110
121
  if (prefs.criticMode !== undefined)
111
122
  data.criticMode = prefs.criticMode;
112
- // Preserve autoUpdate and criticMode from existing prefs when callers don't pass them
123
+ if (prefs.autoCreateSpecialists !== undefined)
124
+ data.autoCreateSpecialists = prefs.autoCreateSpecialists;
125
+ if (prefs.autoCreateThreshold !== undefined)
126
+ data.autoCreateThreshold = prefs.autoCreateThreshold;
127
+ // Preserve autoUpdate, criticMode, and auto-create settings from existing prefs when callers don't pass them
113
128
  let existing;
114
129
  try {
115
130
  existing = JSON.parse(fs.readFileSync(paths_js_1.PREFS_PATH, 'utf-8'));
@@ -126,6 +141,30 @@ function savePreferences(prefs) {
126
141
  if (prefs.criticMode === undefined && existing && typeof existing.criticMode === 'boolean') {
127
142
  data.criticMode = existing.criticMode;
128
143
  }
144
+ // Preserve numeric options from existing prefs when callers don't pass them.
145
+ // Use 'in' to distinguish "key absent" (preserve) from "key explicitly set to undefined" (reset).
146
+ if (!('maxSteps' in prefs) && existing && typeof existing.maxSteps === 'number') {
147
+ data.maxSteps = existing.maxSteps;
148
+ }
149
+ if (!('maxTokens' in prefs) && existing && typeof existing.maxTokens === 'number') {
150
+ data.maxTokens = existing.maxTokens;
151
+ }
152
+ if (!('shellTimeout' in prefs) && existing && typeof existing.shellTimeout === 'number') {
153
+ data.shellTimeout = existing.shellTimeout;
154
+ }
155
+ if (!('tokenWindow' in prefs) && existing && typeof existing.tokenWindow === 'number') {
156
+ data.tokenWindow = existing.tokenWindow;
157
+ }
158
+ if (prefs.autoCreateSpecialists === undefined &&
159
+ existing &&
160
+ typeof existing.autoCreateSpecialists === 'boolean') {
161
+ data.autoCreateSpecialists = existing.autoCreateSpecialists;
162
+ }
163
+ if (prefs.autoCreateThreshold === undefined &&
164
+ existing &&
165
+ typeof existing.autoCreateThreshold === 'number') {
166
+ data.autoCreateThreshold = existing.autoCreateThreshold;
167
+ }
129
168
  fs.writeFileSync(paths_js_1.PREFS_PATH, JSON.stringify(data, null, 2) + '\n');
130
169
  }
131
170
  /**
@@ -143,9 +182,14 @@ function loadPreferences() {
143
182
  maxTokens: typeof parsed.maxTokens === 'number' ? parsed.maxTokens : undefined,
144
183
  shellTimeout: typeof parsed.shellTimeout === 'number' ? parsed.shellTimeout : undefined,
145
184
  tokenWindow: typeof parsed.tokenWindow === 'number' ? parsed.tokenWindow : undefined,
185
+ maxSteps: typeof parsed.maxSteps === 'number' ? parsed.maxSteps : undefined,
146
186
  theme: typeof parsed.theme === 'string' ? parsed.theme : undefined,
147
187
  autoUpdate: typeof parsed.autoUpdate === 'boolean' ? parsed.autoUpdate : undefined,
148
188
  criticMode: typeof parsed.criticMode === 'boolean' ? parsed.criticMode : undefined,
189
+ autoCreateSpecialists: typeof parsed.autoCreateSpecialists === 'boolean'
190
+ ? parsed.autoCreateSpecialists
191
+ : undefined,
192
+ autoCreateThreshold: typeof parsed.autoCreateThreshold === 'number' ? parsed.autoCreateThreshold : undefined,
149
193
  };
150
194
  }
151
195
  catch {
@@ -227,6 +271,7 @@ function saveOption(name, value) {
227
271
  maxTokens: prefs.maxTokens,
228
272
  shellTimeout: prefs.shellTimeout,
229
273
  tokenWindow: prefs.tokenWindow,
274
+ maxSteps: prefs.maxSteps,
230
275
  theme: prefs.theme,
231
276
  });
232
277
  }
@@ -248,18 +293,20 @@ function resetOption(name) {
248
293
  maxTokens: prefs.maxTokens,
249
294
  shellTimeout: prefs.shellTimeout,
250
295
  tokenWindow: prefs.tokenWindow,
296
+ maxSteps: prefs.maxSteps,
251
297
  theme: prefs.theme,
252
298
  });
253
299
  }
254
300
  /** Resets all numeric options to their defaults by removing them from preferences. */
255
301
  function resetAllOptions() {
256
302
  const prefs = loadPreferences();
257
- delete prefs.maxTokens;
258
- delete prefs.shellTimeout;
259
- delete prefs.tokenWindow;
260
303
  savePreferences({
261
304
  provider: prefs.provider || 'anthropic',
262
305
  model: prefs.model || getDefaultModel(prefs.provider || 'anthropic'),
306
+ maxTokens: undefined,
307
+ shellTimeout: undefined,
308
+ tokenWindow: undefined,
309
+ maxSteps: undefined,
263
310
  theme: prefs.theme,
264
311
  });
265
312
  }
@@ -398,19 +445,34 @@ function loadConfig(overrides) {
398
445
  (parseInt(process.env.BERNARD_SHELL_TIMEOUT || '', 10) || DEFAULT_SHELL_TIMEOUT);
399
446
  const tokenWindow = prefs.tokenWindow ??
400
447
  (parseInt(process.env.BERNARD_TOKEN_WINDOW || '', 10) || DEFAULT_TOKEN_WINDOW);
448
+ const rawMaxSteps = prefs.maxSteps ?? (parseInt(process.env.BERNARD_MAX_STEPS || '', 10) || DEFAULT_MAX_STEPS);
449
+ const maxSteps = Number.isFinite(rawMaxSteps) && rawMaxSteps >= 1 ? Math.floor(rawMaxSteps) : DEFAULT_MAX_STEPS;
401
450
  const ragEnabled = process.env.BERNARD_RAG_ENABLED !== 'false';
402
451
  const theme = prefs.theme || 'bernard';
403
452
  const criticMode = prefs.criticMode ??
404
453
  (process.env.BERNARD_CRITIC_MODE === 'true' || process.env.BERNARD_CRITIC_MODE === '1');
454
+ const autoCreateSpecialists = prefs.autoCreateSpecialists ??
455
+ (process.env.BERNARD_AUTO_CREATE_SPECIALISTS === 'true' ||
456
+ process.env.BERNARD_AUTO_CREATE_SPECIALISTS === '1'
457
+ ? true
458
+ : DEFAULT_AUTO_CREATE_SPECIALISTS);
459
+ const envAutoCreateThreshold = parseFloat(process.env.BERNARD_AUTO_CREATE_THRESHOLD ?? '');
460
+ const autoCreateThreshold = prefs.autoCreateThreshold ??
461
+ (Number.isFinite(envAutoCreateThreshold)
462
+ ? envAutoCreateThreshold
463
+ : DEFAULT_AUTO_CREATE_THRESHOLD);
405
464
  const config = {
406
465
  provider,
407
466
  model,
408
467
  maxTokens,
409
468
  shellTimeout,
410
469
  tokenWindow,
470
+ maxSteps,
411
471
  ragEnabled,
412
472
  theme,
413
473
  criticMode,
474
+ autoCreateSpecialists,
475
+ autoCreateThreshold,
414
476
  anthropicApiKey: process.env.ANTHROPIC_API_KEY,
415
477
  openaiApiKey: process.env.OPENAI_API_KEY,
416
478
  xaiApiKey: process.env.XAI_API_KEY,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import type { BernardConfig } from './config.js';
2
+ export declare const CRITIC_SYSTEM_PROMPT = "You are a verification agent for Bernard, a CLI AI assistant. Your role is to review the agent's work and verify its integrity.\n\nYou will receive:\n1. The user's original request\n2. The agent's final text response\n3. A log of actual tool calls made (tool name, arguments, results) \u2014 note that tool results, arguments, and the agent response may be truncated for context efficiency\n\nYour job:\n- Check if the agent's claims in its response are supported by actual tool call results.\n- Verify that tool calls were actually made for actions the agent claims to have performed.\n- Flag any claims not backed by tool evidence (e.g., \"I created the file\" but no shell/write tool call).\n- Flag any tool results that suggest failure but were reported as success.\n- Tool results and the agent response may be truncated for context efficiency. If a tool result appears cut off, do not treat the missing portion as evidence of failure. Only flag FAIL when there is positive evidence of failure (e.g., an error message visible in the output), not merely the absence of success confirmation in truncated output.\n- Check if the response addresses the user's original intent.\n\nOutput format (plain text, concise):\nVERDICT: PASS | WARN | FAIL\n[1-3 sentence explanation]\n[If WARN/FAIL: specific issues found]\n\nBe strict but fair. Not every response needs tool calls \u2014 knowledge answers are fine. Focus on cases where the agent *claims* to have done something via tools.";
3
+ export interface CriticResult {
4
+ verdict: 'PASS' | 'WARN' | 'FAIL' | 'UNKNOWN';
5
+ explanation: string;
6
+ }
7
+ export declare const CRITIC_MAX_RETRIES = 2;
8
+ export interface CriticToolEntry {
9
+ toolName: string;
10
+ args: unknown;
11
+ result: unknown;
12
+ }
13
+ /** Extracts a structured log of tool calls from generateText step results. */
14
+ export declare function extractToolCallLog(steps: {
15
+ toolCalls: any[];
16
+ toolResults: any[];
17
+ }[]): CriticToolEntry[];
18
+ /**
19
+ * Runs the critic agent to verify the main agent's response against actual tool calls.
20
+ *
21
+ * @param config - Bernard configuration for provider/model selection.
22
+ * @param userInput - The original user request.
23
+ * @param responseText - The agent's final text response.
24
+ * @param toolCallLog - Structured log of tool calls and results.
25
+ * @param options - Optional retry flag, display prefix, and abort signal.
26
+ * @returns Parsed critic result, or null on error.
27
+ */
28
+ export declare function runCritic(config: BernardConfig, userInput: string, responseText: string, toolCallLog: CriticToolEntry[], options?: {
29
+ isRetry?: boolean;
30
+ prefix?: string;
31
+ abortSignal?: AbortSignal;
32
+ }): Promise<CriticResult | null>;
package/dist/critic.js ADDED
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CRITIC_MAX_RETRIES = exports.CRITIC_SYSTEM_PROMPT = void 0;
4
+ exports.extractToolCallLog = extractToolCallLog;
5
+ exports.runCritic = runCritic;
6
+ const ai_1 = require("ai");
7
+ const index_js_1 = require("./providers/index.js");
8
+ const output_js_1 = require("./output.js");
9
+ const logger_js_1 = require("./logger.js");
10
+ const CRITIC_TOTAL_RESULT_BUDGET = 8000;
11
+ const CRITIC_MIN_RESULT_CHARS = 500;
12
+ const CRITIC_MAX_RESPONSE_LENGTH = 4000;
13
+ const CRITIC_MAX_ARGS_LENGTH = 1000;
14
+ exports.CRITIC_SYSTEM_PROMPT = `You are a verification agent for Bernard, a CLI AI assistant. Your role is to review the agent's work and verify its integrity.
15
+
16
+ You will receive:
17
+ 1. The user's original request
18
+ 2. The agent's final text response
19
+ 3. A log of actual tool calls made (tool name, arguments, results) — note that tool results, arguments, and the agent response may be truncated for context efficiency
20
+
21
+ Your job:
22
+ - Check if the agent's claims in its response are supported by actual tool call results.
23
+ - Verify that tool calls were actually made for actions the agent claims to have performed.
24
+ - Flag any claims not backed by tool evidence (e.g., "I created the file" but no shell/write tool call).
25
+ - Flag any tool results that suggest failure but were reported as success.
26
+ - Tool results and the agent response may be truncated for context efficiency. If a tool result appears cut off, do not treat the missing portion as evidence of failure. Only flag FAIL when there is positive evidence of failure (e.g., an error message visible in the output), not merely the absence of success confirmation in truncated output.
27
+ - Check if the response addresses the user's original intent.
28
+
29
+ Output format (plain text, concise):
30
+ VERDICT: PASS | WARN | FAIL
31
+ [1-3 sentence explanation]
32
+ [If WARN/FAIL: specific issues found]
33
+
34
+ Be strict but fair. Not every response needs tool calls — knowledge answers are fine. Focus on cases where the agent *claims* to have done something via tools.`;
35
+ exports.CRITIC_MAX_RETRIES = 2;
36
+ /** Extracts a structured log of tool calls from generateText step results. */
37
+ function extractToolCallLog(steps) {
38
+ const entries = [];
39
+ for (const step of steps) {
40
+ for (let i = 0; i < step.toolCalls.length; i++) {
41
+ const tc = step.toolCalls[i];
42
+ const tr = step.toolResults[i];
43
+ entries.push({ toolName: tc.toolName, args: tc.args, result: tr?.result });
44
+ }
45
+ }
46
+ return entries;
47
+ }
48
+ /**
49
+ * Runs the critic agent to verify the main agent's response against actual tool calls.
50
+ *
51
+ * @param config - Bernard configuration for provider/model selection.
52
+ * @param userInput - The original user request.
53
+ * @param responseText - The agent's final text response.
54
+ * @param toolCallLog - Structured log of tool calls and results.
55
+ * @param options - Optional retry flag, display prefix, and abort signal.
56
+ * @returns Parsed critic result, or null on error.
57
+ */
58
+ async function runCritic(config, userInput, responseText, toolCallLog, options) {
59
+ try {
60
+ if (options?.isRetry) {
61
+ (0, output_js_1.printCriticReVerify)(options?.prefix);
62
+ }
63
+ else {
64
+ (0, output_js_1.printCriticStart)(options?.prefix);
65
+ }
66
+ const perResultLimit = Math.max(CRITIC_MIN_RESULT_CHARS, Math.floor(CRITIC_TOTAL_RESULT_BUDGET / toolCallLog.length));
67
+ const truncatedLog = toolCallLog.map((entry) => {
68
+ const raw = typeof entry.result === 'string' ? entry.result : JSON.stringify(entry.result ?? null);
69
+ const truncated = raw.length > perResultLimit ? raw.slice(0, perResultLimit) + '...' : raw;
70
+ return {
71
+ toolName: entry.toolName,
72
+ args: entry.args,
73
+ result: truncated,
74
+ };
75
+ });
76
+ const truncatedResponse = responseText.length > CRITIC_MAX_RESPONSE_LENGTH
77
+ ? responseText.slice(0, CRITIC_MAX_RESPONSE_LENGTH) + '\n... (truncated)'
78
+ : responseText;
79
+ const criticMessage = `## Original User Request
80
+ ${userInput}
81
+
82
+ ## Agent Response
83
+ ${truncatedResponse}
84
+
85
+ ## Tool Call Log (${truncatedLog.length} calls)
86
+ ${truncatedLog
87
+ .map((e, i) => {
88
+ const argsStr = JSON.stringify(e.args);
89
+ const truncatedArgs = argsStr.length > CRITIC_MAX_ARGS_LENGTH
90
+ ? argsStr.slice(0, CRITIC_MAX_ARGS_LENGTH) + '...'
91
+ : argsStr;
92
+ return `${i + 1}. ${e.toolName}(${truncatedArgs})\n Result: ${e.result}`;
93
+ })
94
+ .join('\n\n')}`;
95
+ const result = await (0, ai_1.generateText)({
96
+ model: (0, index_js_1.getModel)(config.provider, config.model),
97
+ system: exports.CRITIC_SYSTEM_PROMPT,
98
+ messages: [{ role: 'user', content: criticMessage }],
99
+ maxSteps: 1,
100
+ maxTokens: 1024,
101
+ abortSignal: options?.abortSignal,
102
+ });
103
+ if (result.text) {
104
+ const parsed = (0, output_js_1.parseCriticVerdict)(result.text);
105
+ (0, output_js_1.printCriticVerdict)(result.text, options?.prefix);
106
+ return {
107
+ verdict: parsed.verdict,
108
+ explanation: parsed.explanation,
109
+ };
110
+ }
111
+ return null;
112
+ }
113
+ catch (err) {
114
+ (0, logger_js_1.debugLog)('critic:error', err instanceof Error ? err.message : String(err));
115
+ return null;
116
+ }
117
+ }
118
+ //# sourceMappingURL=critic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"critic.js","sourceRoot":"","sources":["../src/critic.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,7 @@ const mcp_js_1 = require("../mcp.js");
54
54
  const store_js_1 = require("./store.js");
55
55
  const log_store_js_1 = require("./log-store.js");
56
56
  const notify_js_1 = require("./notify.js");
57
+ const pac_js_1 = require("../pac.js");
57
58
  const DAEMON_SYSTEM_PROMPT = `You are Bernard, running as a background cron job in daemon mode. There is no interactive user present — you execute autonomously and have a limited step budget (20 steps), so work efficiently.
58
59
 
59
60
  ## Structured Approach
@@ -216,51 +217,70 @@ async function runJob(job, log) {
216
217
  ragResults,
217
218
  includeScratch: true,
218
219
  });
219
- // Append current date so the agent knows "today"
220
- const todayStr = new Date().toLocaleDateString('en-US', {
221
- weekday: 'long',
222
- year: 'numeric',
223
- month: 'long',
224
- day: 'numeric',
225
- });
226
- enrichedPrompt += `\n\nToday's date: ${todayStr}`;
220
+ // Append current date and time so the agent knows "now"
221
+ enrichedPrompt += `\n\nCurrent date and time: ${(0, datetime_js_1.formatCurrentDateTime)()}`;
227
222
  // Append connected MCP server names so the agent knows what's available
228
223
  if (serverNames.length > 0) {
229
224
  enrichedPrompt += `\nConnected MCP servers: ${serverNames.join(', ')}`;
230
225
  }
226
+ const onStepFinish = ({ text, toolCalls, toolResults, usage, finishReason, }) => {
227
+ const truncatedResults = (toolResults ?? []).map((tr) => ({
228
+ toolName: tr.toolName,
229
+ toolCallId: tr.toolCallId,
230
+ result: truncateResult(tr.result, 10240),
231
+ }));
232
+ steps.push({
233
+ stepIndex: stepIndex++,
234
+ timestamp: new Date().toISOString(),
235
+ text: text || '',
236
+ toolCalls: (toolCalls ?? []).map((tc) => ({
237
+ toolName: tc.toolName,
238
+ toolCallId: tc.toolCallId,
239
+ args: tc.args,
240
+ })),
241
+ toolResults: truncatedResults,
242
+ usage: {
243
+ promptTokens: usage?.promptTokens ?? 0,
244
+ completionTokens: usage?.completionTokens ?? 0,
245
+ totalTokens: (usage?.promptTokens ?? 0) + (usage?.completionTokens ?? 0),
246
+ },
247
+ finishReason: finishReason || 'unknown',
248
+ });
249
+ };
231
250
  const result = await (0, ai_1.generateText)({
232
251
  model: (0, index_js_1.getModel)(config.provider, config.model),
233
252
  tools,
234
- maxSteps: 20,
253
+ maxSteps: config.maxSteps,
235
254
  maxTokens: config.maxTokens,
236
255
  system: enrichedPrompt,
237
256
  messages: [{ role: 'user', content: job.prompt }],
238
- onStepFinish: ({ text, toolCalls, toolResults, usage, finishReason }) => {
239
- const truncatedResults = (toolResults || []).map((tr) => ({
240
- toolName: tr.toolName,
241
- toolCallId: tr.toolCallId,
242
- result: truncateResult(tr.result, 10240),
243
- }));
244
- steps.push({
245
- stepIndex: stepIndex++,
246
- timestamp: new Date().toISOString(),
247
- text: text || '',
248
- toolCalls: (toolCalls || []).map((tc) => ({
249
- toolName: tc.toolName,
250
- toolCallId: tc.toolCallId,
251
- args: tc.args,
252
- })),
253
- toolResults: truncatedResults,
254
- usage: {
255
- promptTokens: usage?.promptTokens ?? 0,
256
- completionTokens: usage?.completionTokens ?? 0,
257
- totalTokens: (usage?.promptTokens ?? 0) + (usage?.completionTokens ?? 0),
258
- },
259
- finishReason: finishReason || 'unknown',
260
- });
261
- },
257
+ onStepFinish,
262
258
  });
263
- const output = result.text || '(no text output)';
259
+ // Run PAC loop when critic mode is enabled
260
+ let finalOutput;
261
+ if (config.criticMode) {
262
+ const pacResult = await (0, pac_js_1.runPACLoop)({
263
+ config,
264
+ userInput: job.prompt,
265
+ initialResult: result,
266
+ regenerate: async (extraMessages) => {
267
+ return (0, ai_1.generateText)({
268
+ model: (0, index_js_1.getModel)(config.provider, config.model),
269
+ tools,
270
+ maxSteps: 20,
271
+ maxTokens: config.maxTokens,
272
+ system: enrichedPrompt,
273
+ messages: [{ role: 'user', content: job.prompt }, ...extraMessages],
274
+ onStepFinish,
275
+ });
276
+ },
277
+ });
278
+ finalOutput = pacResult.finalText || '(no text output)';
279
+ }
280
+ else {
281
+ finalOutput = result.text || '(no text output)';
282
+ }
283
+ const output = finalOutput;
264
284
  try {
265
285
  const totalUsage = steps.reduce((acc, s) => ({
266
286
  promptTokens: acc.promptTokens + s.usage.promptTokens,