@moxt-ai/mobius 0.0.164 → 0.0.165

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,6 +1,6 @@
1
1
  import { AgentSession } from "./agent-session.ts";
2
2
  export { createWritableAcpStream } from "./agent-connection.ts";
3
- import type { NativeSessionHistory, SessionConfigOption } from "@moxt-ai/mobius-protocol";
3
+ import type { NativeSessionHistory, SessionConfigOption, SessionStatus, SessionStatusChangedEvent } from "@moxt-ai/mobius-protocol";
4
4
  import { type OperationMetrics } from "../infra/operation-metrics.ts";
5
5
  import type { NativeSessionOrigin, NativeSessionPage } from "./native-session.ts";
6
6
  import { type AcpSessionStore } from "./session-store.ts";
@@ -9,7 +9,7 @@ export { type AcpAgentSettingsInspectionOptions, AcpAgentSettingsSnapshot, type
9
9
  import { type AcpAgentSettingsInspectionOptions, AcpAgentSettingsSnapshot, type AcpConfigureOptions, type AcpElicitationResponseOptions, type AcpNativeEventReplayV2, type AcpNativeHistoryReader, type AcpPermissionResponseOptions, type AcpPreparedSession, type AcpPrepareOptions, type AcpPromptResult, type AcpSessionObserver, type AcpSteerOptions, type AcpTurnOptions } from "./session-contracts.ts";
10
10
  export declare class AgentRuntimeManager {
11
11
  #private;
12
- constructor(observer?: AcpSessionObserver, store?: AcpSessionStore, nativeHistoryReader?: AcpNativeHistoryReader | null, sessionIdentity?: "assigned" | "native");
12
+ constructor(observer?: AcpSessionObserver, store?: AcpSessionStore, nativeHistoryReader?: AcpNativeHistoryReader | null, sessionIdentity?: "assigned" | "native", onSessionStatusChanged?: (event: SessionStatusChangedEvent) => void);
13
13
  readonly setObserver: (observer: AcpSessionObserver) => void;
14
14
  readonly prepareSession: (options: AcpPrepareOptions, metrics?: OperationMetrics) => Promise<AcpPreparedSession>;
15
15
  /**
@@ -33,6 +33,7 @@ export declare class AgentRuntimeManager {
33
33
  readonly respondElicitation: (options: AcpElicitationResponseOptions) => Promise<void>;
34
34
  readonly close: () => Promise<void>;
35
35
  readonly findSessions: (sessionIds: readonly string[]) => import("./session-store.ts").AcpStoredSession[];
36
+ readonly sessionStatus: (sessionId: string) => SessionStatus;
36
37
  readonly listSessions: (limit: number) => import("./session-store.ts").AcpStoredSession[];
37
38
  readonly findLinkedSessions: (agentId: string, nativeSessionId: string) => readonly import("./session-store.ts").AcpStoredSession[];
38
39
  readonly hasPreparedSession: (sessionId: string, agentId: string, cwd: string, additionalDirectories: readonly string[]) => boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runtime-manager.d.ts","sourceRoot":"","sources":["../../src/acp/agent-runtime-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-runtime-manager.d.ts","sourceRoot":"","sources":["../../src/acp/agent-runtime-manager.ts"],"names":[],"mappings":"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"}
@@ -27,12 +27,14 @@ export class AgentRuntimeManager {
27
27
  #store;
28
28
  #nativeHistoryReader;
29
29
  #sessionIdentity;
30
+ #onSessionStatusChanged;
30
31
  #observer;
31
- constructor(observer = new NullAcpSessionObserver(), store = new MemoryAcpSessionStore(), nativeHistoryReader = null, sessionIdentity = "assigned") {
32
+ constructor(observer = new NullAcpSessionObserver(), store = new MemoryAcpSessionStore(), nativeHistoryReader = null, sessionIdentity = "assigned", onSessionStatusChanged = () => undefined) {
32
33
  this.#observer = observer;
33
34
  this.#store = store;
34
35
  this.#nativeHistoryReader = nativeHistoryReader;
35
36
  this.#sessionIdentity = sessionIdentity;
37
+ this.#onSessionStatusChanged = onSessionStatusChanged;
36
38
  }
37
39
  setObserver = (observer) => {
38
40
  this.#observer = observer;
@@ -302,6 +304,11 @@ export class AgentRuntimeManager {
302
304
  }
303
305
  this.#executions.begin(options.sessionId, options.commandId);
304
306
  try {
307
+ this.#onSessionStatusChanged({
308
+ kind: "session.status.changed",
309
+ sessionId: options.sessionId,
310
+ status: { commandId: options.commandId, kind: "working" },
311
+ });
305
312
  if (this.#executions.cancellation(options.sessionId) !== undefined) {
306
313
  return { stopReason: "cancelled" };
307
314
  }
@@ -347,6 +354,11 @@ export class AgentRuntimeManager {
347
354
  }
348
355
  finally {
349
356
  this.#executions.finish(options.sessionId, options.commandId);
357
+ this.#onSessionStatusChanged({
358
+ kind: "session.status.changed",
359
+ sessionId: options.sessionId,
360
+ status: { kind: "idle" },
361
+ });
350
362
  this.#executionProcesses.touch(options.sessionId);
351
363
  this.#processes.notifyChanged();
352
364
  }
@@ -377,6 +389,10 @@ export class AgentRuntimeManager {
377
389
  const stored = this.#store.read(sessionId);
378
390
  return stored instanceof FoundAcpStoredSession ? [stored.session] : [];
379
391
  });
392
+ sessionStatus = (sessionId) => {
393
+ const commandId = this.#executions.command(sessionId);
394
+ return commandId === undefined ? { kind: "idle" } : { commandId, kind: "working" };
395
+ };
380
396
  listSessions = (limit) => this.#store
381
397
  .list()
382
398
  .filter((session) => session.prompted)
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runtime-manager.js","sourceRoot":"","sources":["../../src/acp/agent-runtime-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-runtime-manager.js","sourceRoot":"","sources":["../../src/acp/agent-runtime-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"app-server-client.d.ts","sourceRoot":"","sources":["../../../src/acp/codex/app-server-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAS,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,KAAK,sBAAsB,EAA+B,MAAM,+BAA+B,CAAC;AAMzG,+EAA+E;AAC/E,qBAAa,mBAAoB,SAAQ,iBAAiB;IACtD,YAAY,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,EAGpE;CACJ;AAED,oFAAoF;AACpF,MAAM,WAAW,2BAA2B;IACxC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACnC,QAAQ,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,QAAQ,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,2BAA2B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACrF;AAMD,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;CAC7C;AAED;;;GAGG;AACH,qBAAa,oBAAoB;;IAK7B,QAAQ,CAAC,UAAU,kCAA6B;IAQhD,YAAY,OAAO,EAAE,qBAAqB,EAgDzC;IAED,QAAQ,CAAC,KAAK,QAAO,YAAY,CAAgB;IA8GjD,+FAA+F;IAC/F,QAAQ,CAAC,OAAO,WAAkB,MAAM,UAAU,OAAO,UAAU,WAAW,KAAG,OAAO,CAAC,OAAO,CAAC,CAoB/F;IAEF,QAAQ,CAAC,MAAM,WAAY,MAAM,UAAU,OAAO,KAAG,IAAI,CAEvD;IAEF,QAAQ,CAAC,OAAO,OAAQ,MAAM,GAAG,MAAM,UAAU,OAAO,KAAG,IAAI,CAE7D;IAEF,QAAQ,CAAC,gBAAgB,OAAQ,MAAM,GAAG,MAAM,QAAQ,MAAM,WAAW,MAAM,KAAG,IAAI,CAEpF;IAaF,2DAA2D;IAC3D,QAAQ,CAAC,UAAU,WAAkB,WAAW,KAAG,OAAO,CAAC,IAAI,CAAC,CAU9D;IAEF;;;;OAIG;IACH,QAAQ,CAAC,MAAM,QAAO,IAAI,CAExB;CACL"}
1
+ {"version":3,"file":"app-server-client.d.ts","sourceRoot":"","sources":["../../../src/acp/codex/app-server-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAS,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,KAAK,sBAAsB,EAA+B,MAAM,+BAA+B,CAAC;AAMzG,+EAA+E;AAC/E,qBAAa,mBAAoB,SAAQ,iBAAiB;IACtD,YAAY,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,EAGpE;CACJ;AAED,oFAAoF;AACpF,MAAM,WAAW,2BAA2B;IACxC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACnC,QAAQ,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,QAAQ,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,2BAA2B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACrF;AAMD,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;CAC7C;AAED;;;GAGG;AACH,qBAAa,oBAAoB;;IAK7B,QAAQ,CAAC,UAAU,kCAA6B;IAQhD,YAAY,OAAO,EAAE,qBAAqB,EAgDzC;IAED,QAAQ,CAAC,KAAK,QAAO,YAAY,CAAgB;IA6HjD,+FAA+F;IAC/F,QAAQ,CAAC,OAAO,WAAkB,MAAM,UAAU,OAAO,UAAU,WAAW,KAAG,OAAO,CAAC,OAAO,CAAC,CAoB/F;IAEF,QAAQ,CAAC,MAAM,WAAY,MAAM,UAAU,OAAO,KAAG,IAAI,CAEvD;IAEF,QAAQ,CAAC,OAAO,OAAQ,MAAM,GAAG,MAAM,UAAU,OAAO,KAAG,IAAI,CAE7D;IAEF,QAAQ,CAAC,gBAAgB,OAAQ,MAAM,GAAG,MAAM,QAAQ,MAAM,WAAW,MAAM,KAAG,IAAI,CAEpF;IAaF,2DAA2D;IAC3D,QAAQ,CAAC,UAAU,WAAkB,WAAW,KAAG,OAAO,CAAC,IAAI,CAAC,CAU9D;IAEF;;;;OAIG;IACH,QAAQ,CAAC,MAAM,QAAO,IAAI,CAExB;CACL"}
@@ -3,7 +3,7 @@ import { AcpExecutionError } from "../acp-error.js";
3
3
  import { acpEndpointTerminationError } from "../in-process/acp-endpoint.js";
4
4
  import { decodeAppServerMessage } from "./app-server-protocol.js";
5
5
  const INITIALIZE_TIMEOUT_MILLISECONDS = 30_000;
6
- const OUTPUT_LIMIT_BYTES = 32 * 1_024 * 1_024;
6
+ const MESSAGE_OUTPUT_LIMIT_BYTES = 32 * 1_024 * 1_024;
7
7
  /** A failure in the Codex app-server boundary, reported with a stable code. */
8
8
  export class CodexAppServerError extends AcpExecutionError {
9
9
  constructor(code, message, options = {}) {
@@ -25,8 +25,8 @@ export class CodexAppServerClient {
25
25
  kind: "open",
26
26
  };
27
27
  #nextRequestId = 1;
28
- #pendingBuffer = "";
29
- #receivedBytes = 0;
28
+ #pendingBytes = 0;
29
+ #pendingFragments = [];
30
30
  constructor(options) {
31
31
  this.#handlers = options.handlers;
32
32
  this.#child = spawn(options.command, ["app-server"], {
@@ -96,22 +96,33 @@ export class CodexAppServerClient {
96
96
  return;
97
97
  }
98
98
  try {
99
- this.#receivedBytes += Buffer.byteLength(chunk);
100
- if (this.#receivedBytes > OUTPUT_LIMIT_BYTES) {
101
- throw new CodexAppServerError("codex_app_server_output_limit", "The Codex app-server produced too much output");
102
- }
103
- this.#pendingBuffer += chunk;
104
- let newline = this.#pendingBuffer.indexOf("\n");
99
+ let cursor = 0;
100
+ let newline = chunk.indexOf("\n");
105
101
  while (newline >= 0) {
106
- const line = this.#pendingBuffer.slice(0, newline);
107
- this.#pendingBuffer = this.#pendingBuffer.slice(newline + 1);
108
- newline = this.#pendingBuffer.indexOf("\n");
102
+ const fragment = chunk.slice(cursor, newline);
103
+ const lineBytes = this.#pendingBytes + Buffer.byteLength(fragment);
104
+ if (lineBytes > MESSAGE_OUTPUT_LIMIT_BYTES) {
105
+ throw new CodexAppServerError("codex_app_server_output_limit", "The Codex app-server produced an oversized message");
106
+ }
107
+ const line = this.#pendingFragments.length === 0 ? fragment : [...this.#pendingFragments, fragment].join("");
108
+ this.#pendingBytes = 0;
109
+ this.#pendingFragments = [];
110
+ cursor = newline + 1;
111
+ newline = chunk.indexOf("\n", cursor);
109
112
  if (line.trim().length === 0) {
110
113
  continue;
111
114
  }
112
115
  const value = JSON.parse(line);
113
116
  this.#dispatch(decodeAppServerMessage(value));
114
117
  }
118
+ const remainder = chunk.slice(cursor);
119
+ if (remainder.length > 0) {
120
+ this.#pendingBytes += Buffer.byteLength(remainder);
121
+ if (this.#pendingBytes > MESSAGE_OUTPUT_LIMIT_BYTES) {
122
+ throw new CodexAppServerError("codex_app_server_output_limit", "The Codex app-server produced an oversized message");
123
+ }
124
+ this.#pendingFragments.push(remainder);
125
+ }
115
126
  }
116
127
  catch (error) {
117
128
  this.#fail(error instanceof CodexAppServerError
@@ -1 +1 @@
1
- {"version":3,"file":"app-server-client.js","sourceRoot":"","sources":["../../../src/acp/codex/app-server-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-server-client.js","sourceRoot":"","sources":["../../../src/acp/codex/app-server-client.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -3381,7 +3381,7 @@ var program = new Command();
3381
3381
  // package.json
3382
3382
  var package_default = {
3383
3383
  name: "@moxt-ai/mobius",
3384
- version: "0.0.164",
3384
+ version: "0.0.165",
3385
3385
  description: "Mobius CLI for pairing and running local AI agent services.",
3386
3386
  type: "module",
3387
3387
  bin: {
@@ -24873,7 +24873,7 @@ var threadSettingsUpdatedSchema = external_exports.object({
24873
24873
 
24874
24874
  // src/acp/codex/app-server-client.ts
24875
24875
  var INITIALIZE_TIMEOUT_MILLISECONDS = 3e4;
24876
- var OUTPUT_LIMIT_BYTES = 32 * 1024 * 1024;
24876
+ var MESSAGE_OUTPUT_LIMIT_BYTES = 32 * 1024 * 1024;
24877
24877
  var CodexAppServerError = class extends AcpExecutionError {
24878
24878
  constructor(code, message, options = {}) {
24879
24879
  super(message, options, code);
@@ -24890,8 +24890,8 @@ var CodexAppServerClient = class {
24890
24890
  kind: "open"
24891
24891
  };
24892
24892
  #nextRequestId = 1;
24893
- #pendingBuffer = "";
24894
- #receivedBytes = 0;
24893
+ #pendingBytes = 0;
24894
+ #pendingFragments = [];
24895
24895
  constructor(options) {
24896
24896
  this.#handlers = options.handlers;
24897
24897
  this.#child = spawn2(options.command, ["app-server"], {
@@ -24967,25 +24967,39 @@ var CodexAppServerClient = class {
24967
24967
  return;
24968
24968
  }
24969
24969
  try {
24970
- this.#receivedBytes += Buffer.byteLength(chunk);
24971
- if (this.#receivedBytes > OUTPUT_LIMIT_BYTES) {
24972
- throw new CodexAppServerError(
24973
- "codex_app_server_output_limit",
24974
- "The Codex app-server produced too much output"
24975
- );
24976
- }
24977
- this.#pendingBuffer += chunk;
24978
- let newline = this.#pendingBuffer.indexOf("\n");
24970
+ let cursor = 0;
24971
+ let newline = chunk.indexOf("\n");
24979
24972
  while (newline >= 0) {
24980
- const line = this.#pendingBuffer.slice(0, newline);
24981
- this.#pendingBuffer = this.#pendingBuffer.slice(newline + 1);
24982
- newline = this.#pendingBuffer.indexOf("\n");
24973
+ const fragment = chunk.slice(cursor, newline);
24974
+ const lineBytes = this.#pendingBytes + Buffer.byteLength(fragment);
24975
+ if (lineBytes > MESSAGE_OUTPUT_LIMIT_BYTES) {
24976
+ throw new CodexAppServerError(
24977
+ "codex_app_server_output_limit",
24978
+ "The Codex app-server produced an oversized message"
24979
+ );
24980
+ }
24981
+ const line = this.#pendingFragments.length === 0 ? fragment : [...this.#pendingFragments, fragment].join("");
24982
+ this.#pendingBytes = 0;
24983
+ this.#pendingFragments = [];
24984
+ cursor = newline + 1;
24985
+ newline = chunk.indexOf("\n", cursor);
24983
24986
  if (line.trim().length === 0) {
24984
24987
  continue;
24985
24988
  }
24986
24989
  const value = JSON.parse(line);
24987
24990
  this.#dispatch(decodeAppServerMessage(value));
24988
24991
  }
24992
+ const remainder = chunk.slice(cursor);
24993
+ if (remainder.length > 0) {
24994
+ this.#pendingBytes += Buffer.byteLength(remainder);
24995
+ if (this.#pendingBytes > MESSAGE_OUTPUT_LIMIT_BYTES) {
24996
+ throw new CodexAppServerError(
24997
+ "codex_app_server_output_limit",
24998
+ "The Codex app-server produced an oversized message"
24999
+ );
25000
+ }
25001
+ this.#pendingFragments.push(remainder);
25002
+ }
24989
25003
  } catch (error62) {
24990
25004
  this.#fail(
24991
25005
  error62 instanceof CodexAppServerError ? error62 : new CodexAppServerError(
@@ -28361,6 +28375,7 @@ var SESSION_LIST_KIND = "session.list";
28361
28375
  var SESSION_LISTED_KIND = "session.listed";
28362
28376
  var SESSION_QUERY_KIND = "session.query";
28363
28377
  var SESSION_QUERIED_KIND = "session.queried";
28378
+ var SESSION_STATUS_CHANGED_KIND = "session.status.changed";
28364
28379
  var SESSION_CONFIGURE_KIND = "session.configure";
28365
28380
  var SESSION_CONFIG_UPDATED_KIND = "session.config.updated";
28366
28381
  var SESSION_USAGE_UPDATED_KIND = "session.usage.updated";
@@ -28400,6 +28415,18 @@ var workspaceEntrySchema = external_exports.strictObject({
28400
28415
  directoryId: DIRECTORY_IDENTIFIER,
28401
28416
  name: external_exports.string().min(1).max(255)
28402
28417
  }).readonly();
28418
+ var sessionStatusSchema = external_exports.discriminatedUnion("kind", [
28419
+ external_exports.strictObject({ kind: external_exports.literal("idle") }).readonly(),
28420
+ external_exports.strictObject({
28421
+ commandId: identifierStringSchema,
28422
+ kind: external_exports.literal("working")
28423
+ }).readonly()
28424
+ ]);
28425
+ var sessionStatusChangedEventSchema = external_exports.strictObject({
28426
+ kind: external_exports.literal(SESSION_STATUS_CHANGED_KIND),
28427
+ sessionId: identifierStringSchema,
28428
+ status: sessionStatusSchema
28429
+ }).readonly();
28403
28430
  var sessionMetadataSchema = external_exports.strictObject({
28404
28431
  additionalDirectories: external_exports.array(workspaceEntrySchema).max(16).readonly(),
28405
28432
  agentId: identifierStringSchema,
@@ -28407,6 +28434,7 @@ var sessionMetadataSchema = external_exports.strictObject({
28407
28434
  directoryLabel: external_exports.string().min(1).max(2048),
28408
28435
  prompted: external_exports.boolean(),
28409
28436
  sessionId: identifierStringSchema,
28437
+ status: sessionStatusSchema,
28410
28438
  title: external_exports.string().max(500),
28411
28439
  updatedAt: external_exports.iso.datetime({ offset: true })
28412
28440
  }).readonly();
@@ -28981,6 +29009,8 @@ var decodeSessionQueryCommand = (encoded) => decode3(encoded, sessionQueryComman
28981
29009
  var encodeSessionQueryCommand = (message) => encode3(message, sessionQueryCommandSchema);
28982
29010
  var decodeSessionsQueriedEvent = (encoded) => decode3(encoded, sessionsQueriedEventSchema);
28983
29011
  var encodeSessionsQueriedEvent = (message) => encode3(message, sessionsQueriedEventSchema);
29012
+ var decodeSessionStatusChangedEvent = (encoded) => decode3(encoded, sessionStatusChangedEventSchema);
29013
+ var encodeSessionStatusChangedEvent = (message) => encode3(message, sessionStatusChangedEventSchema);
28984
29014
  var decodeSessionPrepareCommand = (encoded) => decode3(encoded, sessionPrepareCommandSchema);
28985
29015
  var encodeSessionPrepareCommand = (message) => encode3(message, sessionPrepareCommandSchema);
28986
29016
  var decodeSessionReadyEvent = (encoded) => decode3(encoded, sessionReadyEventSchema);
@@ -30589,6 +30619,11 @@ var daemonToServiceSignatures = {
30589
30619
  encodeSessionsQueriedEvent,
30590
30620
  decodeSessionsQueriedEvent
30591
30621
  ),
30622
+ [SESSION_STATUS_CHANGED_KIND]: defineMessageSignature(
30623
+ SESSION_STATUS_CHANGED_KIND,
30624
+ encodeSessionStatusChangedEvent,
30625
+ decodeSessionStatusChangedEvent
30626
+ ),
30592
30627
  [SESSION_QUEUED_KIND]: defineMessageSignature(
30593
30628
  SESSION_QUEUED_KIND,
30594
30629
  encodeSessionQueuedEvent,
@@ -41111,12 +41146,14 @@ var AgentRuntimeManager = class {
41111
41146
  #store;
41112
41147
  #nativeHistoryReader;
41113
41148
  #sessionIdentity;
41149
+ #onSessionStatusChanged;
41114
41150
  #observer;
41115
- constructor(observer = new NullAcpSessionObserver(), store = new MemoryAcpSessionStore(), nativeHistoryReader = null, sessionIdentity = "assigned") {
41151
+ constructor(observer = new NullAcpSessionObserver(), store = new MemoryAcpSessionStore(), nativeHistoryReader = null, sessionIdentity = "assigned", onSessionStatusChanged = () => void 0) {
41116
41152
  this.#observer = observer;
41117
41153
  this.#store = store;
41118
41154
  this.#nativeHistoryReader = nativeHistoryReader;
41119
41155
  this.#sessionIdentity = sessionIdentity;
41156
+ this.#onSessionStatusChanged = onSessionStatusChanged;
41120
41157
  }
41121
41158
  setObserver = (observer) => {
41122
41159
  this.#observer = observer;
@@ -41423,6 +41460,11 @@ var AgentRuntimeManager = class {
41423
41460
  }
41424
41461
  this.#executions.begin(options2.sessionId, options2.commandId);
41425
41462
  try {
41463
+ this.#onSessionStatusChanged({
41464
+ kind: "session.status.changed",
41465
+ sessionId: options2.sessionId,
41466
+ status: { commandId: options2.commandId, kind: "working" }
41467
+ });
41426
41468
  if (this.#executions.cancellation(options2.sessionId) !== void 0) {
41427
41469
  return { stopReason: "cancelled" };
41428
41470
  }
@@ -41466,6 +41508,11 @@ var AgentRuntimeManager = class {
41466
41508
  await this.#executions.cancellation(options2.sessionId);
41467
41509
  } finally {
41468
41510
  this.#executions.finish(options2.sessionId, options2.commandId);
41511
+ this.#onSessionStatusChanged({
41512
+ kind: "session.status.changed",
41513
+ sessionId: options2.sessionId,
41514
+ status: { kind: "idle" }
41515
+ });
41469
41516
  this.#executionProcesses.touch(options2.sessionId);
41470
41517
  this.#processes.notifyChanged();
41471
41518
  }
@@ -41498,6 +41545,10 @@ var AgentRuntimeManager = class {
41498
41545
  const stored = this.#store.read(sessionId);
41499
41546
  return stored instanceof FoundAcpStoredSession ? [stored.session] : [];
41500
41547
  });
41548
+ sessionStatus = (sessionId) => {
41549
+ const commandId = this.#executions.command(sessionId);
41550
+ return commandId === void 0 ? { kind: "idle" } : { commandId, kind: "working" };
41551
+ };
41501
41552
  listSessions = (limit) => this.#store.list().filter((session) => session.prompted).slice(0, limit);
41502
41553
  findLinkedSessions = (agentId, nativeSessionId) => this.#store.findNative(agentId, nativeSessionId);
41503
41554
  hasPreparedSession = (sessionId, agentId, cwd, additionalDirectories) => this.#executionProcesses.get(sessionId)?.belongsTo(agentId, cwd, additionalDirectories) === true;
@@ -43943,8 +43994,8 @@ async function readCodexHistoryWithOptions(agent, cwd, nativeSessionId, signal,
43943
43994
  const response = Promise.withResolvers();
43944
43995
  let state = { kind: "initializing", requestId: 1 };
43945
43996
  const seenCursors = /* @__PURE__ */ new Set();
43946
- let pending = "";
43947
- let receivedBytes = 0;
43997
+ let pendingBytes = 0;
43998
+ let pendingFragments = [];
43948
43999
  const fail = (cause) => response.reject(
43949
44000
  cause instanceof AcpExecutionError ? cause : new AcpExecutionError(
43950
44001
  "Saved Codex history could not be read.",
@@ -43958,20 +44009,23 @@ async function readCodexHistoryWithOptions(agent, cwd, nativeSessionId, signal,
43958
44009
  };
43959
44010
  const onData = (chunk) => {
43960
44011
  try {
43961
- receivedBytes += Buffer.byteLength(chunk);
43962
- if (receivedBytes > 32 * 1024 * 1024) {
43963
- throw new AcpExecutionError(
43964
- "This saved conversation is too large to preview.",
43965
- {},
43966
- "native_history_too_large"
43967
- );
43968
- }
43969
- pending += chunk;
43970
- let newline = pending.indexOf("\n");
44012
+ let cursor = 0;
44013
+ let newline = chunk.indexOf("\n");
43971
44014
  while (newline >= 0) {
43972
- const line = pending.slice(0, newline);
43973
- pending = pending.slice(newline + 1);
43974
- newline = pending.indexOf("\n");
44015
+ const fragment = chunk.slice(cursor, newline);
44016
+ const lineBytes = pendingBytes + Buffer.byteLength(fragment);
44017
+ if (lineBytes > 32 * 1024 * 1024) {
44018
+ throw new AcpExecutionError(
44019
+ "This saved conversation is too large to preview.",
44020
+ {},
44021
+ "native_history_too_large"
44022
+ );
44023
+ }
44024
+ const line = pendingFragments.length === 0 ? fragment : [...pendingFragments, fragment].join("");
44025
+ pendingBytes = 0;
44026
+ pendingFragments = [];
44027
+ cursor = newline + 1;
44028
+ newline = chunk.indexOf("\n", cursor);
43975
44029
  if (line.trim().length === 0) {
43976
44030
  continue;
43977
44031
  }
@@ -44067,6 +44121,18 @@ async function readCodexHistoryWithOptions(agent, cwd, nativeSessionId, signal,
44067
44121
  }
44068
44122
  }
44069
44123
  }
44124
+ const remainder = chunk.slice(cursor);
44125
+ if (remainder.length > 0) {
44126
+ pendingBytes += Buffer.byteLength(remainder);
44127
+ if (pendingBytes > 32 * 1024 * 1024) {
44128
+ throw new AcpExecutionError(
44129
+ "This saved conversation is too large to preview.",
44130
+ {},
44131
+ "native_history_too_large"
44132
+ );
44133
+ }
44134
+ pendingFragments.push(remainder);
44135
+ }
44070
44136
  } catch (cause) {
44071
44137
  fail(cause);
44072
44138
  }
@@ -44585,6 +44651,7 @@ var NativeSessionService = class {
44585
44651
  directoryLabel: directory.label,
44586
44652
  prompted: session.prompted,
44587
44653
  sessionId: session.sessionId,
44654
+ status: this.#sessions.sessionStatus(session.sessionId),
44588
44655
  title: session.title || "Untitled session",
44589
44656
  updatedAt: session.updatedAt
44590
44657
  });
@@ -47799,6 +47866,21 @@ var DaemonSessionEventPublisher = class {
47799
47866
  this.publish(sessionId, event);
47800
47867
  }
47801
47868
  };
47869
+ publishStatus = (event) => {
47870
+ const socket = this.#socket;
47871
+ if (socket === null || socket.readyState !== WebSocket9.OPEN) {
47872
+ return;
47873
+ }
47874
+ const encoded = encodeDaemonToServiceMessage(event);
47875
+ if (socket.bufferedAmount + Buffer.byteLength(encoded, "utf8") > MAX_BUFFERED_BYTES) {
47876
+ socket.close(1013, "Live event transport overloaded");
47877
+ return;
47878
+ }
47879
+ try {
47880
+ socket.send(encoded);
47881
+ } catch {
47882
+ }
47883
+ };
47802
47884
  publishV2 = (event) => {
47803
47885
  this.#store.appendExecutingPromptEventV2(event);
47804
47886
  const socket = this.#socket;
@@ -48111,7 +48193,8 @@ async function runDaemon(config2, audit, signal, timer = systemDaemonTimer, opti
48111
48193
  nativeTurn
48112
48194
  )).history : null
48113
48195
  },
48114
- "native"
48196
+ "native",
48197
+ publisher.publishStatus
48115
48198
  );
48116
48199
  const directories = new WorkspaceDirectoryService(config2.bindingId, config2.defaultWorkspace);
48117
48200
  const installationObserver = new DaemonInstallationObserver();