@marifold/core 0.60.0 → 0.64.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 (79) hide show
  1. package/dist/agent/AgentEvents.d.ts +7 -0
  2. package/dist/agent/AgentEvents.d.ts.map +1 -1
  3. package/dist/agent/AgentRunner.d.ts +4 -1
  4. package/dist/agent/AgentRunner.d.ts.map +1 -1
  5. package/dist/agent/AgentRunner.js +108 -20
  6. package/dist/agent/AgentRunner.js.map +1 -1
  7. package/dist/agent/AttachmentResources.d.ts +40 -0
  8. package/dist/agent/AttachmentResources.d.ts.map +1 -0
  9. package/dist/agent/AttachmentResources.js +192 -0
  10. package/dist/agent/AttachmentResources.js.map +1 -0
  11. package/dist/agent/RunArtifacts.d.ts +18 -0
  12. package/dist/agent/RunArtifacts.d.ts.map +1 -0
  13. package/dist/agent/RunArtifacts.js +137 -0
  14. package/dist/agent/RunArtifacts.js.map +1 -0
  15. package/dist/agent/tools/InspectAttachmentTool.d.ts.map +1 -1
  16. package/dist/agent/tools/InspectAttachmentTool.js +4 -69
  17. package/dist/agent/tools/InspectAttachmentTool.js.map +1 -1
  18. package/dist/agent/tools/ReadAttachmentTool.d.ts +34 -0
  19. package/dist/agent/tools/ReadAttachmentTool.d.ts.map +1 -0
  20. package/dist/agent/tools/ReadAttachmentTool.js +84 -0
  21. package/dist/agent/tools/ReadAttachmentTool.js.map +1 -0
  22. package/dist/agent/tools/SearchAttachmentTool.d.ts +33 -0
  23. package/dist/agent/tools/SearchAttachmentTool.d.ts.map +1 -0
  24. package/dist/agent/tools/SearchAttachmentTool.js +76 -0
  25. package/dist/agent/tools/SearchAttachmentTool.js.map +1 -0
  26. package/dist/agent/tools/SkillManagementTool.d.ts +75 -0
  27. package/dist/agent/tools/SkillManagementTool.d.ts.map +1 -0
  28. package/dist/agent/tools/SkillManagementTool.js +312 -0
  29. package/dist/agent/tools/SkillManagementTool.js.map +1 -0
  30. package/dist/config/ConfigManager.d.ts +9 -0
  31. package/dist/config/ConfigManager.d.ts.map +1 -1
  32. package/dist/config/ConfigManager.js +43 -0
  33. package/dist/config/ConfigManager.js.map +1 -1
  34. package/dist/config/ConfigSchema.d.ts +4 -4
  35. package/dist/config/ConfigSchema.d.ts.map +1 -1
  36. package/dist/config/MarifoldOpenAICompatProvider.d.ts +3 -0
  37. package/dist/config/MarifoldOpenAICompatProvider.d.ts.map +1 -1
  38. package/dist/config/MarifoldOpenAICompatProvider.js +35 -3
  39. package/dist/config/MarifoldOpenAICompatProvider.js.map +1 -1
  40. package/dist/config/ProviderFactory.d.ts +4 -0
  41. package/dist/config/ProviderFactory.d.ts.map +1 -1
  42. package/dist/config/ProviderFactory.js +7 -0
  43. package/dist/config/ProviderFactory.js.map +1 -1
  44. package/dist/errors/MarifoldError.d.ts +2 -1
  45. package/dist/errors/MarifoldError.d.ts.map +1 -1
  46. package/dist/errors/MarifoldError.js +3 -0
  47. package/dist/errors/MarifoldError.js.map +1 -1
  48. package/dist/index.d.ts +10 -2
  49. package/dist/index.d.ts.map +1 -1
  50. package/dist/index.js +26 -3
  51. package/dist/index.js.map +1 -1
  52. package/dist/runs/RunRegistry.d.ts +4 -0
  53. package/dist/runs/RunRegistry.d.ts.map +1 -1
  54. package/dist/runs/RunRegistry.js +22 -1
  55. package/dist/runs/RunRegistry.js.map +1 -1
  56. package/dist/runtime/MarifoldRuntime.d.ts +9 -5
  57. package/dist/runtime/MarifoldRuntime.d.ts.map +1 -1
  58. package/dist/runtime/MarifoldRuntime.js +140 -35
  59. package/dist/runtime/MarifoldRuntime.js.map +1 -1
  60. package/dist/runtime/MarifoldTypes.d.ts +8 -1
  61. package/dist/runtime/MarifoldTypes.d.ts.map +1 -1
  62. package/dist/skill/BuiltInSkillManager.d.ts.map +1 -1
  63. package/dist/skill/BuiltInSkillManager.js +2 -1
  64. package/dist/skill/BuiltInSkillManager.js.map +1 -1
  65. package/dist/skill/BuiltInSkills.d.ts +6 -0
  66. package/dist/skill/BuiltInSkills.d.ts.map +1 -0
  67. package/dist/skill/BuiltInSkills.js +91 -0
  68. package/dist/skill/BuiltInSkills.js.map +1 -0
  69. package/dist/skill/SkillSchema.d.ts +2 -2
  70. package/dist/skill/SkillSchema.d.ts.map +1 -1
  71. package/dist/skill/SkillStore.d.ts +9 -0
  72. package/dist/skill/SkillStore.d.ts.map +1 -1
  73. package/dist/skill/SkillStore.js +87 -14
  74. package/dist/skill/SkillStore.js.map +1 -1
  75. package/dist/skill/index.d.ts +1 -0
  76. package/dist/skill/index.d.ts.map +1 -1
  77. package/dist/skill/index.js +5 -1
  78. package/dist/skill/index.js.map +1 -1
  79. package/package.json +1 -1
@@ -3,6 +3,7 @@ import { TaskPlanItem, TaskStatus, TaskStepStatus } from '../tasks/TaskStore';
3
3
  import { ApprovalRequest } from './ApprovalPolicy';
4
4
  import type { AgentToolKind } from './ToolRegistry';
5
5
  import type { UserInputRequest, UserInputResponse } from './UserInput';
6
+ import type { RunArtifact } from './RunArtifacts';
6
7
  /** Token usage accumulated over an agent run's model calls (optional planning
7
8
  * and loop turns), as reported by the provider. Fields are undefined when the
8
9
  * provider does not report usage (e.g. some local models). */
@@ -85,6 +86,12 @@ export type AgentEvent = {
85
86
  summary: string;
86
87
  isError: boolean;
87
88
  }
89
+ /** A regular file generated under the isolated run output directory. The
90
+ * opaque id is resolved by the hosting transport; host paths never cross. */
91
+ | {
92
+ type: 'artifact';
93
+ artifact: RunArtifact;
94
+ }
88
95
  /** @deprecated Kept for wire/source compatibility with pre-v0.24.2 runners.
89
96
  * Current runners verify observable behavior through normal tool calls and
90
97
  * never emit a separate model-authored self-grade. */
@@ -1 +1 @@
1
- {"version":3,"file":"AgentEvents.d.ts","sourceRoot":"","sources":["../../src/agent/AgentEvents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentEvents.d.ts","sourceRoot":"","sources":["../../src/agent/AgentEvents.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { ImageInput, PriestConfig, PriestRequest, PriestResponse } from '@priest-ai/core';
2
2
  import { HistoryTurn } from './AgentHistory';
3
- import { MarifoldResolvedSettings, MarifoldRunRequest } from '../runtime/MarifoldTypes';
3
+ import { MarifoldProviderToolDefinition, MarifoldResolvedSettings, MarifoldRunRequest, MarifoldWebSearchMode } from '../runtime/MarifoldTypes';
4
4
  import { TaskStore } from '../tasks/TaskStore';
5
5
  import { AgentEvent } from './AgentEvents';
6
6
  import { AgentToolMode, ApprovalHandler, MarifoldAgentConfig } from './ApprovalPolicy';
@@ -81,6 +81,8 @@ export interface AgentEngine {
81
81
  export interface AgentEngineContext {
82
82
  engine: AgentEngine;
83
83
  config: PriestConfig;
84
+ webSearchMode?: MarifoldWebSearchMode;
85
+ providerTools?: MarifoldProviderToolDefinition[];
84
86
  }
85
87
  export interface AgentRunnerDeps {
86
88
  taskStore: TaskStore;
@@ -139,6 +141,7 @@ export declare class AgentRunner {
139
141
  private drainSteering;
140
142
  private loopRequest;
141
143
  private agentContext;
144
+ private toolDefinitions;
142
145
  private extractTurn;
143
146
  private shouldFallBackToControlBlocks;
144
147
  private buildPlan;
@@ -1 +1 @@
1
- {"version":3,"file":"AgentRunner.d.ts","sourceRoot":"","sources":["../../src/agent/AgentRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentRunner.d.ts","sourceRoot":"","sources":["../../src/agent/AgentRunner.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,8 @@ const MemoryControls_1 = require("../memory/MemoryControls");
42
42
  const AgentHistory_1 = require("./AgentHistory");
43
43
  const ControlBlockTools_1 = require("./ControlBlockTools");
44
44
  const RunWorkspace_1 = require("./RunWorkspace");
45
+ const RunArtifacts_1 = require("./RunArtifacts");
46
+ const ToolRegistry_1 = require("./ToolRegistry");
45
47
  const PLAN_SCHEMA = {
46
48
  type: 'object',
47
49
  properties: {
@@ -50,8 +52,14 @@ const PLAN_SCHEMA = {
50
52
  },
51
53
  required: ['title', 'steps'],
52
54
  };
55
+ const NATIVE_WEB_SEARCH_COMPAT_OPTION = 'marifold_native_web_search';
53
56
  /** Char budget for the injected history window when no profile budget is set. */
54
57
  const HISTORY_BUDGET_DEFAULT_CHARS = 16000;
58
+ /** Tool output is operational context, not a document transport. Bound each
59
+ * result and the accumulated turn-local exchange independently so several
60
+ * successful reads cannot overflow the next provider request. */
61
+ const MODEL_TOOL_RESULT_MAX_CHARS = 24_000;
62
+ const MODEL_TOOL_EXCHANGE_MAX_CHARS = 64_000;
55
63
  /**
56
64
  * Approval-aware agent loop. Optionally plans, iterates tool calls against the
57
65
  * ToolRegistry, and records the final outcome in the ephemeral TaskStore.
@@ -89,7 +97,25 @@ class AgentRunner {
89
97
  images: await this.deps.prepareImages(runOptions.images, runOptions.originalImages !== true),
90
98
  };
91
99
  }
92
- const { engine: rawEngine, config } = await this.deps.prepareEngine(settings);
100
+ const preparedEngine = await this.deps.prepareEngine(settings);
101
+ const { engine: rawEngine } = preparedEngine;
102
+ let config = preparedEngine.config;
103
+ let webSearchMode = preparedEngine.webSearchMode ?? 'unavailable';
104
+ let providerTools = preparedEngine.providerTools;
105
+ if (runOptions.unattended) {
106
+ const unattendedApproval = {
107
+ ...agentConfig.approval,
108
+ ...(agentConfig.unattended ?? {}),
109
+ };
110
+ // Provider-hosted tools cannot pause for Marifold's per-call approval.
111
+ // In unattended runs, only an explicit network allow may expose them;
112
+ // ask continues to degrade to deny like every caller-executed tool.
113
+ if (unattendedApproval.network !== 'allow') {
114
+ webSearchMode = 'unavailable';
115
+ providerTools = undefined;
116
+ config = withoutNativeWebSearchCompat(config);
117
+ }
118
+ }
93
119
  // Tally token usage across every model call (optional plan + loop turns).
94
120
  const usage = {};
95
121
  const engine = withUsageTally(rawEngine, usage);
@@ -181,7 +207,9 @@ class AgentRunner {
181
207
  // config). Adaptive by default: a separate planning call is overhead for
182
208
  // the common single-step task, so the model just reasons inline.
183
209
  if (options.forcePlan) {
184
- const plan = await this.buildPlan(engine, config, settings.profile, runOptions);
210
+ // Planning never receives provider tools. Strip the Priest 3.0.x
211
+ // compatibility marker as well so the wrapper cannot infer one.
212
+ const plan = await this.buildPlan(engine, withoutNativeWebSearchCompat(config), settings.profile, runOptions);
185
213
  const planned = this.deps.taskStore.update(task.id, {
186
214
  title: plan.title,
187
215
  plan: plan.steps.map((text, index) => ({
@@ -201,7 +229,7 @@ class AgentRunner {
201
229
  for (const note of this.drainSteering(task.id, options, state)) {
202
230
  yield { type: 'steering', taskId: task.id, text: note };
203
231
  }
204
- const response = await engine.run(this.loopRequest(config, settings.profile, runOptions, state, workspace), {
232
+ const response = await engine.run(this.loopRequest(config, settings.profile, runOptions, state, workspace, webSearchMode, providerTools), {
205
233
  signal: options.signal,
206
234
  });
207
235
  this.trace({
@@ -230,7 +258,7 @@ class AgentRunner {
230
258
  const message = response.error?.message ?? 'Provider call failed.';
231
259
  yield { type: 'error', code: response.error?.code ?? 'PROVIDER_ERROR', message };
232
260
  await persistSessionTurn(failedSessionOutcome(message), 'failed');
233
- yield* this.finish(task.id, 'failed', undefined, 'Retry the run once the provider issue is resolved.', usage);
261
+ yield* this.finish(task.id, 'failed', undefined, 'Retry the run once the provider issue is resolved.', usage, workspace);
234
262
  return;
235
263
  }
236
264
  const { text, calls } = this.extractTurn(response, state);
@@ -265,7 +293,7 @@ class AgentRunner {
265
293
  message: `Iteration cap of ${maxIterations} reached before the objective was completed.`,
266
294
  });
267
295
  await persistSessionTurn(failedSessionOutcome(`Stopped at the iteration cap of ${maxIterations} before completing the objective.`), 'failed');
268
- yield* this.finish(task.id, 'failed', 'Stopped at the iteration cap before completing the objective.', 'Re-run with a higher iteration cap or a narrower objective.', usage);
296
+ yield* this.finish(task.id, 'failed', 'Stopped at the iteration cap before completing the objective.', 'Re-run with a higher iteration cap or a narrower objective.', usage, workspace);
269
297
  return;
270
298
  }
271
299
  // Persist a single clean turn pair (objective → final answer) so resuming
@@ -276,19 +304,19 @@ class AgentRunner {
276
304
  // self-grade unreliably — so it was pure token overhead. Real checks belong
277
305
  // in tools the agent runs inside the loop, not a final self-assessment.
278
306
  this.completePlanSteps(task.id, true);
279
- yield* this.finish(task.id, 'completed', finalText, undefined, usage);
307
+ yield* this.finish(task.id, 'completed', finalText, undefined, usage, workspace);
280
308
  }
281
309
  catch (error) {
282
310
  if (error instanceof AbortedError || (options.signal?.aborted ?? false)) {
283
311
  this.deps.taskStore.appendEvent(task.id, { kind: 'note', message: 'Run cancelled by the user.' });
284
312
  await persistSessionTurn('Run cancelled before a final response was produced.', 'cancelled');
285
- yield* this.finish(task.id, 'cancelled', undefined, 'Resume by starting a new run with the same objective.', usage);
313
+ yield* this.finish(task.id, 'cancelled', undefined, 'Resume by starting a new run with the same objective.', usage, workspace);
286
314
  return;
287
315
  }
288
316
  const message = error instanceof Error ? error.message : String(error);
289
317
  yield { type: 'error', code: 'AGENT_RUN_ERROR', message };
290
318
  await persistSessionTurn(failedSessionOutcome(message), 'failed');
291
- yield* this.finish(task.id, 'failed', undefined, message, usage);
319
+ yield* this.finish(task.id, 'failed', undefined, message, usage, workspace);
292
320
  }
293
321
  }
294
322
  async *executeCall(taskId, call, options, state, toolContext) {
@@ -465,11 +493,14 @@ class AgentRunner {
465
493
  }
466
494
  recordToolResult(taskId, state, call, content, isError, summary, appendObservation = true) {
467
495
  this.trace({ kind: 'tool_result', tool: call.name, chars: content.length, isError });
496
+ const modelContent = (0, ToolRegistry_1.capToolOutput)(content, MODEL_TOOL_RESULT_MAX_CHARS);
468
497
  if (state.mode === 'native') {
469
- state.exchange.push({ kind: 'tool_result', toolCallId: call.id, name: call.name, content, isError });
498
+ state.exchange.push({ kind: 'tool_result', toolCallId: call.id, name: call.name, content: modelContent, isError });
499
+ compactNativeToolExchange(state.exchange);
470
500
  }
471
501
  else {
472
- state.transcript.push((0, ControlBlockTools_1.formatControlBlockResult)(call, content, isError));
502
+ state.transcript.push((0, ControlBlockTools_1.formatControlBlockResult)(call, modelContent, isError));
503
+ compactControlBlockTranscript(state.transcript);
473
504
  }
474
505
  state.toolSummaries.push(`${isError ? '[error] ' : ''}${summary}`);
475
506
  if (appendObservation) {
@@ -497,22 +528,24 @@ class AgentRunner {
497
528
  }
498
529
  return drained;
499
530
  }
500
- loopRequest(config, profile, options, state, workspace) {
531
+ loopRequest(config, profile, options, state, workspace, webSearchMode, providerTools) {
532
+ const toolDefinitions = this.toolDefinitions(webSearchMode, options.instructions);
501
533
  const base = {
502
534
  config,
503
535
  profile,
504
536
  prompt: options.lean
505
537
  ? options.objective
506
538
  : `Objective: ${options.objective}\n\nUse tools only when the objective genuinely requires reading or writing files, running commands, searching the web, or delegating. Many objectives — greetings, questions, explanations, drafting text — need no tools at all; for those, answer directly from your own knowledge. Do not invent tool calls. When the objective is complete, reply with a short final answer describing the outcome.`,
507
- context: this.agentContext(state, workspace, options.instructions, options.lean),
539
+ context: this.agentContext(state, workspace, webSearchMode, options.instructions, options.lean),
508
540
  ...(options.sessionId ? { session: { id: options.sessionId, createIfMissing: true } } : {}),
509
541
  ...(state.activeImages.length > 0 ? { images: state.activeImages } : {}),
542
+ ...(providerTools && providerTools.length > 0 ? { providerTools } : {}),
510
543
  };
511
544
  const steering = state.steeringNotes.map(note => `The user added this guidance while you were working — take it into account: ${note}`);
512
545
  if (state.mode === 'native') {
513
546
  return {
514
547
  ...base,
515
- tools: this.deps.registry.definitions(),
548
+ ...(toolDefinitions.length > 0 ? { tools: toolDefinitions } : {}),
516
549
  toolExchange: state.exchange,
517
550
  ...(steering.length > 0 ? { userContext: steering } : {}),
518
551
  };
@@ -522,19 +555,25 @@ class AgentRunner {
522
555
  userContext: [...state.transcript, ...steering],
523
556
  };
524
557
  }
525
- agentContext(state, workspace, instructions, lean = false) {
558
+ agentContext(state, workspace, webSearchMode, instructions, lean = false) {
559
+ const toolDefinitions = this.toolDefinitions(webSearchMode, instructions);
560
+ const webSearchContext = webSearchMode === 'native'
561
+ ? 'Provider-hosted web search is available for this run. Use it for web/current-information requests; Marifold fallback search is not exposed while native search is available.'
562
+ : webSearchMode === 'unavailable'
563
+ ? 'Web search is unavailable for this run. If the objective requires browsing or current information, say clearly that you cannot access web search; do not imply that you searched.'
564
+ : 'Marifold fallback web search is available through the web_search tool.';
526
565
  const attachments = workspace.attachments.length > 0
527
566
  ? [
528
567
  'Attachments uploaded for this run:',
529
568
  ...workspace.attachments.map(attachment => (`- ${attachment.id}: ${attachment.name} (${attachment.mediaType}, ${formatAttachmentBytes(attachment.size)})`)),
530
- 'Attachments are not embedded in this agent prompt. Use inspect_attachment with an attachment ID when their contents matter. You may inspect independent attachments in parallel with other read-only tool calls.',
569
+ 'Attachments are not embedded in this agent prompt. Start with inspect_attachment for metadata, a small preview, and the read-only run path. Use search_attachment and bounded read_attachment ranges for understanding. For joins, conversions, edits, extraction, or other complete-file operations, run a local format-specific program against the read-only path and write deliverables to $MARIFOLD_OUTPUT_DIR; never pull the complete file through model context. You may inspect independent attachments in parallel with other read-only tool calls.',
531
570
  ].join('\n')
532
571
  : 'No attachments were uploaded for this run.';
533
572
  const workspaceContext = [
534
573
  `Working directory: ${workspace.cwd}. Relative tool paths resolve against it.`,
535
574
  `User home: ${workspace.userHome}. In tool paths and shell commands, ~ refers to this directory.`,
536
575
  `Isolated run directory: ${workspace.rootDir}. Its internal runtime home is ${workspace.homeDir}.`,
537
- `${attachments}\nHonor explicit destination paths from the user; otherwise write generated deliverables to ${workspace.outputDir}. Temporary scripts and environments belong in ${workspace.workDir}.`,
576
+ `${attachments}\nHonor explicit destination paths from the user; otherwise write generated deliverables to ${workspace.outputDir}. Regular output files are published to clients automatically, so mention their filenames normally and do not invent sandbox:, file:, or host-path download links. Temporary scripts and environments belong in ${workspace.workDir}.`,
538
577
  ...(this.deps.registry.get('ask_user')?.kind === 'interaction' ? [
539
578
  'ask_user is optional. Use it only when essential information is missing and a reasonable assumption could materially change the result. Otherwise proceed. Batch all currently known questions into one call, and call it without other tools in that response.',
540
579
  ] : []),
@@ -544,9 +583,9 @@ class AgentRunner {
544
583
  // and we ask for only the final output to avoid plan/preamble/reasoning prose.
545
584
  if (lean) {
546
585
  const context = [...(instructions ?? [])];
547
- context.push(`${workspaceContext}\nUse inspect_attachment when the skill depends on an uploaded attachment. Use read_file only if the instructions reference a bundled file (e.g. vars.toml). Resolve required inputs, then reply with ONLY the final output the instructions define — no plan, preamble, reasoning, or commentary.`);
586
+ context.push(`${webSearchContext}\n${workspaceContext}\nUse inspect_attachment when the skill depends on an uploaded attachment, then use bounded attachment search/read or local processing as appropriate. Use read_file only if the instructions reference a bundled file (e.g. vars.toml). Resolve required inputs, then reply with ONLY the final output the instructions define — no plan, preamble, reasoning, or commentary.`);
548
587
  if (state.mode === 'control-block') {
549
- context.push((0, ControlBlockTools_1.buildControlBlockInstructions)(this.deps.registry.definitions()));
588
+ context.push((0, ControlBlockTools_1.buildControlBlockInstructions)(toolDefinitions));
550
589
  }
551
590
  return context;
552
591
  }
@@ -554,6 +593,7 @@ class AgentRunner {
554
593
  'You are running as the Marifold agent. Stay focused on the stated objective and keep replies concise.',
555
594
  'Prefer answering directly. Reach for a tool only when the objective cannot be completed from your own knowledge — never use a tool just to demonstrate one.',
556
595
  'After changing files or producing an observable result, use the narrowest relevant tool for a focused check before claiming success. Report the evidence you actually observed; do not invent results or perform a separate self-grade.',
596
+ webSearchContext,
557
597
  workspaceContext,
558
598
  ];
559
599
  // Skill instructions are authoritative for this run — lead with them.
@@ -564,10 +604,17 @@ class AgentRunner {
564
604
  if (state.historyContext)
565
605
  context.push(state.historyContext);
566
606
  if (state.mode === 'control-block') {
567
- context.push((0, ControlBlockTools_1.buildControlBlockInstructions)(this.deps.registry.definitions()));
607
+ context.push((0, ControlBlockTools_1.buildControlBlockInstructions)(toolDefinitions));
568
608
  }
569
609
  return context;
570
610
  }
611
+ toolDefinitions(webSearchMode, instructions) {
612
+ const exposeSkillManagement = instructions?.some(instruction => instruction.includes('manage_skill')) ?? false;
613
+ const definitions = this.deps.registry.definitions().filter(tool => tool.name !== 'manage_skill' || exposeSkillManagement);
614
+ return webSearchMode === 'fallback'
615
+ ? definitions
616
+ : definitions.filter(tool => tool.name !== 'web_search');
617
+ }
571
618
  extractTurn(response, state) {
572
619
  // Memory control blocks are stripped and their payloads discarded — agent
573
620
  // runs never write profile memory (see docs/architecture.md).
@@ -621,12 +668,17 @@ class AgentRunner {
621
668
  plan: task.plan.map(step => ({ id: step.id, text: step.text, status: 'completed' })),
622
669
  });
623
670
  }
624
- async *finish(taskId, status, summary, nextAction, usage) {
671
+ async *finish(taskId, status, summary, nextAction, usage, workspace) {
625
672
  const updated = this.deps.taskStore.update(taskId, {
626
673
  status,
627
674
  ...(summary ? { summary: truncate(summary, 2000) } : {}),
628
675
  ...(nextAction ? { nextAction: truncate(nextAction, 500) } : {}),
629
676
  });
677
+ if (workspace) {
678
+ for (const artifact of (0, RunArtifacts_1.listRunArtifacts)(workspace)) {
679
+ yield { type: 'artifact', artifact };
680
+ }
681
+ }
630
682
  yield { type: 'status', taskId, status: updated.status };
631
683
  yield {
632
684
  type: 'done',
@@ -642,6 +694,32 @@ class AgentRunner {
642
694
  }
643
695
  }
644
696
  exports.AgentRunner = AgentRunner;
697
+ function compactNativeToolExchange(exchange) {
698
+ let total = exchange.reduce((sum, turn) => (sum + (turn.kind === 'tool_result' ? turn.content.length : (turn.text?.length ?? 0))), 0);
699
+ if (total <= MODEL_TOOL_EXCHANGE_MAX_CHARS)
700
+ return;
701
+ for (let index = 0; index < exchange.length && total > MODEL_TOOL_EXCHANGE_MAX_CHARS; index += 1) {
702
+ const turn = exchange[index];
703
+ if (turn.kind !== 'tool_result' || turn.content.startsWith('[Earlier tool result compacted'))
704
+ continue;
705
+ const replacement = `[Earlier tool result compacted: ${turn.name}; ${turn.content.length.toLocaleString('en-US')} characters omitted. Re-run a bounded read or search if the details are still needed.]`;
706
+ total -= turn.content.length - replacement.length;
707
+ exchange[index] = { ...turn, content: replacement };
708
+ }
709
+ }
710
+ function compactControlBlockTranscript(transcript) {
711
+ let total = transcript.reduce((sum, turn) => sum + turn.length, 0);
712
+ if (total <= MODEL_TOOL_EXCHANGE_MAX_CHARS)
713
+ return;
714
+ for (let index = 0; index < transcript.length - 1 && total > MODEL_TOOL_EXCHANGE_MAX_CHARS; index += 1) {
715
+ const turn = transcript[index];
716
+ if (turn.startsWith('[Earlier control-block turn compacted'))
717
+ continue;
718
+ const replacement = `[Earlier control-block turn compacted; ${turn.length.toLocaleString('en-US')} characters omitted.]`;
719
+ total -= turn.length - replacement.length;
720
+ transcript[index] = replacement;
721
+ }
722
+ }
645
723
  class AbortedError extends Error {
646
724
  constructor() {
647
725
  super('Agent run aborted.');
@@ -678,6 +756,16 @@ function formatAttachmentBytes(bytes) {
678
756
  function truncate(text, limit) {
679
757
  return text.length <= limit ? text : `${text.slice(0, limit - 3)}...`;
680
758
  }
759
+ function withoutNativeWebSearchCompat(config) {
760
+ if (config.providerOptions?.[NATIVE_WEB_SEARCH_COMPAT_OPTION] !== true)
761
+ return config;
762
+ const providerOptions = { ...config.providerOptions };
763
+ delete providerOptions[NATIVE_WEB_SEARCH_COMPAT_OPTION];
764
+ return {
765
+ ...config,
766
+ providerOptions: Object.keys(providerOptions).length > 0 ? providerOptions : undefined,
767
+ };
768
+ }
681
769
  function failedSessionOutcome(message) {
682
770
  const detail = truncate(message.trim(), 1000);
683
771
  return detail
@@ -1 +1 @@
1
- {"version":3,"file":"AgentRunner.js","sourceRoot":"","sources":["../../src/agent/AgentRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentRunner.js","sourceRoot":"","sources":["../../src/agent/AgentRunner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import type { StagedRunAttachment } from './RunWorkspace';
2
+ export declare const ATTACHMENT_PREVIEW_CHARS = 8000;
3
+ export declare const DEFAULT_ATTACHMENT_READ_CHARS = 8000;
4
+ export declare const MAX_ATTACHMENT_READ_CHARS = 20000;
5
+ export declare const DEFAULT_ATTACHMENT_SEARCH_RESULTS = 8;
6
+ export declare const MAX_ATTACHMENT_SEARCH_RESULTS = 20;
7
+ export interface AttachmentInspection {
8
+ content: string;
9
+ hasReadableText: boolean;
10
+ }
11
+ export interface AttachmentReadResult {
12
+ content: string;
13
+ start: number;
14
+ end: number;
15
+ total: number;
16
+ unit: 'characters';
17
+ }
18
+ export interface AttachmentSearchMatch {
19
+ line: number;
20
+ text: string;
21
+ }
22
+ export interface AttachmentSearchResult {
23
+ matches: AttachmentSearchMatch[];
24
+ truncated: boolean;
25
+ }
26
+ /**
27
+ * Format-neutral attachment facade. Original files remain authoritative and
28
+ * local; model-visible content is always a bounded derived view.
29
+ */
30
+ export declare class AttachmentResource {
31
+ readonly attachment: StagedRunAttachment;
32
+ constructor(attachment: StagedRunAttachment);
33
+ inspect(maxPreviewChars?: number): AttachmentInspection;
34
+ read(start: number, maxChars: number): AttachmentReadResult | undefined;
35
+ search(query: string, maxResults: number): AttachmentSearchResult | undefined;
36
+ private readableText;
37
+ }
38
+ export declare function isTextAttachment(attachment: Pick<StagedRunAttachment, 'name' | 'mediaType'>): boolean;
39
+ export declare function formatAttachmentSearch(result: AttachmentSearchResult, query: string): string;
40
+ //# sourceMappingURL=AttachmentResources.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachmentResources.d.ts","sourceRoot":"","sources":["../../src/agent/AttachmentResources.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAC9C,eAAO,MAAM,6BAA6B,OAAQ,CAAC;AACnD,eAAO,MAAM,yBAAyB,QAAS,CAAC;AAChD,eAAO,MAAM,iCAAiC,IAAI,CAAC;AACnD,eAAO,MAAM,6BAA6B,KAAK,CAAC;AA8BhD,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,YAAY,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,qBAAqB,EAAE,CAAC;IACjC,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IACjB,QAAQ,CAAC,UAAU,EAAE,mBAAmB;IAApD,YAAqB,UAAU,EAAE,mBAAmB,EAAI;IAExD,OAAO,CAAC,eAAe,SAA2B,GAAG,oBAAoB,CAwCxE;IAED,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAatE;IAED,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS,CAe5E;IAED,OAAO,CAAC,YAAY;CASrB;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,mBAAmB,EAAE,MAAM,GAAG,WAAW,CAAC,GAAG,OAAO,CAGrG;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAM5F"}