@moxt-ai/mobius 0.0.312 → 0.0.313

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 (40) hide show
  1. package/dist/acp/adapter/claude/adapter.d.ts +2 -0
  2. package/dist/acp/adapter/claude/adapter.d.ts.map +1 -1
  3. package/dist/acp/adapter/claude/adapter.js +2 -0
  4. package/dist/acp/adapter/claude/adapter.js.map +1 -1
  5. package/dist/acp/adapter/codex/adapter.d.ts +2 -0
  6. package/dist/acp/adapter/codex/adapter.d.ts.map +1 -1
  7. package/dist/acp/adapter/codex/adapter.js +2 -0
  8. package/dist/acp/adapter/codex/adapter.js.map +1 -1
  9. package/dist/acp/adapter/live-sessions.d.ts +2 -0
  10. package/dist/acp/adapter/live-sessions.d.ts.map +1 -1
  11. package/dist/acp/adapter/live-sessions.js +40 -2
  12. package/dist/acp/adapter/live-sessions.js.map +1 -1
  13. package/dist/acp/adapter/pi/adapter.d.ts +2 -0
  14. package/dist/acp/adapter/pi/adapter.d.ts.map +1 -1
  15. package/dist/acp/adapter/pi/adapter.js +2 -0
  16. package/dist/acp/adapter/pi/adapter.js.map +1 -1
  17. package/dist/acp/native-history/preview-contract.d.ts +2 -0
  18. package/dist/acp/native-history/preview-contract.d.ts.map +1 -1
  19. package/dist/cli/handler/agents/index.d.ts.map +1 -1
  20. package/dist/cli/handler/agents/index.js +8 -1
  21. package/dist/cli/handler/agents/index.js.map +1 -1
  22. package/dist/cli/handler/agents/logic/agent-diagnostics.d.ts +2 -0
  23. package/dist/cli/handler/agents/logic/agent-diagnostics.d.ts.map +1 -1
  24. package/dist/cli/handler/agents/logic/agent-diagnostics.js +16 -0
  25. package/dist/cli/handler/agents/logic/agent-diagnostics.js.map +1 -1
  26. package/dist/cli.js +225 -157
  27. package/dist/cli.js.map +4 -4
  28. package/dist/runtime/command/registry/interactions.js +2 -2
  29. package/dist/runtime/command/registry/interactions.js.map +1 -1
  30. package/dist/runtime.js +67 -25
  31. package/dist/runtime.js.map +3 -3
  32. package/dist/session/live/agent-session.d.ts +1 -1
  33. package/dist/session/live/agent-session.d.ts.map +1 -1
  34. package/dist/session/live/agent-session.js +14 -15
  35. package/dist/session/live/agent-session.js.map +1 -1
  36. package/dist/session/manager/session-manager.d.ts +1 -1
  37. package/dist/session/manager/session-manager.d.ts.map +1 -1
  38. package/dist/session/manager/session-manager.js +3 -3
  39. package/dist/session/manager/session-manager.js.map +1 -1
  40. package/package.json +1 -1
@@ -3,7 +3,7 @@ import { settleAbandonedTurn } from "../../../session/prompt/prompt-lifecycle.js
3
3
  import { reportOperationFailure, send } from "../transport.js";
4
4
  export const sessionCancelCommand = {
5
5
  kind: SESSION_CANCEL_KIND,
6
- handle: ({ eventProjection, operations, sessions, sessionTurns }, message) => {
6
+ handle: ({ eventProjection, operations, sessions, sessionTurns, signal }, message) => {
7
7
  if (message.kind !== SESSION_CANCEL_KIND) {
8
8
  throw new Error("Command kind mismatch");
9
9
  }
@@ -18,7 +18,7 @@ export const sessionCancelCommand = {
18
18
  if (cancellationState === "already-requested" || cancellationState === "pending") {
19
19
  return;
20
20
  }
21
- void sessions.cancelPrompt(message.sessionId).catch((error) => {
21
+ void sessions.cancelPrompt(message.sessionId, signal).catch((error) => {
22
22
  console.error("Mobius daemon could not cancel the agent turn", error);
23
23
  });
24
24
  },
@@ -1 +1 @@
1
- {"version":3,"file":"interactions.js","sourceRoot":"","sources":["../../../../src/runtime/command/registry/interactions.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,gCAAgC,EAChC,+BAA+B,EAC/B,+BAA+B,GAClC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAElF,OAAO,EAAE,sBAAsB,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE/D,MAAM,CAAC,MAAM,oBAAoB,GAAmB;IAChD,IAAI,EAAE,mBAAmB;IACzB,MAAM,EAAE,CAAC,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,OAAO,EAAQ,EAAE;QAC/E,IAAI,OAAO,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;QACD,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACrB,KAAK,mBAAmB,CAAC,eAAe,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBACpF,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;YACH,OAAO;QACX,CAAC;QACD,MAAM,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACrD,IAAI,iBAAiB,KAAK,mBAAmB,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YAC/E,OAAO;QACX,CAAC;QACD,KAAK,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAC1D,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE,KAAK,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;IACP,CAAC;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAmB;IAC/C,IAAI,EAAE,kBAAkB;IACxB,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,EAAQ,EAAE;QACpD,IAAI,OAAO,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;QACD,KAAK,QAAQ;aACR,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;aACvC,IAAI,CAAC,GAAG,EAAE;YACP,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5G,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACtB,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACX,CAAC;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAmB;IACpD,IAAI,EAAE,+BAA+B;IACrC,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,OAAO,EAAQ,EAAE;QAChD,IAAI,OAAO,CAAC,IAAI,KAAK,+BAA+B,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;QACD,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3D,sBAAsB,CAClB,MAAM,EACN,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,SAAS,EACjB,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAChD,CAAC;QACN,CAAC;IACL,CAAC;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAmB;IACpD,IAAI,EAAE,+BAA+B;IACrC,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,EAAQ,EAAE;QAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,+BAA+B,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;QACD,KAAK,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC9D,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;IACP,CAAC;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAmB;IACrD,IAAI,EAAE,gCAAgC;IACtC,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,EAAQ,EAAE;QAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,gCAAgC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;QACD,KAAK,QAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC/D,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;IACP,CAAC;CACJ,CAAC"}
1
+ {"version":3,"file":"interactions.js","sourceRoot":"","sources":["../../../../src/runtime/command/registry/interactions.ts"],"names":[],"mappings":"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"}
package/dist/runtime.js CHANGED
@@ -23625,7 +23625,7 @@ var AcpLiveSessions = class {
23625
23625
  this.#sessions.add(session);
23626
23626
  return connection;
23627
23627
  };
23628
- #resolve = (target) => {
23628
+ #find = (target) => {
23629
23629
  const decoded = targetSchema.safeParse(target);
23630
23630
  if (!decoded.success) {
23631
23631
  throw new AcpExecutionError(
@@ -23643,12 +23643,52 @@ var AcpLiveSessions = class {
23643
23643
  if (matches.length > 1) {
23644
23644
  throw new AcpExecutionError("Another writer is using this native session", {}, "session_busy");
23645
23645
  }
23646
- const session = matches[0];
23646
+ return matches[0];
23647
+ };
23648
+ #resolve = (target) => {
23649
+ const session = this.#find(target);
23647
23650
  if (session === void 0) {
23648
23651
  throw new AcpExecutionError("The native session is not active", {}, "invalid_agent_session");
23649
23652
  }
23650
23653
  return session;
23651
23654
  };
23655
+ cancel = async (target, signal) => {
23656
+ const bounded = AbortSignal.any([signal, AbortSignal.timeout(3e4)]);
23657
+ bounded.throwIfAborted();
23658
+ const { connection } = this.#resolve(target);
23659
+ await connection.race(
23660
+ connection.connection.agent.notify(methods3.agent.session.cancel, {
23661
+ sessionId: connection.events.sessionId()
23662
+ }),
23663
+ "ACP agent exited while cancelling a prompt",
23664
+ bounded
23665
+ );
23666
+ };
23667
+ closeSession = async (target, signal) => {
23668
+ const session = this.#find(target);
23669
+ if (session === void 0) {
23670
+ signal.throwIfAborted();
23671
+ return;
23672
+ }
23673
+ const { connection, scope } = session;
23674
+ try {
23675
+ signal.throwIfAborted();
23676
+ if (scope.capabilities().closeSession) {
23677
+ try {
23678
+ await connection.connection.agent.request(
23679
+ methods3.agent.session.close,
23680
+ { sessionId: connection.events.sessionId() },
23681
+ { cancellationSignal: AbortSignal.any([signal, AbortSignal.timeout(1e3)]) }
23682
+ );
23683
+ } catch {
23684
+ signal.throwIfAborted();
23685
+ }
23686
+ }
23687
+ } finally {
23688
+ await connection.closeProcess();
23689
+ }
23690
+ signal.throwIfAborted();
23691
+ };
23652
23692
  prompt = async (target, content, signal) => {
23653
23693
  signal.throwIfAborted();
23654
23694
  const { connection, scope } = this.#resolve(target);
@@ -24882,6 +24922,8 @@ var ClaudeAdapter = class {
24882
24922
  }
24883
24923
  getCapabilities = async (query) => await this.#queryProcesses.capabilities(query);
24884
24924
  connectSession = (options) => this.#liveSessions.connectSession(options);
24925
+ cancel = (...args) => this.#liveSessions.cancel(...args);
24926
+ closeSession = (...args) => this.#liveSessions.closeSession(...args);
24885
24927
  prompt = (...args) => this.#liveSessions.prompt(...args);
24886
24928
  steer = (...args) => this.#liveSessions.steer(...args);
24887
24929
  renameSession = (...args) => this.#liveSessions.renameSession(...args);
@@ -32021,6 +32063,8 @@ var CodexAdapter = class {
32021
32063
  }
32022
32064
  getCapabilities = async (query) => await this.#queryProcesses.capabilities(query);
32023
32065
  connectSession = (options) => this.#liveSessions.connectSession(options);
32066
+ cancel = (...args) => this.#liveSessions.cancel(...args);
32067
+ closeSession = (...args) => this.#liveSessions.closeSession(...args);
32024
32068
  prompt = (...args) => this.#liveSessions.prompt(...args);
32025
32069
  steer = (...args) => this.#liveSessions.steer(...args);
32026
32070
  renameSession = (...args) => this.#liveSessions.renameSession(...args);
@@ -32117,6 +32161,8 @@ var PiAdapter = class {
32117
32161
  }
32118
32162
  getCapabilities = async (query) => await this.#queryProcesses.capabilities(query);
32119
32163
  connectSession = (options) => this.#liveSessions.connectSession(options);
32164
+ cancel = (...args) => this.#liveSessions.cancel(...args);
32165
+ closeSession = (...args) => this.#liveSessions.closeSession(...args);
32120
32166
  prompt = (...args) => this.#liveSessions.prompt(...args);
32121
32167
  steer = (...args) => this.#liveSessions.steer(...args);
32122
32168
  renameSession = (...args) => this.#liveSessions.renameSession(...args);
@@ -32407,7 +32453,7 @@ import { fetch as fetch3 } from "undici";
32407
32453
  // package.json
32408
32454
  var package_default = {
32409
32455
  name: "@moxt-ai/mobius",
32410
- version: "0.0.312",
32456
+ version: "0.0.313",
32411
32457
  description: "Mobius CLI for pairing and running local AI agent services.",
32412
32458
  type: "module",
32413
32459
  bin: {
@@ -84743,7 +84789,6 @@ async function restoreSession(session, signal, recovery, origin) {
84743
84789
  }
84744
84790
 
84745
84791
  // src/session/live/agent-session.ts
84746
- var PROCESS_STOP_TIMEOUT_MILLISECONDS = 1e3;
84747
84792
  var AgentSession = class _AgentSession {
84748
84793
  // The restore surface: AgentSessionRestore members expose private state to
84749
84794
  // session-restore.ts only. The class keeps the fields private.
@@ -85250,12 +85295,12 @@ var AgentSession = class _AgentSession {
85250
85295
  throw failure2;
85251
85296
  }
85252
85297
  };
85253
- cancel = async () => {
85298
+ cancel = async (signal) => {
85299
+ signal.throwIfAborted();
85254
85300
  await this.#interactions.cancelPendingInteractions();
85301
+ signal.throwIfAborted();
85255
85302
  if (this.#turn.running) {
85256
- await this.#connection.connection.agent.notify(methods14.agent.session.cancel, {
85257
- sessionId: this.#updates.sessionId()
85258
- });
85303
+ await this.#adapter.cancel(this.#target(), signal);
85259
85304
  }
85260
85305
  };
85261
85306
  respondPermission = async (options) => {
@@ -85342,21 +85387,18 @@ var AgentSession = class _AgentSession {
85342
85387
  close = async () => {
85343
85388
  try {
85344
85389
  await this.#interactions.cancelPendingInteractions();
85345
- if (this.#capabilities.closeSession && this.#updates.sessionId().length > 0) {
85346
- try {
85347
- await this.#connection.connection.agent.request(
85348
- methods14.agent.session.close,
85349
- { sessionId: this.#updates.sessionId() },
85350
- {
85351
- cancellationSignal: AbortSignal.timeout(PROCESS_STOP_TIMEOUT_MILLISECONDS)
85352
- }
85353
- );
85354
- } catch {
85355
- }
85390
+ } catch (error62) {
85391
+ try {
85392
+ throw error62;
85393
+ } finally {
85394
+ await this.closeProcess();
85356
85395
  }
85357
- } finally {
85396
+ }
85397
+ if (this.#updates.sessionId().length === 0) {
85358
85398
  await this.closeProcess();
85399
+ return;
85359
85400
  }
85401
+ await this.#adapter.closeSession(this.#target(), AbortSignal.timeout(3e4));
85360
85402
  };
85361
85403
  closeProcess = () => this.#connection.closeProcess();
85362
85404
  agentSettingsModelEffort = () => this.#connection.agentSettingsModelEffort();
@@ -85913,14 +85955,14 @@ var SessionManager2 = class {
85913
85955
  return { title: normalized, updatedAt };
85914
85956
  })
85915
85957
  );
85916
- cancelPrompt = async (sessionId) => {
85958
+ cancelPrompt = async (sessionId, signal = AbortSignal.timeout(3e4)) => this.#operations.run({ signal }, async ({ signal: signal2 }) => {
85917
85959
  await this.#executions.cancel(sessionId, async () => {
85918
85960
  const runtime = this.#executionProcesses.get(sessionId);
85919
85961
  if (runtime !== void 0) {
85920
- await runtime.cancel();
85962
+ await runtime.cancel(signal2);
85921
85963
  }
85922
85964
  });
85923
- };
85965
+ });
85924
85966
  steerPrompt = async (options) => this.#operations.run(options, async (options2) => {
85925
85967
  if (this.#executions.command(options2.sessionId) !== options2.targetCommandId) {
85926
85968
  throw new AcpExecutionError("The target turn is no longer active", {}, "steering_target_unavailable");
@@ -89414,7 +89456,7 @@ var previewHistoryPageLoadCommand = {
89414
89456
  // src/runtime/command/registry/interactions.ts
89415
89457
  var sessionCancelCommand = {
89416
89458
  kind: SESSION_CANCEL_KIND,
89417
- handle: ({ eventProjection, operations, sessions, sessionTurns }, message) => {
89459
+ handle: ({ eventProjection, operations, sessions, sessionTurns, signal }, message) => {
89418
89460
  if (message.kind !== SESSION_CANCEL_KIND) {
89419
89461
  throw new Error("Command kind mismatch");
89420
89462
  }
@@ -89429,7 +89471,7 @@ var sessionCancelCommand = {
89429
89471
  if (cancellationState === "already-requested" || cancellationState === "pending") {
89430
89472
  return;
89431
89473
  }
89432
- void sessions.cancelPrompt(message.sessionId).catch((error62) => {
89474
+ void sessions.cancelPrompt(message.sessionId, signal).catch((error62) => {
89433
89475
  console.error("Mobius daemon could not cancel the agent turn", error62);
89434
89476
  });
89435
89477
  }