agent-yes 1.267.2 → 1.269.1

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 (108) hide show
  1. package/README.md +73 -0
  2. package/dist/{SUPPORTED_CLIS-CpWKDCtL.js → SUPPORTED_CLIS-Bne04-66.js} +2 -2
  3. package/dist/SUPPORTED_CLIS-CdyjhpZP.js +12 -0
  4. package/dist/{agent-yes.config-DzNini0E.js → agent-yes.config-2xKNJM5Y.js} +2 -2
  5. package/dist/{agentShare-D0reU6LW.js → agentShare-BI126Ej9.js} +8 -8
  6. package/dist/askCli-Bbxt9Umz.js +272 -0
  7. package/dist/{browser-DSduVZeZ.js → browser-CorYp8Yu.js} +1 -1
  8. package/dist/{browser-B7eYrBy7.js → browser-_2ndf80G.js} +5 -5
  9. package/dist/callback-BnUbjH7p.js +13 -0
  10. package/dist/{callback-Dlqwh9n7.js → callback-DI2r3NrV.js} +5 -5
  11. package/dist/{callbackCore-K99x3C75.js → callbackCore-Bbe7rpN2.js} +1 -1
  12. package/dist/{callbackCore-DcptaZwH.js → callbackCore-C0Cg9RbS.js} +1 -1
  13. package/dist/{channels-DQaZbare.js → channels-3gz9gHP7.js} +6 -6
  14. package/dist/{channels-yE1YUHCl.js → channels-CkaCyvEp.js} +2 -2
  15. package/dist/channels.js +5 -5
  16. package/dist/cli.js +11 -11
  17. package/dist/{cmdPs-D8gsRFVV.js → cmdPs-CVnlflxP.js} +7 -7
  18. package/dist/{configShared-DtHMBCl7.js → configShared-DYxlvrH0.js} +1 -1
  19. package/dist/{cwdConflictWarn-BpweoAiy.js → cwdConflictWarn-Buy3r_qc.js} +1 -1
  20. package/dist/{cwdPassthroughHint-BlRuOGo_.js → cwdPassthroughHint-BlWO-h5w.js} +1 -1
  21. package/dist/{e2e-CUMZC53I.js → e2e-OLfcNxiv.js} +1 -1
  22. package/dist/{expose-DyiZ5AU0.js → expose-Bfo-dZdy.js} +1 -1
  23. package/dist/{forkNested-B_4c-TQk.js → forkNested-jc2ER9xn.js} +1 -1
  24. package/dist/{hist-BoZPJ2ah.js → hist-DiOYRXuD.js} +1 -1
  25. package/dist/{html2canvas-pro.esm-cq4l_ZIw.js → html2canvas-pro.esm-D19oTQeV.js} +1 -1
  26. package/dist/identity-BmDYOuZE.js +3 -0
  27. package/dist/identity-CLaJ9-uE.js +109 -0
  28. package/dist/index.js +4 -3
  29. package/dist/{initMsg-D8cmdY76.js → initMsg-Bat5PUDf.js} +1 -1
  30. package/dist/{initMsg-BKqWDYFk.js → initMsg-CTAIqBWF.js} +8 -4
  31. package/dist/{needsInput-103zhZ90.js → needsInput-DhfIwxse.js} +1 -1
  32. package/dist/{nodeRuntime-QihGFQbI.js → nodeRuntime-CKc1BN5J.js} +1 -1
  33. package/dist/{notifyDaemon-TKtSYtEO.js → notifyDaemon-Cf4KHDOr.js} +7 -7
  34. package/dist/{notifyStore-CEDiVyis.js → notifyStore-0hlFPa6z.js} +1 -1
  35. package/dist/{notifyStore-Cbw2ZJ0X.js → notifyStore-Dus2D1XA.js} +1 -1
  36. package/dist/{openBrowser-Cs46NiH6.js → openBrowser-Dmg2Oi4q.js} +1 -1
  37. package/dist/{parentLink-CTgZZCgw.js → parentLink-BwX4jaGD.js} +1 -1
  38. package/dist/{parentLink-CQrn998L.js → parentLink-DS-XflaJ.js} +1 -1
  39. package/dist/{parentPingLoop-BEvJ2ElR.js → parentPingLoop-Bxd3dXWO.js} +6 -6
  40. package/dist/{peer-DIl5xtx8.js → peer-Dr4zvtcd.js} +3 -3
  41. package/dist/peer-u1AUAZeA.js +4 -0
  42. package/dist/{remotes-M8FbM92D.js → remotes-BiftUp09.js} +3 -3
  43. package/dist/{remotes-DdAfueOu.js → remotes-IzQHupeo.js} +3 -3
  44. package/dist/{rustBinary-B9FEbqTu.js → rustBinary-B2lNFJSe.js} +2 -2
  45. package/dist/{schedule-Bmh5uaDr.js → schedule-D1CNvuKT.js} +8 -7
  46. package/dist/{serve-BqRNIxeq.js → serve-BaHCO0bU.js} +49 -42
  47. package/dist/{setup-GYkQYxlf.js → setup-B8EL0SWL.js} +4 -4
  48. package/dist/{share-Db_zb6gH.js → share-DTPZgbfH.js} +2 -2
  49. package/dist/{share-NUhi-Wdd.js → share-RgJUhzqG.js} +2 -2
  50. package/dist/{spawnGate-CZlMs6uV.js → spawnGate-C6YKlnmb.js} +1 -1
  51. package/dist/{spawnGate-DN4wNXHq.js → spawnGate-CS3oFdJ9.js} +2 -2
  52. package/dist/{store-BW5NBouz.js → store-C7I2CAu9.js} +1 -1
  53. package/dist/{subcommands-DJpVXIb6.js → subcommands-03ghe-aZ.js} +192 -157
  54. package/dist/{subcommands-DLrJfG4D.js → subcommands-BS4lnTrb.js} +6 -6
  55. package/dist/{systemPathLink-BHv1I6wh.js → systemPathLink-DGVcx0fg.js} +1 -1
  56. package/dist/{terminal-CRLPUaKF.js → terminal-DrCP-200.js} +2 -2
  57. package/dist/terminal.js +1 -1
  58. package/dist/todoAutomation-BETGOik9.js +302 -0
  59. package/dist/{todoCli-BYGZ7_C5.js → todoCli-DUoxA1dh.js} +164 -37
  60. package/dist/todoIdentity-BffBxRHA.js +138 -0
  61. package/dist/{todoAutomation-BQRW614S.js → todoStore-Wk8U4zJ8.js} +63 -280
  62. package/dist/{tray-CzGs9-ch.js → tray-Bxq_sfvU.js} +1 -1
  63. package/dist/trayApp-BDMzlxRo.js +5 -0
  64. package/dist/{trayApp-DLMUu2sB.js → trayApp-DC4qjut7.js} +2 -2
  65. package/dist/{ts-ClwhahH9.js → ts-D0Pk-WJg.js} +14 -8
  66. package/dist/{versionChecker-ZQYirfMp.js → versionChecker-V6ceVsu9.js} +2 -2
  67. package/dist/{webrtcLink-DyCj380i.js → webrtcLink-B72AQ2eb.js} +2 -2
  68. package/dist/{webrtcRemote-Bl8eowma.js → webrtcRemote-D68dkqFp.js} +3 -3
  69. package/dist/{widget-DtZ1WXkf.js → widget-BM03OkC1.js} +3 -3
  70. package/dist/widget.js +1 -1
  71. package/dist/widgets.js +5 -5
  72. package/dist/{workspaceConfig-CBKlgA_q.js → workspaceConfig-EK7XNsgR.js} +1 -1
  73. package/dist/{ws-CiR2nOD3.js → ws-6l7Wb_0r.js} +7 -7
  74. package/dist/{ws-Ba372Tym.js → ws-pRFrqms9.js} +3 -3
  75. package/lab/ui/console-logic.js +64 -0
  76. package/lab/ui/index.html +58 -4
  77. package/package.json +1 -1
  78. package/ts/askCli.spec.ts +304 -0
  79. package/ts/askCli.ts +378 -0
  80. package/ts/identity.spec.ts +80 -1
  81. package/ts/identity.ts +16 -9
  82. package/ts/index.ts +6 -1
  83. package/ts/initMsg.spec.ts +22 -14
  84. package/ts/initMsg.ts +7 -2
  85. package/ts/ipcLock.spec.ts +107 -0
  86. package/ts/ipcLock.ts +130 -0
  87. package/ts/serve.ts +68 -17
  88. package/ts/subcommandMirror.spec.ts +76 -0
  89. package/ts/subcommands.spec.ts +115 -10
  90. package/ts/subcommands.ts +108 -36
  91. package/ts/todoAutomation.spec.ts +64 -0
  92. package/ts/todoAutomation.ts +25 -2
  93. package/ts/todoBlock.spec.ts +31 -1
  94. package/ts/todoBlock.ts +33 -1
  95. package/ts/todoCli.spec.ts +199 -4
  96. package/ts/todoCli.ts +266 -42
  97. package/ts/todoIdentity.spec.ts +85 -0
  98. package/ts/todoIdentity.ts +76 -0
  99. package/ts/todoLifecycle.spec.ts +13 -1
  100. package/ts/todoLifecycle.ts +35 -1
  101. package/ts/todoRoot.spec.ts +117 -0
  102. package/ts/todoRoot.ts +90 -0
  103. package/ts/todoStore.spec.ts +25 -0
  104. package/ts/todoStore.ts +36 -2
  105. package/dist/SUPPORTED_CLIS-DDs0xUvV.js +0 -11
  106. package/dist/callback-Bgehh-IW.js +0 -13
  107. package/dist/peer-Cvntlw1i.js +0 -4
  108. package/dist/trayApp-CoD89Y1_.js +0 -5
@@ -1,28 +1,29 @@
1
1
  import "./logger-CDIsZ-Pp.js";
2
- import { r as getInstalledPackage } from "./versionChecker-ZQYirfMp.js";
3
- import { t as findSpawnHiddenLauncher } from "./rustBinary-B9FEbqTu.js";
4
- import { c as permissionBadge, i as answerAsk, o as listAsks, u as CLAUDE_SESSION_PIN_ENV } from "./ts-ClwhahH9.js";
2
+ import { r as getInstalledPackage } from "./versionChecker-V6ceVsu9.js";
3
+ import { t as findSpawnHiddenLauncher } from "./rustBinary-B2lNFJSe.js";
4
+ import { c as permissionBadge, i as answerAsk, o as listAsks, u as CLAUDE_SESSION_PIN_ENV } from "./ts-D0Pk-WJg.js";
5
5
  import { t as agentYesHome$1 } from "./agentYesHome-CtmsY6I-.js";
6
- import { x as removeControlCharacters } from "./todoAutomation-BQRW614S.js";
6
+ import { u as removeControlCharacters } from "./todoAutomation-BETGOik9.js";
7
7
  import "./JsonlStore-CPGIR0Wy.js";
8
8
  import { a as updateGlobalPidStatus } from "./globalPidIndex-Dq4KY2IV.js";
9
9
  import "./pidStore-DJqSZPJi.js";
10
10
  import { r as recordInbox } from "./messageLog-BYFwioFY.js";
11
11
  import { t as pgidForWrapper } from "./reaper-C4BvNylH.js";
12
- import "./e2e-CUMZC53I.js";
13
- import "./configShared-DtHMBCl7.js";
14
- import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-CpWKDCtL.js";
15
- import { B as resolveOne, F as recentMessageEdges, G as snapshotStatus, I as recentReadEdges, L as renderLogTailLines, M as readLogForRender, N as readNotes, O as listRecords, P as readPtysize, Q as TYPING_BADGE, R as renderRawLog, T as isUserTyping, Z as writeToIpc, f as deriveLiveStatus, g as extractTaskCounts, h as extractNeedsInput, l as controlCodeFromName, p as extractBadges, z as renderRawLogLines } from "./subcommands-DJpVXIb6.js";
16
- import { c as isTransientLockMkdirError } from "./notifyStore-Cbw2ZJ0X.js";
17
- import "./webrtcLink-DyCj380i.js";
18
- import "./remotes-DdAfueOu.js";
19
- import { i as frameVisitorMessage, s as verifyCapability, t as MAX_CALLBACK_MSG_BYTES } from "./callbackCore-K99x3C75.js";
20
- import { n as isCallbackRevoked, r as loadCallbackSecretReadOnly } from "./callback-Dlqwh9n7.js";
21
- import { a as getProvisionRoot, d as isProvisionAllowed, f as resolveSpawnCwd, i as getProvisionHook, l as hasProvisionHook, o as getSpawnHook, t as allowsSkipPermissions, u as hasSpawnHook } from "./workspaceConfig-CBKlgA_q.js";
22
- import { n as liveEnv, t as ensureNodeRuntime } from "./nodeRuntime-QihGFQbI.js";
23
- import { i as importProvisionModule } from "./ws-Ba372Tym.js";
24
- import { r as spawnRejectionReason } from "./spawnGate-DN4wNXHq.js";
25
- import { i as launchTray } from "./trayApp-DLMUu2sB.js";
12
+ import "./todoStore-Wk8U4zJ8.js";
13
+ import "./e2e-OLfcNxiv.js";
14
+ import "./configShared-DYxlvrH0.js";
15
+ import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-Bne04-66.js";
16
+ import { $ as TYPING_BADGE, B as resolveOne, F as recentMessageEdges, G as snapshotStatus, I as recentReadEdges, L as renderLogTailLines, M as readLogForRender, N as readNotes, O as listRecords, P as readPtysize, Q as withIpcLock, R as renderRawLog, T as isUserTyping, Z as writeToIpc, f as deriveLiveStatus, g as extractTaskCounts, h as extractNeedsInput, l as controlCodeFromName, p as extractBadges, z as renderRawLogLines } from "./subcommands-03ghe-aZ.js";
17
+ import { c as isTransientLockMkdirError } from "./notifyStore-Dus2D1XA.js";
18
+ import "./webrtcLink-B72AQ2eb.js";
19
+ import "./remotes-IzQHupeo.js";
20
+ import { i as frameVisitorMessage, s as verifyCapability, t as MAX_CALLBACK_MSG_BYTES } from "./callbackCore-Bbe7rpN2.js";
21
+ import { n as isCallbackRevoked, r as loadCallbackSecretReadOnly } from "./callback-DI2r3NrV.js";
22
+ import { a as getProvisionRoot, d as isProvisionAllowed, f as resolveSpawnCwd, i as getProvisionHook, l as hasProvisionHook, o as getSpawnHook, t as allowsSkipPermissions, u as hasSpawnHook } from "./workspaceConfig-EK7XNsgR.js";
23
+ import { n as liveEnv, t as ensureNodeRuntime } from "./nodeRuntime-CKc1BN5J.js";
24
+ import { i as importProvisionModule } from "./ws-pRFrqms9.js";
25
+ import { r as spawnRejectionReason } from "./spawnGate-CS3oFdJ9.js";
26
+ import { i as launchTray } from "./trayApp-DC4qjut7.js";
26
27
  import yargs from "yargs";
27
28
  import { appendFile, mkdir, open, readFile, readdir, rename, rm, stat, unlink, writeFile } from "fs/promises";
28
29
  import { arch, cpus, freemem, homedir, hostname, loadavg, platform, totalmem, uptime, userInfo } from "os";
@@ -1269,7 +1270,7 @@ async function cmdServeDaemon(sub, args) {
1269
1270
  let shareLink = null;
1270
1271
  let shareLinkMinted = false;
1271
1272
  if (webrtcDaemon) try {
1272
- const { loadOrCreateShareRoom, shareLinkFromRoomUrl } = await import("./share-Db_zb6gH.js");
1273
+ const { loadOrCreateShareRoom, shareLinkFromRoomUrl } = await import("./share-DTPZgbfH.js");
1273
1274
  const explicit = explicitWebrtcUrl(effArgs);
1274
1275
  shareLink = shareLinkFromRoomUrl(explicit ?? await loadOrCreateShareRoom());
1275
1276
  shareLinkMinted = !explicit;
@@ -1278,7 +1279,7 @@ async function cmdServeDaemon(sub, args) {
1278
1279
  if (!webrtcDaemon) return;
1279
1280
  if (shareLink) {
1280
1281
  process.stdout.write(`\nshared over WebRTC — open this link (the token is eaten from the URL on open):\n ${shareLink}\n` + (shareLinkMinted ? ` (persistent room — same link across restarts; delete ~/.agent-yes/.share-room to rotate)\n` : ``));
1281
- const { offerOpenInBrowser } = await import("./openBrowser-Cs46NiH6.js");
1282
+ const { offerOpenInBrowser } = await import("./openBrowser-Dmg2Oi4q.js");
1282
1283
  await offerOpenInBrowser(shareLink);
1283
1284
  } else process.stdout.write("\nthe WebRTC share link carries a secret, so the daemon does NOT log it —\nread it from ~/.agent-yes/.share-link (mode 0600). The room persists in\n~/.agent-yes/.share-room, so the link survives restarts.\n");
1284
1285
  };
@@ -2435,7 +2436,7 @@ Options:
2435
2436
  }
2436
2437
  });
2437
2438
  if (req.method === "GET" && p === "/api/ws") {
2438
- const ws = await import("./ws-CiR2nOD3.js");
2439
+ const ws = await import("./ws-6l7Wb_0r.js");
2439
2440
  try {
2440
2441
  await ws.loadProvision();
2441
2442
  } catch (e) {
@@ -2455,7 +2456,7 @@ Options:
2455
2456
  if (req.method === "GET" && p === "/api/ws/status") {
2456
2457
  const dirRaw = url.searchParams.get("path");
2457
2458
  if (!dirRaw) return new Response("missing ?path=<workspace dir>", { status: 400 });
2458
- const ws = await import("./ws-CiR2nOD3.js");
2459
+ const ws = await import("./ws-6l7Wb_0r.js");
2459
2460
  let prov;
2460
2461
  try {
2461
2462
  prov = await ws.loadProvision();
@@ -2477,7 +2478,7 @@ Options:
2477
2478
  }
2478
2479
  }
2479
2480
  if (req.method === "GET" && p === "/api/ws/repos") {
2480
- const ws = await import("./ws-CiR2nOD3.js");
2481
+ const ws = await import("./ws-6l7Wb_0r.js");
2481
2482
  try {
2482
2483
  await ws.loadProvision();
2483
2484
  } catch (e) {
@@ -2558,7 +2559,7 @@ Options:
2558
2559
  const m = /^([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+)$/.exec(repoParam);
2559
2560
  if (!m || m[1] === "." || m[1] === ".." || m[2] === "." || m[2] === "..") return new Response("missing/invalid ?repo=<owner>/<repo>", { status: 400 });
2560
2561
  const [, owner, repo] = m;
2561
- const ws = await import("./ws-CiR2nOD3.js");
2562
+ const ws = await import("./ws-6l7Wb_0r.js");
2562
2563
  let prov;
2563
2564
  try {
2564
2565
  prov = await ws.loadProvision();
@@ -2925,11 +2926,14 @@ Options:
2925
2926
  const record = await resolveOne(keyword, defaultOpts());
2926
2927
  if (!record.fifo_file) return new Response(`pid ${record.pid}: no fifo_file`, { status: 409 });
2927
2928
  const trailing = controlCodeFromName(code.toLowerCase());
2928
- if (msg && trailing) {
2929
- await writeToIpc(record.fifo_file, msg);
2930
- await new Promise((r) => setTimeout(r, 200));
2931
- await writeToIpc(record.fifo_file, trailing);
2932
- } else await writeToIpc(record.fifo_file, msg + trailing);
2929
+ const fifo = record.fifo_file;
2930
+ await withIpcLock(record.pid, async () => {
2931
+ if (msg && trailing) {
2932
+ await writeToIpc(fifo, msg);
2933
+ await new Promise((r) => setTimeout(r, 200));
2934
+ await writeToIpc(fifo, trailing);
2935
+ } else await writeToIpc(fifo, msg + trailing);
2936
+ }, (why) => process.stderr.write(`warning: /api/send writing pid ${record.pid} without the input lock (${why})\n`));
2933
2937
  await noteStdinWrite(record.pid, record.fifo_file, !isTerminalReply(msg));
2934
2938
  if (msg) {
2935
2939
  const senderParty = from && typeof from === "object" && typeof from.pid === "number" ? {
@@ -3466,7 +3470,7 @@ Options:
3466
3470
  const perm = body.perm ?? "r";
3467
3471
  if (perm !== "r" && perm !== "rw") return new Response(`invalid perm ${perm} (want r or rw)`, { status: 400 });
3468
3472
  try {
3469
- const { createScopedShare } = await import("./agentShare-D0reU6LW.js");
3473
+ const { createScopedShare } = await import("./agentShare-BI126Ej9.js");
3470
3474
  const share = await createScopedShare({
3471
3475
  agent: body.agent,
3472
3476
  perm,
@@ -3481,12 +3485,12 @@ Options:
3481
3485
  }
3482
3486
  }
3483
3487
  if (req.method === "GET" && p === "/api/shares") {
3484
- const { listShares } = await import("./agentShare-D0reU6LW.js");
3488
+ const { listShares } = await import("./agentShare-BI126Ej9.js");
3485
3489
  return Response.json(listShares());
3486
3490
  }
3487
3491
  const revokeM = /^\/api\/share\/([^/]+)$/.exec(p);
3488
3492
  if (req.method === "DELETE" && revokeM) {
3489
- const { revokeShare } = await import("./agentShare-D0reU6LW.js");
3493
+ const { revokeShare } = await import("./agentShare-BI126Ej9.js");
3490
3494
  const ok = revokeShare(decodeURIComponent(revokeM[1]));
3491
3495
  return new Response(ok ? "revoked" : "no such share", { status: ok ? 200 : 404 });
3492
3496
  }
@@ -3500,7 +3504,7 @@ Options:
3500
3504
  const port = Number(body.port);
3501
3505
  if (!Number.isInteger(port) || port < 1 || port > 65535) return new Response("valid port required", { status: 400 });
3502
3506
  try {
3503
- const { ensureExposure } = await import("./expose-DyiZ5AU0.js");
3507
+ const { ensureExposure } = await import("./expose-Bfo-dZdy.js");
3504
3508
  const h = await ensureExposure(port, body.relay);
3505
3509
  return Response.json({
3506
3510
  id: h.id,
@@ -3514,12 +3518,12 @@ Options:
3514
3518
  }
3515
3519
  }
3516
3520
  if (req.method === "GET" && p === "/api/exposes") {
3517
- const { listExposures } = await import("./expose-DyiZ5AU0.js");
3521
+ const { listExposures } = await import("./expose-Bfo-dZdy.js");
3518
3522
  return Response.json(listExposures());
3519
3523
  }
3520
3524
  const unexposeM = /^\/api\/expose\/(\d+)$/.exec(p);
3521
3525
  if (req.method === "DELETE" && unexposeM) {
3522
- const { stopExposure } = await import("./expose-DyiZ5AU0.js");
3526
+ const { stopExposure } = await import("./expose-Bfo-dZdy.js");
3523
3527
  const ok = stopExposure(Number(unexposeM[1]));
3524
3528
  return new Response(ok ? "revoked" : "no such exposure", { status: ok ? 200 : 404 });
3525
3529
  }
@@ -3596,9 +3600,12 @@ Options:
3596
3600
  const record = await resolveOne(v.payload.agent, defaultOpts());
3597
3601
  if (record.agent_id !== v.payload.agent || !record.fifo_file) return cbJson(409, { error: "agent unavailable" });
3598
3602
  const framed = frameVisitorMessage(v.payload.id, msg);
3599
- await writeToIpc(record.fifo_file, framed);
3600
- await new Promise((r) => setTimeout(r, 200));
3601
- await writeToIpc(record.fifo_file, controlCodeFromName("enter"));
3603
+ const cbFifo = record.fifo_file;
3604
+ await withIpcLock(record.pid, async () => {
3605
+ await writeToIpc(cbFifo, framed);
3606
+ await new Promise((r) => setTimeout(r, 200));
3607
+ await writeToIpc(cbFifo, controlCodeFromName("enter"));
3608
+ }, (why) => process.stderr.write(`warning: callback writing pid ${record.pid} without the input lock (${why})\n`));
3602
3609
  await noteStdinWrite(record.pid, record.fifo_file, true);
3603
3610
  await recordInbox({
3604
3611
  at: Date.now(),
@@ -3738,7 +3745,7 @@ Options:
3738
3745
  const webrtcVal = argv.webrtc ?? argv.share;
3739
3746
  const explicitUrl = typeof webrtcVal === "string" && webrtcVal.startsWith("webrtc://") ? webrtcVal : void 0;
3740
3747
  try {
3741
- const { startShare, loadOrCreateShareRoom } = await import("./share-Db_zb6gH.js");
3748
+ const { startShare, loadOrCreateShareRoom } = await import("./share-DTPZgbfH.js");
3742
3749
  const linkFile = path.join(process.env.AGENT_YES_HOME ?? path.join(homedir(), ".agent-yes"), ".share-link");
3743
3750
  const announce = async (room, link, rotated) => {
3744
3751
  const lead = rotated ? "the room was rejected by signaling (stale generation) — rotated to a fresh link" : "shared over WebRTC — open this link (the token is eaten from the URL on open)";
@@ -3746,7 +3753,7 @@ Options:
3746
3753
  const persistNote = explicitUrl ? "\n" : ` (persistent room — same link across restarts; delete ~/.agent-yes/.share-room to rotate)\n\n`;
3747
3754
  process.stdout.write(`${wantHttp ? "\n" : ""}${lead}:\n ${link}\n` + persistNote);
3748
3755
  if (!rotated) {
3749
- const { offerOpenInBrowser } = await import("./openBrowser-Cs46NiH6.js");
3756
+ const { offerOpenInBrowser } = await import("./openBrowser-Dmg2Oi4q.js");
3750
3757
  await offerOpenInBrowser(link);
3751
3758
  }
3752
3759
  } else {
@@ -3788,7 +3795,7 @@ Options:
3788
3795
  const shutdown = (resolve) => {
3789
3796
  if (heartbeat) clearInterval(heartbeat);
3790
3797
  closeShare?.();
3791
- import("./agentShare-D0reU6LW.js").then((m) => m.revokeAllShares()).catch(() => {});
3798
+ import("./agentShare-BI126Ej9.js").then((m) => m.revokeAllShares()).catch(() => {});
3792
3799
  server?.stop();
3793
3800
  Promise.resolve(releaseHostLock?.()).catch(() => {}).then(resolve);
3794
3801
  };
@@ -3801,4 +3808,4 @@ Options:
3801
3808
 
3802
3809
  //#endregion
3803
3810
  export { cmdServe, loadTokenReadOnly, mintScopedTermToken, resolveDaemonHttpBase, resolveLocalServeUrl };
3804
- //# sourceMappingURL=serve-BqRNIxeq.js.map
3811
+ //# sourceMappingURL=serve-BaHCO0bU.js.map
@@ -1,4 +1,4 @@
1
- import { c as getWorkspaceRoot, p as setWorkspaceRoot } from "./workspaceConfig-CBKlgA_q.js";
1
+ import { c as getWorkspaceRoot, p as setWorkspaceRoot } from "./workspaceConfig-EK7XNsgR.js";
2
2
  import { existsSync } from "node:fs";
3
3
  import { stdin, stdout } from "node:process";
4
4
  import { createInterface } from "node:readline/promises";
@@ -31,7 +31,7 @@ async function cmdSetup(rest) {
31
31
  process.stdout.write(`workspace root: ${abs}\n`);
32
32
  if (!existsSync(abs)) process.stderr.write(` note: that directory doesn't exist yet — create it, or agents spawned there will fail\n`);
33
33
  try {
34
- const { linkBunBinsToSystemPath } = await import("./systemPathLink-BHv1I6wh.js");
34
+ const { linkBunBinsToSystemPath } = await import("./systemPathLink-DGVcx0fg.js");
35
35
  const r = linkBunBinsToSystemPath();
36
36
  if (r && (r.linked.length || r.refreshed.length)) {
37
37
  const n = r.linked.length + r.refreshed.length;
@@ -40,7 +40,7 @@ async function cmdSetup(rest) {
40
40
  } catch {}
41
41
  if (noShare) return 0;
42
42
  process.stdout.write(`\nsharing this machine to agent-yes.com…\n`);
43
- const { cmdServe } = await import("./serve-BqRNIxeq.js");
43
+ const { cmdServe } = await import("./serve-BaHCO0bU.js");
44
44
  return cmdServe([
45
45
  "install",
46
46
  "--share",
@@ -50,4 +50,4 @@ async function cmdSetup(rest) {
50
50
 
51
51
  //#endregion
52
52
  export { cmdSetup };
53
- //# sourceMappingURL=setup-GYkQYxlf.js.map
53
+ //# sourceMappingURL=setup-B8EL0SWL.js.map
@@ -1,4 +1,4 @@
1
- import "./e2e-CUMZC53I.js";
2
- import { a as startShare, i as shareLinkFromRoomUrl, n as importRTC, r as loadOrCreateShareRoom, t as getIceServers } from "./share-NUhi-Wdd.js";
1
+ import "./e2e-OLfcNxiv.js";
2
+ import { a as startShare, i as shareLinkFromRoomUrl, n as importRTC, r as loadOrCreateShareRoom, t as getIceServers } from "./share-RgJUhzqG.js";
3
3
 
4
4
  export { getIceServers, importRTC, loadOrCreateShareRoom, shareLinkFromRoomUrl, startShare };
@@ -1,4 +1,4 @@
1
- import { a as computeTranscriptHash, c as open$1, d as randomHex, f as seal, i as MAX_CHUNK, l as packEnvelope, n as FLAG_CONFIRM, o as deriveAuthToken, p as unpackEnvelope, r as MARKER, s as deriveDirKeys, t as CONFIRM_TIMEOUT_MS, u as parseSecret } from "./e2e-CUMZC53I.js";
1
+ import { a as computeTranscriptHash, c as open$1, d as randomHex, f as seal, i as MAX_CHUNK, l as packEnvelope, n as FLAG_CONFIRM, o as deriveAuthToken, p as unpackEnvelope, r as MARKER, s as deriveDirKeys, t as CONFIRM_TIMEOUT_MS, u as parseSecret } from "./e2e-OLfcNxiv.js";
2
2
  import { mkdir, readFile, writeFile } from "fs/promises";
3
3
  import { homedir } from "os";
4
4
  import path from "path";
@@ -627,4 +627,4 @@ async function startShare(opts) {
627
627
 
628
628
  //#endregion
629
629
  export { startShare as a, shareLinkFromRoomUrl as i, importRTC as n, loadOrCreateShareRoom as r, getIceServers as t };
630
- //# sourceMappingURL=share-NUhi-Wdd.js.map
630
+ //# sourceMappingURL=share-RgJUhzqG.js.map
@@ -1,5 +1,5 @@
1
1
  import "./logger-CDIsZ-Pp.js";
2
2
  import "./globalPidIndex-Dq4KY2IV.js";
3
- import { i as waitForSpawnCapacity, n as spawnGateEnabled, r as spawnRejectionReason, t as memAvailableMb } from "./spawnGate-DN4wNXHq.js";
3
+ import { i as waitForSpawnCapacity, n as spawnGateEnabled, r as spawnRejectionReason, t as memAvailableMb } from "./spawnGate-CS3oFdJ9.js";
4
4
 
5
5
  export { waitForSpawnCapacity };
@@ -1,5 +1,5 @@
1
1
  import { i as readGlobalPids } from "./globalPidIndex-Dq4KY2IV.js";
2
- import { n as getMaxAgents, r as getMinFreeMb, s as getSpawnWaitMs } from "./workspaceConfig-CBKlgA_q.js";
2
+ import { n as getMaxAgents, r as getMinFreeMb, s as getSpawnWaitMs } from "./workspaceConfig-EK7XNsgR.js";
3
3
  import { readFile } from "fs/promises";
4
4
 
5
5
  //#region ts/spawnGate.ts
@@ -104,4 +104,4 @@ async function waitForSpawnCapacity(opts) {
104
104
 
105
105
  //#endregion
106
106
  export { waitForSpawnCapacity as i, spawnGateEnabled as n, spawnRejectionReason as r, memAvailableMb as t };
107
- //# sourceMappingURL=spawnGate-DN4wNXHq.js.map
107
+ //# sourceMappingURL=spawnGate-CS3oFdJ9.js.map
@@ -211,4 +211,4 @@ function opsMissing(local, remoteHave) {
211
211
 
212
212
  //#endregion
213
213
  export { renderThread as a, makeOp as c, formatHlc as d, hlcSend as f, opsMissing as i, opId as l, maxHlc as n, sortOps as o, parseHlc as p, mergeOps as r, isValidOp as s, haveVector as t, compareHlc as u };
214
- //# sourceMappingURL=store-BW5NBouz.js.map
214
+ //# sourceMappingURL=store-C7I2CAu9.js.map