@tekmidian/pai 1.0.2 → 1.0.3

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 (52) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/dist/{auto-route-B4azPk4l.mjs → auto-route-B7Yu6Uam.mjs} +2 -2
  3. package/dist/auto-route-CjjQqU1o.mjs +11 -0
  4. package/dist/{chain-D-yvET_y.mjs → chain-7n9Gx56r.mjs} +2 -2
  5. package/dist/cli/index.mjs +29 -35
  6. package/dist/{cockpit-actions-C8GlTzts.mjs → cockpit-actions-BBHeyEZI.mjs} +8 -8
  7. package/dist/{cockpit-actions-BWunx3rY.mjs → cockpit-actions-DR9X514g.mjs} +1 -1
  8. package/dist/{cockpit-memory-vTlFWV7F.mjs → cockpit-memory--dnShXBA.mjs} +1 -1
  9. package/dist/{controls-BcKFHeG1.mjs → controls-CPoeudou.mjs} +4 -4
  10. package/dist/daemon/index.mjs +13 -13
  11. package/dist/{daemon-N7WhYi6I.mjs → daemon-DKdBNKfa.mjs} +13 -13
  12. package/dist/{daemon-ColVHwGZ.mjs → daemon-DPAo6WTa.mjs} +9 -9
  13. package/dist/daemon-mcp/index.mjs +10 -10
  14. package/dist/hooks/worker-pool-host.mjs +115 -115
  15. package/dist/index.mjs +4 -4
  16. package/dist/{indexer-backend-_a6UNhXJ.mjs → indexer-backend-Cll7le4P.mjs} +4 -4
  17. package/dist/{models-add-BtB3Se6f.mjs → models-add-C1QIc1DA.mjs} +10 -10
  18. package/dist/{pai-marker-DurzIbw8.mjs → pai-marker-BcZyJguM.mjs} +2 -2
  19. package/dist/{pane-audit-BQytYa60.mjs → pane-audit-DKQt71s4.mjs} +2 -2
  20. package/dist/{planner-BM27GBfC.mjs → planner-BmFACdLa.mjs} +8 -8
  21. package/dist/{pool-BRvoOkv6.mjs → pool-Dh-q3iJi.mjs} +43 -4
  22. package/dist/{pool-cli-B_YR8_Gl.mjs → pool-cli-BggU8GRp.mjs} +2 -2
  23. package/dist/{pool-cli-DkZTAlSW.mjs → pool-cli-DQ6OzRy2.mjs} +2 -2
  24. package/dist/{project-setup-CfpApz5o.mjs → project-setup-jvfONJTQ.mjs} +8 -8
  25. package/dist/{registrable-C7b6givx.mjs → registrable-BzH4TObg.mjs} +3 -3
  26. package/dist/{registrable-Uzgmfyhz.mjs → registrable-DpyTtajg.mjs} +2 -2
  27. package/dist/{render-CwIrgxLi.mjs → render-BYmQkuLd.mjs} +2 -2
  28. package/dist/{render-Cc2j5QG9.mjs → render-CoMvwMPs.mjs} +3 -3
  29. package/dist/{root-wC_6Fx0B.mjs → root-FtJsxYnm.mjs} +7 -7
  30. package/dist/{root-BWy0c2Lq.mjs → root-Xglu0OPD.mjs} +3 -3
  31. package/dist/{run-6Q9kCPem.mjs → run-CSC7mgPf.mjs} +7 -7
  32. package/dist/{scan-ZQWm-_se.mjs → scan-C_Y5W9py.mjs} +3 -3
  33. package/dist/{session-DVUExUnX.mjs → session-8iqQDkqb.mjs} +7 -7
  34. package/dist/{session-Bok2PqRS.mjs → session-BeqAbNPd.mjs} +6 -6
  35. package/dist/{viewer-MWBVJP3u.mjs → viewer-CqozWW39.mjs} +6 -6
  36. package/dist/{viewer-DcpJwGKE.mjs → viewer-mDXUNHNy.mjs} +5 -5
  37. package/dist/{worker-config-BDYNxbYz.mjs → worker-config-CJhEMk19.mjs} +10 -10
  38. package/dist/{worker-config-gmAq_-rI.mjs → worker-config-DESkIjMF.mjs} +9 -9
  39. package/dist/{worktree-CrnOqTBW.mjs → worktree-CRs2gyg0.mjs} +2 -2
  40. package/docs/images/architecture.png +0 -0
  41. package/gemini-extension.json +1 -1
  42. package/package.json +1 -1
  43. package/pai-plugin.json +1 -1
  44. package/plugins/context-preservation/plugin.json +1 -1
  45. package/plugins/core/plugin.json +1 -1
  46. package/plugins/creative/plugin.json +1 -1
  47. package/plugins/observability/plugin.json +1 -1
  48. package/plugins/productivity/plugin.json +1 -1
  49. package/plugins/semantic-search/plugin.json +1 -1
  50. package/plugins/ui/plugin.json +1 -1
  51. package/plugins/zettelkasten/plugin.json +1 -1
  52. package/dist/auto-route-BjoMHKyI.mjs +0 -11
package/dist/index.mjs CHANGED
@@ -3,11 +3,11 @@ import { a as slugify, i as parseSessionFilename, n as decodeEncodedDir, r as mi
3
3
  import "./config-XpZWOYOG.mjs";
4
4
  import "./config-Bu1_vbY8.mjs";
5
5
  import "./paths-CHifubDh.mjs";
6
- import "./worktree-CrnOqTBW.mjs";
6
+ import "./worktree-CRs2gyg0.mjs";
7
7
  import "./status-ggJ7lgVg.mjs";
8
- import "./pool-BRvoOkv6.mjs";
9
- import "./registrable-Uzgmfyhz.mjs";
10
- import { n as ensurePaiMarker, r as readPaiMarker, t as discoverPaiMarkers } from "./pai-marker-DurzIbw8.mjs";
8
+ import "./pool-Dh-q3iJi.mjs";
9
+ import "./registrable-DpyTtajg.mjs";
10
+ import { n as ensurePaiMarker, r as readPaiMarker, t as discoverPaiMarkers } from "./pai-marker-BcZyJguM.mjs";
11
11
  import { d as estimateTokens, l as buildOutline, p as parseHeadings, r as detectTier, u as chunkMarkdown } from "./helpers-CRuBUas3.mjs";
12
12
  import { i as populateSlugs, n as buildFtsQuery } from "./search-RSyeQqj1.mjs";
13
13
  import { n as rerankResults, t as configureRerankerModel } from "./reranker-CqCbpGnX.mjs";
@@ -3,15 +3,15 @@ import { t as writeFileAtomic } from "./atomic-file-BorMa4T3.mjs";
3
3
  import { N as resolveModelCapability, d as defaultWorkersConfig, j as readWorkersSection, wt as appendLedger } from "./config-XpZWOYOG.mjs";
4
4
  import { O as writeJsonAtomic, c as loadConfig, f as readMainConfigRaw, n as CONFIG_FILE, p as writeMainConfigRaw } from "./config-Bu1_vbY8.mjs";
5
5
  import { n as ensureNoMcpConfig, u as workersLogDir } from "./paths-CHifubDh.mjs";
6
- import { w as worktreesDir } from "./worktree-CrnOqTBW.mjs";
6
+ import { w as worktreesDir } from "./worktree-CRs2gyg0.mjs";
7
7
  import { B as loadStatusConfig, W as writeContinueToForge } from "./status-ggJ7lgVg.mjs";
8
8
  import { i as itermUuid, l as sessionMapPath } from "./scope-D-h6F6DN.mjs";
9
9
  import { _ as resolveTarget, mt as loopbackRouterChoice, ut as buildRunEnv } from "./routing-BAAST9vT.mjs";
10
10
  import { i as getRegistryBackend, r as createStorageBackend } from "./factory-DjAAsqr_.mjs";
11
11
  import { c as ensureProxyRunning, l as proxyPort } from "./launch-Jh5NVeNe.mjs";
12
12
  import { n as fetchLiveSessions, r as sendToSession } from "./aibroker-client-CQPGqLxL.mjs";
13
- import { E as probeRouter, z as recordSystemJobStart } from "./run-6Q9kCPem.mjs";
14
- import { bt as psTableOrNull } from "./controls-BcKFHeG1.mjs";
13
+ import { E as probeRouter, z as recordSystemJobStart } from "./run-CSC7mgPf.mjs";
14
+ import { bt as psTableOrNull } from "./controls-CPoeudou.mjs";
15
15
  import { createReadStream, existsSync, mkdirSync, readFileSync, readdirSync, realpathSync, renameSync, statSync, unlinkSync, writeFileSync } from "node:fs";
16
16
  import { randomUUID } from "node:crypto";
17
17
  import { basename, delimiter, dirname, join } from "node:path";
@@ -4342,4 +4342,4 @@ function reexecBackground() {
4342
4342
 
4343
4343
  //#endregion
4344
4344
  export { setStartTime as $, indexSchedulerTimer as A, readQuiet as At, setDaemonConfig as B, appendCheckpointToNote as Bt, migrateSummaryCooldowns as C, runSessionKeepaliveTick as Ct, embedInProgress as D, deferIfQuiet as Dt, daemonConfig as E, totalUsageTokens as Et, lastVaultIndexTime as F, removeDaemonPidfile as Ft, setLastEmbedPass as G, restartRouter as Gt, setEmbedSchedulerTimer as H, findLatestNote as Ht, notificationConfig as I, resolveDaemonPid as It, setLastIndexTime as J, setLastEmbedTime as K, passFailures as L, writeDaemonPidfile as Lt, lastEmbedTime as M, startQuietWatcher as Mt, lastIndexPass as N, writeQuiet as Nt, embedSchedulerTimer as O, describeQuiet as Ot, lastIndexTime as P, LAUNCHD_LABEL as Pt, setShutdownRequested as Q, registryBackend as R, readContextHandoverCache as Rt, handleSessionSummary as S, loadSessionKeepaliveState as St, cacheKeepaliveTimer as T, parseSessionUsage as Tt, setIndexInProgress as U, findNotesDir$1 as Ut, setEmbedInProgress as V, applyContinue as Vt, setIndexSchedulerTimer as W, readBodyFile as Wt, setNotificationConfig as X, setLastVaultIndexTime as Y, setRegistryBackend as Z, markFailed as _, buildWakeupContext as _t, runPassChild as a, vaultIndexInProgress as at, findLatestJsonl as b, reapJob as bt, NonRetryableError as c, addWorkToSessionNote as ct, enqueue as d, getCurrentNotePath as dt, setStorageBackend as et, enqueueCoalesced as f, archiveSessionFilesToSessionsDir as ft, markCompleted as g, vaultIndexEnabled as gt, loadQueue as h, obsidianEnabled as ht, reexecBackground as i, storageBackend as it, lastEmbedPass as j, registerQuietRunner as jt, indexInProgress as k, nextOccurrence as kt, cleanup as l, appendCheckpoint as lt, hasPendingOrProcessingOfType as m, OBSIDIAN_DISABLED_MESSAGE as mt, buildPassCommand as n, shutdownRequested as nt, backfillKgFromNotes as o, sessionIdFromTranscript as ot, getStats as p, findNotesDir as pt, setLastIndexPass as q, cliEntry as r, startTime as rt, migrateKgBackfillState as s, updateTodoContinue as st, PassSpawnError as t, setVaultIndexInProgress as tt, dequeue as u, finalizeSessionNote as ut, migrateWorkQueue as v, migrateIdentityFile as vt, spawnSummarizer as w, sessionKeepaliveLedgerSummary as wt, getGitContext as x, sweepOrphans as xt, contentToText as y, jobPaths as yt, setCacheKeepaliveTimer as z, writeContextHandoverCache as zt };
4345
- //# sourceMappingURL=indexer-backend-_a6UNhXJ.mjs.map
4345
+ //# sourceMappingURL=indexer-backend-Cll7le4P.mjs.map
@@ -2,9 +2,9 @@ import "./utils-J2b9y8PC.mjs";
2
2
  import { tt as workersYamlPath } from "./config-XpZWOYOG.mjs";
3
3
  import "./config-Bu1_vbY8.mjs";
4
4
  import "./paths-CHifubDh.mjs";
5
- import "./worktree-CrnOqTBW.mjs";
5
+ import "./worktree-CRs2gyg0.mjs";
6
6
  import "./status-ggJ7lgVg.mjs";
7
- import "./pool-BRvoOkv6.mjs";
7
+ import "./pool-Dh-q3iJi.mjs";
8
8
  import "./helpers-CRuBUas3.mjs";
9
9
  import "./scope-D-h6F6DN.mjs";
10
10
  import "./routing-BAAST9vT.mjs";
@@ -22,18 +22,18 @@ import "./embeddings-BVq3esBF.mjs";
22
22
  import "./router-CQSc3lk3.mjs";
23
23
  import "./launch-Jh5NVeNe.mjs";
24
24
  import "./health-Dnym-qcT.mjs";
25
- import "./run-6Q9kCPem.mjs";
26
- import "./controls-BcKFHeG1.mjs";
25
+ import "./run-CSC7mgPf.mjs";
26
+ import "./controls-CPoeudou.mjs";
27
27
  import "./endreason-C577xIQz.mjs";
28
- import "./render-CwIrgxLi.mjs";
28
+ import "./render-BYmQkuLd.mjs";
29
29
  import "./operator-CyuB3aVw.mjs";
30
30
  import "./kill-tree-EWYaEk5v.mjs";
31
- import "./pool-cli-B_YR8_Gl.mjs";
32
- import "./pane-audit-BQytYa60.mjs";
31
+ import "./pool-cli-BggU8GRp.mjs";
32
+ import "./pane-audit-DKQt71s4.mjs";
33
33
  import "./providers-CblTFrhz.mjs";
34
- import { H as canBind, U as sizeOnDiskGb, V as allocatePort, at as defaultRegistryCtx, f as killInstance, g as portListeners, ot as hashText, p as launchDetached, st as saveRegistry, u as healthOk } from "./worker-config-BDYNxbYz.mjs";
34
+ import { H as canBind, U as sizeOnDiskGb, V as allocatePort, at as defaultRegistryCtx, f as killInstance, g as portListeners, ot as hashText, p as launchDetached, st as saveRegistry, u as healthOk } from "./worker-config-CJhEMk19.mjs";
35
35
  import "./main-config-ops-BEMpuhDz.mjs";
36
- import "./cockpit-actions-C8GlTzts.mjs";
36
+ import "./cockpit-actions-BBHeyEZI.mjs";
37
37
  import "./ipc-client-CaiGJnSM.mjs";
38
38
  import "./embed-pass-DIWjA68P.mjs";
39
39
  import "./fallback-DFlItw1Z.mjs";
@@ -332,4 +332,4 @@ async function smokeTest(cfg, name, d = {}) {
332
332
 
333
333
  //#endregion
334
334
  export { addModel };
335
- //# sourceMappingURL=models-add-BtB3Se6f.mjs.map
335
+ //# sourceMappingURL=models-add-C1QIc1DA.mjs.map
@@ -1,5 +1,5 @@
1
1
  import { t as writeFileAtomic } from "./atomic-file-BorMa4T3.mjs";
2
- import { s as worktreeReason } from "./registrable-Uzgmfyhz.mjs";
2
+ import { s as worktreeReason } from "./registrable-DpyTtajg.mjs";
3
3
  import { existsSync, mkdirSync, readFileSync, readdirSync, statSync } from "node:fs";
4
4
  import { join, resolve } from "node:path";
5
5
  import { homedir } from "node:os";
@@ -228,4 +228,4 @@ function discoverPaiMarkers(searchDirs) {
228
228
 
229
229
  //#endregion
230
230
  export { ensurePaiMarker as n, readPaiMarker as r, discoverPaiMarkers as t };
231
- //# sourceMappingURL=pai-marker-DurzIbw8.mjs.map
231
+ //# sourceMappingURL=pai-marker-BcZyJguM.mjs.map
@@ -3,7 +3,7 @@ import { wt as appendLedger } from "./config-XpZWOYOG.mjs";
3
3
  import { i as ledgerPath } from "./paths-CHifubDh.mjs";
4
4
  import { C as nowStamp, M as spawnTimeOf, T as ownsPidCached, b as loadStatusesCached, g as isLive, h as isChatPane, v as loadStatus, w as ownsPid } from "./status-ggJ7lgVg.mjs";
5
5
  import { i as itermUuid } from "./scope-D-h6F6DN.mjs";
6
- import { At as recordPath, Ct as PANE_EXEC_PID_ENV, Dt as pidAlive, L as fmtElapsed, Mt as panePolicy, Ot as readExit, St as PANE_EXEC_ENV, Tt as listRecords, V as loadPlanStatuses, _t as paneTitle, dt as osascript, kt as readRecord, mt as realPaneOps, nt as closePaneForWorker, st as loadRegistry, tt as closeOwnPane, vt as writePaneTitle, wt as exitFilePath } from "./controls-BcKFHeG1.mjs";
6
+ import { At as recordPath, Ct as PANE_EXEC_PID_ENV, Dt as pidAlive, L as fmtElapsed, Mt as panePolicy, Ot as readExit, St as PANE_EXEC_ENV, Tt as listRecords, V as loadPlanStatuses, _t as paneTitle, dt as osascript, kt as readRecord, mt as realPaneOps, nt as closePaneForWorker, st as loadRegistry, tt as closeOwnPane, vt as writePaneTitle, wt as exitFilePath } from "./controls-CPoeudou.mjs";
7
7
  import { i as killTree } from "./kill-tree-EWYaEk5v.mjs";
8
8
  import { appendFileSync, existsSync, mkdirSync, readFileSync, readdirSync, renameSync, unlinkSync, writeFileSync } from "node:fs";
9
9
  import { join } from "node:path";
@@ -743,4 +743,4 @@ function renderPaneAudit(verdicts) {
743
743
 
744
744
  //#endregion
745
745
  export { readAudit as a, followPaneRun as c, loadPaneRunStatuses as d, paneRunRows as f, listItermTabs as i, isPaneRunId as l, runInPane as m, auditTick as n, renderPaneAudit as o, renderPaneRunLines as p, closeFinishedPanes as r, runningProcs as s, auditPanes as t, loadPaneRunStatus as u };
746
- //# sourceMappingURL=pane-audit-BQytYa60.mjs.map
746
+ //# sourceMappingURL=pane-audit-DKQt71s4.mjs.map
@@ -1,9 +1,9 @@
1
1
  import { j as readWorkersSection, wt as appendLedger } from "./config-XpZWOYOG.mjs";
2
2
  import "./config-Bu1_vbY8.mjs";
3
3
  import { i as ledgerPath, u as workersLogDir } from "./paths-CHifubDh.mjs";
4
- import { g as mergeWorker, n as MergeConflictError } from "./worktree-CrnOqTBW.mjs";
4
+ import { g as mergeWorker, n as MergeConflictError } from "./worktree-CRs2gyg0.mjs";
5
5
  import { S as newWorkerId, nt as shortText, tt as parseRunnerArgs, v as loadStatus } from "./status-ggJ7lgVg.mjs";
6
- import "./pool-BRvoOkv6.mjs";
6
+ import "./pool-Dh-q3iJi.mjs";
7
7
  import "./helpers-CRuBUas3.mjs";
8
8
  import "./scope-D-h6F6DN.mjs";
9
9
  import "./routing-BAAST9vT.mjs";
@@ -20,14 +20,14 @@ import "./embedding-gate-6rZrWRXa.mjs";
20
20
  import "./embeddings-BVq3esBF.mjs";
21
21
  import "./router-CQSc3lk3.mjs";
22
22
  import "./launch-Jh5NVeNe.mjs";
23
- import { V as printResult, t as runWorker } from "./run-6Q9kCPem.mjs";
24
- import "./controls-BcKFHeG1.mjs";
23
+ import { V as printResult, t as runWorker } from "./run-CSC7mgPf.mjs";
24
+ import "./controls-CPoeudou.mjs";
25
25
  import "./endreason-C577xIQz.mjs";
26
- import "./render-CwIrgxLi.mjs";
26
+ import "./render-BYmQkuLd.mjs";
27
27
  import "./operator-CyuB3aVw.mjs";
28
28
  import "./kill-tree-EWYaEk5v.mjs";
29
- import "./pool-cli-B_YR8_Gl.mjs";
30
- import { n as swapPromptArg } from "./chain-D-yvET_y.mjs";
29
+ import "./pool-cli-BggU8GRp.mjs";
30
+ import { n as swapPromptArg } from "./chain-7n9Gx56r.mjs";
31
31
  import { existsSync, mkdirSync, readFileSync } from "node:fs";
32
32
  import { join } from "node:path";
33
33
 
@@ -307,4 +307,4 @@ function printPlannerSummary(logDir, plannerId, results, merged, conflicted, fmt
307
307
 
308
308
  //#endregion
309
309
  export { runPlanner };
310
- //# sourceMappingURL=planner-BM27GBfC.mjs.map
310
+ //# sourceMappingURL=planner-BmFACdLa.mjs.map
@@ -1,7 +1,7 @@
1
1
  import { Et as parseLedger, I as LOOPBACK_HOST, c as WorkersConfigError, d as defaultWorkersConfig, i as DEFAULT_POOL_PORT, t as ANTHROPIC_NATIVE } from "./config-XpZWOYOG.mjs";
2
2
  import { t as assertTestWriteAllowed } from "./test-isolation-lqSmYxr0.mjs";
3
- import { appendFileSync, copyFileSync, existsSync, mkdirSync, readFileSync, renameSync, statSync, unlinkSync, writeFileSync } from "node:fs";
4
- import { dirname, join } from "node:path";
3
+ import { appendFileSync, copyFileSync, existsSync, mkdirSync, readFileSync, realpathSync, renameSync, statSync, unlinkSync, writeFileSync } from "node:fs";
4
+ import { dirname, join, resolve } from "node:path";
5
5
  import { homedir } from "node:os";
6
6
  import { request } from "node:http";
7
7
 
@@ -105,6 +105,45 @@ function trustProjectPath(absPath) {
105
105
  });
106
106
  return true;
107
107
  }
108
+ /** Canonical form of a script path: realpath when it exists, else the resolved text. */
109
+ function canonicalScript(p) {
110
+ try {
111
+ return realpathSync(p);
112
+ } catch {
113
+ return resolve(p);
114
+ }
115
+ }
116
+ /** True when an mcpServers entry runs `script`, comparing by realpath (symlinked repo paths match). */
117
+ function mcpEntryRunsScript(entry, script) {
118
+ const args = entry?.args;
119
+ if (!Array.isArray(args)) return false;
120
+ const want = canonicalScript(script);
121
+ return args.some((a) => typeof a === "string" && canonicalScript(a) === want);
122
+ }
123
+ /**
124
+ * Point `servers[name]` at `script`. An existing entry running the same file
125
+ * (by realpath) is updated in place; a genuinely different one is kept as
126
+ * `<name>-legacy`.
127
+ */
128
+ function registerMcpScript(servers, name, script) {
129
+ const existing = servers[name];
130
+ const entry = {
131
+ command: "node",
132
+ args: [script]
133
+ };
134
+ if (!existing) {
135
+ servers[name] = entry;
136
+ return "added";
137
+ }
138
+ if (mcpEntryRunsScript(existing, script)) {
139
+ const same = JSON.stringify(existing) === JSON.stringify(entry);
140
+ servers[name] = entry;
141
+ return same ? "unchanged" : "updated";
142
+ }
143
+ servers[`${name}-legacy`] = existing;
144
+ servers[name] = entry;
145
+ return "legacy-kept";
146
+ }
108
147
 
109
148
  //#endregion
110
149
  //#region src/workers/mcp.ts
@@ -589,5 +628,5 @@ function spareStats(ledgerText) {
589
628
  }
590
629
 
591
630
  //#endregion
592
- export { trustProjectPath as A, describeMcp as C, readMcpServers as D, mcpServersFromToolGrants as E, writeMcpConfig as O, inputSideTokens as S, grantsChrome as T, readPoolMetrics as _, formatCarryByProvider as a, spareStats as b, poolHostAlive as c, poolIneligibleReason as d, poolMetricsPath as f, postTaskToPool as g, poolSettings as h, bundleBuildStamp as i, writeClaudeJson as j, readClaudeJson as k, poolHostProbe as l, poolPort as m, SLOT_TOOLS as n, poolCarry as o, poolPidPath as p, UNIT_MARKER as r, poolDir as s, SHARED_MARKER as t, poolHostStale as u, readPoolState as v, expandMcpNames as w, warmOrCold as x, reloadInProgress as y };
593
- //# sourceMappingURL=pool-BRvoOkv6.mjs.map
631
+ export { readClaudeJson as A, describeMcp as C, readMcpServers as D, mcpServersFromToolGrants as E, trustProjectPath as M, writeClaudeJson as N, writeMcpConfig as O, inputSideTokens as S, grantsChrome as T, readPoolMetrics as _, formatCarryByProvider as a, spareStats as b, poolHostAlive as c, poolIneligibleReason as d, poolMetricsPath as f, postTaskToPool as g, poolSettings as h, bundleBuildStamp as i, registerMcpScript as j, mcpEntryRunsScript as k, poolHostProbe as l, poolPort as m, SLOT_TOOLS as n, poolCarry as o, poolPidPath as p, UNIT_MARKER as r, poolDir as s, SHARED_MARKER as t, poolHostStale as u, readPoolState as v, expandMcpNames as w, warmOrCold as x, reloadInProgress as y };
632
+ //# sourceMappingURL=pool-Dh-q3iJi.mjs.map
@@ -1,7 +1,7 @@
1
1
  import { Et as parseLedger, F as writeWorkersSection, I as LOOPBACK_HOST, j as readWorkersSection, wt as appendLedger } from "./config-XpZWOYOG.mjs";
2
2
  import { i as ledgerPath } from "./paths-CHifubDh.mjs";
3
3
  import { m as fmtTokens } from "./status-ggJ7lgVg.mjs";
4
- import { _ as readPoolMetrics, a as formatCarryByProvider, b as spareStats, c as poolHostAlive, f as poolMetricsPath, h as poolSettings, i as bundleBuildStamp, l as poolHostProbe, m as poolPort, o as poolCarry, p as poolPidPath, s as poolDir, u as poolHostStale, v as readPoolState, y as reloadInProgress } from "./pool-BRvoOkv6.mjs";
4
+ import { _ as readPoolMetrics, a as formatCarryByProvider, b as spareStats, c as poolHostAlive, f as poolMetricsPath, h as poolSettings, i as bundleBuildStamp, l as poolHostProbe, m as poolPort, o as poolCarry, p as poolPidPath, s as poolDir, u as poolHostStale, v as readPoolState, y as reloadInProgress } from "./pool-Dh-q3iJi.mjs";
5
5
  import { closeSync, existsSync, mkdirSync, openSync, readFileSync, renameSync, statSync, unlinkSync, writeFileSync } from "node:fs";
6
6
  import { dirname, join } from "node:path";
7
7
  import { spawn } from "node:child_process";
@@ -313,4 +313,4 @@ function spareStatusLines(state, logDir) {
313
313
 
314
314
  //#endregion
315
315
  export { poolOff as a, poolStatusText as c, spareStatusLines as d, standalonePoolHostPath as f, hostBuildText as i, reloadPoolHost as l, diskBundleMtime as n, poolOn as o, ensurePoolHost as r, poolReloadLive as s, POOL_HEAL_GAP_MS as t, skipReasonLine as u };
316
- //# sourceMappingURL=pool-cli-B_YR8_Gl.mjs.map
316
+ //# sourceMappingURL=pool-cli-BggU8GRp.mjs.map
@@ -2,7 +2,7 @@ import "./config-XpZWOYOG.mjs";
2
2
  import "./config-Bu1_vbY8.mjs";
3
3
  import "./paths-CHifubDh.mjs";
4
4
  import "./status-ggJ7lgVg.mjs";
5
- import "./pool-BRvoOkv6.mjs";
6
- import { a as poolOff, c as poolStatusText, d as spareStatusLines, f as standalonePoolHostPath, i as hostBuildText, l as reloadPoolHost, n as diskBundleMtime, o as poolOn, r as ensurePoolHost, s as poolReloadLive, t as POOL_HEAL_GAP_MS, u as skipReasonLine } from "./pool-cli-B_YR8_Gl.mjs";
5
+ import "./pool-Dh-q3iJi.mjs";
6
+ import { a as poolOff, c as poolStatusText, d as spareStatusLines, f as standalonePoolHostPath, i as hostBuildText, l as reloadPoolHost, n as diskBundleMtime, o as poolOn, r as ensurePoolHost, s as poolReloadLive, t as POOL_HEAL_GAP_MS, u as skipReasonLine } from "./pool-cli-BggU8GRp.mjs";
7
7
 
8
8
  export { poolOff, poolOn, poolStatusText };
@@ -2,7 +2,7 @@ import { c as ok, i as err, n as dim } from "./utils-J2b9y8PC.mjs";
2
2
  import { g as paiHomePath, l as claudeHomeDir } from "./runtime-paths-WsO9sJFc.mjs";
3
3
  import { X as readMergeVerify, c as WorkersConfigError, f as escalationCloud, h as isModelCapability, j as readWorkersSection, m as isLocalProvider, p as getProviderOrNative, t as ANTHROPIC_NATIVE } from "./config-XpZWOYOG.mjs";
4
4
  import { i as ledgerPath, r as eventsPath, u as workersLogDir } from "./paths-CHifubDh.mjs";
5
- import { D as formatPending, O as pendingGate, b as verifyWorker, c as formatKnowledge, d as gcWorktrees, g as mergeWorker, k as pendingResults, m as leftoverWorktrees, s as discardWorker, u as gcPoolWorktrees } from "./worktree-CrnOqTBW.mjs";
5
+ import { D as formatPending, O as pendingGate, b as verifyWorker, c as formatKnowledge, d as gcWorktrees, g as mergeWorker, k as pendingResults, m as leftoverWorktrees, s as discardWorker, u as gcPoolWorktrees } from "./worktree-CRs2gyg0.mjs";
6
6
  import { B as loadStatusConfig, C as nowStamp, F as ForgeError, H as setClaim, I as PROJECT_CONFIG_REL, K as PREAMBLE_MAX_BYTES, R as listClaims, V as parseStatusConfig, W as writeContinueToForge, Z as projectRoot, a as UNLABELED, et as longInlinePromptHint, g as isLive, j as setWorkerNote, k as saveStatus, o as ageOf, q as PREAMBLE_REL, s as alive, tt as parseRunnerArgs, v as loadStatus, w as ownsPid, y as loadStatuses, z as listStale } from "./status-ggJ7lgVg.mjs";
7
7
  import { p as currentWorkerId } from "./scope-D-h6F6DN.mjs";
8
8
  import { C as detectSessionProvider, St as gcSettingsFiles, an as detectSessionName, bn as resolveLocalProvider, fn as LOCAL_MECHANISM_LINE, on as BATCH_ENV, pt as isLoopbackProvider, vn as probeLoopback, xn as resolveRunnerProvider } from "./routing-BAAST9vT.mjs";
@@ -12,14 +12,14 @@ import { a as liveQueue, f as sessionOf, l as reorderQueue, o as providerCap, s
12
12
  import { n as tierProviderNames, t as isLocalCandidate } from "./local-candidate-DLdwQt0s.mjs";
13
13
  import { n as OPT, t as CliError } from "./define-CjJsmq-6.mjs";
14
14
  import { c as resolveFromModule } from "./postgres-C6ti4haA.mjs";
15
- import { C as workerUsage, S as usageJson, U as endProcesses, W as findWorktreeOrphans, _ as stopLaunchedWorkers, a as resolveWorkers, b as renderUsage, d as capture, h as realCommitsAhead, i as liveResolveCtx, m as mergeBranch, n as LocalProviderRefusedError, p as launchWorker, r as PoolRefusedError, t as runWorker, v as parseWhen } from "./run-6Q9kCPem.mjs";
16
- import { $ as checkPaneForWorker, A as tail, Gt as handoffFromInside, H as planLogTail, J as queueLockPath, Jt as LOCAL_FAILURE_LIMIT, N as filesOverlap, R as followPlanLog, W as planRunEnded, Xt as localFailures, Yt as classifyRoute, Z as withRunLock, Zt as routeLine, c as setMuted, ct as openFollowPane, et as closeEndedPanes, ft as paneBackend, gt as workerEnded, ht as resolveHostSession, lt as openPaneForWorker, pt as paneMayClose, st as loadRegistry, yt as psTable } from "./controls-BcKFHeG1.mjs";
17
- import { R as parentFromEnv } from "./render-CwIrgxLi.mjs";
15
+ import { C as workerUsage, S as usageJson, U as endProcesses, W as findWorktreeOrphans, _ as stopLaunchedWorkers, a as resolveWorkers, b as renderUsage, d as capture, h as realCommitsAhead, i as liveResolveCtx, m as mergeBranch, n as LocalProviderRefusedError, p as launchWorker, r as PoolRefusedError, t as runWorker, v as parseWhen } from "./run-CSC7mgPf.mjs";
16
+ import { $ as checkPaneForWorker, A as tail, Gt as handoffFromInside, H as planLogTail, J as queueLockPath, Jt as LOCAL_FAILURE_LIMIT, N as filesOverlap, R as followPlanLog, W as planRunEnded, Xt as localFailures, Yt as classifyRoute, Z as withRunLock, Zt as routeLine, c as setMuted, ct as openFollowPane, et as closeEndedPanes, ft as paneBackend, gt as workerEnded, ht as resolveHostSession, lt as openPaneForWorker, pt as paneMayClose, st as loadRegistry, yt as psTable } from "./controls-CPoeudou.mjs";
17
+ import { R as parentFromEnv } from "./render-BYmQkuLd.mjs";
18
18
  import { r as sayToWorker } from "./operator-CyuB3aVw.mjs";
19
19
  import { i as killTree } from "./kill-tree-EWYaEk5v.mjs";
20
- import { t as runChain } from "./chain-D-yvET_y.mjs";
21
- import { c as followPaneRun, i as listItermTabs, l as isPaneRunId, o as renderPaneAudit, s as runningProcs, t as auditPanes, u as loadPaneRunStatus } from "./pane-audit-BQytYa60.mjs";
22
- import { a as followTailOutput, d as psOutput, f as replayOutput, m as statusLineOutput, o as followWorkers } from "./viewer-DcpJwGKE.mjs";
20
+ import { t as runChain } from "./chain-7n9Gx56r.mjs";
21
+ import { c as followPaneRun, i as listItermTabs, l as isPaneRunId, o as renderPaneAudit, s as runningProcs, t as auditPanes, u as loadPaneRunStatus } from "./pane-audit-DKQt71s4.mjs";
22
+ import { a as followTailOutput, d as psOutput, f as replayOutput, m as statusLineOutput, o as followWorkers } from "./viewer-mDXUNHNy.mjs";
23
23
  import { _ as unsetCapabilityPreference, a as describeCapabilities, c as modelPrefsText, d as setCapabilityPreference, h as setProviderModel, o as describeModels, u as resolveProviderName } from "./providers-CblTFrhz.mjs";
24
24
  import { appendFileSync, copyFileSync, existsSync, mkdirSync, mkdtempSync, readFileSync, readdirSync, renameSync, rmSync, rmdirSync, statSync, unlinkSync, writeFileSync } from "node:fs";
25
25
  import { createHash, randomBytes } from "node:crypto";
@@ -3249,4 +3249,4 @@ function realBuildTime() {
3249
3249
 
3250
3250
  //#endregion
3251
3251
  export { schedulerLines as C, resolveSpecPath as E, withTarget as S, readSpecPrompt as T, issueClaims as _, branchDiff as a, workerCommand as b, runQueue as c, loadSettings as d, move as f, issueClaim as g, renderReview as h, projectChecks as i, QueueStore as l, renderList as m, initProject as n, realQueueDeps as o, queueStatePath as p, isGitProject as r, acceptItems as s, formatCheck as t, again as u, issueStale as v, schedulerView as w, resolveTarget as x, providerCaps as y };
3252
- //# sourceMappingURL=project-setup-CfpApz5o.mjs.map
3252
+ //# sourceMappingURL=project-setup-jvfONJTQ.mjs.map
@@ -1,9 +1,9 @@
1
1
  import "./config-XpZWOYOG.mjs";
2
2
  import "./config-Bu1_vbY8.mjs";
3
3
  import "./paths-CHifubDh.mjs";
4
- import "./worktree-CrnOqTBW.mjs";
4
+ import "./worktree-CRs2gyg0.mjs";
5
5
  import "./status-ggJ7lgVg.mjs";
6
- import "./pool-BRvoOkv6.mjs";
7
- import { a as unregistrableReason, i as reportUnregistrable, n as mainRepoOf, o as workerWorktreesRoot, r as pruneWorktreeProjects, s as worktreeReason, t as isLinkedWorktree } from "./registrable-Uzgmfyhz.mjs";
6
+ import "./pool-Dh-q3iJi.mjs";
7
+ import { a as unregistrableReason, i as reportUnregistrable, n as mainRepoOf, o as workerWorktreesRoot, r as pruneWorktreeProjects, s as worktreeReason, t as isLinkedWorktree } from "./registrable-DpyTtajg.mjs";
8
8
 
9
9
  export { reportUnregistrable };
@@ -1,6 +1,6 @@
1
1
  import { j as readWorkersSection } from "./config-XpZWOYOG.mjs";
2
2
  import { u as workersLogDir } from "./paths-CHifubDh.mjs";
3
- import { w as worktreesDir } from "./worktree-CrnOqTBW.mjs";
3
+ import { w as worktreesDir } from "./worktree-CRs2gyg0.mjs";
4
4
  import { existsSync, readFileSync, statSync } from "node:fs";
5
5
  import { dirname, resolve, sep } from "node:path";
6
6
 
@@ -140,4 +140,4 @@ async function reportUnregistrable(backend, worktreesRoot = workerWorktreesRoot(
140
140
 
141
141
  //#endregion
142
142
  export { unregistrableReason as a, reportUnregistrable as i, mainRepoOf as n, workerWorktreesRoot as o, pruneWorktreeProjects as r, worktreeReason as s, isLinkedWorktree as t };
143
- //# sourceMappingURL=registrable-Uzgmfyhz.mjs.map
143
+ //# sourceMappingURL=registrable-DpyTtajg.mjs.map
@@ -1,5 +1,5 @@
1
1
  import { j as readWorkersSection, p as getProviderOrNative, t as ANTHROPIC_NATIVE, v as nativeAnthropicModels } from "./config-XpZWOYOG.mjs";
2
- import { _ as ownedTree } from "./worktree-CrnOqTBW.mjs";
2
+ import { _ as ownedTree } from "./worktree-CRs2gyg0.mjs";
3
3
  import { a as UNLABELED, c as contextFooter, f as elapsedOf, g as isLive, h as isChatPane, k as saveStatus, l as contextLabel, nt as shortText, o as ageOf, u as contextPercent, v as loadStatus, y as loadStatuses } from "./status-ggJ7lgVg.mjs";
4
4
  import { p as currentWorkerId, u as sessionTag } from "./scope-D-h6F6DN.mjs";
5
5
  import { A as waitOnCallLine, E as detachedLine, M as waitingLine, d as parseWorkerReport, j as waitOnResultLine, k as realWaitDeps, n as bashExitCode, p as renderReport, t as WAIT_EXIT_STILL_RUNNING } from "./wait-ByV0OyMZ.mjs";
@@ -900,4 +900,4 @@ function paneRunStatusRow(label, startedMs, now = /* @__PURE__ */ new Date()) {
900
900
 
901
901
  //#endregion
902
902
  export { resolveLimit as A, denialLines as C, deadlineLabel as D, armDeadline as E, checkOrphanedChildren as F, isWorkerId as I, launchParent as L, blockedMsOf as M, endBuildWait as N, deadlinePromptLine as O, assertChildAllowed as P, parentFromEnv as R, warmupText as S, recordDenial as T, renderTable as _, fullLines as a, tickerTool as b, headerLine as c, paneRunStatusRow as d, paneStatusRow as f, renderStatusLine as g, renderEvent as h, dayOf as i, beginBuildWait as j, extendLimit as k, intentOf as l, relPath as m, clockOf as n, goalOf as o, providerTag as p, contextMeter as r, gutterFor as s, blankBetween as t, makeColor as u, shortModel as v, parseDenialText as w, unifiedDiffLines as x, tickerText as y };
903
- //# sourceMappingURL=render-CwIrgxLi.mjs.map
903
+ //# sourceMappingURL=render-BYmQkuLd.mjs.map
@@ -1,13 +1,13 @@
1
1
  import "./config-XpZWOYOG.mjs";
2
2
  import "./config-Bu1_vbY8.mjs";
3
3
  import "./paths-CHifubDh.mjs";
4
- import "./worktree-CrnOqTBW.mjs";
4
+ import "./worktree-CRs2gyg0.mjs";
5
5
  import "./status-ggJ7lgVg.mjs";
6
- import "./pool-BRvoOkv6.mjs";
6
+ import "./pool-Dh-q3iJi.mjs";
7
7
  import "./scope-D-h6F6DN.mjs";
8
8
  import { D as fmtElapsed } from "./wait-ByV0OyMZ.mjs";
9
9
  import "./capacity-DEveQdFV.mjs";
10
10
  import "./endreason-C577xIQz.mjs";
11
- import { S as warmupText, _ as renderTable, a as fullLines, b as tickerTool, c as headerLine, d as paneRunStatusRow, f as paneStatusRow, g as renderStatusLine, h as renderEvent, i as dayOf, l as intentOf, m as relPath, n as clockOf, o as goalOf, p as providerTag, r as contextMeter, s as gutterFor, t as blankBetween, u as makeColor, v as shortModel, x as unifiedDiffLines, y as tickerText } from "./render-CwIrgxLi.mjs";
11
+ import { S as warmupText, _ as renderTable, a as fullLines, b as tickerTool, c as headerLine, d as paneRunStatusRow, f as paneStatusRow, g as renderStatusLine, h as renderEvent, i as dayOf, l as intentOf, m as relPath, n as clockOf, o as goalOf, p as providerTag, r as contextMeter, s as gutterFor, t as blankBetween, u as makeColor, v as shortModel, x as unifiedDiffLines, y as tickerText } from "./render-BYmQkuLd.mjs";
12
12
 
13
13
  export { makeColor };
@@ -3,11 +3,11 @@ import "./migrate-DrA_OwlZ.mjs";
3
3
  import "./config-XpZWOYOG.mjs";
4
4
  import "./config-Bu1_vbY8.mjs";
5
5
  import "./paths-CHifubDh.mjs";
6
- import "./worktree-CrnOqTBW.mjs";
6
+ import "./worktree-CRs2gyg0.mjs";
7
7
  import "./status-ggJ7lgVg.mjs";
8
- import "./pool-BRvoOkv6.mjs";
9
- import "./registrable-Uzgmfyhz.mjs";
10
- import "./pai-marker-DurzIbw8.mjs";
8
+ import "./pool-Dh-q3iJi.mjs";
9
+ import "./registrable-DpyTtajg.mjs";
10
+ import "./pai-marker-BcZyJguM.mjs";
11
11
  import "./helpers-CRuBUas3.mjs";
12
12
  import "./scope-D-h6F6DN.mjs";
13
13
  import "./routing-BAAST9vT.mjs";
@@ -25,12 +25,12 @@ import "./embeddings-BVq3esBF.mjs";
25
25
  import "./router-CQSc3lk3.mjs";
26
26
  import "./detect-9CZNO0yf.mjs";
27
27
  import "./helpers-BD6V-p9w.mjs";
28
- import "./scan-ZQWm-_se.mjs";
29
- import "./session-DVUExUnX.mjs";
28
+ import "./scan-C_Y5W9py.mjs";
29
+ import "./session-8iqQDkqb.mjs";
30
30
  import "./launch-Jh5NVeNe.mjs";
31
31
  import "./health-Dnym-qcT.mjs";
32
32
  import "./launch-CXVlZjHt.mjs";
33
- import { _ as setupsTable, a as lastSetup, b as truncate, c as localState, d as pickerOpts, f as plainTable, g as runRoot, h as runNewWith, i as lastOnLabel, l as matchRows, m as rootCommand, n as ago, o as launchKey, p as resolveSetup, r as finishCd, s as launchScreen, t as CANCELLED, u as pickerLayout, v as startSession, y as systemTerm } from "./root-BWy0c2Lq.mjs";
33
+ import { _ as setupsTable, a as lastSetup, b as truncate, c as localState, d as pickerOpts, f as plainTable, g as runRoot, h as runNewWith, i as lastOnLabel, l as matchRows, m as rootCommand, n as ago, o as launchKey, p as resolveSetup, r as finishCd, s as launchScreen, t as CANCELLED, u as pickerLayout, v as startSession, y as systemTerm } from "./root-Xglu0OPD.mjs";
34
34
  import "./session-scan-W-gbwJHM.mjs";
35
35
 
36
36
  export { runNewWith };
@@ -3,7 +3,7 @@ import { u as workersLogDir } from "./paths-CHifubDh.mjs";
3
3
  import { d as terminalHasName } from "./scope-D-h6F6DN.mjs";
4
4
  import { Dn as httpModelsCheck, En as findSetup, Fn as workersLabel, Mn as setupWorkersLabel, On as loadSaved, Pn as shortModel, Tn as downLocalProviders, bn as resolveLocalProvider, cn as getProfile, dn as updateProfile, jn as setupProfile, kn as orchestratorLabel, o as cooldownRemaining, sn as SESSION_NAME_ENV, wn as allSetups, x as SESSION_WORKER_PROVIDER_ENV } from "./routing-BAAST9vT.mjs";
5
5
  import { n as OPT, t as CliError } from "./define-CjJsmq-6.mjs";
6
- import { C as assertAvailable, D as execHarness, E as dryRunText, O as looksLikePath, T as buildHarness, k as prepareDir, r as collectView, w as modelFor } from "./session-DVUExUnX.mjs";
6
+ import { C as assertAvailable, D as execHarness, E as dryRunText, O as looksLikePath, T as buildHarness, k as prepareDir, r as collectView, w as modelFor } from "./session-8iqQDkqb.mjs";
7
7
  import { o as launchableProviderNames, t as LaunchError } from "./launch-Jh5NVeNe.mjs";
8
8
  import { a as colorEnabled, f as renderTable, n as readBudget, o as makeStyle, p as suggest, t as providerHealth } from "./health-Dnym-qcT.mjs";
9
9
  import { i as probeResume } from "./launch-CXVlZjHt.mjs";
@@ -683,7 +683,7 @@ async function runRoot(args, term = systemTerm()) {
683
683
  with: args.with,
684
684
  dryRun: args.dryRun
685
685
  }, term);
686
- return (await import("./session-Bok2PqRS.mjs")).runNewDefault({
686
+ return (await import("./session-BeqAbNPd.mjs")).runNewDefault({
687
687
  dir: args.name,
688
688
  dryRun: args.dryRun
689
689
  });
@@ -791,4 +791,4 @@ const rootCommand = {
791
791
 
792
792
  //#endregion
793
793
  export { setupsTable as _, lastSetup as a, truncate as b, localState as c, pickerOpts as d, plainTable as f, runRoot as g, runNewWith as h, lastOnLabel as i, matchRows as l, rootCommand as m, ago as n, launchKey as o, resolveSetup as p, finishCd as r, launchScreen as s, CANCELLED as t, pickerLayout as u, startSession as v, systemTerm as y };
794
- //# sourceMappingURL=root-BWy0c2Lq.mjs.map
794
+ //# sourceMappingURL=root-Xglu0OPD.mjs.map
@@ -2,9 +2,9 @@ import { g as paiHomePath, l as claudeHomeDir } from "./runtime-paths-WsO9sJFc.m
2
2
  import { Ct as withSummary, I as LOOPBACK_HOST, N as resolveModelCapability, P as resolveProviderKey, St as sessionNote, bt as ledgerEscalate, c as WorkersConfigError, f as escalationCloud, ft as parseEntry, gt as certainContextWindow, h as isModelCapability, j as readWorkersSection, k as providerKeyPath, l as assertProviderRunnable, m as isLocalProvider, ot as applyRouteOverrides, p as getProviderOrNative, t as ANTHROPIC_NATIVE, tt as workersYamlPath, u as classModelCapability, v as nativeAnthropicModels, wt as appendLedger, xt as planEscalation } from "./config-XpZWOYOG.mjs";
3
3
  import { _ as effectiveWorkersYamlRaw } from "./config-Bu1_vbY8.mjs";
4
4
  import { i as ledgerPath, n as ensureNoMcpConfig, r as eventsPath, u as workersLogDir } from "./paths-CHifubDh.mjs";
5
- import { A as applyScratchEnv, C as worktreeWanted, S as worktreeSystemPrompt, _ as ownedTree, a as archiveEmptyResult, f as gcWorktreesThrottled, h as markResumed, i as adoptTree, j as scratchPromptLine, o as commitLines, p as inPlaceSystemPrompt, r as addWorktree, t as GATE_MARK, v as recordWorktree, w as worktreesDir, x as worktreeRefusesStart, y as salvageOnExit } from "./worktree-CrnOqTBW.mjs";
5
+ import { A as applyScratchEnv, C as worktreeWanted, S as worktreeSystemPrompt, _ as ownedTree, a as archiveEmptyResult, f as gcWorktreesThrottled, h as markResumed, i as adoptTree, j as scratchPromptLine, o as commitLines, p as inPlaceSystemPrompt, r as addWorktree, t as GATE_MARK, v as recordWorktree, w as worktreesDir, x as worktreeRefusesStart, y as salvageOnExit } from "./worktree-CRs2gyg0.mjs";
6
6
  import { C as nowStamp, D as pidAlive, E as parseSleepSecs, J as loadPreamble, Q as appendSystemPromptArgs, S as newWorkerId, X as preambleLine, Y as preambleBlock, Z as projectRoot, a as UNLABELED, d as describeTool, g as isLive, k as saveStatus, nt as shortText, rt as stripPromptValues, tt as parseRunnerArgs, v as loadStatus, x as markStartFailed, y as loadStatuses } from "./status-ggJ7lgVg.mjs";
7
- import { D as readMcpServers, E as mcpServersFromToolGrants, O as writeMcpConfig, S as inputSideTokens, T as grantsChrome, d as poolIneligibleReason, g as postTaskToPool, h as poolSettings, n as SLOT_TOOLS, r as UNIT_MARKER, t as SHARED_MARKER, w as expandMcpNames, y as reloadInProgress } from "./pool-BRvoOkv6.mjs";
7
+ import { D as readMcpServers, E as mcpServersFromToolGrants, O as writeMcpConfig, S as inputSideTokens, T as grantsChrome, d as poolIneligibleReason, g as postTaskToPool, h as poolSettings, n as SLOT_TOOLS, r as UNIT_MARKER, t as SHARED_MARKER, w as expandMcpNames, y as reloadInProgress } from "./pool-Dh-q3iJi.mjs";
8
8
  import { i as itermUuid, o as resolveSession, s as resolveSpawnerSession } from "./scope-D-h6F6DN.mjs";
9
9
  import { Cn as PORT_TIMEOUT_MS, Ct as removeRunSettings, Dn as httpModelsCheck, Dt as routerPort, E as budgetCache, Qt as fallThroughReason, S as applySessionProviderEnv, Zt as committedFallThrough, _ as resolveTarget, an as detectSessionName, bn as resolveLocalProvider, bt as routeLoopbackViaRouter, cn as getProfile, dt as claudeCommand, fn as LOCAL_MECHANISM_LINE, ft as claudeSettingsExtra, g as resolveCapabilityRun, h as recordBudgetCooldowns, i as capabilityForRun, k as budgetFull, l as isQuotaFailure, lt as addSchedulingHeaders, n as NoProviderError, o as cooldownRemaining, on as BATCH_ENV, pn as NoLocalServerError, pt as isLoopbackProvider, r as autoOrder, rn as routeRun, u as nextAutoProvider, ut as buildRunEnv, v as setCooldown, vn as probeLoopback, vt as pinnedSettings, wt as writePrivateFile, x as SESSION_WORKER_PROVIDER_ENV, xn as resolveRunnerProvider, yn as providerHostPort } from "./routing-BAAST9vT.mjs";
10
10
  import { t as maxOf } from "./min-max-DrSRUaWQ.mjs";
@@ -16,12 +16,12 @@ import { n as tierProviderNames, t as isLocalCandidate } from "./local-candidate
16
16
  import { t as LOCAL_PROBE_TIMEOUT_MS } from "./timeouts-1MLooEBB.mjs";
17
17
  import { i as getRegistryBackend } from "./factory-DjAAsqr_.mjs";
18
18
  import { c as ensureProxyRunning, i as detectCurrentModel, l as proxyPort } from "./launch-Jh5NVeNe.mjs";
19
- import { A as tail, Et as openOwnedPane, Kt as isHandoffMessage, Q as NoTerminalError, Wt as deliverHandoff, Xt as localFailures, _ as troublePolicy, _t as paneTitle, at as headlessAllowed, d as aibrokerMessenger, f as detachRun, h as originFromEnv, ht as resolveHostSession, it as followCommand, m as markRunDone, mt as realPaneOps, nt as closePaneForWorker, o as ownerOf, p as eventLine, r as returnControlsIfHeld, ut as openVerifiedPane, v as appendRunLog, z as gatePhaseName } from "./controls-BcKFHeG1.mjs";
19
+ import { A as tail, Et as openOwnedPane, Kt as isHandoffMessage, Q as NoTerminalError, Wt as deliverHandoff, Xt as localFailures, _ as troublePolicy, _t as paneTitle, at as headlessAllowed, d as aibrokerMessenger, f as detachRun, h as originFromEnv, ht as resolveHostSession, it as followCommand, m as markRunDone, mt as realPaneOps, nt as closePaneForWorker, o as ownerOf, p as eventLine, r as returnControlsIfHeld, ut as openVerifiedPane, v as appendRunLog, z as gatePhaseName } from "./controls-CPoeudou.mjs";
20
20
  import { i as endFields, o as parentInfo, r as decideEndReason } from "./endreason-C577xIQz.mjs";
21
- import { A as resolveLimit, E as armDeadline, F as checkOrphanedChildren, I as isWorkerId, L as launchParent, M as blockedMsOf, O as deadlinePromptLine, P as assertChildAllowed, T as recordDenial, k as extendLimit, w as parseDenialText } from "./render-CwIrgxLi.mjs";
21
+ import { A as resolveLimit, E as armDeadline, F as checkOrphanedChildren, I as isWorkerId, L as launchParent, M as blockedMsOf, O as deadlinePromptLine, P as assertChildAllowed, T as recordDenial, k as extendLimit, w as parseDenialText } from "./render-BYmQkuLd.mjs";
22
22
  import { t as createOperatorServer } from "./operator-CyuB3aVw.mjs";
23
23
  import { i as killTree } from "./kill-tree-EWYaEk5v.mjs";
24
- import { r as ensurePoolHost } from "./pool-cli-B_YR8_Gl.mjs";
24
+ import { r as ensurePoolHost } from "./pool-cli-BggU8GRp.mjs";
25
25
  import { closeSync, existsSync, mkdirSync, mkdtempSync, openSync, readFileSync, readdirSync, realpathSync, statSync, unlinkSync, writeFileSync, writeSync } from "node:fs";
26
26
  import { createHash, randomBytes } from "node:crypto";
27
27
  import { dirname, join, resolve, sep } from "node:path";
@@ -4882,7 +4882,7 @@ async function runWorker(opts) {
4882
4882
  if (gc?.length) process.stderr.write(`pai worker: archived ${gc.length} leftover worktree(s) (pai worker gc)\n`);
4883
4883
  } catch {}
4884
4884
  if (opts.className === "plan" && !opts._planner) {
4885
- const { runPlanner } = await import("./planner-BM27GBfC.mjs");
4885
+ const { runPlanner } = await import("./planner-BmFACdLa.mjs");
4886
4886
  return runPlanner(opts);
4887
4887
  }
4888
4888
  const parent = launchParent(opts.parent);
@@ -5106,4 +5106,4 @@ setRunWorker(runWorker);
5106
5106
 
5107
5107
  //#endregion
5108
5108
  export { routerPidFile as A, usageContextTokens as B, workerUsage as C, routerHandoverFile as D, probeRouter as E, startHandover as F, testProvider as H, paneWaiver as I, launchPane as L, routerSwapArgs as M, runRouterTick as N, routerIsStale as O, spawnRouter as P, noTerminalReasons as R, usageJson as S, projectLaunchConfig as T, endProcesses as U, printResult as V, findWorktreeOrphans as W, stopLaunchedWorkers as _, resolveWorkers as a, renderUsage as b, reportOriginWithHost as c, capture as d, dirtyPaths as f, realRunnerDeps as g, realCommitsAhead as h, liveResolveCtx as i, routerRunningPid as j, routerLogFile as k, runMessenger as l, mergeBranch as m, LocalProviderRefusedError as n, sessionWorkersLine as o, launchWorker as p, PoolRefusedError as r, finishDetached as s, runWorker as t, startDetached as u, parseWhen as v, pinNotices as w, transcriptUsage as x, priceTableText as y, recordSystemJobStart as z };
5109
- //# sourceMappingURL=run-6Q9kCPem.mjs.map
5109
+ //# sourceMappingURL=run-CSC7mgPf.mjs.map
@@ -2,8 +2,8 @@ import { _ as warn, c as ok, i as err, n as dim, r as encodeDir, s as now, t as
2
2
  import { _ as resolvePaiFile, d as defaultPaiHomeDir, g as paiHomePath, m as migratePaiFile, u as claudeProjectsDir$1 } from "./runtime-paths-WsO9sJFc.mjs";
3
3
  import { a as slugify, i as parseSessionFilename, n as decodeEncodedDir, t as buildEncodedDirMap } from "./migrate-DrA_OwlZ.mjs";
4
4
  import { D as readJsonStrict, O as writeJsonAtomic, o as expandHome } from "./config-Bu1_vbY8.mjs";
5
- import { a as unregistrableReason, o as workerWorktreesRoot, r as pruneWorktreeProjects } from "./registrable-Uzgmfyhz.mjs";
6
- import { n as ensurePaiMarker, t as discoverPaiMarkers } from "./pai-marker-DurzIbw8.mjs";
5
+ import { a as unregistrableReason, o as workerWorktreesRoot, r as pruneWorktreeProjects } from "./registrable-DpyTtajg.mjs";
6
+ import { n as ensurePaiMarker, t as discoverPaiMarkers } from "./pai-marker-BcZyJguM.mjs";
7
7
  import { i as getRegistryBackend } from "./factory-DjAAsqr_.mjs";
8
8
  import { existsSync, mkdirSync, readFileSync, readdirSync, realpathSync, renameSync, statSync, writeFileSync } from "node:fs";
9
9
  import { basename, join, resolve } from "node:path";
@@ -718,4 +718,4 @@ async function cmdScan(opts = {}) {
718
718
 
719
719
  //#endregion
720
720
  export { resolveHome as a, upsertSession as c, scanTranscriptFolders as d, transcriptFiles as f, performScan as i, claudeProjectsDir as l, loadScanConfig as n, saveScanConfig as o, migrateScanConfig as r, upsertProject as s, cmdScan as t, findMovedProjects as u };
721
- //# sourceMappingURL=scan-ZQWm-_se.mjs.map
721
+ //# sourceMappingURL=scan-C_Y5W9py.mjs.map
@@ -2,16 +2,16 @@ import { _ as warn, a as fmtDate, c as ok, d as scaffoldProjectDirs, f as shorte
2
2
  import { u as claudeProjectsDir } from "./runtime-paths-WsO9sJFc.mjs";
3
3
  import { b as nativeOrchestratorModel, j as readWorkersSection, p as getProviderOrNative, t as ANTHROPIC_NATIVE, vt as stripModelVariant, wt as appendLedger } from "./config-XpZWOYOG.mjs";
4
4
  import { i as ledgerPath, u as workersLogDir } from "./paths-CHifubDh.mjs";
5
- import { A as trustProjectPath } from "./pool-BRvoOkv6.mjs";
6
- import { a as unregistrableReason } from "./registrable-Uzgmfyhz.mjs";
7
- import { n as ensurePaiMarker } from "./pai-marker-DurzIbw8.mjs";
5
+ import { M as trustProjectPath } from "./pool-Dh-q3iJi.mjs";
6
+ import { a as unregistrableReason } from "./registrable-DpyTtajg.mjs";
7
+ import { n as ensurePaiMarker } from "./pai-marker-BcZyJguM.mjs";
8
8
  import { t as STOP_WORDS } from "./stop-words-DSEYQdNe.mjs";
9
9
  import { cn as getProfile, sn as SESSION_NAME_ENV, x as SESSION_WORKER_PROVIDER_ENV, xt as routeVerdictLine } from "./routing-BAAST9vT.mjs";
10
10
  import { n as OPT, t as CliError } from "./define-CjJsmq-6.mjs";
11
11
  import { i as getRegistryBackend } from "./factory-DjAAsqr_.mjs";
12
12
  import { n as formatDetection, r as formatDetectionJson, t as detectProject } from "./detect-9CZNO0yf.mjs";
13
13
  import { a as getSessionCount, c as upsertTag$1, i as getProjectTags, n as getProject$1, o as requireProject, r as getProjectAliases, s as resolveIdentifier, t as getLastSessionDate } from "./helpers-BD6V-p9w.mjs";
14
- import { a as resolveHome, n as loadScanConfig } from "./scan-ZQWm-_se.mjs";
14
+ import { a as resolveHome, n as loadScanConfig } from "./scan-C_Y5W9py.mjs";
15
15
  import { n as buildLaunchPlan, o as launchableProviderNames, s as maskLaunchEnv, t as LaunchError } from "./launch-Jh5NVeNe.mjs";
16
16
  import { a as colorEnabled, f as renderTable$1, i as saveBudgetSnapshot, n as readBudget, o as makeStyle, r as readBudgetSnapshot, t as providerHealth } from "./health-Dnym-qcT.mjs";
17
17
  import { d as printExitDir, i as probeResume, u as transcriptModelFor } from "./launch-CXVlZjHt.mjs";
@@ -1441,7 +1441,7 @@ async function cmdActive(opts) {
1441
1441
  ], rows));
1442
1442
  }
1443
1443
  async function cmdAutoRoute(opts) {
1444
- const { autoRoute, formatAutoRouteJson } = await import("./auto-route-BjoMHKyI.mjs");
1444
+ const { autoRoute, formatAutoRouteJson } = await import("./auto-route-CjjQqU1o.mjs");
1445
1445
  const { getRegistryBackend, createStorageBackend } = await import("./factory-Bsib-qDG.mjs");
1446
1446
  const { loadConfig } = await import("./config-DtENJ6cL.mjs");
1447
1447
  const config = loadConfig();
@@ -1854,7 +1854,7 @@ const newCommand = {
1854
1854
  const name = ctx.opts.name;
1855
1855
  const withSetup = ctx.opts.with;
1856
1856
  if (withSetup) {
1857
- const { runNewWith } = await import("./root-wC_6Fx0B.mjs");
1857
+ const { runNewWith } = await import("./root-FtJsxYnm.mjs");
1858
1858
  return runNewWith({
1859
1859
  dir,
1860
1860
  with: withSetup,
@@ -1960,4 +1960,4 @@ const renameTop = {
1960
1960
 
1961
1961
  //#endregion
1962
1962
  export { cmdAdd as A, cmdRebind as B, assertAvailable as C, execHarness as D, dryRunText as E, cmdEdit as F, cmdUnarchive as H, cmdGo as I, cmdInfo$1 as L, cmdArchive as M, cmdConsolidate as N, looksLikePath as O, cmdDetect as P, cmdList$1 as R, legacy as S, buildHarness as T, findMovedPath as U, cmdTag$1 as V, cmdList as _, newTop as a, cmdSlug as b, planOpen as c, runNewDefault as d, sessionCommand as f, cmdInfo as g, cmdAutoRoute as h, lsCommand as i, cmdAlias as j, prepareDir as k, renameTop as l, cmdActive as m, collectRows as n, oneLine as o, sessionDir as p, collectView as r, openTop as s, applyProfileChat as t, rowsTable as u, cmdRename as v, modelFor as w, cmdTag as x, cmdRoute as y, cmdMove as z };
1963
- //# sourceMappingURL=session-DVUExUnX.mjs.map
1963
+ //# sourceMappingURL=session-8iqQDkqb.mjs.map
@@ -3,11 +3,11 @@ import "./migrate-DrA_OwlZ.mjs";
3
3
  import "./config-XpZWOYOG.mjs";
4
4
  import "./config-Bu1_vbY8.mjs";
5
5
  import "./paths-CHifubDh.mjs";
6
- import "./worktree-CrnOqTBW.mjs";
6
+ import "./worktree-CRs2gyg0.mjs";
7
7
  import "./status-ggJ7lgVg.mjs";
8
- import "./pool-BRvoOkv6.mjs";
9
- import "./registrable-Uzgmfyhz.mjs";
10
- import "./pai-marker-DurzIbw8.mjs";
8
+ import "./pool-Dh-q3iJi.mjs";
9
+ import "./registrable-DpyTtajg.mjs";
10
+ import "./pai-marker-BcZyJguM.mjs";
11
11
  import "./helpers-CRuBUas3.mjs";
12
12
  import "./scope-D-h6F6DN.mjs";
13
13
  import "./routing-BAAST9vT.mjs";
@@ -25,8 +25,8 @@ import "./embeddings-BVq3esBF.mjs";
25
25
  import "./router-CQSc3lk3.mjs";
26
26
  import "./detect-9CZNO0yf.mjs";
27
27
  import "./helpers-BD6V-p9w.mjs";
28
- import "./scan-ZQWm-_se.mjs";
29
- import { a as newTop, c as planOpen, d as runNewDefault, f as sessionCommand, i as lsCommand, l as renameTop, n as collectRows, o as oneLine, p as sessionDir, r as collectView, s as openTop, t as applyProfileChat, u as rowsTable } from "./session-DVUExUnX.mjs";
28
+ import "./scan-C_Y5W9py.mjs";
29
+ import { a as newTop, c as planOpen, d as runNewDefault, f as sessionCommand, i as lsCommand, l as renameTop, n as collectRows, o as oneLine, p as sessionDir, r as collectView, s as openTop, t as applyProfileChat, u as rowsTable } from "./session-8iqQDkqb.mjs";
30
30
  import "./launch-Jh5NVeNe.mjs";
31
31
  import "./health-Dnym-qcT.mjs";
32
32
  import "./launch-CXVlZjHt.mjs";
@@ -1,9 +1,9 @@
1
1
  import "./config-XpZWOYOG.mjs";
2
2
  import "./config-Bu1_vbY8.mjs";
3
3
  import "./paths-CHifubDh.mjs";
4
- import "./worktree-CrnOqTBW.mjs";
4
+ import "./worktree-CRs2gyg0.mjs";
5
5
  import "./status-ggJ7lgVg.mjs";
6
- import "./pool-BRvoOkv6.mjs";
6
+ import "./pool-Dh-q3iJi.mjs";
7
7
  import "./scope-D-h6F6DN.mjs";
8
8
  import "./tool-errors-7E13StWd.mjs";
9
9
  import "./wait-ByV0OyMZ.mjs";
@@ -11,12 +11,12 @@ import "./local-tiers-BE4jGaMa.mjs";
11
11
  import "./caller-identity-yLFb7CKq.mjs";
12
12
  import "./capacity-DEveQdFV.mjs";
13
13
  import "./local-candidate-DLdwQt0s.mjs";
14
- import "./controls-BcKFHeG1.mjs";
14
+ import "./controls-CPoeudou.mjs";
15
15
  import "./endreason-C577xIQz.mjs";
16
- import "./render-CwIrgxLi.mjs";
16
+ import "./render-BYmQkuLd.mjs";
17
17
  import "./operator-CyuB3aVw.mjs";
18
18
  import "./kill-tree-EWYaEk5v.mjs";
19
- import "./pane-audit-BQytYa60.mjs";
20
- import { a as followTailOutput, c as inboxCounts, d as psOutput, f as replayOutput, g as workerEnded, h as strayWorkerProcesses, i as backfillLines, l as initialFollowState, m as statusLineOutput, n as FOLLOW_TAIL_ENTRIES, o as followWorkers, p as resumeArgv, r as applyEvent, s as gutterBody, t as BACKFILL_EVENTS, u as makeOperatorInput } from "./viewer-DcpJwGKE.mjs";
19
+ import "./pane-audit-DKQt71s4.mjs";
20
+ import { a as followTailOutput, c as inboxCounts, d as psOutput, f as replayOutput, g as workerEnded, h as strayWorkerProcesses, i as backfillLines, l as initialFollowState, m as statusLineOutput, n as FOLLOW_TAIL_ENTRIES, o as followWorkers, p as resumeArgv, r as applyEvent, s as gutterBody, t as BACKFILL_EVENTS, u as makeOperatorInput } from "./viewer-mDXUNHNy.mjs";
21
21
 
22
22
  export { applyEvent, initialFollowState };