@moxt-ai/mobius 0.0.22 → 0.0.24

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.
@@ -1,4 +1,4 @@
1
- import type { NativeSessionCommand, NativeSessionResult } from "@moxt-ai/mobius-protocol";
1
+ import type { NativeSessionCommand, NativeSessionResult, NativeSessionTurnForkCommand } from "@moxt-ai/mobius-protocol";
2
2
  import { type AcpSessionManager } from "../acp/session-manager.ts";
3
3
  import type { AuditStore } from "../audit/audit-store.ts";
4
4
  import type { WorkspaceDirectoryService } from "../authorization/workspace-directory.ts";
@@ -7,6 +7,7 @@ export declare class NativeSessionService {
7
7
  #private;
8
8
  constructor(config: DaemonConfig, directories: WorkspaceDirectoryService, sessions: AcpSessionManager, audit: AuditStore);
9
9
  readonly execute: (command: NativeSessionCommand, signal: AbortSignal) => Promise<NativeSessionResult>;
10
+ readonly executeTurnFork: (command: NativeSessionTurnForkCommand, signal: AbortSignal) => Promise<NativeSessionResult>;
10
11
  private readonly authorizeEntry;
11
12
  private readonly resolveTarget;
12
13
  private readonly record;
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/native-sessions/service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,oBAAoB,EAEpB,mBAAmB,EAGtB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAA6C,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE1D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACzF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAsBjD,qBAAa,oBAAoB;;IAQ7B,YACI,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,yBAAyB,EACtC,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,UAAU,EAMpB;IAED,QAAQ,CAAC,OAAO,YAAmB,oBAAoB,UAAU,WAAW,KAAG,OAAO,CAAC,mBAAmB,CAAC,CA4NzG;IAEF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAqC7B;IAEF,OAAO,CAAC,QAAQ,CAAC,aAAa,CA8C5B;IAEF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAOrB;CACL"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/native-sessions/service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,oBAAoB,EAEpB,mBAAmB,EACnB,4BAA4B,EAG/B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAA6C,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE1D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACzF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAsBjD,qBAAa,oBAAoB;;IAQ7B,YACI,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,yBAAyB,EACtC,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,UAAU,EAMpB;IAED,QAAQ,CAAC,OAAO,YAAmB,oBAAoB,UAAU,WAAW,KAAG,OAAO,CAAC,mBAAmB,CAAC,CA4NzG;IAEF,QAAQ,CAAC,eAAe,YACX,4BAA4B,UAC7B,WAAW,KACpB,OAAO,CAAC,mBAAmB,CAAC,CAmE7B;IAEF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAqC7B;IAEF,OAAO,CAAC,QAAQ,CAAC,aAAa,CA8C5B;IAEF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAOrB;CACL"}
@@ -1,4 +1,5 @@
1
1
  import { randomUUID } from "node:crypto";
2
+ import { basename } from "node:path";
2
3
  import { AcpExecutionError } from "../acp/session-manager.js";
3
4
  import { LocalAuthorizationError } from "../authorization/local-authorization-error.js";
4
5
  import { readCodexHistory } from "./codex-history.js";
@@ -188,6 +189,70 @@ export class NativeSessionService {
188
189
  history: opened.history,
189
190
  };
190
191
  };
192
+ executeTurnFork = async (command, signal) => {
193
+ signal.throwIfAborted();
194
+ const cwd = await this.#directories.resolve(this.#config.bindingId, command.directoryId, signal);
195
+ const additionalDirectories = [];
196
+ const additionalEntries = [];
197
+ const resolvedPaths = new Set([cwd]);
198
+ for (const directoryId of command.additionalDirectoryIds) {
199
+ const path = await this.#directories.resolve(this.#config.bindingId, directoryId, signal);
200
+ if (resolvedPaths.has(path)) {
201
+ throw new LocalAuthorizationError("Workspace directories must resolve to distinct locations");
202
+ }
203
+ resolvedPaths.add(path);
204
+ additionalDirectories.push(path);
205
+ additionalEntries.push({ directoryId, name: basename(path) });
206
+ }
207
+ const listing = await this.#directories.list(this.#config.bindingId, command.directoryId, signal);
208
+ const opened = await this.#sessions.forkSessionAtTurn({
209
+ additionalDirectories,
210
+ agent: this.#config.catalog.find(command.agentId),
211
+ cwd,
212
+ sessionId: command.targetSessionId,
213
+ signal,
214
+ }, command.sessionId, {
215
+ messageFingerprint: command.messageFingerprint,
216
+ messageId: command.messageId,
217
+ messageOccurrence: command.messageOccurrence,
218
+ });
219
+ signal.throwIfAborted();
220
+ const ready = {
221
+ additionalDirectories: additionalEntries,
222
+ agentId: command.agentId,
223
+ agentName: opened.prepared.agentName,
224
+ agentVersion: opened.prepared.agentVersion,
225
+ capabilities: opened.prepared.capabilities,
226
+ commands: opened.prepared.commands,
227
+ configOptions: opened.prepared.configOptions,
228
+ directoryId: command.directoryId,
229
+ directoryLabel: listing.directoryLabel,
230
+ kind: "session.ready",
231
+ requestId: command.requestId,
232
+ restored: true,
233
+ sessionId: opened.sessionId,
234
+ };
235
+ this.#audit.record({
236
+ commandId: command.requestId,
237
+ details: {
238
+ agentId: command.agentId,
239
+ messageId: command.messageId,
240
+ sourceCommandId: command.sourceCommandId,
241
+ },
242
+ event: "native_session_turn_forked",
243
+ sessionId: command.sessionId,
244
+ });
245
+ return {
246
+ action: "fork",
247
+ history: opened.history,
248
+ kind: "native.session.result",
249
+ ready,
250
+ requestId: command.requestId,
251
+ sessionId: command.sessionId,
252
+ targetSessionId: command.targetSessionId,
253
+ title: command.title,
254
+ };
255
+ };
191
256
  authorizeEntry = async (command, options, info) => {
192
257
  try {
193
258
  const primary = await this.#directories.identify(command.bindingId, info.cwd, options.signal);
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/native-sessions/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/native-sessions/service.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export declare class SessionEventOutbox {
11
11
  constructor(path: string);
12
12
  readonly claimExecution: (commandId: string, sessionId: string, commandJson: string) => DaemonExecutionReceipt;
13
13
  readonly transitionExecution: (commandId: string, state: DaemonExecutionState) => void;
14
+ readonly isTerminalExecution: (commandId: string, sessionId: string) => boolean;
14
15
  readonly acknowledge: (acknowledgement: SessionEventAcknowledgement) => void;
15
16
  readonly quarantine: (rejection: SessionEventRejection) => boolean;
16
17
  readonly close: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"session-event-outbox.d.ts","sourceRoot":"","sources":["../../src/relay-connection/session-event-outbox.ts"],"names":[],"mappings":"AAIA,OAAO,EAGH,KAAK,2BAA2B,EAEhC,KAAK,qBAAqB,EAC7B,MAAM,0BAA0B,CAAC;AAalC,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;AAEpG,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,WAAW,CAAC;IAC/B,KAAK,EAAE,oBAAoB,CAAC;CAC/B,CAAC,CAAC;AAEH,qBAAa,kBAAkB;;IAG3B,YAAY,IAAI,EAAE,MAAM,EAmCvB;IAED,QAAQ,CAAC,cAAc,cAAe,MAAM,aAAa,MAAM,eAAe,MAAM,KAAG,sBAAsB,CA4C3G;IAEF,QAAQ,CAAC,mBAAmB,cAAe,MAAM,SAAS,oBAAoB,KAAG,IAAI,CAgBnF;IAEF,QAAQ,CAAC,WAAW,oBAAqB,2BAA2B,KAAG,IAAI,CAOzE;IAEF,QAAQ,CAAC,UAAU,cAAe,qBAAqB,KAAG,OAAO,CAgC/D;IAEF,QAAQ,CAAC,KAAK,QAAO,IAAI,CAEvB;IAEF,QAAQ,CAAC,OAAO,cAAe,MAAM,WAAW,MAAM,cAAa,MAAM,GAAG,IAAI,KAAU,MAAM,CAqD9F;IAEF,QAAQ,CAAC,OAAO,QAAO,SAAS,MAAM,EAAE,CAQN;CACrC"}
1
+ {"version":3,"file":"session-event-outbox.d.ts","sourceRoot":"","sources":["../../src/relay-connection/session-event-outbox.ts"],"names":[],"mappings":"AAIA,OAAO,EAGH,KAAK,2BAA2B,EAEhC,KAAK,qBAAqB,EAC7B,MAAM,0BAA0B,CAAC;AAalC,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;AAEpG,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,WAAW,CAAC;IAC/B,KAAK,EAAE,oBAAoB,CAAC;CAC/B,CAAC,CAAC;AAEH,qBAAa,kBAAkB;;IAG3B,YAAY,IAAI,EAAE,MAAM,EAmCvB;IAED,QAAQ,CAAC,cAAc,cAAe,MAAM,aAAa,MAAM,eAAe,MAAM,KAAG,sBAAsB,CA4C3G;IAEF,QAAQ,CAAC,mBAAmB,cAAe,MAAM,SAAS,oBAAoB,KAAG,IAAI,CAgBnF;IAEF,QAAQ,CAAC,mBAAmB,cAAe,MAAM,aAAa,MAAM,KAAG,OAAO,CAM5E;IAEF,QAAQ,CAAC,WAAW,oBAAqB,2BAA2B,KAAG,IAAI,CAOzE;IAEF,QAAQ,CAAC,UAAU,cAAe,qBAAqB,KAAG,OAAO,CAgC/D;IAEF,QAAQ,CAAC,KAAK,QAAO,IAAI,CAEvB;IAEF,QAAQ,CAAC,OAAO,cAAe,MAAM,WAAW,MAAM,cAAa,MAAM,GAAG,IAAI,KAAU,MAAM,CAqD9F;IAEF,QAAQ,CAAC,OAAO,QAAO,SAAS,MAAM,EAAE,CAQN;CACrC"}
@@ -106,6 +106,13 @@ export class SessionEventOutbox {
106
106
  }
107
107
  this.#database.prepare(`UPDATE relay_turn_receipts SET state = ? WHERE command_id = ?`).run(state, commandId);
108
108
  };
109
+ isTerminalExecution = (commandId, sessionId) => {
110
+ const row = this.#database
111
+ .prepare(`SELECT state FROM relay_turn_receipts WHERE command_id = ? AND session_id = ?`)
112
+ .get(commandId, sessionId);
113
+ const state = typeof row === "object" && row !== null ? Reflect.get(row, "state") : undefined;
114
+ return state === "succeeded" || state === "failed" || state === "cancelled";
115
+ };
109
116
  acknowledge = (acknowledgement) => {
110
117
  this.#database
111
118
  .prepare(`DELETE FROM relay_session_event_outbox
@@ -1 +1 @@
1
- {"version":3,"file":"session-event-outbox.js","sourceRoot":"","sources":["../../src/relay-connection/session-event-outbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-event-outbox.js","sourceRoot":"","sources":["../../src/relay-connection/session-event-outbox.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"run-daemon.d.ts","sourceRoot":"","sources":["../src/run-daemon.ts"],"names":[],"mappings":"AA+GA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAOzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAOhD,OAAO,EAA4B,KAAK,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AA2iD5G,wBAAsB,SAAS,CAC3B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,WAAW,EACnB,KAAK,GAAE,WAA+B,GACvC,OAAO,CAAC,IAAI,CAAC,CA2Hf"}
1
+ {"version":3,"file":"run-daemon.d.ts","sourceRoot":"","sources":["../src/run-daemon.ts"],"names":[],"mappings":"AAuHA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAOzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAOhD,OAAO,EAA4B,KAAK,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AA+sD5G,wBAAsB,SAAS,CAC3B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,WAAW,EACnB,KAAK,GAAE,WAA+B,GACvC,OAAO,CAAC,IAAI,CAAC,CA2Hf"}
@@ -1,7 +1,7 @@
1
1
  import { randomUUID } from "node:crypto";
2
2
  import { basename, join } from "node:path";
3
3
  import { styleText } from "node:util";
4
- import { AGENT_ACTIVITY_KIND, AGENT_INSTALL_CANCEL_KIND, AGENT_INSTALL_CANCELLED_KIND, AGENT_INSTALL_COMPLETED_KIND, AGENT_INSTALL_FAILED_KIND, AGENT_INSTALL_PROGRESS_KIND, AGENT_INSTALL_REQUEST_KIND, AGENT_INSTALL_STARTED_KIND, AGENT_MESSAGE_DELTA_KIND, BOT_BINDING_APPROVAL_REQUEST_KIND, BOT_SESSION_PROMPT_KIND, BotExecutionBindingUnavailableEvent, decodeAgentInstallCancelCommand, decodeAgentInstallRequestCommand, decodeBotExecutionBindingApprovalRequest, decodeBotSessionPromptCommand, decodeMessageKind, decodeNativeSessionCancel, decodeNativeSessionCommand, decodeRuntimeHeartbeatAckEvent, decodeRuntimeLivenessReadyEvent, decodeSessionCancelCommand, decodeSessionConfigureCommand, decodeSessionElicitationRespondCommand, decodeSessionEventAcknowledgement, decodeSessionEventRejection, decodeSessionPermissionRespondCommand, decodeSessionPrepareCommand, decodeSessionPromptCommand, decodeWorkspaceListCommand, encodeAgentActivityEvent, encodeAgentContentEvent, encodeAgentInstallCancelledEvent, encodeAgentInstallCompletedEvent, encodeAgentInstallFailedEvent, encodeAgentInstallProgressEvent, encodeAgentInstallStartedEvent, encodeAgentMessageDeltaEvent, encodeBotExecutionBindingApprovedEvent, encodeBotExecutionBindingUnavailableEvent, encodeNativeSessionResult, encodeSessionCommandsUpdatedEvent, encodeSessionCompletedEvent, encodeSessionConfigUpdatedEvent, encodeSessionElicitationRequestedEvent, encodeSessionElicitationResolvedEvent, encodeSessionFailedEvent, encodeSessionInfoUpdatedEvent, encodeSessionOperationFailedEvent, encodeSessionPermissionRequestedEvent, encodeSessionPermissionResolvedEvent, encodeSessionReadyEvent, encodeSessionStartedEvent, encodeSessionUsageUpdatedEvent, encodeWorkspaceEntriesEvent, NATIVE_SESSION_CANCEL_KIND, NATIVE_SESSION_REQUEST_KIND, RUNTIME_HEARTBEAT_ACK_KIND, RUNTIME_LIVENESS_READY_KIND, SESSION_CANCEL_KIND, SESSION_COMPLETED_KIND, SESSION_CONFIGURE_KIND, SESSION_ELICITATION_RESPOND_KIND, SESSION_EVENT_ACK_KIND, SESSION_EVENT_REJECTED_KIND, SESSION_FAILED_KIND, SESSION_PERMISSION_RESPOND_KIND, SESSION_PREPARE_KIND, SESSION_PROMPT_KIND, SESSION_STARTED_KIND, WORKSPACE_LIST_KIND, } from "@moxt-ai/mobius-protocol";
4
+ import { AGENT_ACTIVITY_KIND, AGENT_INSTALL_CANCEL_KIND, AGENT_INSTALL_CANCELLED_KIND, AGENT_INSTALL_COMPLETED_KIND, AGENT_INSTALL_FAILED_KIND, AGENT_INSTALL_PROGRESS_KIND, AGENT_INSTALL_REQUEST_KIND, AGENT_INSTALL_STARTED_KIND, AGENT_MESSAGE_DELTA_KIND, BOT_BINDING_APPROVAL_REQUEST_KIND, BOT_BINDING_APPROVED_KIND, BOT_BINDING_UNAVAILABLE_KIND, BOT_SESSION_PROMPT_KIND, BotExecutionBindingUnavailableEvent, decodeAgentInstallCancelCommand, decodeAgentInstallRequestCommand, decodeBotExecutionBindingApprovalRequest, decodeBotExecutionBindingApprovedEvent, decodeBotExecutionBindingUnavailableEvent, decodeBotSessionPromptCommand, decodeMessageKind, decodeNativeSessionCancel, decodeNativeSessionCommand, decodeNativeSessionTurnForkCommand, decodeRuntimeHeartbeatAckEvent, decodeRuntimeLivenessReadyEvent, decodeSessionCancelCommand, decodeSessionConfigureCommand, decodeSessionElicitationRespondCommand, decodeSessionEventAcknowledgement, decodeSessionEventRejection, decodeSessionPermissionRespondCommand, decodeSessionPrepareCommand, decodeSessionPromptCommand, decodeWorkspaceListCommand, encodeAgentActivityEvent, encodeAgentContentEvent, encodeAgentInstallCancelledEvent, encodeAgentInstallCompletedEvent, encodeAgentInstallFailedEvent, encodeAgentInstallProgressEvent, encodeAgentInstallStartedEvent, encodeAgentMessageDeltaEvent, encodeBotExecutionBindingApprovedEvent, encodeBotExecutionBindingUnavailableEvent, encodeNativeSessionResult, encodeSessionCommandsUpdatedEvent, encodeSessionCompletedEvent, encodeSessionConfigUpdatedEvent, encodeSessionElicitationRequestedEvent, encodeSessionElicitationResolvedEvent, encodeSessionFailedEvent, encodeSessionInfoUpdatedEvent, encodeSessionOperationFailedEvent, encodeSessionPermissionRequestedEvent, encodeSessionPermissionResolvedEvent, encodeSessionReadyEvent, encodeSessionStartedEvent, encodeSessionUsageUpdatedEvent, encodeWorkspaceEntriesEvent, NATIVE_SESSION_CANCEL_KIND, NATIVE_SESSION_REQUEST_KIND, NATIVE_SESSION_TURN_FORK_KIND, OwnerBotReplyRoute, RUNTIME_HEARTBEAT_ACK_KIND, RUNTIME_LIVENESS_READY_KIND, SESSION_CANCEL_KIND, SESSION_COMPLETED_KIND, SESSION_CONFIGURE_KIND, SESSION_ELICITATION_RESPOND_KIND, SESSION_EVENT_ACK_KIND, SESSION_EVENT_REJECTED_KIND, SESSION_FAILED_KIND, SESSION_PERMISSION_RESPOND_KIND, SESSION_PREPARE_KIND, SESSION_PROMPT_KIND, SESSION_STARTED_KIND, SessionPromptDisposition, WORKSPACE_LIST_KIND, } from "@moxt-ai/mobius-protocol";
5
5
  import { fetch, WebSocket } from "undici";
6
6
  import { AcpExecutionError, AcpSessionManager } from "./acp/session-manager.js";
7
7
  import { SqliteAcpSessionStore } from "./acp/session-store.js";
@@ -546,56 +546,82 @@ async function executePrompt(outbox, publisher, command, config, directories, au
546
546
  sessionId: command.sessionId,
547
547
  }), attemptId);
548
548
  const attachments = await resolvePromptArtifacts(config, command, signal);
549
- const result = await sessions.runPrompt({
550
- additionalDirectories: resolved.additionalDirectories,
551
- agent,
552
- commandId: command.commandId,
553
- cwd: resolved.cwd,
554
- images: attachments.images,
555
- onActivity: (activity) => {
556
- publisher.recordAttempt(command.sessionId, encodeAgentActivityEvent({
557
- activityId: activity.activityId,
558
- activityType: activity.activityType,
559
- commandId: command.commandId,
560
- content: activity.content,
561
- detail: activity.detail,
562
- input: activity.input,
563
- kind: AGENT_ACTIVITY_KIND,
564
- locations: activity.locations,
565
- name: activity.name,
566
- output: activity.output,
567
- sequence: activity.sequence,
568
- sessionId: command.sessionId,
569
- status: activity.status,
570
- title: activity.title,
571
- toolKind: activity.toolKind,
572
- }), attemptId);
573
- return Promise.resolve();
574
- },
575
- onText: (text) => {
576
- publisher.recordAttempt(command.sessionId, encodeAgentMessageDeltaEvent({
577
- commandId: command.commandId,
578
- kind: AGENT_MESSAGE_DELTA_KIND,
579
- sessionId: command.sessionId,
580
- text,
581
- }), attemptId);
582
- return Promise.resolve();
583
- },
584
- prompt: command.prompt,
585
- resources: attachments.resources,
586
- sessionId: command.sessionId,
587
- signal,
588
- });
549
+ let stopReason;
550
+ if (command.disposition === SessionPromptDisposition.Steer) {
551
+ await sessions.steerPrompt({
552
+ additionalDirectories: resolved.additionalDirectories,
553
+ agent,
554
+ commandId: command.commandId,
555
+ cwd: resolved.cwd,
556
+ images: attachments.images,
557
+ prompt: command.prompt,
558
+ resources: attachments.resources,
559
+ sessionId: command.sessionId,
560
+ signal,
561
+ targetCommandId: command.targetCommandId,
562
+ });
563
+ stopReason = "steered";
564
+ }
565
+ else {
566
+ if (command.disposition === SessionPromptDisposition.Queue &&
567
+ !outbox.isTerminalExecution(command.targetCommandId, command.sessionId)) {
568
+ throw new AcpExecutionError("The queued prompt target is unavailable", {}, "prompt_queue_target_unavailable");
569
+ }
570
+ const result = await sessions.runPrompt({
571
+ additionalDirectories: resolved.additionalDirectories,
572
+ agent,
573
+ commandId: command.commandId,
574
+ cwd: resolved.cwd,
575
+ disposition: command.disposition,
576
+ images: attachments.images,
577
+ onActivity: (activity) => {
578
+ publisher.recordAttempt(command.sessionId, encodeAgentActivityEvent({
579
+ activityId: activity.activityId,
580
+ activityType: activity.activityType,
581
+ commandId: command.commandId,
582
+ content: activity.content,
583
+ detail: activity.detail,
584
+ input: activity.input,
585
+ kind: AGENT_ACTIVITY_KIND,
586
+ locations: activity.locations,
587
+ name: activity.name,
588
+ output: activity.output,
589
+ sequence: activity.sequence,
590
+ sessionId: command.sessionId,
591
+ status: activity.status,
592
+ title: activity.title,
593
+ toolKind: activity.toolKind,
594
+ }), attemptId);
595
+ return Promise.resolve();
596
+ },
597
+ onText: (text, messageId) => {
598
+ publisher.recordAttempt(command.sessionId, encodeAgentMessageDeltaEvent({
599
+ commandId: command.commandId,
600
+ kind: AGENT_MESSAGE_DELTA_KIND,
601
+ messageId,
602
+ sessionId: command.sessionId,
603
+ text,
604
+ }), attemptId);
605
+ return Promise.resolve();
606
+ },
607
+ prompt: command.prompt,
608
+ resources: attachments.resources,
609
+ sessionId: command.sessionId,
610
+ signal,
611
+ targetCommandId: command.targetCommandId,
612
+ });
613
+ stopReason = result.stopReason;
614
+ }
589
615
  publisher.recordAttempt(command.sessionId, encodeSessionCompletedEvent({
590
616
  commandId: command.commandId,
591
617
  kind: SESSION_COMPLETED_KIND,
592
618
  sessionId: command.sessionId,
593
- stopReason: result.stopReason,
619
+ stopReason,
594
620
  }), attemptId);
595
- outbox.transitionExecution(command.commandId, result.stopReason === "cancelled" ? "cancelled" : "succeeded");
621
+ outbox.transitionExecution(command.commandId, stopReason === "cancelled" ? "cancelled" : "succeeded");
596
622
  audit.record({
597
623
  commandId: command.commandId,
598
- event: result.stopReason === "cancelled" ? "session_cancelled" : "session_completed",
624
+ event: stopReason === "cancelled" ? "session_cancelled" : "session_completed",
599
625
  sessionId: command.sessionId,
600
626
  });
601
627
  }
@@ -624,15 +650,22 @@ function botExecutionAgent(agent, contextHandle, socketPath) {
624
650
  }
625
651
  async function executeBotPrompt(outbox, publisher, command, config, directories, audit, sessions, grants, contexts, applicator, ipc, attemptId, signal) {
626
652
  try {
627
- if (command.additionalDirectoryIds.length > 0) {
628
- throw new LocalBotAuthorizationError("binding_not_approved", "The Bot execution requested unapproved additional directories");
629
- }
630
653
  const deadline = Date.parse(command.executionDeadlineAt);
631
654
  const remaining = deadline - Date.now();
632
655
  if (!Number.isSafeInteger(deadline) || remaining <= 0) {
633
656
  throw new LocalBotAuthorizationError("turn_expired", "The Bot execution deadline has expired");
634
657
  }
635
658
  const grant = await grants.resolveExecution(command, config.catalog, directories, config.bindingId, Date.now(), signal);
659
+ const requestedExecutionTargetOverridden = command.directoryId !== grant.workspaceRef || command.additionalDirectoryIds.length > 0;
660
+ if (requestedExecutionTargetOverridden && !(command.replyRoute instanceof OwnerBotReplyRoute)) {
661
+ throw new LocalBotAuthorizationError("binding_not_approved", "Only a paired owner conversation can override the approved Bot workspace");
662
+ }
663
+ const resolved = await resolveSessionDirectories(directories, config.bindingId, command.directoryId, command.additionalDirectoryIds, signal);
664
+ const executionTargetOverridden = resolved.cwd !== grant.workspacePath || resolved.additionalDirectories.length > 0;
665
+ if (executionTargetOverridden &&
666
+ !sessions.hasPreparedSession(command.sessionId, grant.agent.id, resolved.cwd, resolved.additionalDirectories)) {
667
+ throw new LocalBotAuthorizationError("local_approval_required", "Open this Bot conversation in the paired local Web app before using the selected workspace");
668
+ }
636
669
  const attachments = await resolvePromptArtifacts(config, command, signal);
637
670
  const applied = await applicator.apply(command, grant, attachments.resources, signal);
638
671
  const lease = contexts.activate(command);
@@ -640,6 +673,13 @@ async function executeBotPrompt(outbox, publisher, command, config, directories,
640
673
  const deadlineSignal = AbortSignal.timeout(remaining);
641
674
  const executionSignal = AbortSignal.any([signal, deadlineSignal]);
642
675
  const agent = botExecutionAgent(grant.agent, lease.context.contextHandle, ipc.socketPath);
676
+ await sessions.prepareExecutionSession({
677
+ additionalDirectories: resolved.additionalDirectories,
678
+ agent,
679
+ cwd: resolved.cwd,
680
+ sessionId: command.sessionId,
681
+ signal: executionSignal,
682
+ });
643
683
  audit.record({
644
684
  commandId: command.commandId,
645
685
  details: {
@@ -660,10 +700,10 @@ async function executeBotPrompt(outbox, publisher, command, config, directories,
660
700
  sessionId: command.sessionId,
661
701
  }), attemptId);
662
702
  const result = await sessions.runPrompt({
663
- additionalDirectories: [],
703
+ additionalDirectories: resolved.additionalDirectories,
664
704
  agent,
665
705
  commandId: command.commandId,
666
- cwd: grant.workspacePath,
706
+ cwd: resolved.cwd,
667
707
  images: attachments.images,
668
708
  onActivity: (activity) => {
669
709
  publisher.recordAttempt(command.sessionId, encodeAgentActivityEvent({
@@ -685,10 +725,11 @@ async function executeBotPrompt(outbox, publisher, command, config, directories,
685
725
  }), attemptId);
686
726
  return Promise.resolve();
687
727
  },
688
- onText: (text) => {
728
+ onText: (text, messageId) => {
689
729
  publisher.recordAttempt(command.sessionId, encodeAgentMessageDeltaEvent({
690
730
  commandId: command.commandId,
691
731
  kind: AGENT_MESSAGE_DELTA_KIND,
732
+ messageId,
692
733
  sessionId: command.sessionId,
693
734
  text,
694
735
  }), attemptId);
@@ -873,6 +914,16 @@ async function runRelayConnection(config, directories, audit, sessions, installa
873
914
  }
874
915
  return;
875
916
  }
917
+ // The relay echoes binding outcomes after persisting them. These
918
+ // acknowledgements never grant or change local execution access.
919
+ if (kind === BOT_BINDING_APPROVED_KIND) {
920
+ decodeBotExecutionBindingApprovedEvent(encoded);
921
+ return;
922
+ }
923
+ if (kind === BOT_BINDING_UNAVAILABLE_KIND) {
924
+ decodeBotExecutionBindingUnavailableEvent(encoded);
925
+ return;
926
+ }
876
927
  if (kind === BOT_BINDING_APPROVAL_REQUEST_KIND) {
877
928
  const request = decodeBotExecutionBindingApprovalRequest(encoded);
878
929
  void grants
@@ -984,6 +1035,66 @@ async function runRelayConnection(config, directories, audit, sessions, installa
984
1035
  });
985
1036
  return;
986
1037
  }
1038
+ if (kind === NATIVE_SESSION_TURN_FORK_KIND) {
1039
+ const command = decodeNativeSessionTurnForkCommand(encoded);
1040
+ const previous = [...nativeRequests.values()].filter((request) => request.agentId === command.agentId);
1041
+ if (nativeRequests.has(command.requestId) ||
1042
+ nativeRequests.size >= 4 ||
1043
+ previous.some((request) => !request.controller.signal.aborted)) {
1044
+ reportOperationFailure(socket, command.requestId, command.sessionId, new AcpExecutionError("Another native session operation is running", {}, "native_session_busy"));
1045
+ return;
1046
+ }
1047
+ const controller = new AbortController();
1048
+ const operationSignal = AbortSignal.any([connectionController.signal, controller.signal]);
1049
+ const timeout = timer.schedule(() => controller.abort(new AcpExecutionError("Native session operation timed out", {}, "native_session_timeout")), 90_000);
1050
+ const completion = (async () => {
1051
+ try {
1052
+ operationSignal.throwIfAborted();
1053
+ if (previous.length > 0) {
1054
+ await new Promise((resolve, reject) => {
1055
+ const cancel = () => reject(operationSignal.reason);
1056
+ operationSignal.addEventListener("abort", cancel, { once: true });
1057
+ void Promise.all(previous.map((request) => request.completion)).then(() => {
1058
+ operationSignal.removeEventListener("abort", cancel);
1059
+ resolve();
1060
+ }, (error) => {
1061
+ operationSignal.removeEventListener("abort", cancel);
1062
+ reject(error);
1063
+ });
1064
+ });
1065
+ }
1066
+ operationSignal.throwIfAborted();
1067
+ const result = await nativeSessions.executeTurnFork(command, operationSignal);
1068
+ if (socket.readyState === WebSocket.OPEN) {
1069
+ send(socket, encodeNativeSessionResult(result));
1070
+ }
1071
+ }
1072
+ catch (error) {
1073
+ const failure = operationSignal.aborted
1074
+ ? (controller.signal.reason ??
1075
+ new AcpExecutionError("Native session operation cancelled", {}, "native_session_cancelled"))
1076
+ : error;
1077
+ audit.record({
1078
+ commandId: command.requestId,
1079
+ details: { code: operationErrorCode(failure) },
1080
+ event: "native_session_turn_fork_failed",
1081
+ sessionId: command.sessionId,
1082
+ });
1083
+ reportOperationFailure(socket, command.requestId, command.sessionId, failure);
1084
+ }
1085
+ finally {
1086
+ timeout.cancel();
1087
+ nativeRequests.delete(command.requestId);
1088
+ }
1089
+ })();
1090
+ nativeRequests.set(command.requestId, {
1091
+ agentId: command.agentId,
1092
+ completion,
1093
+ controller,
1094
+ sessionId: command.sessionId,
1095
+ });
1096
+ return;
1097
+ }
987
1098
  if (kind === RUNTIME_LIVENESS_READY_KIND) {
988
1099
  decodeRuntimeLivenessReadyEvent(encoded);
989
1100
  connectionLiveness.start();
@@ -1113,7 +1224,9 @@ async function runRelayConnection(config, directories, audit, sessions, installa
1113
1224
  }
1114
1225
  const turn = new ActiveDaemonTurn(command, receipt.attemptId);
1115
1226
  activeTurns.set(command.commandId, turn);
1116
- activeAttemptIds.set(command.sessionId, receipt.attemptId);
1227
+ if (command.disposition !== SessionPromptDisposition.Steer) {
1228
+ activeAttemptIds.set(command.sessionId, receipt.attemptId);
1229
+ }
1117
1230
  void executePrompt(outbox, publisher, command, config, directories, audit, sessions, receipt.attemptId, turn.signal)
1118
1231
  .catch((error) => {
1119
1232
  console.error("Mobius daemon turn failed", error);