@symerian/symi 3.0.10 → 3.0.11

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 (62) hide show
  1. package/dist/{audio-preflight-Cd4oBX_d.js → audio-preflight-DeOidVY9.js} +4 -4
  2. package/dist/build-info.json +3 -3
  3. package/dist/bundled/boot-md/handler.js +7 -7
  4. package/dist/bundled/session-memory/handler.js +7 -7
  5. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  6. package/dist/{chrome-CqPheSG3.js → chrome-cFjhP6kc.js} +7 -7
  7. package/dist/{command-registry-CS27y3H3.js → command-registry-CJjQMlj_.js} +7 -7
  8. package/dist/{completion-cli-J8hPKmk8.js → completion-cli-CEknMySn.js} +1 -1
  9. package/dist/{completion-cli-D4BB20Sx.js → completion-cli-vCFgly6i.js} +2 -2
  10. package/dist/{config-cli-BR6exbWu.js → config-cli-BUFk88DU.js} +1 -1
  11. package/dist/{config-cli-BREIWj4p.js → config-cli-DLPWXbAt.js} +1 -1
  12. package/dist/{configure-CW4sW2u3.js → configure-BkoMFvEB.js} +1 -1
  13. package/dist/{configure-D4lmQwac.js → configure-D80K613_.js} +1 -1
  14. package/dist/{deliver-BVbveob8.js → deliver-CgPAN0QZ.js} +1 -1
  15. package/dist/{doctor-completion-B-QG7-VM.js → doctor-completion-BBDliPIB.js} +1 -1
  16. package/dist/{doctor-completion-DeDh2QR-.js → doctor-completion-DVqUZPhO.js} +1 -1
  17. package/dist/entry.js +1 -1
  18. package/dist/{gateway-cli-aB-gqPRd.js → gateway-cli-CIv75ODi.js} +5 -5
  19. package/dist/{gateway-cli-DeN9oQ43.js → gateway-cli-DN9pqTkk.js} +5 -5
  20. package/dist/{glass-ui-ws-C4jm4u6g.js → glass-ui-ws-BBVOMP_3.js} +3 -3
  21. package/dist/{glass-ui-ws-DKYcEPlT.js → glass-ui-ws-DajvU2WU.js} +3 -3
  22. package/dist/{health-BNwQkGRO.js → health-DtWvvGSw.js} +5 -1
  23. package/dist/{health-BPmJAGNr.js → health-Dwt9mRYZ.js} +5 -1
  24. package/dist/{image-CUTH9m-Y.js → image-DZQ_GyFY.js} +1 -1
  25. package/dist/index.js +1 -1
  26. package/dist/llm-slug-generator.js +7 -7
  27. package/dist/{manager-S8XqDD2h.js → manager-B4ilZbUQ.js} +1 -1
  28. package/dist/{onboard-Cfnon2qb.js → onboard-BSIQryd_.js} +2 -2
  29. package/dist/{onboard-Bf2nmPaO.js → onboard-CzuWVQbi.js} +2 -2
  30. package/dist/{onboarding-Hi1A43ET.js → onboarding-B3ULVn2b.js} +1 -1
  31. package/dist/{onboarding-D_Gu_3j5.js → onboarding-Cr4UYEKi.js} +1 -1
  32. package/dist/{onboarding.finalize-C2k7yxGu.js → onboarding.finalize-B7GJ-KWP.js} +5 -5
  33. package/dist/{onboarding.finalize-BTYp9yNs.js → onboarding.finalize-PgZt3gN6.js} +4 -4
  34. package/dist/{pi-embedded-helpers-Bp4JFTbe.js → pi-embedded-helpers-B3csacnv.js} +4 -4
  35. package/dist/{program-BLyIo1-b.js → program-Dx8ddxuC.js} +2 -2
  36. package/dist/{program-context-2FWVu0HQ.js → program-context-Kqz-xUms.js} +9 -9
  37. package/dist/{prompt-select-styled-pKX-HaQn.js → prompt-select-styled-BEZWd-py.js} +2 -2
  38. package/dist/{prompt-select-styled-CHgswRTL.js → prompt-select-styled-C-U7yJky.js} +2 -2
  39. package/dist/{pw-ai-BLFBlLvS.js → pw-ai-C_ZQ5KA2.js} +1 -1
  40. package/dist/{register.configure-CxDV0EzE.js → register.configure-B7PDd52g.js} +2 -2
  41. package/dist/{register.configure-PbQHIHFc.js → register.configure-C4dZYkuQ.js} +2 -2
  42. package/dist/{register.maintenance-BXUrFfg-.js → register.maintenance-8F8uINLC.js} +6 -6
  43. package/dist/{register.maintenance-C-OXxEHO.js → register.maintenance-DkmjPWtb.js} +5 -5
  44. package/dist/{register.onboard-CxtXSCxZ.js → register.onboard-BOmdO2qG.js} +3 -3
  45. package/dist/{register.onboard-CaBJ9JGd.js → register.onboard-DdYnTEjn.js} +3 -3
  46. package/dist/{register.setup-D536gd22.js → register.setup-CcyYgmFt.js} +3 -3
  47. package/dist/{register.setup-DrHltKFS.js → register.setup-CnsgKGcx.js} +3 -3
  48. package/dist/{register.status-health-sessions-BmGyyAAH.js → register.status-health-sessions-B1LYyJ5d.js} +2 -2
  49. package/dist/{register.status-health-sessions-CKBz8y_B.js → register.status-health-sessions-Dd-Lq7-v.js} +2 -2
  50. package/dist/{register.subclis-CyNVA0lx.js → register.subclis-BN_La0-g.js} +3 -3
  51. package/dist/{run-main-oD0ruUV_.js → run-main-DTa68vHK.js} +7 -7
  52. package/dist/{runner-WxoM5P3c.js → runner-UgKupJ1D.js} +1 -1
  53. package/dist/{server-methods-BGj7WqYL.js → server-methods-DIxCrgKY.js} +2 -2
  54. package/dist/{server-methods-D_dtwZND.js → server-methods-Ma0EgQYj.js} +2 -2
  55. package/dist/{status-DGga54VL.js → status-CwoFZ1SN.js} +1 -1
  56. package/dist/{status-C6LFbrfg.js → status-DSIeCLqw.js} +1 -1
  57. package/dist/{synthesis-DlGUc1xk.js → synthesis-BcXONbp0.js} +7 -7
  58. package/dist/{unified-runner-CRQ2ftV8.js → unified-runner-D_5_J0nE.js} +19 -19
  59. package/dist/{update-cli--nuWr7Yj.js → update-cli-CLeCba_r.js} +6 -6
  60. package/dist/{update-cli-B4XR6Vkq.js → update-cli-DA8fm8Rl.js} +5 -5
  61. package/dist/{web-BZZ3tbkT.js → web-DJLqJtdE.js} +7 -7
  62. package/package.json +1 -1
@@ -7,10 +7,10 @@ import "./auth-profiles-k8e6j7Im.js";
7
7
  import "./env-BDXYbTKj.js";
8
8
  import "./github-copilot-token-cCYzSU9h.js";
9
9
  import "./boolean-CE7i9tBR.js";
10
- import "./pi-embedded-helpers-Bp4JFTbe.js";
10
+ import "./pi-embedded-helpers-B3csacnv.js";
11
11
  import "./config-DHXmZSyF.js";
12
12
  import "./manifest-registry-CBCGTsIb.js";
13
- import "./chrome-CqPheSG3.js";
13
+ import "./chrome-cFjhP6kc.js";
14
14
  import "./frontmatter-CTR5f_Ez.js";
15
15
  import "./skills-DjtoXuuJ.js";
16
16
  import "./redact-BDMXB06K.js";
@@ -27,11 +27,11 @@ import "./accounts-BuZxOb3B.js";
27
27
  import "./bindings-D43o9y2s.js";
28
28
  import "./paths-BrogUBLf.js";
29
29
  import "./tool-images-CiD-DaWf.js";
30
- import "./image-CUTH9m-Y.js";
30
+ import "./image-DZQ_GyFY.js";
31
31
  import "./pi-model-discovery-CuZX_Q4t.js";
32
32
  import "./gemini-auth-wyzssEnn.js";
33
33
  import "./local-roots-jzqRdkXA.js";
34
- import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-WxoM5P3c.js";
34
+ import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-UgKupJ1D.js";
35
35
 
36
36
  //#region src/media-understanding/audio-preflight.ts
37
37
  /**
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "3.0.10",
3
- "commit": "16d07ed77a49382bcfb5d52f0c5f9c3d695fbc81",
4
- "builtAt": "2026-05-01T21:59:22.131Z"
2
+ "version": "3.0.11",
3
+ "commit": "b70925400e3e0a3f15840fb0469d909de6ab2d44",
4
+ "builtAt": "2026-05-02T02:21:02.365Z"
5
5
  }
@@ -5,15 +5,15 @@ import { o as resolveAgentWorkspaceDir, t as listAgentIds } from "../../agent-sc
5
5
  import { r as defaultRuntime, t as createSubsystemLogger } from "../../subsystem-BjyjJF-d.js";
6
6
  import "../../workspace-CarmeCYN.js";
7
7
  import { n as SILENT_REPLY_TOKEN } from "../../tokens-DLGDtW5r.js";
8
- import { a as createDefaultDeps, i as agentCommand } from "../../unified-runner-CRQ2ftV8.js";
8
+ import { a as createDefaultDeps, i as agentCommand } from "../../unified-runner-D_5_J0nE.js";
9
9
  import "../../auth-profiles-k8e6j7Im.js";
10
10
  import "../../env-BDXYbTKj.js";
11
11
  import "../../github-copilot-token-cCYzSU9h.js";
12
12
  import "../../boolean-CE7i9tBR.js";
13
- import { G as updateSessionStore, V as loadSessionStore, bt as resolveMainSessionKey, vt as resolveAgentMainSessionKey } from "../../pi-embedded-helpers-Bp4JFTbe.js";
13
+ import { G as updateSessionStore, V as loadSessionStore, bt as resolveMainSessionKey, vt as resolveAgentMainSessionKey } from "../../pi-embedded-helpers-B3csacnv.js";
14
14
  import "../../config-DHXmZSyF.js";
15
15
  import "../../manifest-registry-CBCGTsIb.js";
16
- import "../../chrome-CqPheSG3.js";
16
+ import "../../chrome-cFjhP6kc.js";
17
17
  import "../../frontmatter-CTR5f_Ez.js";
18
18
  import "../../skills-DjtoXuuJ.js";
19
19
  import "../../redact-BDMXB06K.js";
@@ -32,15 +32,15 @@ import "../../send-B6uG_VMn.js";
32
32
  import "../../send-DR-zuFs1.js";
33
33
  import { s as resolveStorePath } from "../../paths-BrogUBLf.js";
34
34
  import "../../tool-images-CiD-DaWf.js";
35
- import "../../deliver-BVbveob8.js";
35
+ import "../../deliver-CgPAN0QZ.js";
36
36
  import "../../diagnostic-BjfiehUF.js";
37
37
  import "../../diagnostic-session-state-C9jKr8qI.js";
38
- import "../../image-CUTH9m-Y.js";
38
+ import "../../image-DZQ_GyFY.js";
39
39
  import "../../pi-auth-json-C-V1QD3n.js";
40
40
  import "../../send-DzMyrwxn.js";
41
41
  import "../../pi-model-discovery-CuZX_Q4t.js";
42
42
  import "../../reply-prefix-C1Tw2ERK.js";
43
- import "../../manager-S8XqDD2h.js";
43
+ import "../../manager-B4ilZbUQ.js";
44
44
  import "../../gemini-auth-wyzssEnn.js";
45
45
  import "../../retry-B-y5suGA.js";
46
46
  import "../../sqlite-VBmM_OHS.js";
@@ -51,7 +51,7 @@ import "../../local-roots-jzqRdkXA.js";
51
51
  import "../../ir-CC6LUYsV.js";
52
52
  import "../../render-D1xvLuGo.js";
53
53
  import "../../commands-registry-CHvMCyWU.js";
54
- import "../../runner-WxoM5P3c.js";
54
+ import "../../runner-UgKupJ1D.js";
55
55
  import "../../skill-commands-Bz_D9EmH.js";
56
56
  import "../../fetch-ClslA6GS.js";
57
57
  import "../../channel-activity-D8QD7GoV.js";
@@ -5,15 +5,15 @@ import { o as resolveAgentWorkspaceDir } from "../../agent-scope-Ddr0Ws7u.js";
5
5
  import { t as createSubsystemLogger } from "../../subsystem-BjyjJF-d.js";
6
6
  import "../../workspace-CarmeCYN.js";
7
7
  import "../../tokens-DLGDtW5r.js";
8
- import "../../unified-runner-CRQ2ftV8.js";
8
+ import "../../unified-runner-D_5_J0nE.js";
9
9
  import "../../auth-profiles-k8e6j7Im.js";
10
10
  import "../../env-BDXYbTKj.js";
11
11
  import "../../github-copilot-token-cCYzSU9h.js";
12
12
  import "../../boolean-CE7i9tBR.js";
13
- import { st as hasInterSessionUserProvenance } from "../../pi-embedded-helpers-Bp4JFTbe.js";
13
+ import { st as hasInterSessionUserProvenance } from "../../pi-embedded-helpers-B3csacnv.js";
14
14
  import "../../config-DHXmZSyF.js";
15
15
  import "../../manifest-registry-CBCGTsIb.js";
16
- import "../../chrome-CqPheSG3.js";
16
+ import "../../chrome-cFjhP6kc.js";
17
17
  import "../../frontmatter-CTR5f_Ez.js";
18
18
  import "../../skills-DjtoXuuJ.js";
19
19
  import "../../redact-BDMXB06K.js";
@@ -32,15 +32,15 @@ import "../../send-B6uG_VMn.js";
32
32
  import "../../send-DR-zuFs1.js";
33
33
  import "../../paths-BrogUBLf.js";
34
34
  import "../../tool-images-CiD-DaWf.js";
35
- import "../../deliver-BVbveob8.js";
35
+ import "../../deliver-CgPAN0QZ.js";
36
36
  import "../../diagnostic-BjfiehUF.js";
37
37
  import "../../diagnostic-session-state-C9jKr8qI.js";
38
- import "../../image-CUTH9m-Y.js";
38
+ import "../../image-DZQ_GyFY.js";
39
39
  import "../../pi-auth-json-C-V1QD3n.js";
40
40
  import "../../send-DzMyrwxn.js";
41
41
  import "../../pi-model-discovery-CuZX_Q4t.js";
42
42
  import "../../reply-prefix-C1Tw2ERK.js";
43
- import "../../manager-S8XqDD2h.js";
43
+ import "../../manager-B4ilZbUQ.js";
44
44
  import "../../gemini-auth-wyzssEnn.js";
45
45
  import "../../retry-B-y5suGA.js";
46
46
  import "../../sqlite-VBmM_OHS.js";
@@ -51,7 +51,7 @@ import "../../local-roots-jzqRdkXA.js";
51
51
  import "../../ir-CC6LUYsV.js";
52
52
  import "../../render-D1xvLuGo.js";
53
53
  import "../../commands-registry-CHvMCyWU.js";
54
- import "../../runner-WxoM5P3c.js";
54
+ import "../../runner-UgKupJ1D.js";
55
55
  import "../../skill-commands-Bz_D9EmH.js";
56
56
  import "../../fetch-ClslA6GS.js";
57
57
  import "../../channel-activity-D8QD7GoV.js";
@@ -1 +1 @@
1
- 691ced39c3b6de548a9b2c4ae6c4a5fc9086deb08a5e74a0bb397853dade3559
1
+ 25b27995864e581f715b7913f852d14e908d4a2e7b0dc4a1ac7a99354547ea35
@@ -10,7 +10,7 @@ import fs$1 from "node:fs/promises";
10
10
  import { execFileSync, spawn } from "node:child_process";
11
11
  import net from "node:net";
12
12
  import { createServer } from "node:http";
13
- import WebSocket$1, { WebSocketServer } from "ws";
13
+ import WebSocket, { WebSocketServer } from "ws";
14
14
  import { Buffer as Buffer$1 } from "node:buffer";
15
15
 
16
16
  //#region src/browser/constants.ts
@@ -178,7 +178,7 @@ async function ensureChromeExtensionRelayServer(opts) {
178
178
  let nextExtensionId = 1;
179
179
  const sendToExtension = async (payload) => {
180
180
  const ws = extensionWs;
181
- if (!ws || ws.readyState !== WebSocket$1.OPEN) throw new Error("Chrome extension not connected");
181
+ if (!ws || ws.readyState !== WebSocket.OPEN) throw new Error("Chrome extension not connected");
182
182
  ws.send(JSON.stringify(payload));
183
183
  return await new Promise((resolve, reject) => {
184
184
  const timer = setTimeout(() => {
@@ -195,12 +195,12 @@ async function ensureChromeExtensionRelayServer(opts) {
195
195
  const broadcastToCdpClients = (evt) => {
196
196
  const msg = JSON.stringify(evt);
197
197
  for (const ws of cdpClients) {
198
- if (ws.readyState !== WebSocket$1.OPEN) continue;
198
+ if (ws.readyState !== WebSocket.OPEN) continue;
199
199
  ws.send(msg);
200
200
  }
201
201
  };
202
202
  const sendResponseToCdp = (ws, res) => {
203
- if (ws.readyState !== WebSocket$1.OPEN) return;
203
+ if (ws.readyState !== WebSocket.OPEN) return;
204
204
  ws.send(JSON.stringify(res));
205
205
  };
206
206
  const ensureTargetEventsForClient = (ws, mode) => {
@@ -425,7 +425,7 @@ async function ensureChromeExtensionRelayServer(opts) {
425
425
  wssExtension.on("connection", (ws) => {
426
426
  extensionWs = ws;
427
427
  const ping = setInterval(() => {
428
- if (ws.readyState !== WebSocket$1.OPEN) return;
428
+ if (ws.readyState !== WebSocket.OPEN) return;
429
429
  ws.send(JSON.stringify({ method: "ping" }));
430
430
  }, 5e3);
431
431
  ws.on("message", (data) => {
@@ -743,7 +743,7 @@ async function fetchOk(url, timeoutMs = 1500, init) {
743
743
  }
744
744
  async function withCdpSocket(wsUrl, fn, opts) {
745
745
  const headers = getHeadersWithAuth(wsUrl, opts?.headers ?? {});
746
- const ws = new WebSocket$1(wsUrl, {
746
+ const ws = new WebSocket(wsUrl, {
747
747
  handshakeTimeout: typeof opts?.handshakeTimeoutMs === "number" && Number.isFinite(opts.handshakeTimeoutMs) ? Math.max(1, Math.floor(opts.handshakeTimeoutMs)) : 5e3,
748
748
  ...Object.keys(headers).length ? { headers } : {}
749
749
  });
@@ -1637,7 +1637,7 @@ async function getChromeWebSocketUrl(cdpUrl, timeoutMs = 500) {
1637
1637
  async function canOpenWebSocket(wsUrl, timeoutMs = 800) {
1638
1638
  return await new Promise((resolve) => {
1639
1639
  const headers = getHeadersWithAuth(wsUrl);
1640
- const ws = new WebSocket$1(wsUrl, {
1640
+ const ws = new WebSocket(wsUrl, {
1641
1641
  handshakeTimeout: timeoutMs,
1642
1642
  ...Object.keys(headers).length ? { headers } : {}
1643
1643
  });
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { an as getPrimaryCommand, cn as hasHelpOrVersion } from "./entry.js";
3
- import { i as registerSubCliCommands, o as reparseProgramFromActionArgs } from "./register.subclis-CyNVA0lx.js";
3
+ import { i as registerSubCliCommands, o as reparseProgramFromActionArgs } from "./register.subclis-BN_La0-g.js";
4
4
 
5
5
  //#region src/cli/program/command-registry.ts
6
6
  var command_registry_exports = /* @__PURE__ */ __exportAll({
@@ -22,7 +22,7 @@ const coreEntries = [
22
22
  hasSubcommands: false
23
23
  }],
24
24
  register: async ({ program }) => {
25
- (await import("./register.setup-DrHltKFS.js")).registerSetupCommand(program);
25
+ (await import("./register.setup-CnsgKGcx.js")).registerSetupCommand(program);
26
26
  }
27
27
  },
28
28
  {
@@ -32,7 +32,7 @@ const coreEntries = [
32
32
  hasSubcommands: false
33
33
  }],
34
34
  register: async ({ program }) => {
35
- (await import("./register.onboard-CaBJ9JGd.js")).registerOnboardCommand(program);
35
+ (await import("./register.onboard-DdYnTEjn.js")).registerOnboardCommand(program);
36
36
  }
37
37
  },
38
38
  {
@@ -42,7 +42,7 @@ const coreEntries = [
42
42
  hasSubcommands: false
43
43
  }],
44
44
  register: async ({ program }) => {
45
- (await import("./register.configure-CxDV0EzE.js")).registerConfigureCommand(program);
45
+ (await import("./register.configure-B7PDd52g.js")).registerConfigureCommand(program);
46
46
  }
47
47
  },
48
48
  {
@@ -52,7 +52,7 @@ const coreEntries = [
52
52
  hasSubcommands: true
53
53
  }],
54
54
  register: async ({ program }) => {
55
- (await import("./config-cli-BR6exbWu.js")).registerConfigCli(program);
55
+ (await import("./config-cli-BUFk88DU.js")).registerConfigCli(program);
56
56
  }
57
57
  },
58
58
  {
@@ -79,7 +79,7 @@ const coreEntries = [
79
79
  }
80
80
  ],
81
81
  register: async ({ program }) => {
82
- (await import("./register.maintenance-BXUrFfg-.js")).registerMaintenanceCommands(program);
82
+ (await import("./register.maintenance-8F8uINLC.js")).registerMaintenanceCommands(program);
83
83
  }
84
84
  },
85
85
  {
@@ -135,7 +135,7 @@ const coreEntries = [
135
135
  }
136
136
  ],
137
137
  register: async ({ program }) => {
138
- (await import("./register.status-health-sessions-BmGyyAAH.js")).registerStatusHealthSessionsCommands(program);
138
+ (await import("./register.status-health-sessions-B1LYyJ5d.js")).registerStatusHealthSessionsCommands(program);
139
139
  }
140
140
  },
141
141
  {
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { g as resolveStateDir } from "./paths-Cqn-zk3M.js";
3
3
  import { h as pathExists } from "./utils-B-0b9bGM.js";
4
4
  import { i as routeLogsToStderr } from "./subsystem-zqierDLj.js";
5
- import { a as registerCoreCliByName, c as getSubCliEntries, l as registerSubCliByName, r as getCoreCliCommandNames, t as getProgramContext } from "./program-context-2FWVu0HQ.js";
5
+ import { a as registerCoreCliByName, c as getSubCliEntries, l as registerSubCliByName, r as getCoreCliCommandNames, t as getProgramContext } from "./program-context-Kqz-xUms.js";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
8
8
  import fs from "node:fs/promises";
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Yt as resolveStateDir, l as routeLogsToStderr, nt as pathExists } from "./entry.js";
3
- import { n as getSubCliEntries, r as registerSubCliByName } from "./register.subclis-CyNVA0lx.js";
4
- import { i as registerCoreCliByName, n as getCoreCliCommandNames } from "./command-registry-CS27y3H3.js";
3
+ import { n as getSubCliEntries, r as registerSubCliByName } from "./register.subclis-BN_La0-g.js";
4
+ import { i as registerCoreCliByName, n as getCoreCliCommandNames } from "./command-registry-CJjQMlj_.js";
5
5
  import { t as getProgramContext } from "./program-context-DeZ44oQ9.js";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
@@ -201,7 +201,7 @@ async function runConfigUnset(opts) {
201
201
  }
202
202
  function registerConfigCli(program) {
203
203
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.symi.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
204
- const { configureCommandFromSectionsArg } = await import("./configure-CW4sW2u3.js").then((n) => n.t);
204
+ const { configureCommandFromSectionsArg } = await import("./configure-BkoMFvEB.js").then((n) => n.t);
205
205
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
206
206
  });
207
207
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -206,7 +206,7 @@ async function runConfigUnset(opts) {
206
206
  }
207
207
  function registerConfigCli(program) {
208
208
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.symi.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
209
- const { configureCommandFromSectionsArg } = await import("./configure-D4lmQwac.js").then((n) => n.t);
209
+ const { configureCommandFromSectionsArg } = await import("./configure-D80K613_.js").then((n) => n.t);
210
210
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
211
211
  });
212
212
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -14,7 +14,7 @@ import { t as createClackPrompter } from "./clack-prompter-CTPf_777.js";
14
14
  import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-C95U6eDf.js";
15
15
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-CPBdJhrm.js";
16
16
  import { t as resolveGatewayService } from "./service-RxN7lQKN.js";
17
- import { r as healthCommand } from "./health-BPmJAGNr.js";
17
+ import { r as healthCommand } from "./health-Dwt9mRYZ.js";
18
18
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-DKcwWWGv.js";
19
19
  import { n as logConfigUpdated } from "./logging-PVQxLC6I.js";
20
20
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-DF6R_pgV.js";
@@ -16,7 +16,7 @@ import { t as createClackPrompter } from "./clack-prompter-Cd5Ohk77.js";
16
16
  import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-DJji_VgU.js";
17
17
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-1___eZD6.js";
18
18
  import { t as resolveGatewayService } from "./service-CW2RUNzh.js";
19
- import { r as healthCommand } from "./health-BNwQkGRO.js";
19
+ import { r as healthCommand } from "./health-DtWvvGSw.js";
20
20
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-CtKVON4w.js";
21
21
  import { n as logConfigUpdated } from "./logging-CZuxhCZR.js";
22
22
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-PeQmwVpp.js";
@@ -4,7 +4,7 @@ import { p as normalizeAccountId } from "./session-key-BCzIW1Y2.js";
4
4
  import { c as getActivePluginRegistry, v as createInternalHookEvent, x as triggerInternalHook } from "./registry-DYq1AYOv.js";
5
5
  import { t as createSubsystemLogger } from "./subsystem-BjyjJF-d.js";
6
6
  import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-DLGDtW5r.js";
7
- import { R as appendAssistantMessageToSessionTranscript, z as resolveMirroredTranscriptText } from "./pi-embedded-helpers-Bp4JFTbe.js";
7
+ import { R as appendAssistantMessageToSessionTranscript, z as resolveMirroredTranscriptText } from "./pi-embedded-helpers-B3csacnv.js";
8
8
  import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BpFxTfLA.js";
9
9
  import { c as resolveChunkMode, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph } from "./chunk-BRe1o4Af.js";
10
10
  import { n as resolveMarkdownTableMode } from "./markdown-tables-bViwuQKQ.js";
@@ -1,7 +1,7 @@
1
1
  import { r as resolveCliName } from "./command-format-CyXZlazG.js";
2
2
  import { t as resolveSymiPackageRoot } from "./symi-root-7ei1lwo0.js";
3
3
  import { t as note } from "./note-CYS1SoX6.js";
4
- import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-J8hPKmk8.js";
4
+ import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-CEknMySn.js";
5
5
  import path from "node:path";
6
6
  import { spawnSync } from "node:child_process";
7
7
 
@@ -1,7 +1,7 @@
1
1
  import { r as resolveCliName } from "./command-format-BtYOfWxC.js";
2
2
  import { t as resolveSymiPackageRoot } from "./symi-root-CK6iELVh.js";
3
3
  import { t as note } from "./note-DewoEWtc.js";
4
- import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-D4BB20Sx.js";
4
+ import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-vCFgly6i.js";
5
5
  import { spawnSync } from "node:child_process";
6
6
  import path from "node:path";
7
7
 
package/dist/entry.js CHANGED
@@ -2500,7 +2500,7 @@ if (!ensureExperimentalWarningSuppressed()) {
2500
2500
  applyCliProfileEnv({ profile: parsed.profile });
2501
2501
  process$1.argv = parsed.argv;
2502
2502
  }
2503
- import("./run-main-oD0ruUV_.js").then(({ runCli }) => runCli(process$1.argv)).catch((error) => {
2503
+ import("./run-main-DTa68vHK.js").then(({ runCli }) => runCli(process$1.argv)).catch((error) => {
2504
2504
  console.error("[symi] Failed to start CLI:", error instanceof Error ? error.stack ?? error.message : error);
2505
2505
  process$1.exitCode = 1;
2506
2506
  });
@@ -131,12 +131,12 @@ import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } fr
131
131
  import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-vevi4OAS.js";
132
132
  import { c as probeGateway, s as resolveNodeCommandAllowlist } from "./audit-2YJSSY8X.js";
133
133
  import { t as discoverGatewayBeacons } from "./bonjour-discovery-BWaTCKHh.js";
134
- import { i as pickGatewaySelfPresence } from "./status-DGga54VL.js";
135
- import { a as styleHealthChannelLine, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-BPmJAGNr.js";
134
+ import { i as pickGatewaySelfPresence } from "./status-CwoFZ1SN.js";
135
+ import { a as styleHealthChannelLine, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-Dwt9mRYZ.js";
136
136
  import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-DKcwWWGv.js";
137
137
  import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, m as normalizeUpdateChannel, n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-BNjupSIM.js";
138
- import { t as runOnboardingWizard } from "./onboarding-Hi1A43ET.js";
139
- import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-D_dtwZND.js";
138
+ import { t as runOnboardingWizard } from "./onboarding-B3ULVn2b.js";
139
+ import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-Ma0EgQYj.js";
140
140
  import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-DasrMMsn.js";
141
141
  import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-YTXXLbHH.js";
142
142
  import "./agents.config-tTbDCubC.js";
@@ -12139,7 +12139,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
12139
12139
  });
12140
12140
  let glassUiBridgeCleanup = null;
12141
12141
  if (!minimalTestGateway) {
12142
- const { createGlassUiBridge } = await import("./glass-ui-ws-C4jm4u6g.js");
12142
+ const { createGlassUiBridge } = await import("./glass-ui-ws-BBVOMP_3.js");
12143
12143
  glassUiBridgeCleanup = createGlassUiBridge({
12144
12144
  wss: glassUiWss,
12145
12145
  context: gatewayRequestContext,
@@ -136,12 +136,12 @@ import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } fr
136
136
  import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-DnATZix4.js";
137
137
  import { c as probeGateway, s as resolveNodeCommandAllowlist } from "./audit-D4eGKJx8.js";
138
138
  import { t as discoverGatewayBeacons } from "./bonjour-discovery-PnjDY_wY.js";
139
- import { r as pickGatewaySelfPresence } from "./status-C6LFbrfg.js";
140
- import { c as startHeartbeatRunner, i as styleHealthChannelLine, n as getHealthSnapshot, o as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-BNwQkGRO.js";
139
+ import { r as pickGatewaySelfPresence } from "./status-DSIeCLqw.js";
140
+ import { c as startHeartbeatRunner, i as styleHealthChannelLine, n as getHealthSnapshot, o as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-DtWvvGSw.js";
141
141
  import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-CtKVON4w.js";
142
142
  import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, m as normalizeUpdateChannel, n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-BIE5FLmi.js";
143
- import { t as runOnboardingWizard } from "./onboarding-D_Gu_3j5.js";
144
- import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-BGj7WqYL.js";
143
+ import { t as runOnboardingWizard } from "./onboarding-Cr4UYEKi.js";
144
+ import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-DIxCrgKY.js";
145
145
  import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-DRR-HRKQ.js";
146
146
  import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-BV1BJYYk.js";
147
147
  import "./agents.config-Bs7UUe0R.js";
@@ -12143,7 +12143,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
12143
12143
  });
12144
12144
  let glassUiBridgeCleanup = null;
12145
12145
  if (!minimalTestGateway) {
12146
- const { createGlassUiBridge } = await import("./glass-ui-ws-DKYcEPlT.js");
12146
+ const { createGlassUiBridge } = await import("./glass-ui-ws-DajvU2WU.js");
12147
12147
  glassUiBridgeCleanup = createGlassUiBridge({
12148
12148
  wss: glassUiWss,
12149
12149
  context: gatewayRequestContext,
@@ -110,11 +110,11 @@ import "./service-RxN7lQKN.js";
110
110
  import "./diagnostics-C6xPE2ln.js";
111
111
  import "./table-Bka4fasy.js";
112
112
  import "./audit-2YJSSY8X.js";
113
- import "./status-DGga54VL.js";
114
- import "./health-BPmJAGNr.js";
113
+ import "./status-CwoFZ1SN.js";
114
+ import "./health-Dwt9mRYZ.js";
115
115
  import "./control-ui-assets-DKcwWWGv.js";
116
116
  import "./update-check-BNjupSIM.js";
117
- import { n as handleGatewayRequest } from "./server-methods-D_dtwZND.js";
117
+ import { n as handleGatewayRequest } from "./server-methods-Ma0EgQYj.js";
118
118
  import "./push-apns-DasrMMsn.js";
119
119
  import "./agents.config-tTbDCubC.js";
120
120
  import "./dm-policy-shared-T-NSMbHG.js";
@@ -115,11 +115,11 @@ import "./service-CW2RUNzh.js";
115
115
  import "./diagnostics-D40jPn_9.js";
116
116
  import "./table-Cg6YZXv9.js";
117
117
  import "./audit-D4eGKJx8.js";
118
- import "./status-C6LFbrfg.js";
119
- import "./health-BNwQkGRO.js";
118
+ import "./status-DSIeCLqw.js";
119
+ import "./health-DtWvvGSw.js";
120
120
  import "./control-ui-assets-CtKVON4w.js";
121
121
  import "./update-check-BIE5FLmi.js";
122
- import { n as handleGatewayRequest } from "./server-methods-BGj7WqYL.js";
122
+ import { n as handleGatewayRequest } from "./server-methods-DIxCrgKY.js";
123
123
  import "./push-apns-DRR-HRKQ.js";
124
124
  import "./agents.config-Bs7UUe0R.js";
125
125
  import "./dm-policy-shared-DEYoaOHB.js";
@@ -1,6 +1,6 @@
1
1
  import { B as theme, k as info, l as escapeRegExp, z as isRich } from "./utils-B-0b9bGM.js";
2
2
  import { r as SYMIPULSE_TOKEN } from "./tokens-Cz6cgZ7r.js";
3
- import { Br as DEFAULT_HEARTBEAT_EVERY, Cr as getQueueSize, En as peekSystemEventEntries, Hr as resolveHeartbeatPrompt$1, Or as CommandLane, Ur as stripHeartbeatToken, Vr as isHeartbeatContentEffectivelyEmpty, ir as resolveEmbeddedSessionLane, nn as setHeartbeatWakeHandler, ot as resolveHeartbeatDeliveryTarget, rn as resolveHeartbeatReasonKind, sr as resolveUserTimezone, st as resolveHeartbeatSenderContext, tn as requestHeartbeatNow, zr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS } from "./unified-runner-BXwSSfqN.js";
3
+ import { Br as DEFAULT_HEARTBEAT_EVERY, Cr as getQueueSize, En as peekSystemEventEntries, Hr as resolveHeartbeatPrompt$1, Nr as registerAgentRunContext, Or as CommandLane, Ur as stripHeartbeatToken, Vr as isHeartbeatContentEffectivelyEmpty, ir as resolveEmbeddedSessionLane, kr as clearAgentRunContext, nn as setHeartbeatWakeHandler, ot as resolveHeartbeatDeliveryTarget, rn as resolveHeartbeatReasonKind, sr as resolveUserTimezone, st as resolveHeartbeatSenderContext, tn as requestHeartbeatNow, zr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS } from "./unified-runner-BXwSSfqN.js";
4
4
  import { f as defaultRuntime, t as createSubsystemLogger } from "./subsystem-zqierDLj.js";
5
5
  import { l as resolveAgentIdFromSessionKey, p as toAgentStoreSessionKey, s as normalizeAgentId } from "./session-key-oOB32jSB.js";
6
6
  import { b as DEFAULT_SYMIPULSE_FILENAME, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId, r as resolveAgentConfig } from "./agent-scope-BajBuriF.js";
@@ -612,6 +612,7 @@ async function runHeartbeatOnce(opts) {
612
612
  const abortController = new AbortController();
613
613
  registerHeartbeatRun(sessionKey, abortController);
614
614
  let transcriptState = {};
615
+ let agentRunId;
615
616
  try {
616
617
  transcriptState = await captureTranscriptState({
617
618
  storePath,
@@ -622,6 +623,8 @@ async function runHeartbeatOnce(opts) {
622
623
  const suppressToolErrorWarnings = heartbeat?.suppressToolErrorWarnings === true;
623
624
  const onAgentRunStart = (runId) => {
624
625
  setHeartbeatRunId(sessionKey, runId);
626
+ registerAgentRunContext(runId, { isHeartbeat: true });
627
+ agentRunId = runId;
625
628
  };
626
629
  const replyResult = await runReplyTurn(ctx, heartbeatModelOverride ? {
627
630
  isHeartbeat: true,
@@ -833,6 +836,7 @@ async function runHeartbeatOnce(opts) {
833
836
  };
834
837
  } finally {
835
838
  clearHeartbeatRun(sessionKey);
839
+ if (agentRunId) clearAgentRunContext(agentRunId);
836
840
  }
837
841
  }
838
842
  function startHeartbeatRunner(opts) {
@@ -4,7 +4,7 @@ import { l as resolveAgentIdFromSessionKey, p as toAgentStoreSessionKey, s as no
4
4
  import { b as DEFAULT_SYMIPULSE_FILENAME, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId, r as resolveAgentConfig } from "./agent-scope-xM36I1Em.js";
5
5
  import { C as parseDurationMs, i as loadConfig } from "./config-DUkEbW2B.js";
6
6
  import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-kDKyoL1-.js";
7
- import { Cr as CommandLane, Dr as resolveHeartbeatPrompt$1, Er as isHeartbeatContentEffectivelyEmpty, In as peekSystemEventEntries, Or as stripHeartbeatToken, Tr as DEFAULT_HEARTBEAT_EVERY, dn as requestHeartbeatNow, et as resolveEmbeddedSessionLane, fn as setHeartbeatWakeHandler, ht as resolveHeartbeatSenderContext, mt as resolveHeartbeatDeliveryTarget, pn as resolveHeartbeatReasonKind, rr as resolveUserTimezone, vr as getQueueSize, wr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS } from "./subagent-registry-Ci5g29Mp.js";
7
+ import { Cr as CommandLane, Dr as resolveHeartbeatPrompt$1, Er as isHeartbeatContentEffectivelyEmpty, In as peekSystemEventEntries, Nr as registerAgentRunContext, Or as stripHeartbeatToken, Tr as DEFAULT_HEARTBEAT_EVERY, dn as requestHeartbeatNow, et as resolveEmbeddedSessionLane, fn as setHeartbeatWakeHandler, ht as resolveHeartbeatSenderContext, kr as clearAgentRunContext, mt as resolveHeartbeatDeliveryTarget, pn as resolveHeartbeatReasonKind, rr as resolveUserTimezone, vr as getQueueSize, wr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS } from "./subagent-registry-Ci5g29Mp.js";
8
8
  import { M as canonicalizeMainSessionAlias, N as resolveAgentMainSessionKey, d as updateSessionStore, l as saveSessionStore, o as loadSessionStore } from "./sessions-BTIQHLw1.js";
9
9
  import { r as SYMIPULSE_TOKEN } from "./tokens-BEvOiQ65.js";
10
10
  import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-DTKQE9kt.js";
@@ -611,6 +611,7 @@ async function runHeartbeatOnce(opts) {
611
611
  const abortController = new AbortController();
612
612
  registerHeartbeatRun(sessionKey, abortController);
613
613
  let transcriptState = {};
614
+ let agentRunId;
614
615
  try {
615
616
  transcriptState = await captureTranscriptState({
616
617
  storePath,
@@ -621,6 +622,8 @@ async function runHeartbeatOnce(opts) {
621
622
  const suppressToolErrorWarnings = heartbeat?.suppressToolErrorWarnings === true;
622
623
  const onAgentRunStart = (runId) => {
623
624
  setHeartbeatRunId(sessionKey, runId);
625
+ registerAgentRunContext(runId, { isHeartbeat: true });
626
+ agentRunId = runId;
624
627
  };
625
628
  const replyResult = await runReplyTurn(ctx, heartbeatModelOverride ? {
626
629
  isHeartbeat: true,
@@ -832,6 +835,7 @@ async function runHeartbeatOnce(opts) {
832
835
  };
833
836
  } finally {
834
837
  clearHeartbeatRun(sessionKey);
838
+ if (agentRunId) clearAgentRunContext(agentRunId);
835
839
  }
836
840
  }
837
841
  function startHeartbeatRunner(opts) {
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { R as shortenHomeInString, k as isRecord } from "./registry-DYq1AYOv.js";
3
3
  import { B as requireApiKey, F as resolveImplicitProviders, G as normalizeSecretInput, M as normalizeProviders, N as resolveImplicitBedrockProvider, P as resolveImplicitCopilotProvider, R as getApiKeyForModel, p as resolveSymiAgentDir } from "./auth-profiles-k8e6j7Im.js";
4
- import { M as sanitizeUserFacingText } from "./pi-embedded-helpers-Bp4JFTbe.js";
4
+ import { M as sanitizeUserFacingText } from "./pi-embedded-helpers-B3csacnv.js";
5
5
  import { n as loadConfig } from "./config-DHXmZSyF.js";
6
6
  import { n as redactToolDetail } from "./redact-BDMXB06K.js";
7
7
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-CuZX_Q4t.js";
package/dist/index.js CHANGED
@@ -114,7 +114,7 @@ import { t as ensureSymiCliOnPath } from "./path-env-D3HgzjnU.js";
114
114
  import { t as assertSupportedRuntime } from "./runtime-guard-dBbuLE2m.js";
115
115
  import "./ports-6ULVruzH.js";
116
116
  import { a as hasFlag, i as getVerboseFlag, n as getCommandPath, o as hasHelpOrVersion, s as hasRootVersionAlias } from "./argv-BnhBnqf2.js";
117
- import { i as getCoreCliCommandsWithSubcommands, n as setProgramContext, o as registerProgramCommands, s as getSubCliCommandsWithSubcommands } from "./program-context-2FWVu0HQ.js";
117
+ import { i as getCoreCliCommandsWithSubcommands, n as setProgramContext, o as registerProgramCommands, s as getSubCliCommandsWithSubcommands } from "./program-context-Kqz-xUms.js";
118
118
  import "./catalog-pt1jhhyb.js";
119
119
  import "./plugin-registry-yCMeMFu0.js";
120
120
  import { n as resolveCliChannelOptions } from "./channel-options-CR_Wk8eP.js";
@@ -4,15 +4,15 @@ import { o as resolveAgentWorkspaceDir, s as resolveDefaultAgentId } from "./age
4
4
  import "./subsystem-BjyjJF-d.js";
5
5
  import "./workspace-CarmeCYN.js";
6
6
  import "./tokens-DLGDtW5r.js";
7
- import { t as runAgentTurn } from "./unified-runner-CRQ2ftV8.js";
7
+ import { t as runAgentTurn } from "./unified-runner-D_5_J0nE.js";
8
8
  import "./auth-profiles-k8e6j7Im.js";
9
9
  import "./env-BDXYbTKj.js";
10
10
  import "./github-copilot-token-cCYzSU9h.js";
11
11
  import "./boolean-CE7i9tBR.js";
12
- import "./pi-embedded-helpers-Bp4JFTbe.js";
12
+ import "./pi-embedded-helpers-B3csacnv.js";
13
13
  import "./config-DHXmZSyF.js";
14
14
  import "./manifest-registry-CBCGTsIb.js";
15
- import "./chrome-CqPheSG3.js";
15
+ import "./chrome-cFjhP6kc.js";
16
16
  import "./frontmatter-CTR5f_Ez.js";
17
17
  import "./skills-DjtoXuuJ.js";
18
18
  import "./redact-BDMXB06K.js";
@@ -31,15 +31,15 @@ import "./send-B6uG_VMn.js";
31
31
  import "./send-DR-zuFs1.js";
32
32
  import "./paths-BrogUBLf.js";
33
33
  import "./tool-images-CiD-DaWf.js";
34
- import "./deliver-BVbveob8.js";
34
+ import "./deliver-CgPAN0QZ.js";
35
35
  import "./diagnostic-BjfiehUF.js";
36
36
  import "./diagnostic-session-state-C9jKr8qI.js";
37
- import "./image-CUTH9m-Y.js";
37
+ import "./image-DZQ_GyFY.js";
38
38
  import "./pi-auth-json-C-V1QD3n.js";
39
39
  import "./send-DzMyrwxn.js";
40
40
  import "./pi-model-discovery-CuZX_Q4t.js";
41
41
  import "./reply-prefix-C1Tw2ERK.js";
42
- import "./manager-S8XqDD2h.js";
42
+ import "./manager-B4ilZbUQ.js";
43
43
  import "./gemini-auth-wyzssEnn.js";
44
44
  import "./retry-B-y5suGA.js";
45
45
  import "./sqlite-VBmM_OHS.js";
@@ -50,7 +50,7 @@ import "./local-roots-jzqRdkXA.js";
50
50
  import "./ir-CC6LUYsV.js";
51
51
  import "./render-D1xvLuGo.js";
52
52
  import "./commands-registry-CHvMCyWU.js";
53
- import "./runner-WxoM5P3c.js";
53
+ import "./runner-UgKupJ1D.js";
54
54
  import "./skill-commands-Bz_D9EmH.js";
55
55
  import "./fetch-ClslA6GS.js";
56
56
  import "./channel-activity-D8QD7GoV.js";
@@ -3972,7 +3972,7 @@ var MemoryIndexManager = class MemoryIndexManager extends MemoryManagerEmbedding
3972
3972
  * to bypass the min-interval guard (CLI use).
3973
3973
  */
3974
3974
  async runL3CycleIfDue(params) {
3975
- const [{ runL3Cycle, runL3CycleIfDue }, { createSynthesizer }] = await Promise.all([import("./consolidate-tpfmfqvr.js"), import("./synthesis-DlGUc1xk.js")]);
3975
+ const [{ runL3Cycle, runL3CycleIfDue }, { createSynthesizer }] = await Promise.all([import("./consolidate-tpfmfqvr.js"), import("./synthesis-BcXONbp0.js")]);
3976
3976
  const synthesize = createSynthesizer({
3977
3977
  cfg: this.cfg,
3978
3978
  agentId: this.agentId,
@@ -9,8 +9,8 @@ import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, r as isGate
9
9
  import { t as assertSupportedRuntime } from "./runtime-guard-BofkqBu7.js";
10
10
  import { r as isSystemdUserServiceAvailable } from "./systemd-CJ5L2ee4.js";
11
11
  import { t as resolveGatewayService } from "./service-RxN7lQKN.js";
12
- import { r as healthCommand } from "./health-BPmJAGNr.js";
13
- import { t as runOnboardingWizard } from "./onboarding-Hi1A43ET.js";
12
+ import { r as healthCommand } from "./health-Dwt9mRYZ.js";
13
+ import { t as runOnboardingWizard } from "./onboarding-B3ULVn2b.js";
14
14
  import { $ as setHuggingfaceApiKey, A as applyXaiConfig, B as applyVercelAiGatewayConfig, E as applyTogetherConfig, I as applyLitellmConfig, M as applyXiaomiConfig, O as applyVeniceConfig, P as applyZaiConfig, Q as setGeminiApiKey, R as applyCloudflareAiGatewayConfig, S as applyQianfanConfig, X as setAnthropicApiKey, Z as setCloudflareAiGatewayConfig, _ as applyMoonshotConfigCn, a as applyMinimaxApiConfig, at as setOpenrouterApiKey, b as applyOpenrouterConfig, ct as setTogetherApiKey, d as applyAuthProfileConfig, dt as setXaiApiKey, et as setKimiCodingApiKey, f as applyHuggingfaceConfig, ft as setXiaomiApiKey, g as applyMoonshotConfig, it as setOpencodeZenApiKey, l as applyMinimaxConfig, lt as setVeniceApiKey, m as applyKimiCodeConfig, n as validateAnthropicSetupToken, nt as setMinimaxApiKey, o as applyMinimaxApiConfigCn, ot as setQianfanApiKey, pt as setZaiApiKey, r as applyOpencodeZenConfig, rt as setMoonshotApiKey, st as setSyntheticApiKey, t as buildTokenProfileId, tt as setLitellmApiKey, ut as setVercelAiGatewayApiKey, w as applySyntheticConfig } from "./auth-token-DAslWrae.js";
15
15
  import { n as logConfigUpdated } from "./logging-PVQxLC6I.js";
16
16
  import { n as isDeprecatedAuthChoice, r as normalizeLegacyOnboardAuthChoice } from "./auth-choice-legacy-DxCamFcQ.js";