@marifold/core 0.69.0 → 0.71.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 (142) hide show
  1. package/dist/agent/AgentRunner.d.ts +7 -1
  2. package/dist/agent/AgentRunner.d.ts.map +1 -1
  3. package/dist/agent/AgentRunner.js +93 -20
  4. package/dist/agent/AgentRunner.js.map +1 -1
  5. package/dist/agent/RunArtifacts.d.ts +6 -1
  6. package/dist/agent/RunArtifacts.d.ts.map +1 -1
  7. package/dist/agent/RunArtifacts.js +16 -3
  8. package/dist/agent/RunArtifacts.js.map +1 -1
  9. package/dist/agent/RunWorkspace.d.ts +3 -0
  10. package/dist/agent/RunWorkspace.d.ts.map +1 -1
  11. package/dist/agent/RunWorkspace.js +5 -0
  12. package/dist/agent/RunWorkspace.js.map +1 -1
  13. package/dist/agent/ScopedProcess.d.ts.map +1 -1
  14. package/dist/agent/ScopedProcess.js +1 -0
  15. package/dist/agent/ScopedProcess.js.map +1 -1
  16. package/dist/agent/ToolRegistry.d.ts +11 -1
  17. package/dist/agent/ToolRegistry.d.ts.map +1 -1
  18. package/dist/agent/ToolRegistry.js +4 -1
  19. package/dist/agent/ToolRegistry.js.map +1 -1
  20. package/dist/agent/tools/ReadFileTool.d.ts.map +1 -1
  21. package/dist/agent/tools/ReadFileTool.js +4 -0
  22. package/dist/agent/tools/ReadFileTool.js.map +1 -1
  23. package/dist/agent/tools/ReadWebPageTool.d.ts +30 -0
  24. package/dist/agent/tools/ReadWebPageTool.d.ts.map +1 -0
  25. package/dist/agent/tools/ReadWebPageTool.js +56 -0
  26. package/dist/agent/tools/ReadWebPageTool.js.map +1 -0
  27. package/dist/agent/tools/WebSearchTool.d.ts +1 -0
  28. package/dist/agent/tools/WebSearchTool.d.ts.map +1 -1
  29. package/dist/agent/tools/WebSearchTool.js +19 -4
  30. package/dist/agent/tools/WebSearchTool.js.map +1 -1
  31. package/dist/agent/tools/WriteFileTool.d.ts.map +1 -1
  32. package/dist/agent/tools/WriteFileTool.js +4 -0
  33. package/dist/agent/tools/WriteFileTool.js.map +1 -1
  34. package/dist/app/SkillAppInstanceRegistry.d.ts.map +1 -1
  35. package/dist/app/SkillAppInstanceRegistry.js +5 -0
  36. package/dist/app/SkillAppInstanceRegistry.js.map +1 -1
  37. package/dist/config/ChatGptCatalogVersion.d.ts +3 -0
  38. package/dist/config/ChatGptCatalogVersion.d.ts.map +1 -0
  39. package/dist/config/ChatGptCatalogVersion.js +55 -0
  40. package/dist/config/ChatGptCatalogVersion.js.map +1 -0
  41. package/dist/config/ConfigLoader.js +2 -2
  42. package/dist/config/ConfigLoader.js.map +1 -1
  43. package/dist/config/ConfigManager.js +2 -2
  44. package/dist/config/ConfigManager.js.map +1 -1
  45. package/dist/config/ConfigSchema.d.ts +4 -4
  46. package/dist/config/ConfigSchema.d.ts.map +1 -1
  47. package/dist/config/ConfigSchema.js +2 -2
  48. package/dist/config/ConfigSchema.js.map +1 -1
  49. package/dist/config/ProviderInspector.d.ts.map +1 -1
  50. package/dist/config/ProviderInspector.js +2 -5
  51. package/dist/config/ProviderInspector.js.map +1 -1
  52. package/dist/errors/MarifoldError.d.ts +1 -1
  53. package/dist/errors/MarifoldError.d.ts.map +1 -1
  54. package/dist/errors/MarifoldError.js.map +1 -1
  55. package/dist/images/AvatarThumbnail.d.ts +3 -0
  56. package/dist/images/AvatarThumbnail.d.ts.map +1 -0
  57. package/dist/images/AvatarThumbnail.js +16 -0
  58. package/dist/images/AvatarThumbnail.js.map +1 -0
  59. package/dist/index.d.ts +15 -0
  60. package/dist/index.d.ts.map +1 -1
  61. package/dist/index.js +25 -4
  62. package/dist/index.js.map +1 -1
  63. package/dist/profiles/ProfileManager.d.ts.map +1 -1
  64. package/dist/profiles/ProfileManager.js +2 -3
  65. package/dist/profiles/ProfileManager.js.map +1 -1
  66. package/dist/runs/RunRegistry.d.ts +27 -1
  67. package/dist/runs/RunRegistry.d.ts.map +1 -1
  68. package/dist/runs/RunRegistry.js +75 -16
  69. package/dist/runs/RunRegistry.js.map +1 -1
  70. package/dist/runtime/MarifoldRuntime.d.ts +9 -2
  71. package/dist/runtime/MarifoldRuntime.d.ts.map +1 -1
  72. package/dist/runtime/MarifoldRuntime.js +40 -9
  73. package/dist/runtime/MarifoldRuntime.js.map +1 -1
  74. package/dist/search/BuiltInSearchBackend.d.ts +11 -0
  75. package/dist/search/BuiltInSearchBackend.d.ts.map +1 -0
  76. package/dist/search/BuiltInSearchBackend.js +100 -0
  77. package/dist/search/BuiltInSearchBackend.js.map +1 -0
  78. package/dist/search/BuiltInSearchParser.d.ts +5 -0
  79. package/dist/search/BuiltInSearchParser.d.ts.map +1 -0
  80. package/dist/search/BuiltInSearchParser.js +107 -0
  81. package/dist/search/BuiltInSearchParser.js.map +1 -0
  82. package/dist/search/PublicWebUrl.d.ts +4 -0
  83. package/dist/search/PublicWebUrl.d.ts.map +1 -0
  84. package/dist/search/PublicWebUrl.js +48 -0
  85. package/dist/search/PublicWebUrl.js.map +1 -0
  86. package/dist/search/SearchBackend.d.ts +3 -4
  87. package/dist/search/SearchBackend.d.ts.map +1 -1
  88. package/dist/search/SearchBackend.js +1 -1
  89. package/dist/search/SearchBackend.js.map +1 -1
  90. package/dist/search/WebPageReader.d.ts +16 -0
  91. package/dist/search/WebPageReader.d.ts.map +1 -0
  92. package/dist/search/WebPageReader.js +136 -0
  93. package/dist/search/WebPageReader.js.map +1 -0
  94. package/dist/search/WebPageText.d.ts +5 -0
  95. package/dist/search/WebPageText.d.ts.map +1 -0
  96. package/dist/search/WebPageText.js +47 -0
  97. package/dist/search/WebPageText.js.map +1 -0
  98. package/dist/search/WebResearchGuidance.d.ts +5 -0
  99. package/dist/search/WebResearchGuidance.d.ts.map +1 -0
  100. package/dist/search/WebResearchGuidance.js +27 -0
  101. package/dist/search/WebResearchGuidance.js.map +1 -0
  102. package/dist/search/createSearchBackend.d.ts +1 -0
  103. package/dist/search/createSearchBackend.d.ts.map +1 -1
  104. package/dist/search/createSearchBackend.js +4 -0
  105. package/dist/search/createSearchBackend.js.map +1 -1
  106. package/dist/workspace/DeviceDelegateTool.d.ts +40 -0
  107. package/dist/workspace/DeviceDelegateTool.d.ts.map +1 -0
  108. package/dist/workspace/DeviceDelegateTool.js +79 -0
  109. package/dist/workspace/DeviceDelegateTool.js.map +1 -0
  110. package/dist/workspace/WorkspaceArtifactTransfer.d.ts +8 -0
  111. package/dist/workspace/WorkspaceArtifactTransfer.d.ts.map +1 -0
  112. package/dist/workspace/WorkspaceArtifactTransfer.js +45 -0
  113. package/dist/workspace/WorkspaceArtifactTransfer.js.map +1 -0
  114. package/dist/workspace/WorkspaceExecutor.d.ts +19 -0
  115. package/dist/workspace/WorkspaceExecutor.d.ts.map +1 -0
  116. package/dist/workspace/WorkspaceExecutor.js +212 -0
  117. package/dist/workspace/WorkspaceExecutor.js.map +1 -0
  118. package/dist/workspace/WorkspaceManager.d.ts +43 -0
  119. package/dist/workspace/WorkspaceManager.d.ts.map +1 -0
  120. package/dist/workspace/WorkspaceManager.js +378 -0
  121. package/dist/workspace/WorkspaceManager.js.map +1 -0
  122. package/dist/workspace/WorkspaceRuns.d.ts +18 -0
  123. package/dist/workspace/WorkspaceRuns.d.ts.map +1 -0
  124. package/dist/workspace/WorkspaceRuns.js +152 -0
  125. package/dist/workspace/WorkspaceRuns.js.map +1 -0
  126. package/dist/workspace/WorkspaceStore.d.ts +49 -0
  127. package/dist/workspace/WorkspaceStore.d.ts.map +1 -0
  128. package/dist/workspace/WorkspaceStore.js +419 -0
  129. package/dist/workspace/WorkspaceStore.js.map +1 -0
  130. package/dist/workspace/WorkspaceTerminal.d.ts +4 -0
  131. package/dist/workspace/WorkspaceTerminal.d.ts.map +1 -0
  132. package/dist/workspace/WorkspaceTerminal.js +80 -0
  133. package/dist/workspace/WorkspaceTerminal.js.map +1 -0
  134. package/dist/workspace/bridge/BridgePeer.d.ts +48 -0
  135. package/dist/workspace/bridge/BridgePeer.d.ts.map +1 -0
  136. package/dist/workspace/bridge/BridgePeer.js +307 -0
  137. package/dist/workspace/bridge/BridgePeer.js.map +1 -0
  138. package/dist/workspace/bridge/ChunkTransfers.d.ts +19 -0
  139. package/dist/workspace/bridge/ChunkTransfers.d.ts.map +1 -0
  140. package/dist/workspace/bridge/ChunkTransfers.js +125 -0
  141. package/dist/workspace/bridge/ChunkTransfers.js.map +1 -0
  142. package/package.json +7 -3
@@ -65,8 +65,12 @@ class RunRegistry {
65
65
  maxActiveRuns;
66
66
  maxBufferedEvents;
67
67
  log;
68
+ listeners = new Set();
69
+ subscribe(listener) { this.listeners.add(listener); return () => { this.listeners.delete(listener); }; }
68
70
  closed = false;
71
+ journal;
69
72
  constructor(options) {
73
+ this.journal = options.journal;
70
74
  this.runtime = options.runtime;
71
75
  this.approvalTimeoutMs = options.approvalTimeoutMs ?? DEFAULT_APPROVAL_TIMEOUT_MS;
72
76
  this.userInputTimeoutMs = options.userInputTimeoutMs ?? DEFAULT_USER_INPUT_TIMEOUT_MS;
@@ -74,6 +78,21 @@ class RunRegistry {
74
78
  this.maxActiveRuns = options.maxActiveRuns ?? DEFAULT_MAX_ACTIVE_RUNS;
75
79
  this.maxBufferedEvents = options.maxBufferedEvents ?? DEFAULT_MAX_BUFFERED_EVENTS;
76
80
  this.log = options.log;
81
+ for (const { record, events } of this.journal?.load() ?? []) {
82
+ const interrupted = !record.finishedAt;
83
+ const run = { ...record, artifacts: record.artifacts ?? [], status: interrupted ? 'failed' : record.status,
84
+ summary: interrupted ? 'Interrupted by host restart. Completed effects were not replayed.' : record.summary,
85
+ finishedAt: record.finishedAt ?? new Date().toISOString(), finished: true,
86
+ buffer: events, firstSeq: events[0]?.seq ?? record.eventCount + 1, lastSeq: record.eventCount,
87
+ abort: new AbortController(), steeringQueue: [], grantedKinds: new Set(), trustedFolders: [], waiters: [],
88
+ };
89
+ if (interrupted) {
90
+ const event = { seq: ++run.lastSeq, event: { type: 'done', taskId: record.taskId ?? '', status: 'failed', summary: run.summary } };
91
+ run.buffer.push(event);
92
+ this.journal?.save(this.toRecord(run), event);
93
+ }
94
+ this.runs.set(run.id, run);
95
+ }
77
96
  }
78
97
  start(input) {
79
98
  if (this.closed)
@@ -83,8 +102,15 @@ class RunRegistry {
83
102
  if (active >= this.maxActiveRuns)
84
103
  throw MarifoldError_1.MarifoldError.runLimitExceeded(this.maxActiveRuns);
85
104
  const profile = input.profile ?? this.runtime.defaultProfile();
105
+ if (input.sessionId) {
106
+ const owner = [...this.runs.values()].find(run => !run.finished && run.sessionId === input.sessionId);
107
+ if (owner)
108
+ throw new MarifoldError_1.MarifoldError('SESSION_BUSY', `Session is already running on ${owner.id}.`, { runId: owner.id, sessionId: input.sessionId });
109
+ }
86
110
  const run = {
87
111
  id: this.createRunId(),
112
+ execution: input.execution,
113
+ parentRunId: input.parentRunId,
88
114
  objective: input.objective,
89
115
  profile,
90
116
  status: 'running',
@@ -102,6 +128,7 @@ class RunRegistry {
102
128
  waiters: [],
103
129
  };
104
130
  this.runs.set(run.id, run);
131
+ this.journal?.save(this.toRecord(run));
105
132
  // Detached pump: consume the run generator without blocking the caller,
106
133
  // the same detachment the Telegram bridge uses so an approval answer
107
134
  // arriving on a later request cannot deadlock the run.
@@ -110,6 +137,24 @@ class RunRegistry {
110
137
  });
111
138
  return this.toRecord(run);
112
139
  }
140
+ startChild(parentRunId, input) {
141
+ const parent = this.runs.get(parentRunId);
142
+ if (!parent || parent.finished || parent.parentRunId || !parent.execution || input.execution?.workspaceId !== parent.execution.workspaceId)
143
+ throw MarifoldError_1.MarifoldError.agentRunInvalid('Device delegation is limited to one level within the active workspace.');
144
+ return this.start({ ...input, sessionId: undefined, parentRunId });
145
+ }
146
+ artifactOrigin(runId, artifactId) {
147
+ const run = this.require(runId);
148
+ const artifact = run.artifacts?.find(a => a.id === artifactId);
149
+ if (!artifact)
150
+ throw MarifoldError_1.MarifoldError.artifactNotFound(runId, artifactId);
151
+ if (!artifact.source)
152
+ return { run, artifactId };
153
+ const child = this.require(artifact.source.runId);
154
+ if (child.parentRunId !== run.id || child.execution?.workspaceId !== run.execution?.workspaceId)
155
+ throw MarifoldError_1.MarifoldError.artifactNotFound(runId, artifactId);
156
+ return { run: child, artifactId: artifact.source.artifactId };
157
+ }
113
158
  get(runId) {
114
159
  const run = this.runs.get(runId);
115
160
  return run ? this.toRecord(run) : undefined;
@@ -127,13 +172,8 @@ class RunRegistry {
127
172
  .map(run => this.toRecord(run));
128
173
  }
129
174
  requireArtifact(runId, artifactId) {
130
- const run = this.runs.get(runId);
131
- if (!run)
132
- throw MarifoldError_1.MarifoldError.runNotFound(runId);
133
- if (!run.artifacts.some(artifact => artifact.id === artifactId)) {
134
- throw MarifoldError_1.MarifoldError.artifactNotFound(runId, artifactId);
135
- }
136
- const artifact = (0, RunArtifacts_1.resolveRunArtifact)(runId, artifactId);
175
+ const source = this.artifactOrigin(runId, artifactId);
176
+ const artifact = (0, RunArtifacts_1.resolveRunArtifact)(source.run.id, source.artifactId);
137
177
  if (!artifact)
138
178
  throw MarifoldError_1.MarifoldError.artifactNotFound(runId, artifactId);
139
179
  return artifact;
@@ -159,12 +199,14 @@ class RunRegistry {
159
199
  }
160
200
  }
161
201
  answerApproval(runId, requestId, action) {
162
- const run = this.runs.get(runId);
202
+ let run = this.runs.get(runId);
163
203
  if (!run)
164
204
  throw MarifoldError_1.MarifoldError.runNotFound(runId);
165
- const entry = this.pending.get(requestId);
166
- if (!entry || entry.runId !== runId)
205
+ const entry = this.pending.get(this.userInputKey(runId, requestId))
206
+ ?? [...this.pending.values()].find(p => p.request.id === requestId && this.runs.get(p.runId)?.parentRunId === runId);
207
+ if (!entry || (entry.runId !== runId && this.runs.get(entry.runId)?.parentRunId !== runId))
167
208
  throw MarifoldError_1.MarifoldError.approvalNotFound(requestId);
209
+ run = this.runs.get(entry.runId);
168
210
  switch (action) {
169
211
  case 'deny':
170
212
  entry.settle({ approved: false, reason: 'denied via service' });
@@ -211,9 +253,14 @@ class RunRegistry {
211
253
  const run = this.runs.get(runId);
212
254
  if (!run)
213
255
  throw MarifoldError_1.MarifoldError.runNotFound(runId);
214
- const entry = this.pendingUserInputs.get(this.userInputKey(runId, requestId));
256
+ const entry = this.pendingUserInputs.get(this.userInputKey(runId, requestId))
257
+ ?? [...this.pendingUserInputs.values()].find(p => p.request.id === requestId && this.runs.get(p.runId)?.parentRunId === runId);
215
258
  if (!entry)
216
259
  throw MarifoldError_1.MarifoldError.userInputNotFound(requestId);
260
+ if (typeof value === 'object' && value !== null && 'skipped' in value && value.skipped === true && Object.keys(value).length === 1) {
261
+ entry.settle(undefined);
262
+ return { requestId, accepted: true };
263
+ }
217
264
  const submission = (0, UserInput_1.normalizeUserInputSubmission)(entry.request, value);
218
265
  entry.settle(submission);
219
266
  return { requestId, accepted: true };
@@ -236,6 +283,9 @@ class RunRegistry {
236
283
  throw MarifoldError_1.MarifoldError.runNotFound(runId);
237
284
  if (!run.finished)
238
285
  run.abort.abort();
286
+ for (const child of this.runs.values())
287
+ if (child.parentRunId === runId && !child.finished)
288
+ child.abort.abort();
239
289
  return run.status;
240
290
  }
241
291
  close() {
@@ -249,7 +299,7 @@ class RunRegistry {
249
299
  }
250
300
  async pump(run, input) {
251
301
  try {
252
- const runner = this.runtime.createAgentRunner(input.profile);
302
+ const runner = await this.runtime.createAgentRunner(input.profile, { ...input, registryRunId: run.id });
253
303
  const events = runner.run({
254
304
  objective: input.objective,
255
305
  profile: input.profile,
@@ -264,6 +314,7 @@ class RunRegistry {
264
314
  files: input.files,
265
315
  instructions: input.instructions,
266
316
  maxIterations: input.maxIterations,
317
+ toolMode: input.toolMode,
267
318
  forcePlan: input.forcePlan,
268
319
  lean: input.lean,
269
320
  cwd: input.cwd,
@@ -313,6 +364,7 @@ class RunRegistry {
313
364
  else if (event.type === 'status') {
314
365
  run.status = event.status;
315
366
  }
367
+ this.journal?.save(this.toRecord(run), run.buffer[run.buffer.length - 1]);
316
368
  this.notify(run);
317
369
  }
318
370
  finish(run, status) {
@@ -361,14 +413,14 @@ class RunRegistry {
361
413
  const settle = (decision) => {
362
414
  clearTimeout(timer);
363
415
  run.abort.signal.removeEventListener('abort', onAbort);
364
- this.pending.delete(request.id);
416
+ this.pending.delete(this.userInputKey(run.id, request.id));
365
417
  this.notify(run);
366
418
  resolve(decision);
367
419
  };
368
420
  // Cancel must unblock the runner's `await approvalHandler(...)` at once,
369
421
  // not after the timeout, so the loop can observe the abort and finish.
370
422
  run.abort.signal.addEventListener('abort', onAbort, { once: true });
371
- this.pending.set(request.id, { runId: run.id, request, settle });
423
+ this.pending.set(this.userInputKey(run.id, request.id), { runId: run.id, request, settle });
372
424
  this.notify(run);
373
425
  });
374
426
  }
@@ -394,6 +446,9 @@ class RunRegistry {
394
446
  return new Promise(resolve => {
395
447
  const waiter = () => {
396
448
  signal?.removeEventListener('abort', waiter);
449
+ const index = run.waiters.indexOf(waiter);
450
+ if (index >= 0)
451
+ run.waiters.splice(index, 1);
397
452
  resolve();
398
453
  };
399
454
  run.waiters.push(waiter);
@@ -401,6 +456,8 @@ class RunRegistry {
401
456
  });
402
457
  }
403
458
  notify(run) {
459
+ for (const listener of this.listeners)
460
+ listener();
404
461
  for (const waiter of run.waiters.splice(0))
405
462
  waiter();
406
463
  }
@@ -422,6 +479,8 @@ class RunRegistry {
422
479
  toRecord(run) {
423
480
  return {
424
481
  id: run.id,
482
+ execution: run.execution,
483
+ parentRunId: run.parentRunId,
425
484
  objective: run.objective,
426
485
  profile: run.profile,
427
486
  status: run.status,
@@ -434,10 +493,10 @@ class RunRegistry {
434
493
  artifacts: [...run.artifacts],
435
494
  eventCount: run.lastSeq,
436
495
  pendingApprovals: [...this.pending.values()]
437
- .filter(entry => entry.runId === run.id)
496
+ .filter(entry => entry.runId === run.id || this.runs.get(entry.runId)?.parentRunId === run.id)
438
497
  .map(entry => entry.request),
439
498
  pendingUserInputs: [...this.pendingUserInputs.values()]
440
- .filter(entry => entry.runId === run.id)
499
+ .filter(entry => entry.runId === run.id || this.runs.get(entry.runId)?.parentRunId === run.id)
441
500
  .map(entry => entry.request),
442
501
  };
443
502
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RunRegistry.js","sourceRoot":"","sources":["../../src/runs/RunRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RunRegistry.js","sourceRoot":"","sources":["../../src/runs/RunRegistry.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import type { AgentRunnerDeps } from '../agent/AgentRunner';
2
+ import type { RunStartInput, RunJournal } from '../runs/RunRegistry';
1
3
  import { UsageInfo } from '@priest-ai/core';
2
4
  import { AgentRunner } from '../agent/AgentRunner';
3
5
  import { ApprovalMode, MarifoldAgentConfig, ToolKind } from '../agent/ApprovalPolicy';
@@ -177,12 +179,17 @@ export declare class MarifoldRuntime {
177
179
  */
178
180
  resolveAgentConfigForProfile(profile?: string): MarifoldAgentConfig;
179
181
  createAgentRunner(profile?: string, registry?: ToolRegistry, agentConfigOverride?: MarifoldAgentConfig, runtimeOptions?: {
182
+ createWorkspace?: AgentRunnerDeps['createWorkspace'];
183
+ listArtifacts?: AgentRunnerDeps['listArtifacts'];
184
+ deviceInstructions?: string;
185
+ contextInstructions?: string[];
180
186
  webSearch?: boolean;
181
187
  readOnlyFolders?: string[];
182
188
  readOnlyFiles?: string[];
183
189
  allowExternalReadOnlyFolders?: boolean;
184
190
  }): AgentRunner;
185
- private createDefaultToolRegistry;
191
+ createHostContextTools(profile?: string): ToolRegistry;
192
+ createDefaultToolRegistry(profile?: string): ToolRegistry;
186
193
  /**
187
194
  * Skill store over the shared skills dir ([paths].skills_dir) and the given
188
195
  * profile's skills/ dir (profile skills shadow global ones). Defaults to the
@@ -224,7 +231,7 @@ export declare class MarifoldRuntime {
224
231
  createTelegramBridge(log?: (message: string) => void): TelegramBridge | undefined;
225
232
  /** Live run-session registry for the service process: start/attach/approve/
226
233
  * steer/cancel agent runs across separate requests. Call close() on shutdown. */
227
- createRunRegistry(log?: (message: string) => void): RunRegistry;
234
+ createRunRegistry(log?: (message: string) => void, runnerForRun?: (input: RunStartInput) => AgentRunner | Promise<AgentRunner>, journal?: RunJournal): RunRegistry;
228
235
  private runScheduledAgent;
229
236
  createTask(input: TaskCreateInput): TaskState;
230
237
  listTasks(options?: TaskListOptions): TaskSummary[];
@@ -1 +1 @@
1
- {"version":3,"file":"MarifoldRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/MarifoldRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MarifoldRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/MarifoldRuntime.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,9 @@ const ReadAttachmentTool_1 = require("../agent/tools/ReadAttachmentTool");
45
45
  const ReadFileTool_1 = require("../agent/tools/ReadFileTool");
46
46
  const SearchAttachmentTool_1 = require("../agent/tools/SearchAttachmentTool");
47
47
  const ShellExecTool_1 = require("../agent/tools/ShellExecTool");
48
+ const ReadWebPageTool_1 = require("../agent/tools/ReadWebPageTool");
49
+ const WebPageReader_1 = require("../search/WebPageReader");
50
+ const WebResearchGuidance_1 = require("../search/WebResearchGuidance");
48
51
  const WebSearchTool_1 = require("../agent/tools/WebSearchTool");
49
52
  const AskUserTool_1 = require("../agent/tools/AskUserTool");
50
53
  const InspectAttachmentTool_1 = require("../agent/tools/InspectAttachmentTool");
@@ -405,6 +408,8 @@ class MarifoldRuntime {
405
408
  /** Run the selected web-search backend directly for non-chat integrations. */
406
409
  async searchWeb(query, maxResults) {
407
410
  const config = (0, ConfigSchema_1.resolveWebSearchConfig)(this.options.loadedConfig.config.webSearch);
411
+ if (!config.enabled)
412
+ throw new Error('Web search is disabled.');
408
413
  const results = await this.searchBackend.search(query, maxResults ?? config.maxResults);
409
414
  return (0, SearchBackend_1.formatSearchResults)(query, results);
410
415
  }
@@ -679,6 +684,10 @@ class MarifoldRuntime {
679
684
  }
680
685
  createAgentRunner(profile, registry, agentConfigOverride, runtimeOptions = {}) {
681
686
  return new AgentRunner_1.AgentRunner({
687
+ deniedRoots: [path.join(path.dirname(this.options.loadedConfig.configPath), 'workspaces')],
688
+ contextInstructions: runtimeOptions.contextInstructions,
689
+ createWorkspace: runtimeOptions.createWorkspace,
690
+ listArtifacts: runtimeOptions.listArtifacts,
682
691
  taskStore: this.taskStore,
683
692
  registry: registry ?? this.createDefaultToolRegistry(profile),
684
693
  agentConfig: agentConfigOverride ?? this.resolveAgentConfigForProfile(profile),
@@ -720,6 +729,8 @@ class MarifoldRuntime {
720
729
  .filter(t => t.role === 'user' || t.role === 'assistant')
721
730
  .map(t => ({ role: t.role, content: t.content })),
722
731
  resolveBuiltInInstructions: (objective, resolvedProfile) => {
732
+ if (runtimeOptions.deviceInstructions)
733
+ return [runtimeOptions.deviceInstructions];
723
734
  const { config } = this.options.loadedConfig;
724
735
  if ((0, BuiltInSkillAppBuilder_1.mentionsSkillApps)(objective)) {
725
736
  return [(0, BuiltInSkillAppBuilder_1.buildSkillAppBuilderGuide)({
@@ -748,6 +759,14 @@ class MarifoldRuntime {
748
759
  allowExternalReadOnlyFolders: runtimeOptions.allowExternalReadOnlyFolders,
749
760
  });
750
761
  }
762
+ createHostContextTools(profile) {
763
+ const registry = new ToolRegistry_1.ToolRegistry();
764
+ for (const tool of this.createDefaultToolRegistry(profile).list()) {
765
+ if (tool.kind === 'interaction' || ['web_search', 'read_web_page', 'delegate'].includes(tool.definition.name))
766
+ registry.register(tool);
767
+ }
768
+ return registry;
769
+ }
751
770
  createDefaultToolRegistry(profile) {
752
771
  const registry = new ToolRegistry_1.ToolRegistry();
753
772
  const { config } = this.options.loadedConfig;
@@ -785,6 +804,7 @@ class MarifoldRuntime {
785
804
  const approval = this.resolveAgentConfigForProfile(profile).approval;
786
805
  if (webSearch.enabled && approval.network !== 'deny') {
787
806
  registry.register(new WebSearchTool_1.WebSearchTool(this.searchBackend, webSearch.maxResults));
807
+ registry.register(new ReadWebPageTool_1.ReadWebPageTool(new WebPageReader_1.WebPageReader({ proxy: webSearch.proxy })));
788
808
  }
789
809
  registry.register(new DelegateTool_1.DelegateTool({
790
810
  ask: async (request) => {
@@ -1147,10 +1167,11 @@ class MarifoldRuntime {
1147
1167
  }
1148
1168
  /** Live run-session registry for the service process: start/attach/approve/
1149
1169
  * steer/cancel agent runs across separate requests. Call close() on shutdown. */
1150
- createRunRegistry(log) {
1170
+ createRunRegistry(log, runnerForRun, journal) {
1151
1171
  return new RunRegistry_1.RunRegistry({
1172
+ journal,
1152
1173
  runtime: {
1153
- createAgentRunner: profile => this.createAgentRunner(profile),
1174
+ createAgentRunner: (profile, input) => runnerForRun && input ? runnerForRun(input) : this.createAgentRunner(profile),
1154
1175
  setProfileAgentApproval: (profile, kind, mode) => {
1155
1176
  this.setProfileAgentApproval(profile, kind, mode);
1156
1177
  },
@@ -1292,12 +1313,13 @@ class MarifoldRuntime {
1292
1313
  const approval = agentConfig.approval;
1293
1314
  const tools = [];
1294
1315
  if (webSearchMode === 'fallback')
1295
- tools.push(new WebSearchTool_1.WebSearchTool(this.searchBackend, webSearch.maxResults));
1316
+ tools.push(new WebSearchTool_1.WebSearchTool(this.searchBackend, webSearch.maxResults), new ReadWebPageTool_1.ReadWebPageTool(new WebPageReader_1.WebPageReader({ proxy: webSearch.proxy })));
1296
1317
  if (approval.read === 'allow')
1297
1318
  tools.push(new ReadFileTool_1.ReadFileTool());
1298
1319
  if (tools.length === 0)
1299
1320
  return undefined;
1300
1321
  const outputLimit = agentConfig.toolOutputLimit;
1322
+ const toolContext = { cwd: process.cwd(), outputLimit, signal: request.signal };
1301
1323
  return {
1302
1324
  definitions: tools.map(tool => tool.definition),
1303
1325
  execute: async (name, args) => {
@@ -1305,7 +1327,7 @@ class MarifoldRuntime {
1305
1327
  if (!tool)
1306
1328
  return { content: `Unknown tool '${name}'.`, isError: true };
1307
1329
  try {
1308
- const result = await tool.execute(args, { cwd: process.cwd(), outputLimit });
1330
+ const result = await tool.execute(args, toolContext);
1309
1331
  return { content: result.content, isError: result.isError };
1310
1332
  }
1311
1333
  catch (error) {
@@ -1344,9 +1366,15 @@ class MarifoldRuntime {
1344
1366
  enabled: settings.think,
1345
1367
  ...(settings.think ? { effort: 'high', summary: 'auto' } : {}),
1346
1368
  }
1347
- : neutralReasoning && settings.think
1348
- ? { enabled: true, effort: 'high', summary: 'auto' }
1349
- : undefined,
1369
+ : neutralReasoning && /^gpt-6-astra(?:-|$)/.test(settings.model)
1370
+ ? {
1371
+ enabled: true,
1372
+ effort: settings.think ? 'medium' : 'low',
1373
+ ...(settings.think ? { summary: 'auto' } : {}),
1374
+ }
1375
+ : neutralReasoning && settings.think
1376
+ ? { enabled: true, effort: 'high', summary: 'auto' }
1377
+ : undefined,
1350
1378
  providerOptions: Object.keys(providerOptions).length > 0 ? providerOptions : undefined,
1351
1379
  };
1352
1380
  }
@@ -1379,7 +1407,7 @@ class MarifoldRuntime {
1379
1407
  });
1380
1408
  }
1381
1409
  resolveWebSearch(settings, modelToolsEnabled = true) {
1382
- if (!modelToolsEnabled) {
1410
+ if (!modelToolsEnabled || !(0, ConfigSchema_1.resolveWebSearchConfig)(this.options.loadedConfig.config.webSearch).enabled) {
1383
1411
  return { mode: 'unavailable', nativeStrategy: 'none' };
1384
1412
  }
1385
1413
  const approval = this.resolveAgentConfigForProfile(settings.profile).approval;
@@ -1411,7 +1439,10 @@ class MarifoldRuntime {
1411
1439
  runtimeContext(memory, prompt, memoryOn, webSearchMode) {
1412
1440
  const context = ['Running inside Marifold.'];
1413
1441
  if (webSearchMode === 'native') {
1414
- context.push('Provider-hosted web search is available for this run. Use it for web or current-information requests; Marifold fallback search is not exposed while native search is available.');
1442
+ context.push('Provider-hosted web search is available for this run. Use it for web or current-information requests; Marifold fallback search is not exposed while native search is available. ' + WebResearchGuidance_1.WEB_ANSWER_STYLE);
1443
+ }
1444
+ else if (webSearchMode === 'fallback') {
1445
+ context.push((0, WebResearchGuidance_1.webResearchGuidance)());
1415
1446
  }
1416
1447
  else if (webSearchMode === 'unavailable') {
1417
1448
  context.push(WEB_SEARCH_UNAVAILABLE_CONTEXT);