@moxt-ai/mobius 0.0.426 → 0.0.428

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.
@@ -80,7 +80,7 @@ var __callDispose = (stack, error, hasError) => {
80
80
  // package.json
81
81
  var package_default = {
82
82
  name: "@moxt-ai/mobius",
83
- version: "0.0.426",
83
+ version: "0.0.428",
84
84
  description: "Mobius CLI for pairing and running local AI agent services.",
85
85
  type: "module",
86
86
  bin: {
@@ -171,4 +171,4 @@ export {
171
171
  __callDispose,
172
172
  package_default
173
173
  };
174
- //# sourceMappingURL=chunk-KH33HC7X.js.map
174
+ //# sourceMappingURL=chunk-HFF7ZGCS.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../package.json"],
4
- "sourcesContent": ["{\n \"name\": \"@moxt-ai/mobius\",\n \"version\": \"0.0.426\",\n \"description\": \"Mobius CLI for pairing and running local AI agent services.\",\n \"type\": \"module\",\n \"bin\": {\n \"mobius\": \"dist/cli.js\"\n },\n \"exports\": {\n \"./engine\": {\n \"mobius-source\": \"./src/exports/engine.ts\",\n \"types\": \"./dist/exports/engine.d.ts\",\n \"default\": \"./dist/engine.js\"\n }\n },\n \"files\": [\n \"dist\",\n \"NOTICE\",\n \"THIRD-PARTY-NOTICES.txt\"\n ],\n \"engines\": {\n \"node\": \">=22.19.0\"\n },\n \"publishConfig\": {\n \"access\": \"public\",\n \"exports\": {\n \"./engine\": {\n \"types\": \"./dist/exports/engine.d.ts\",\n \"import\": \"./dist/engine.js\",\n \"default\": \"./dist/engine.js\"\n }\n }\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/moxt-ai/mobius.git\",\n \"directory\": \"packages/cli\"\n },\n \"scripts\": {\n \"prebuild\": \"tsc --project src/engine/acp/harness/claude/upstream/tsconfig.json && tsc --project src/engine/acp/harness/pi/upstream/tsconfig.json\",\n \"build\": \"node scripts/build.ts && tsc --project tsconfig.build.json\",\n \"dev\": \"node --watch src/cli/entrypoint.ts\",\n \"pretypecheck\": \"tsc --project src/engine/acp/harness/claude/upstream/tsconfig.json && tsc --project src/engine/acp/harness/pi/upstream/tsconfig.json\",\n \"prepack\": \"pnpm build\",\n \"start\": \"node dist/cli.js\",\n \"typecheck\": \"tsc --project tsconfig.json && tsc --project tests/tsconfig.json\",\n \"pretest:controlled\": \"pnpm build\",\n \"test:controlled\": \"vitest run tests/sessions tests/runtime\",\n \"pretest:manual\": \"pnpm pretest:controlled\",\n \"test:manual\": \"vitest run tests/manual\",\n \"pretest:agents\": \"pnpm build\",\n \"test:agents\": \"vitest run tests/agents --maxWorkers=2\",\n \"pretest:pressure\": \"tsc --project src/engine/acp/harness/claude/upstream/tsconfig.json && tsc --project src/engine/acp/harness/pi/upstream/tsconfig.json\",\n \"test:pressure\": \"node tests/pressure/concurrent-sessions.mjs\"\n },\n \"dependencies\": {\n \"undici\": \"8.12.2\"\n },\n \"devDependencies\": {\n \"@agentclientprotocol/sdk\": \"^1.4.0\",\n \"@anthropic-ai/claude-agent-sdk\": \"0.3.257\",\n \"@anthropic-ai/sdk\": \"0.122.0\",\n \"@moxt-ai/mobius-sdk\": \"workspace:*\",\n \"@moxt-ai/mobius-test\": \"workspace:*\",\n \"@types/node\": \"^24.13.5\",\n \"@types/semver\": \"^7.8.0\",\n \"@types/ws\": \"^8.18.1\",\n \"commander\": \"15.0.0\",\n \"drizzle-kit\": \"1.0.0-rc.4\",\n \"drizzle-orm\": \"1.0.0-rc.4\",\n \"esbuild\": \"0.28.2\",\n \"semver\": \"^7.8.5\",\n \"valibot\": \"1.5.0\",\n \"ws\": \"^8.21.3\",\n \"zod\": \"^4.6.7\"\n },\n \"keywords\": [],\n \"author\": \"Moxt\",\n \"license\": \"Apache-2.0\",\n \"bugs\": {\n \"url\": \"https://github.com/moxt-ai/mobius/issues\"\n },\n \"homepage\": \"https://github.com/moxt-ai/mobius#readme\"\n}\n"],
4
+ "sourcesContent": ["{\n \"name\": \"@moxt-ai/mobius\",\n \"version\": \"0.0.428\",\n \"description\": \"Mobius CLI for pairing and running local AI agent services.\",\n \"type\": \"module\",\n \"bin\": {\n \"mobius\": \"dist/cli.js\"\n },\n \"exports\": {\n \"./engine\": {\n \"mobius-source\": \"./src/exports/engine.ts\",\n \"types\": \"./dist/exports/engine.d.ts\",\n \"default\": \"./dist/engine.js\"\n }\n },\n \"files\": [\n \"dist\",\n \"NOTICE\",\n \"THIRD-PARTY-NOTICES.txt\"\n ],\n \"engines\": {\n \"node\": \">=22.19.0\"\n },\n \"publishConfig\": {\n \"access\": \"public\",\n \"exports\": {\n \"./engine\": {\n \"types\": \"./dist/exports/engine.d.ts\",\n \"import\": \"./dist/engine.js\",\n \"default\": \"./dist/engine.js\"\n }\n }\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/moxt-ai/mobius.git\",\n \"directory\": \"packages/cli\"\n },\n \"scripts\": {\n \"prebuild\": \"tsc --project src/engine/acp/harness/claude/upstream/tsconfig.json && tsc --project src/engine/acp/harness/pi/upstream/tsconfig.json\",\n \"build\": \"node scripts/build.ts && tsc --project tsconfig.build.json\",\n \"dev\": \"node --watch src/cli/entrypoint.ts\",\n \"pretypecheck\": \"tsc --project src/engine/acp/harness/claude/upstream/tsconfig.json && tsc --project src/engine/acp/harness/pi/upstream/tsconfig.json\",\n \"prepack\": \"pnpm build\",\n \"start\": \"node dist/cli.js\",\n \"typecheck\": \"tsc --project tsconfig.json && tsc --project tests/tsconfig.json\",\n \"pretest:controlled\": \"pnpm build\",\n \"test:controlled\": \"vitest run tests/sessions tests/runtime\",\n \"pretest:manual\": \"pnpm pretest:controlled\",\n \"test:manual\": \"vitest run tests/manual\",\n \"pretest:agents\": \"pnpm build\",\n \"test:agents\": \"vitest run tests/agents --maxWorkers=2\",\n \"pretest:pressure\": \"tsc --project src/engine/acp/harness/claude/upstream/tsconfig.json && tsc --project src/engine/acp/harness/pi/upstream/tsconfig.json\",\n \"test:pressure\": \"node tests/pressure/concurrent-sessions.mjs\"\n },\n \"dependencies\": {\n \"undici\": \"8.12.2\"\n },\n \"devDependencies\": {\n \"@agentclientprotocol/sdk\": \"^1.4.0\",\n \"@anthropic-ai/claude-agent-sdk\": \"0.3.257\",\n \"@anthropic-ai/sdk\": \"0.122.0\",\n \"@moxt-ai/mobius-sdk\": \"workspace:*\",\n \"@moxt-ai/mobius-test\": \"workspace:*\",\n \"@types/node\": \"^24.13.5\",\n \"@types/semver\": \"^7.8.0\",\n \"@types/ws\": \"^8.18.1\",\n \"commander\": \"15.0.0\",\n \"drizzle-kit\": \"1.0.0-rc.4\",\n \"drizzle-orm\": \"1.0.0-rc.4\",\n \"esbuild\": \"0.28.2\",\n \"semver\": \"^7.8.5\",\n \"valibot\": \"1.5.0\",\n \"ws\": \"^8.21.3\",\n \"zod\": \"^4.6.7\"\n },\n \"keywords\": [],\n \"author\": \"Moxt\",\n \"license\": \"Apache-2.0\",\n \"bugs\": {\n \"url\": \"https://github.com/moxt-ai/mobius/issues\"\n },\n \"homepage\": \"https://github.com/moxt-ai/mobius#readme\"\n}\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA,EACI,MAAQ;AAAA,EACR,SAAW;AAAA,EACX,aAAe;AAAA,EACf,MAAQ;AAAA,EACR,KAAO;AAAA,IACH,QAAU;AAAA,EACd;AAAA,EACA,SAAW;AAAA,IACP,YAAY;AAAA,MACR,iBAAiB;AAAA,MACjB,OAAS;AAAA,MACT,SAAW;AAAA,IACf;AAAA,EACJ;AAAA,EACA,OAAS;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,EACJ;AAAA,EACA,SAAW;AAAA,IACP,MAAQ;AAAA,EACZ;AAAA,EACA,eAAiB;AAAA,IACb,QAAU;AAAA,IACV,SAAW;AAAA,MACP,YAAY;AAAA,QACR,OAAS;AAAA,QACT,QAAU;AAAA,QACV,SAAW;AAAA,MACf;AAAA,IACJ;AAAA,EACJ;AAAA,EACA,YAAc;AAAA,IACV,MAAQ;AAAA,IACR,KAAO;AAAA,IACP,WAAa;AAAA,EACjB;AAAA,EACA,SAAW;AAAA,IACP,UAAY;AAAA,IACZ,OAAS;AAAA,IACT,KAAO;AAAA,IACP,cAAgB;AAAA,IAChB,SAAW;AAAA,IACX,OAAS;AAAA,IACT,WAAa;AAAA,IACb,sBAAsB;AAAA,IACtB,mBAAmB;AAAA,IACnB,kBAAkB;AAAA,IAClB,eAAe;AAAA,IACf,kBAAkB;AAAA,IAClB,eAAe;AAAA,IACf,oBAAoB;AAAA,IACpB,iBAAiB;AAAA,EACrB;AAAA,EACA,cAAgB;AAAA,IACZ,QAAU;AAAA,EACd;AAAA,EACA,iBAAmB;AAAA,IACf,4BAA4B;AAAA,IAC5B,kCAAkC;AAAA,IAClC,qBAAqB;AAAA,IACrB,uBAAuB;AAAA,IACvB,wBAAwB;AAAA,IACxB,eAAe;AAAA,IACf,iBAAiB;AAAA,IACjB,aAAa;AAAA,IACb,WAAa;AAAA,IACb,eAAe;AAAA,IACf,eAAe;AAAA,IACf,SAAW;AAAA,IACX,QAAU;AAAA,IACV,SAAW;AAAA,IACX,IAAM;AAAA,IACN,KAAO;AAAA,EACX;AAAA,EACA,UAAY,CAAC;AAAA,EACb,QAAU;AAAA,EACV,SAAW;AAAA,EACX,MAAQ;AAAA,IACJ,KAAO;AAAA,EACX;AAAA,EACA,UAAY;AAChB;",
6
6
  "names": []
7
7
  }
@@ -32,10 +32,10 @@ import {
32
32
  unhandledRejectionLogFilename,
33
33
  validateLocalPath,
34
34
  validatePairingId
35
- } from "./chunk-VCRHOUU2.js";
35
+ } from "./chunk-6BCVMXHM.js";
36
36
  import {
37
37
  package_default
38
- } from "./chunk-KH33HC7X.js";
38
+ } from "./chunk-HFF7ZGCS.js";
39
39
 
40
40
  // ../../node_modules/.pnpm/commander@15.0.0/node_modules/commander/lib/error.js
41
41
  var CommanderError = class extends Error {
@@ -3847,7 +3847,7 @@ function registerAgentsHandler(program2, context) {
3847
3847
  }
3848
3848
 
3849
3849
  // src/daemon/lifecycle/daemon.ts
3850
- import { setTimeout as delay } from "node:timers/promises";
3850
+ import { setTimeout as delay2 } from "node:timers/promises";
3851
3851
 
3852
3852
  // src/engine/session/process/runtime-agent-processes.ts
3853
3853
  var RuntimeAgentProcesses = class {
@@ -3869,6 +3869,7 @@ import { randomUUID as randomUUID2 } from "node:crypto";
3869
3869
  import { readFile as readFile3, rename, unlink } from "node:fs/promises";
3870
3870
  import { join as join7 } from "node:path";
3871
3871
  import { DatabaseSync } from "node:sqlite";
3872
+ import { setTimeout as delay } from "node:timers/promises";
3872
3873
  var SQLITE_BUSY = 5;
3873
3874
  var OWNERSHIP_CONTENTION_MILLISECONDS = 2e3;
3874
3875
  async function removeLockFile(path2) {
@@ -3883,7 +3884,6 @@ async function removeLockFile(path2) {
3883
3884
  function holdDaemonOwnership(path2) {
3884
3885
  const database = new DatabaseSync(path2);
3885
3886
  try {
3886
- database.exec(`PRAGMA busy_timeout = ${OWNERSHIP_CONTENTION_MILLISECONDS.toString()}`);
3887
3887
  database.exec("BEGIN EXCLUSIVE");
3888
3888
  database.exec("PRAGMA locking_mode = EXCLUSIVE");
3889
3889
  } catch (cause) {
@@ -3936,9 +3936,23 @@ async function takeLockFile(path2, previousOwner) {
3936
3936
  }
3937
3937
  return null;
3938
3938
  }
3939
+ async function contendForDaemonOwnership(stateDirectory, filename) {
3940
+ const path2 = join7(stateDirectory, filename);
3941
+ const deadline = Date.now() + OWNERSHIP_CONTENTION_MILLISECONDS;
3942
+ for (; ; ) {
3943
+ const ownership = holdDaemonOwnership(`${path2}.sqlite`);
3944
+ if (ownership !== null) {
3945
+ return ownership;
3946
+ }
3947
+ if (await daemonLockExists(stateDirectory, filename) || Date.now() >= deadline) {
3948
+ return null;
3949
+ }
3950
+ await delay(20 + Math.random() * 30);
3951
+ }
3952
+ }
3939
3953
  async function acquireDaemonLock(stateDirectory, filename = "manager.lock") {
3940
3954
  const path2 = join7(stateDirectory, filename);
3941
- const ownership = holdDaemonOwnership(`${path2}.sqlite`);
3955
+ const ownership = await contendForDaemonOwnership(stateDirectory, filename);
3942
3956
  if (ownership === null) {
3943
3957
  return null;
3944
3958
  }
@@ -4315,7 +4329,7 @@ async function runDaemonRuntime(version, combined, shutdown, rejectionGuard, own
4315
4329
  if (owner === "standalone") {
4316
4330
  const deadline = AbortSignal.any([combined, AbortSignal.timeout(3e4)]);
4317
4331
  while (await daemonLockExists(control.stateDirectory, "worker.lock")) {
4318
- await delay(50, void 0, { signal: deadline });
4332
+ await delay2(50, void 0, { signal: deadline });
4319
4333
  }
4320
4334
  deadline.throwIfAborted();
4321
4335
  }
@@ -4480,7 +4494,7 @@ async function runDaemonRuntime(version, combined, shutdown, rejectionGuard, own
4480
4494
  // src/daemon/lifecycle/daemon-client.ts
4481
4495
  import { spawn } from "node:child_process";
4482
4496
  import { once } from "node:events";
4483
- import { setTimeout as delay2 } from "node:timers/promises";
4497
+ import { setTimeout as delay3 } from "node:timers/promises";
4484
4498
 
4485
4499
  // src/daemon/control/protocol.ts
4486
4500
  var lifecycleResponse = external_exports.discriminatedUnion("kind", [
@@ -4644,7 +4658,7 @@ async function stopDaemon(stateDirectory, signal) {
4644
4658
  if (!await daemonLockExists(stateDirectory)) {
4645
4659
  return { kind: "stopped" };
4646
4660
  }
4647
- await delay2(50, void 0, { signal: deadline });
4661
+ await delay3(50, void 0, { signal: deadline });
4648
4662
  }
4649
4663
  }
4650
4664
  }
@@ -5788,4 +5802,4 @@ async function runCLI() {
5788
5802
  export {
5789
5803
  runCLI
5790
5804
  };
5791
- //# sourceMappingURL=cli-6L5AU77W.js.map
5805
+ //# sourceMappingURL=cli-4WZ5S3YB.js.map