@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
@@ -2,7 +2,7 @@
2
2
  "name": "pai",
3
3
  "displayName": "PAI Knowledge OS",
4
4
  "description": "Personal AI Infrastructure — persistent memory, session continuity, and knowledge graph for Claude Code",
5
- "version": "1.0.2",
5
+ "version": "1.0.3",
6
6
  "author": {
7
7
  "name": "Matthias Nott"
8
8
  },
@@ -1,4 +1,4 @@
1
- import { r as readPaiMarker } from "./pai-marker-DurzIbw8.mjs";
1
+ import { r as readPaiMarker } from "./pai-marker-BcZyJguM.mjs";
2
2
  import { i as populateSlugs } from "./search-RSyeQqj1.mjs";
3
3
  import { existsSync } from "node:fs";
4
4
  import { dirname, resolve } from "node:path";
@@ -158,4 +158,4 @@ function formatAutoRouteJson(result) {
158
158
 
159
159
  //#endregion
160
160
  export { formatAutoRouteJson as n, detectTopicShift as r, autoRoute as t };
161
- //# sourceMappingURL=auto-route-B4azPk4l.mjs.map
161
+ //# sourceMappingURL=auto-route-B7Yu6Uam.mjs.map
@@ -0,0 +1,11 @@
1
+ import "./config-XpZWOYOG.mjs";
2
+ import "./config-Bu1_vbY8.mjs";
3
+ import "./paths-CHifubDh.mjs";
4
+ import "./worktree-CRs2gyg0.mjs";
5
+ import "./status-ggJ7lgVg.mjs";
6
+ import "./pool-Dh-q3iJi.mjs";
7
+ import "./registrable-DpyTtajg.mjs";
8
+ import "./pai-marker-BcZyJguM.mjs";
9
+ import { n as formatAutoRouteJson, t as autoRoute } from "./auto-route-B7Yu6Uam.mjs";
10
+
11
+ export { autoRoute, formatAutoRouteJson };
@@ -1,7 +1,7 @@
1
1
  import { j as readWorkersSection, wt as appendLedger } from "./config-XpZWOYOG.mjs";
2
2
  import { i as ledgerPath, u as workersLogDir } from "./paths-CHifubDh.mjs";
3
3
  import { $ as isFlagToken, S as newWorkerId, nt as shortText } from "./status-ggJ7lgVg.mjs";
4
- import { t as runWorker } from "./run-6Q9kCPem.mjs";
4
+ import { t as runWorker } from "./run-CSC7mgPf.mjs";
5
5
  import { existsSync, mkdirSync, readFileSync } from "node:fs";
6
6
  import { join } from "node:path";
7
7
 
@@ -163,4 +163,4 @@ async function runChain(opts, deps = {}) {
163
163
 
164
164
  //#endregion
165
165
  export { swapPromptArg as n, runChain as t };
166
- //# sourceMappingURL=chain-D-yvET_y.mjs.map
166
+ //# sourceMappingURL=chain-7n9Gx56r.mjs.map
@@ -5,11 +5,11 @@ import { a as slugify$1, i as parseSessionFilename } from "../migrate-DrA_OwlZ.m
5
5
  import { I as LOOPBACK_HOST, Q as relocateWorkersYaml, _t as contextWindowFromModelId, c as WorkersConfigError, f as escalationCloud, ht as DEFAULT_CONTEXT_WINDOW, j as readWorkersSection, m as isLocalProvider, p as getProviderOrNative, t as ANTHROPIC_NATIVE, tt as workersYamlPath, v as nativeAnthropicModels, vt as stripModelVariant, wt as appendLedger } from "../config-XpZWOYOG.mjs";
6
6
  import { A as assertPgName, C as migrateMainConfigToYaml, D as readJsonStrict, M as postgresConnectionString, N as postgresFullTarget, O as writeJsonAtomic, P as quoteIdent, S as MainConfigError, c as loadConfig, d as paiConfigYamlFilePath, f as readMainConfigRaw, j as isContainerTarget, k as DEFAULT_PG_CONNECTION_TIMEOUT_MS, l as migrateConfigFile, n as CONFIG_FILE$2, o as expandHome, p as writeMainConfigRaw, t as CONFIG_DIR, u as paiConfigFilePath, w as resolvedMainConfigPath } from "../config-Bu1_vbY8.mjs";
7
7
  import { i as ledgerPath, n as ensureNoMcpConfig, u as workersLogDir } from "../paths-CHifubDh.mjs";
8
- import "../worktree-CrnOqTBW.mjs";
8
+ import "../worktree-CRs2gyg0.mjs";
9
9
  import { B as loadStatusConfig, G as writeSectionToForge, L as formatStale, U as upsertSection, b as loadStatusesCached, g as isLive, h as isChatPane, y as loadStatuses } from "../status-ggJ7lgVg.mjs";
10
- import { S as inputSideTokens, h as poolSettings, i as bundleBuildStamp, j as writeClaudeJson, k as readClaudeJson, v as readPoolState, w as expandMcpNames } from "../pool-BRvoOkv6.mjs";
11
- import { a as unregistrableReason, s as worktreeReason } from "../registrable-Uzgmfyhz.mjs";
12
- import "../pai-marker-DurzIbw8.mjs";
10
+ import { A as readClaudeJson, N as writeClaudeJson, S as inputSideTokens, h as poolSettings, i as bundleBuildStamp, j as registerMcpScript, k as mcpEntryRunsScript, v as readPoolState, w as expandMcpNames } from "../pool-Dh-q3iJi.mjs";
11
+ import { a as unregistrableReason, s as worktreeReason } from "../registrable-DpyTtajg.mjs";
12
+ import "../pai-marker-BcZyJguM.mjs";
13
13
  import "../helpers-CRuBUas3.mjs";
14
14
  import { t as applyRecencyBoost } from "../search-RSyeQqj1.mjs";
15
15
  import { t as dropItermBundleId } from "../env-BE8mrsxr.mjs";
@@ -33,33 +33,33 @@ import "../embeddings-BVq3esBF.mjs";
33
33
  import "../router-CQSc3lk3.mjs";
34
34
  import { t as detectProject } from "../detect-9CZNO0yf.mjs";
35
35
  import { n as getProject$1, o as requireProject, r as getProjectAliases, s as resolveIdentifier } from "../helpers-BD6V-p9w.mjs";
36
- import { a as resolveHome, c as upsertSession, d as scanTranscriptFolders, f as transcriptFiles, l as claudeProjectsDir$1, n as loadScanConfig, o as saveScanConfig, r as migrateScanConfig, s as upsertProject, t as cmdScan, u as findMovedProjects } from "../scan-ZQWm-_se.mjs";
37
- import { A as cmdAdd, B as cmdRebind, F as cmdEdit, H as cmdUnarchive, I as cmdGo, L as cmdInfo$1, M as cmdArchive, N as cmdConsolidate, P as cmdDetect, R as cmdList$1, S as legacy, U as findMovedPath, V as cmdTag$1, _ as cmdList, a as newTop, b as cmdSlug, f as sessionCommand, g as cmdInfo, h as cmdAutoRoute, i as lsCommand, j as cmdAlias, l as renameTop, m as cmdActive, r as collectView, s as openTop, v as cmdRename, x as cmdTag, y as cmdRoute, z as cmdMove } from "../session-DVUExUnX.mjs";
36
+ import { a as resolveHome, c as upsertSession, d as scanTranscriptFolders, f as transcriptFiles, l as claudeProjectsDir$1, n as loadScanConfig, o as saveScanConfig, r as migrateScanConfig, s as upsertProject, t as cmdScan, u as findMovedProjects } from "../scan-C_Y5W9py.mjs";
37
+ import { A as cmdAdd, B as cmdRebind, F as cmdEdit, H as cmdUnarchive, I as cmdGo, L as cmdInfo$1, M as cmdArchive, N as cmdConsolidate, P as cmdDetect, R as cmdList$1, S as legacy, U as findMovedPath, V as cmdTag$1, _ as cmdList, a as newTop, b as cmdSlug, f as sessionCommand, g as cmdInfo, h as cmdAutoRoute, i as lsCommand, j as cmdAlias, l as renameTop, m as cmdActive, r as collectView, s as openTop, v as cmdRename, x as cmdTag, y as cmdRoute, z as cmdMove } from "../session-8iqQDkqb.mjs";
38
38
  import { a as detectCurrentProviderName, i as detectCurrentModel, n as buildLaunchPlan, o as launchableProviderNames, r as buildLaunchRows, s as maskLaunchEnv } from "../launch-Jh5NVeNe.mjs";
39
39
  import { a as colorEnabled, c as renderCommandHelp, d as renderOverview, f as renderTable$2, l as renderMarkdown, m as usageLine, o as makeStyle, p as suggest, s as mdCommand, u as renderMore } from "../health-Dnym-qcT.mjs";
40
40
  import { a as providerResumePlan, n as launchInDir, o as restoreTopLevel, r as launchPrompt, s as resumeArgvText, t as hasConversation } from "../launch-CXVlZjHt.mjs";
41
- import { _ as setupsTable, a as lastSetup, m as rootCommand } from "../root-BWy0c2Lq.mjs";
41
+ import { _ as setupsTable, a as lastSetup, m as rootCommand } from "../root-Xglu0OPD.mjs";
42
42
  import { n as fetchLiveSessions, r as sendToSession, t as callAiBroker } from "../aibroker-client-CQPGqLxL.mjs";
43
43
  import { a as resolveSessionByNameOrId, o as scanCacheFilePath, r as migrateSessionScanCache, s as scanSessions, t as fmtAge } from "../session-scan-W-gbwJHM.mjs";
44
- import { A as routerPidFile, B as usageContextTokens, D as routerHandoverFile, E as probeRouter, F as startHandover, I as paneWaiver, L as launchPane, M as routerSwapArgs, P as spawnRouter, R as noTerminalReasons, S as usageJson, T as projectLaunchConfig, b as renderUsage, c as reportOriginWithHost, f as dirtyPaths, g as realRunnerDeps, j as routerRunningPid, k as routerLogFile, l as runMessenger, s as finishDetached, u as startDetached, w as pinNotices, x as transcriptUsage, y as priceTableText } from "../run-6Q9kCPem.mjs";
45
- import { C as readRunLog, D as resumeState, E as requestPlanStop, F as runLogPath, I as PlanTracker, M as dirtyConflicts, O as runExitCode, P as loadPlan, S as planStopPath, T as renderStatus, Y as readRunLock, ht as resolveHostSession, j as PlanError, jt as runPaneExec, k as runPlan, l as PlanReporter, nt as closePaneForWorker, ot as inVisiblePane, q as planLockPath, rt as closeSelfPane, u as QueueReporter, vt as writePaneTitle, w as renderSchedule, x as planStatus, y as blockedMessage, yt as psTable } from "../controls-BcKFHeG1.mjs";
44
+ import { A as routerPidFile, B as usageContextTokens, D as routerHandoverFile, E as probeRouter, F as startHandover, I as paneWaiver, L as launchPane, M as routerSwapArgs, P as spawnRouter, R as noTerminalReasons, S as usageJson, T as projectLaunchConfig, b as renderUsage, c as reportOriginWithHost, f as dirtyPaths, g as realRunnerDeps, j as routerRunningPid, k as routerLogFile, l as runMessenger, s as finishDetached, u as startDetached, w as pinNotices, x as transcriptUsage, y as priceTableText } from "../run-CSC7mgPf.mjs";
45
+ import { C as readRunLog, D as resumeState, E as requestPlanStop, F as runLogPath, I as PlanTracker, M as dirtyConflicts, O as runExitCode, P as loadPlan, S as planStopPath, T as renderStatus, Y as readRunLock, ht as resolveHostSession, j as PlanError, jt as runPaneExec, k as runPlan, l as PlanReporter, nt as closePaneForWorker, ot as inVisiblePane, q as planLockPath, rt as closeSelfPane, u as QueueReporter, vt as writePaneTitle, w as renderSchedule, x as planStatus, y as blockedMessage, yt as psTable } from "../controls-CPoeudou.mjs";
46
46
  import "../endreason-C577xIQz.mjs";
47
- import { N as endBuildWait, j as beginBuildWait } from "../render-CwIrgxLi.mjs";
47
+ import { N as endBuildWait, j as beginBuildWait } from "../render-BYmQkuLd.mjs";
48
48
  import "../operator-CyuB3aVw.mjs";
49
49
  import "../kill-tree-EWYaEk5v.mjs";
50
- import { s as poolReloadLive } from "../pool-cli-B_YR8_Gl.mjs";
51
- import "../chain-D-yvET_y.mjs";
52
- import { _ as issueClaims, a as branchDiff, b as workerCommand, c as runQueue, d as loadSettings, f as move, g as issueClaim, h as renderReview, i as projectChecks, l as QueueStore, m as renderList, n as initProject, o as realQueueDeps, p as queueStatePath, r as isGitProject, s as acceptItems, t as formatCheck, u as again, v as issueStale } from "../project-setup-CfpApz5o.mjs";
53
- import { m as runInPane, r as closeFinishedPanes } from "../pane-audit-BQytYa60.mjs";
54
- import "../viewer-DcpJwGKE.mjs";
50
+ import { s as poolReloadLive } from "../pool-cli-BggU8GRp.mjs";
51
+ import "../chain-7n9Gx56r.mjs";
52
+ import { _ as issueClaims, a as branchDiff, b as workerCommand, c as runQueue, d as loadSettings, f as move, g as issueClaim, h as renderReview, i as projectChecks, l as QueueStore, m as renderList, n as initProject, o as realQueueDeps, p as queueStatePath, r as isGitProject, s as acceptItems, t as formatCheck, u as again, v as issueStale } from "../project-setup-jvfONJTQ.mjs";
53
+ import { m as runInPane, r as closeFinishedPanes } from "../pane-audit-DKQt71s4.mjs";
54
+ import "../viewer-mDXUNHNy.mjs";
55
55
  import { g as setWorkersEnabled, s as describeProviders } from "../providers-CblTFrhz.mjs";
56
- import { $ as exportDefaultLayout, B as mergeSettings, G as cachedRows, J as handleCockpit, K as cachedSessionMap, Q as warmCockpit, W as SystemMonitor, X as setEndpointHealth, Y as setActionHooks, Z as setRuntimeSampler, ct as providersCommand, et as createEndpointHealth, it as withWorkerAttribution, n as WORKER_CONFIG_COMMANDS, nt as loadWorkerWindows, q as cachedWorkerWindows, rt as sessionDisplayName, t as PROVIDER_EDIT_COMMANDS, tt as loadSessionMap, z as installWorkers } from "../worker-config-BDYNxbYz.mjs";
56
+ import { $ as exportDefaultLayout, B as mergeSettings, G as cachedRows, J as handleCockpit, K as cachedSessionMap, Q as warmCockpit, W as SystemMonitor, X as setEndpointHealth, Y as setActionHooks, Z as setRuntimeSampler, ct as providersCommand, et as createEndpointHealth, it as withWorkerAttribution, n as WORKER_CONFIG_COMMANDS, nt as loadWorkerWindows, q as cachedWorkerWindows, rt as sessionDisplayName, t as PROVIDER_EDIT_COMMANDS, tt as loadSessionMap, z as installWorkers } from "../worker-config-CJhEMk19.mjs";
57
57
  import { a as listConfigOp, i as getConfigValueOp, n as formatConfigGetOutput, o as setConfigValueOp, r as formatConfigSource, s as unsetConfigValueOp, t as MainConfigOpsError } from "../main-config-ops-BEMpuhDz.mjs";
58
- import { H as acquireRun, U as readRun, V as cockpitProbeSettings, k as readRuntimeCommands } from "../cockpit-actions-C8GlTzts.mjs";
58
+ import { H as acquireRun, U as readRun, V as cockpitProbeSettings, k as readRuntimeCommands } from "../cockpit-actions-BBHeyEZI.mjs";
59
59
  import { n as PaiClient } from "../ipc-client-CaiGJnSM.mjs";
60
60
  import { a as EMBED_PASS_BATCH_SIZE, c as liveYieldCheck, n as DEFAULT_EMBED_MAX_LOAD, o as formatEmbedStatus, r as DEFAULT_EMBED_MAX_MINUTES, s as lastRecordedEmbedPass } from "../embed-pass-DIWjA68P.mjs";
61
61
  import "../fallback-DFlItw1Z.mjs";
62
- import { At as readQuiet, Bt as appendCheckpointToNote, C as migrateSummaryCooldowns, Et as totalUsageTokens, Gt as restartRouter, Ht as findLatestNote, It as resolveDaemonPid, Nt as writeQuiet, Ot as describeQuiet, Pt as LAUNCHD_LABEL, Rt as readContextHandoverCache, St as loadSessionKeepaliveState, Tt as parseSessionUsage, Ut as findNotesDir$1, Vt as applyContinue, Wt as readBodyFile, bt as reapJob, ht as obsidianEnabled, i as reexecBackground, kt as nextOccurrence, mt as OBSIDIAN_DISABLED_MESSAGE, o as backfillKgFromNotes, s as migrateKgBackfillState, v as migrateWorkQueue, vt as migrateIdentityFile, wt as sessionKeepaliveLedgerSummary, yt as jobPaths } from "../indexer-backend-_a6UNhXJ.mjs";
62
+ import { At as readQuiet, Bt as appendCheckpointToNote, C as migrateSummaryCooldowns, Et as totalUsageTokens, Gt as restartRouter, Ht as findLatestNote, It as resolveDaemonPid, Nt as writeQuiet, Ot as describeQuiet, Pt as LAUNCHD_LABEL, Rt as readContextHandoverCache, St as loadSessionKeepaliveState, Tt as parseSessionUsage, Ut as findNotesDir$1, Vt as applyContinue, Wt as readBodyFile, bt as reapJob, ht as obsidianEnabled, i as reexecBackground, kt as nextOccurrence, mt as OBSIDIAN_DISABLED_MESSAGE, o as backfillKgFromNotes, s as migrateKgBackfillState, v as migrateWorkQueue, vt as migrateIdentityFile, wt as sessionKeepaliveLedgerSummary, yt as jobPaths } from "../indexer-backend-Cll7le4P.mjs";
63
63
  import { n as queriesDirPath, t as migrateQueriesDir } from "../query-feedback-BRfPtqki.mjs";
64
64
  import { appendFileSync, chmodSync, closeSync, copyFileSync, cpSync, createReadStream, createWriteStream, existsSync, fstatSync, lstatSync, mkdirSync, openSync, readFileSync, readSync, readdirSync, readlinkSync, realpathSync, renameSync, rmSync, rmdirSync, statSync, symlinkSync, unlinkSync, writeFileSync } from "node:fs";
65
65
  import { createHash, randomBytes, randomUUID } from "node:crypto";
@@ -1279,7 +1279,7 @@ const runCommand = {
1279
1279
  sampler.start();
1280
1280
  setRuntimeSampler(sampler);
1281
1281
  setActionHooks({ runLocalJob: async (kind, tier) => {
1282
- const { startTier, stopAll } = await import("../worker-config-gmAq_-rI.mjs");
1282
+ const { startTier, stopAll } = await import("../worker-config-DESkIjMF.mjs");
1283
1283
  const { readLocalConfig } = await import("../local-tiers-DNMI5W86.mjs");
1284
1284
  const { workersYamlPath } = await import("../workers-config-f8KrkY4L.mjs");
1285
1285
  const cfg = readLocalConfig(workersYamlPath());
@@ -1657,7 +1657,7 @@ const modelsCommand = {
1657
1657
  if (words[0] === "add") {
1658
1658
  const source = words[1];
1659
1659
  if (!source) throw new Error("usage: pai models add <hf-id|path> [--name n] [--download] [--try]");
1660
- const { addModel } = await import("../models-add-BtB3Se6f.mjs");
1660
+ const { addModel } = await import("../models-add-C1QIc1DA.mjs");
1661
1661
  const r = await addModel({
1662
1662
  source,
1663
1663
  name: typeof ctx.opts.name === "string" ? ctx.opts.name : void 0,
@@ -1672,7 +1672,7 @@ const modelsCommand = {
1672
1672
  if (op) {
1673
1673
  const runtime = words[1];
1674
1674
  if (!runtime) throw new Error(`usage: pai models ${op} <runtime> (configured: ${Object.keys(readRuntimeCommands()).join(", ") || "none"})`);
1675
- const { defaultDeps, runtimeStartStop } = await import("../cockpit-actions-BWunx3rY.mjs");
1675
+ const { defaultDeps, runtimeStartStop } = await import("../cockpit-actions-DR9X514g.mjs");
1676
1676
  const r = await runtimeStartStop(runtime, op, defaultDeps(), { model: typeof ctx.opts.model === "string" ? ctx.opts.model : void 0 });
1677
1677
  process.stdout.write(r.message + "\n");
1678
1678
  if (!r.ok) process.exitCode = 1;
@@ -8859,24 +8859,17 @@ function cmdInstall() {
8859
8859
  const config = readClaudeJson();
8860
8860
  if (typeof config.mcpServers !== "object" || config.mcpServers === null) config.mcpServers = {};
8861
8861
  const servers = config.mcpServers;
8862
- const existing = servers["pai"];
8863
- if ((existing?.args)?.includes(shimBin)) console.log(ok$1(" ~/.claude.json already points to the shim."));
8862
+ const outcome = registerMcpScript(servers, "pai", shimBin);
8863
+ if (outcome === "unchanged") console.log(ok$1(" ~/.claude.json already points to the shim."));
8864
8864
  else {
8865
- if (existing) {
8866
- servers["pai-legacy"] = existing;
8867
- console.log(dim$1(" Backed up existing 'pai' entry as 'pai-legacy'."));
8868
- }
8869
- servers["pai"] = {
8870
- command: "node",
8871
- args: [shimBin]
8872
- };
8873
8865
  try {
8874
8866
  writeClaudeJson(config);
8875
- console.log(ok$1(" Updated ~/.claude.json to use daemon shim."));
8876
8867
  } catch (e) {
8877
8868
  console.error(err(` Failed to write ~/.claude.json: ${e}`));
8878
8869
  return 1;
8879
8870
  }
8871
+ if (outcome === "legacy-kept") console.log(dim$1(" Existing 'pai' entry runs a different server; kept as 'pai-legacy'."));
8872
+ console.log(ok$1(" Updated ~/.claude.json to use daemon shim."));
8880
8873
  }
8881
8874
  console.log();
8882
8875
  if (!existsSync(daemonBin)) {
@@ -9036,7 +9029,7 @@ function cmdLogs(opts) {
9036
9029
  return 0;
9037
9030
  }
9038
9031
  async function daemonServeCmd() {
9039
- const { serve } = await import("../daemon-N7WhYi6I.mjs");
9032
+ const { serve } = await import("../daemon-DKdBNKfa.mjs");
9040
9033
  const { loadConfig: lc, ensureConfigDir } = await import("../config-DtENJ6cL.mjs");
9041
9034
  ensureConfigDir();
9042
9035
  await serve(lc());
@@ -16796,7 +16789,8 @@ function mcpInstallCmd() {
16796
16789
  for (const spec of SERVERS) {
16797
16790
  const bin = distEntry(spec.entry);
16798
16791
  if (spec.name in servers) {
16799
- console.log(warn$1(`${spec.label} is already registered in ~/.claude.json as "${spec.name}".`));
16792
+ const same = mcpEntryRunsScript(servers[spec.name], bin);
16793
+ console.log(warn$1(`${spec.label} is already registered in ~/.claude.json as "${spec.name}"${same ? "" : " (different script)"}.`));
16800
16794
  console.log(dim$1(` Entry: ${JSON.stringify(servers[spec.name])}`));
16801
16795
  continue;
16802
16796
  }
@@ -19917,7 +19911,7 @@ async function registryScanCmd(opts) {
19917
19911
  return 0;
19918
19912
  }
19919
19913
  if (opts.filterReport) {
19920
- const { reportUnregistrable } = await import("../registrable-C7b6givx.mjs");
19914
+ const { reportUnregistrable } = await import("../registrable-BzH4TObg.mjs");
19921
19915
  const r = await reportUnregistrable(await getRegistryBackend());
19922
19916
  console.log(`Registry rows: ${r.total}`);
19923
19917
  console.log(` matching the registration filter: ${r.matching} (${r.matchingMissing} with a missing path)`);
@@ -1273,23 +1273,23 @@ function defaultDeps() {
1273
1273
  const logDir = workersLogDir(workers);
1274
1274
  return {
1275
1275
  startTier: async (tierName) => {
1276
- const { startTier } = await import("./worker-config-gmAq_-rI.mjs");
1276
+ const { startTier } = await import("./worker-config-DESkIjMF.mjs");
1277
1277
  const cfg = readLocalConfig(workersYamlPath());
1278
1278
  const tier = cfg.tiers[tierName];
1279
1279
  if (!tier) throw new Error(`no tier "${tierName}" (configured: ${Object.keys(cfg.tiers).join(", ") || "none"})`);
1280
1280
  await startTier(cfg, tierName, tier);
1281
1281
  },
1282
1282
  stopAll: async () => {
1283
- const { stopAll } = await import("./worker-config-gmAq_-rI.mjs");
1283
+ const { stopAll } = await import("./worker-config-DESkIjMF.mjs");
1284
1284
  await stopAll(readLocalConfig(workersYamlPath()));
1285
1285
  },
1286
1286
  startModel: async (model) => {
1287
- const { startInstance } = await import("./worker-config-gmAq_-rI.mjs");
1287
+ const { startInstance } = await import("./worker-config-DESkIjMF.mjs");
1288
1288
  await startInstance(readLocalConfig(workersYamlPath()), model);
1289
1289
  },
1290
1290
  stopModel: async (target, opts) => {
1291
- const { stopInstance } = await import("./worker-config-gmAq_-rI.mjs");
1292
- const { currentInstances } = await import("./worker-config-gmAq_-rI.mjs");
1291
+ const { stopInstance } = await import("./worker-config-DESkIjMF.mjs");
1292
+ const { currentInstances } = await import("./worker-config-DESkIjMF.mjs");
1293
1293
  const cfg = readLocalConfig(workersYamlPath());
1294
1294
  const keys = new Map(currentInstances(cfg).map((r) => [r.id, instanceEngineKey(r)]));
1295
1295
  await stopInstance(cfg, target, opts, {
@@ -1298,7 +1298,7 @@ function defaultDeps() {
1298
1298
  });
1299
1299
  },
1300
1300
  runningCount: async (model) => {
1301
- const { currentInstances } = await import("./worker-config-gmAq_-rI.mjs");
1301
+ const { currentInstances } = await import("./worker-config-DESkIjMF.mjs");
1302
1302
  return currentInstances(readLocalConfig(workersYamlPath())).filter((r) => r.model === model && r.state !== "failed").length;
1303
1303
  },
1304
1304
  setClass: (cls, target) => void setClass(cls, target),
@@ -1660,7 +1660,7 @@ async function memoryRunRefusal(deps, nowMs = Date.now()) {
1660
1660
  }
1661
1661
  /** The daemon's count of chunks without vectors; null when it does not answer. */
1662
1662
  async function daemonEmbedBacklog() {
1663
- const { fetchDaemonMemory } = await import("./cockpit-memory-vTlFWV7F.mjs");
1663
+ const { fetchDaemonMemory } = await import("./cockpit-memory--dnShXBA.mjs");
1664
1664
  return (await fetchDaemonMemory())?.embedBacklog ?? null;
1665
1665
  }
1666
1666
  /** The daemon's in-process passes (no child, so no marker): its status says whether one runs. */
@@ -1851,4 +1851,4 @@ function cockpitActionLedger(ledgerFile, lastN = 10) {
1851
1851
 
1852
1852
  //#endregion
1853
1853
  export { cockpitMemoryPayload as A, cockpitLayout as B, runtimeOpRefusal as C, writeLedgerLine as D, tierNames as E, memoryRunLog as F, acquireRun as H, rateSeries as I, runProgress as L, latestMemoryJob as M, liveMemoryDeps as N, embeddingRuntimeName as O, memoryJobProgress as P, runningMemoryJob as R, runtimeJobProgress as S, spawnMemoryRun as T, readRun as U, cockpitProbeSettings as V, resolveTierName as _, classesOnProvider as a, runningRuntimeJob as b, defaultDeps as c, labelPath as d, logTailSince as f, readLabels as g, readCockpitJob as h, WORKER_ROLE_CLASSES as i, fetchDaemonMemory as j, readRuntimeCommands as k, engineInflight as l, orchestratorProvider as m, RUNTIME_START_EVENT as n, cockpitActionLedger as o, memoryRunRefusal as p, RUNTIME_STOP_EVENT as r, cockpitJobFile as s, COCKPIT_ACTION_EVENT as t, labelFor as u, runCockpitAction as v, runtimeStartStop as w, runningRuntimeJobs as x, runningLocalModel as y, sameModel as z };
1854
- //# sourceMappingURL=cockpit-actions-C8GlTzts.mjs.map
1854
+ //# sourceMappingURL=cockpit-actions-BBHeyEZI.mjs.map
@@ -13,7 +13,7 @@ import "./local-instances-DOxSgT_L.mjs";
13
13
  import "./local-candidate-DLdwQt0s.mjs";
14
14
  import "./providers-CblTFrhz.mjs";
15
15
  import "./main-config-ops-BEMpuhDz.mjs";
16
- import { C as runtimeOpRefusal, D as writeLedgerLine, E as tierNames, S as runtimeJobProgress, T as spawnMemoryRun, _ as resolveTierName, a as classesOnProvider, b as runningRuntimeJob, c as defaultDeps, d as labelPath, f as logTailSince, g as readLabels, h as readCockpitJob, i as WORKER_ROLE_CLASSES, l as engineInflight, m as orchestratorProvider, n as RUNTIME_START_EVENT, o as cockpitActionLedger, p as memoryRunRefusal, r as RUNTIME_STOP_EVENT, s as cockpitJobFile, t as COCKPIT_ACTION_EVENT, u as labelFor, v as runCockpitAction, w as runtimeStartStop, x as runningRuntimeJobs, y as runningLocalModel } from "./cockpit-actions-C8GlTzts.mjs";
16
+ import { C as runtimeOpRefusal, D as writeLedgerLine, E as tierNames, S as runtimeJobProgress, T as spawnMemoryRun, _ as resolveTierName, a as classesOnProvider, b as runningRuntimeJob, c as defaultDeps, d as labelPath, f as logTailSince, g as readLabels, h as readCockpitJob, i as WORKER_ROLE_CLASSES, l as engineInflight, m as orchestratorProvider, n as RUNTIME_START_EVENT, o as cockpitActionLedger, p as memoryRunRefusal, r as RUNTIME_STOP_EVENT, s as cockpitJobFile, t as COCKPIT_ACTION_EVENT, u as labelFor, v as runCockpitAction, w as runtimeStartStop, x as runningRuntimeJobs, y as runningLocalModel } from "./cockpit-actions-BBHeyEZI.mjs";
17
17
  import "./ipc-client-CaiGJnSM.mjs";
18
18
  import "./embed-pass-DIWjA68P.mjs";
19
19
 
@@ -13,7 +13,7 @@ import "./local-instances-DOxSgT_L.mjs";
13
13
  import "./local-candidate-DLdwQt0s.mjs";
14
14
  import "./providers-CblTFrhz.mjs";
15
15
  import "./main-config-ops-BEMpuhDz.mjs";
16
- import { A as cockpitMemoryPayload, F as memoryRunLog, I as rateSeries, L as runProgress, M as latestMemoryJob, N as liveMemoryDeps, P as memoryJobProgress, R as runningMemoryJob, j as fetchDaemonMemory, z as sameModel } from "./cockpit-actions-C8GlTzts.mjs";
16
+ import { A as cockpitMemoryPayload, F as memoryRunLog, I as rateSeries, L as runProgress, M as latestMemoryJob, N as liveMemoryDeps, P as memoryJobProgress, R as runningMemoryJob, j as fetchDaemonMemory, z as sameModel } from "./cockpit-actions-BBHeyEZI.mjs";
17
17
  import "./ipc-client-CaiGJnSM.mjs";
18
18
  import "./embed-pass-DIWjA68P.mjs";
19
19
 
@@ -7,7 +7,7 @@ import { c as scopeKey, i as itermUuid$1, p as currentWorkerId } from "./scope-D
7
7
  import { a as buildsDir, l as listBuildsSync, m as ticketKind } from "./caller-identity-yLFb7CKq.mjs";
8
8
  import { o as providerCap, s as queueRows } from "./capacity-DEveQdFV.mjs";
9
9
  import { n as tierProviderNames, s as readLocalStatus, t as isLocalCandidate } from "./local-candidate-DLdwQt0s.mjs";
10
- import { d as paneRunStatusRow, f as paneStatusRow } from "./render-CwIrgxLi.mjs";
10
+ import { d as paneRunStatusRow, f as paneStatusRow } from "./render-BYmQkuLd.mjs";
11
11
  import { r as sayToWorker } from "./operator-CyuB3aVw.mjs";
12
12
  import { appendFileSync, existsSync, mkdirSync, mkdtempSync, openSync, readFileSync, readdirSync, renameSync, rmSync, unlinkSync, writeFileSync } from "node:fs";
13
13
  import { createHash } from "node:crypto";
@@ -955,8 +955,8 @@ async function renderer(sp, id, out, err) {
955
955
  err: (c) => err(c),
956
956
  end: () => void 0
957
957
  };
958
- const { applyEvent, initialFollowState } = await import("./viewer-MWBVJP3u.mjs");
959
- const { makeColor } = await import("./render-Cc2j5QG9.mjs");
958
+ const { applyEvent, initialFollowState } = await import("./viewer-CqozWW39.mjs");
959
+ const { makeColor } = await import("./render-CoMvwMPs.mjs");
960
960
  const c = makeColor(true);
961
961
  let state = initialFollowState("");
962
962
  let buf = "";
@@ -4706,4 +4706,4 @@ async function returnControlsIfHeld(logDir, id) {
4706
4706
 
4707
4707
  //#endregion
4708
4708
  export { checkPaneForWorker as $, tail as A, recordPath as At, loadPlanStatus as B, chatTickerRow as Bt, readRunLog as C, PANE_EXEC_PID_ENV as Ct, resumeState as D, pidAlive as Dt, requestPlanStop as E, openOwnedPane as Et, runLogPath as F, chatEnter as Ft, planRunId as G, handoffFromInside as Gt, planLogTail as H, parseChatLine as Ht, PlanTracker as I, chatInsertLine as It, queueLockPath as J, LOCAL_FAILURE_LIMIT as Jt, renderPlanLines as K, isHandoffMessage as Kt, fmtElapsed as L, chatLeave as Lt, dirtyConflicts as M, panePolicy as Mt, filesOverlap as N, CHAT_HELP as Nt, runExitCode as O, readExit as Ot, loadPlan as P, chatBlankRow as Pt, NoTerminalError as Q, followPlanLog as R, chatPromptRow as Rt, planStopPath as S, PANE_EXEC_ENV as St, renderStatus as T, listRecords as Tt, planRows as U, wrapText as Ut, loadPlanStatuses as V, holdAutoExit as Vt, planRunEnded as W, deliverHandoff as Wt, sinceText as X, localFailures as Xt, readRunLock as Y, classifyRoute as Yt, withRunLock as Z, routeLine as Zt, troublePolicy as _, paneTitle as _t, localIdleTick as a, headlessAllowed as at, idleText as b, psTableOrNull as bt, setMuted as c, openFollowPane as ct, aibrokerMessenger as d, osascript as dt, closeEndedPanes as et, detachRun as f, paneBackend as ft, sweepRuns as g, workerEnded as gt, originFromEnv as h, resolveHostSession as ht, localIdleLine as i, followCommand as it, PlanError as j, runPaneExec as jt, runPlan as k, readRecord as kt, PlanReporter as l, openPaneForWorker as lt, markRunDone as m, realPaneOps as mt, markControlsHeld as n, closePaneForWorker as nt, ownerOf as o, inVisiblePane as ot, eventLine as p, paneMayClose as pt, planLockPath as q, readInbox as qt, returnControlsIfHeld as r, closeSelfPane as rt, readLocalIdle as s, loadRegistry as st, clickrControlsArgv as t, closeOwnPane as tt, QueueReporter as u, openVerifiedPane as ut, appendRunLog as v, writePaneTitle as vt, renderSchedule as w, exitFilePath as wt, planStatus as x, truncateLines as xt, blockedMessage as y, psTable as yt, gatePhaseName as z, chatScrollRegion as zt };
4709
- //# sourceMappingURL=controls-BcKFHeG1.mjs.map
4709
+ //# sourceMappingURL=controls-CPoeudou.mjs.map
@@ -4,11 +4,11 @@ import "../migrate-DrA_OwlZ.mjs";
4
4
  import "../config-XpZWOYOG.mjs";
5
5
  import { a as ensureConfigDir, c as loadConfig } from "../config-Bu1_vbY8.mjs";
6
6
  import "../paths-CHifubDh.mjs";
7
- import "../worktree-CrnOqTBW.mjs";
7
+ import "../worktree-CRs2gyg0.mjs";
8
8
  import "../status-ggJ7lgVg.mjs";
9
- import "../pool-BRvoOkv6.mjs";
10
- import "../registrable-Uzgmfyhz.mjs";
11
- import "../pai-marker-DurzIbw8.mjs";
9
+ import "../pool-Dh-q3iJi.mjs";
10
+ import "../registrable-DpyTtajg.mjs";
11
+ import "../pai-marker-BcZyJguM.mjs";
12
12
  import "../helpers-CRuBUas3.mjs";
13
13
  import "../reranker-CqCbpGnX.mjs";
14
14
  import { t as dropItermBundleId } from "../env-BE8mrsxr.mjs";
@@ -27,21 +27,21 @@ import "../embedding-gate-6rZrWRXa.mjs";
27
27
  import "../embeddings-BVq3esBF.mjs";
28
28
  import "../router-CQSc3lk3.mjs";
29
29
  import "../detect-9CZNO0yf.mjs";
30
- import "../scan-ZQWm-_se.mjs";
30
+ import "../scan-C_Y5W9py.mjs";
31
31
  import "../launch-Jh5NVeNe.mjs";
32
- import "../run-6Q9kCPem.mjs";
33
- import "../controls-BcKFHeG1.mjs";
32
+ import "../run-CSC7mgPf.mjs";
33
+ import "../controls-CPoeudou.mjs";
34
34
  import "../endreason-C577xIQz.mjs";
35
- import "../render-CwIrgxLi.mjs";
35
+ import "../render-BYmQkuLd.mjs";
36
36
  import "../operator-CyuB3aVw.mjs";
37
37
  import "../kill-tree-EWYaEk5v.mjs";
38
- import "../pool-cli-B_YR8_Gl.mjs";
39
- import "../pane-audit-BQytYa60.mjs";
38
+ import "../pool-cli-BggU8GRp.mjs";
39
+ import "../pane-audit-DKQt71s4.mjs";
40
40
  import { n as PaiClient } from "../ipc-client-CaiGJnSM.mjs";
41
41
  import "../embed-pass-DIWjA68P.mjs";
42
- import "../indexer-backend-_a6UNhXJ.mjs";
43
- import { t as serve } from "../daemon-ColVHwGZ.mjs";
44
- import "../auto-route-B4azPk4l.mjs";
42
+ import "../indexer-backend-Cll7le4P.mjs";
43
+ import { t as serve } from "../daemon-DPAo6WTa.mjs";
44
+ import "../auto-route-B7Yu6Uam.mjs";
45
45
  import "../zettelkasten-BzMm8REH.mjs";
46
46
 
47
47
  //#region src/daemon/index.ts
@@ -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 "./reranker-CqCbpGnX.mjs";
13
13
  import "./scope-D-h6F6DN.mjs";
@@ -25,21 +25,21 @@ import "./embedding-gate-6rZrWRXa.mjs";
25
25
  import "./embeddings-BVq3esBF.mjs";
26
26
  import "./router-CQSc3lk3.mjs";
27
27
  import "./detect-9CZNO0yf.mjs";
28
- import "./scan-ZQWm-_se.mjs";
28
+ import "./scan-C_Y5W9py.mjs";
29
29
  import "./launch-Jh5NVeNe.mjs";
30
- import "./run-6Q9kCPem.mjs";
31
- import "./controls-BcKFHeG1.mjs";
30
+ import "./run-CSC7mgPf.mjs";
31
+ import "./controls-CPoeudou.mjs";
32
32
  import "./endreason-C577xIQz.mjs";
33
- import "./render-CwIrgxLi.mjs";
33
+ import "./render-BYmQkuLd.mjs";
34
34
  import "./operator-CyuB3aVw.mjs";
35
35
  import "./kill-tree-EWYaEk5v.mjs";
36
- import "./pool-cli-B_YR8_Gl.mjs";
37
- import "./pane-audit-BQytYa60.mjs";
36
+ import "./pool-cli-BggU8GRp.mjs";
37
+ import "./pane-audit-DKQt71s4.mjs";
38
38
  import "./ipc-client-CaiGJnSM.mjs";
39
39
  import "./embed-pass-DIWjA68P.mjs";
40
- import "./indexer-backend-_a6UNhXJ.mjs";
41
- import { t as serve } from "./daemon-ColVHwGZ.mjs";
42
- import "./auto-route-B4azPk4l.mjs";
40
+ import "./indexer-backend-Cll7le4P.mjs";
41
+ import { t as serve } from "./daemon-DPAo6WTa.mjs";
42
+ import "./auto-route-B7Yu6Uam.mjs";
43
43
  import "./zettelkasten-BzMm8REH.mjs";
44
44
 
45
45
  export { serve };
@@ -3,9 +3,9 @@ import { t as writeFileAtomic } from "./atomic-file-BorMa4T3.mjs";
3
3
  import { j as readWorkersSection, t as ANTHROPIC_NATIVE, wt as appendLedger } from "./config-XpZWOYOG.mjs";
4
4
  import { f as readMainConfigRaw, i as defaults, p as writeMainConfigRaw, u as paiConfigFilePath, y as shippedMainDefaults } from "./config-Bu1_vbY8.mjs";
5
5
  import { c as slotCurrentPath, i as ledgerPath, r as eventsPath, u as workersLogDir } from "./paths-CHifubDh.mjs";
6
- import { f as gcWorktreesThrottled, w as worktreesDir } from "./worktree-CrnOqTBW.mjs";
6
+ import { f as gcWorktreesThrottled, w as worktreesDir } from "./worktree-CRs2gyg0.mjs";
7
7
  import { B as loadStatusConfig, C as nowStamp, G as writeSectionToForge, I as PROJECT_CONFIG_REL, L as formatStale, b as loadStatusesCached, h as isChatPane, k as saveStatus, s as alive, v as loadStatus, z as listStale } from "./status-ggJ7lgVg.mjs";
8
- import { a as unregistrableReason } from "./registrable-Uzgmfyhz.mjs";
8
+ import { a as unregistrableReason } from "./registrable-DpyTtajg.mjs";
9
9
  import { c as yieldToEventLoop, f as fileContentHash, l as buildOutline, n as chunkId, u as chunkMarkdown } from "./helpers-CRuBUas3.mjs";
10
10
  import { n as TITLE_STOP_WORDS, t as STOP_WORDS } from "./stop-words-DSEYQdNe.mjs";
11
11
  import { i as populateSlugs, t as applyRecencyBoost } from "./search-RSyeQqj1.mjs";
@@ -23,15 +23,15 @@ import { a as requireQueryEmbedding, c as getConfiguredBackend, h as mismatchRea
23
23
  import { i as deserializeEmbedding, n as configureEmbeddingModel, r as cosineSimilarity$1 } from "./embeddings-BVq3esBF.mjs";
24
24
  import { n as routeNotification } from "./router-CQSc3lk3.mjs";
25
25
  import { r as formatDetectionJson, t as detectProject } from "./detect-9CZNO0yf.mjs";
26
- import { i as performScan } from "./scan-ZQWm-_se.mjs";
26
+ import { i as performScan } from "./scan-C_Y5W9py.mjs";
27
27
  import { r as sendToSession, t as callAiBroker } from "./aibroker-client-CQPGqLxL.mjs";
28
- import { E as probeRouter, F as startHandover, M as routerSwapArgs, N as runRouterTick, O as routerIsStale, P as spawnRouter, j as routerRunningPid, l as runMessenger, t as runWorker } from "./run-6Q9kCPem.mjs";
29
- import { a as localIdleTick, et as closeEndedPanes, g as sweepRuns, gt as workerEnded, pt as paneMayClose, st as loadRegistry, xt as truncateLines } from "./controls-BcKFHeG1.mjs";
30
- import { l as isPaneRunId, n as auditTick, r as closeFinishedPanes } from "./pane-audit-BQytYa60.mjs";
28
+ import { E as probeRouter, F as startHandover, M as routerSwapArgs, N as runRouterTick, O as routerIsStale, P as spawnRouter, j as routerRunningPid, l as runMessenger, t as runWorker } from "./run-CSC7mgPf.mjs";
29
+ import { a as localIdleTick, et as closeEndedPanes, g as sweepRuns, gt as workerEnded, pt as paneMayClose, st as loadRegistry, xt as truncateLines } from "./controls-CPoeudou.mjs";
30
+ import { l as isPaneRunId, n as auditTick, r as closeFinishedPanes } from "./pane-audit-DKQt71s4.mjs";
31
31
  import { a as EMBED_PASS_BATCH_SIZE, c as liveYieldCheck, d as runEmbedCycle, i as DEFAULT_EMBED_RESUME_MINUTES, n as DEFAULT_EMBED_MAX_LOAD, r as DEFAULT_EMBED_MAX_MINUTES, t as DEFAULT_EMBED_CYCLE_MAX_MINUTES, u as recordEmbedPass } from "./embed-pass-DIWjA68P.mjs";
32
- import { $ as setStartTime, A as indexSchedulerTimer, B as setDaemonConfig, Ct as runSessionKeepaliveTick, D as embedInProgress, Dt as deferIfQuiet, E as daemonConfig, F as lastVaultIndexTime, Ft as removeDaemonPidfile, G as setLastEmbedPass, Gt as restartRouter, H as setEmbedSchedulerTimer, I as notificationConfig, J as setLastIndexTime, K as setLastEmbedTime, L as passFailures, Lt as writeDaemonPidfile, M as lastEmbedTime, Mt as startQuietWatcher, N as lastIndexPass, O as embedSchedulerTimer, P as lastIndexTime, Q as setShutdownRequested, R as registryBackend, Rt as readContextHandoverCache, S as handleSessionSummary, T as cacheKeepaliveTimer, U as setIndexInProgress, V as setEmbedInProgress, W as setIndexSchedulerTimer, X as setNotificationConfig, Y as setLastVaultIndexTime, Z as setRegistryBackend, _ as markFailed, _t as buildWakeupContext, a as runPassChild, at as vaultIndexInProgress, b as findLatestJsonl, c as NonRetryableError, ct as addWorkToSessionNote, d as enqueue, dt as getCurrentNotePath, et as setStorageBackend, f as enqueueCoalesced, ft as archiveSessionFilesToSessionsDir, g as markCompleted, gt as vaultIndexEnabled, h as loadQueue, ht as obsidianEnabled, it as storageBackend, j as lastEmbedPass, jt as registerQuietRunner, k as indexInProgress, l as cleanup, lt as appendCheckpoint, m as hasPendingOrProcessingOfType, n as buildPassCommand, nt as shutdownRequested, o as backfillKgFromNotes, ot as sessionIdFromTranscript, p as getStats, pt as findNotesDir, q as setLastIndexPass, r as cliEntry, rt as startTime, st as updateTodoContinue, t as PassSpawnError, tt as setVaultIndexInProgress, u as dequeue, ut as finalizeSessionNote, w as spawnSummarizer, x as getGitContext, xt as sweepOrphans, y as contentToText$2, z as setCacheKeepaliveTimer, zt as writeContextHandoverCache } from "./indexer-backend-_a6UNhXJ.mjs";
32
+ import { $ as setStartTime, A as indexSchedulerTimer, B as setDaemonConfig, Ct as runSessionKeepaliveTick, D as embedInProgress, Dt as deferIfQuiet, E as daemonConfig, F as lastVaultIndexTime, Ft as removeDaemonPidfile, G as setLastEmbedPass, Gt as restartRouter, H as setEmbedSchedulerTimer, I as notificationConfig, J as setLastIndexTime, K as setLastEmbedTime, L as passFailures, Lt as writeDaemonPidfile, M as lastEmbedTime, Mt as startQuietWatcher, N as lastIndexPass, O as embedSchedulerTimer, P as lastIndexTime, Q as setShutdownRequested, R as registryBackend, Rt as readContextHandoverCache, S as handleSessionSummary, T as cacheKeepaliveTimer, U as setIndexInProgress, V as setEmbedInProgress, W as setIndexSchedulerTimer, X as setNotificationConfig, Y as setLastVaultIndexTime, Z as setRegistryBackend, _ as markFailed, _t as buildWakeupContext, a as runPassChild, at as vaultIndexInProgress, b as findLatestJsonl, c as NonRetryableError, ct as addWorkToSessionNote, d as enqueue, dt as getCurrentNotePath, et as setStorageBackend, f as enqueueCoalesced, ft as archiveSessionFilesToSessionsDir, g as markCompleted, gt as vaultIndexEnabled, h as loadQueue, ht as obsidianEnabled, it as storageBackend, j as lastEmbedPass, jt as registerQuietRunner, k as indexInProgress, l as cleanup, lt as appendCheckpoint, m as hasPendingOrProcessingOfType, n as buildPassCommand, nt as shutdownRequested, o as backfillKgFromNotes, ot as sessionIdFromTranscript, p as getStats, pt as findNotesDir, q as setLastIndexPass, r as cliEntry, rt as startTime, st as updateTodoContinue, t as PassSpawnError, tt as setVaultIndexInProgress, u as dequeue, ut as finalizeSessionNote, w as spawnSummarizer, x as getGitContext, xt as sweepOrphans, y as contentToText$2, z as setCacheKeepaliveTimer, zt as writeContextHandoverCache } from "./indexer-backend-Cll7le4P.mjs";
33
33
  import { r as saveQueryResult } from "./query-feedback-BRfPtqki.mjs";
34
- import { n as formatAutoRouteJson, r as detectTopicShift, t as autoRoute } from "./auto-route-B4azPk4l.mjs";
34
+ import { n as formatAutoRouteJson, r as detectTopicShift, t as autoRoute } from "./auto-route-B7Yu6Uam.mjs";
35
35
  import { a as zettelThemes, c as zettelExplore, i as zettelHealth, n as zettelGodNotes, o as zettelConverse, r as zettelSuggest, s as zettelSurprise, t as zettelCommunities } from "./zettelkasten-BzMm8REH.mjs";
36
36
  import { appendFileSync, chmodSync, closeSync, existsSync, mkdirSync, openSync, readFileSync, readSync, readdirSync, realpathSync, statSync, unlinkSync, utimesSync, writeFileSync } from "node:fs";
37
37
  import { basename, dirname, isAbsolute, join, normalize, relative, resolve, sep } from "node:path";
@@ -6864,4 +6864,4 @@ async function serve(config) {
6864
6864
 
6865
6865
  //#endregion
6866
6866
  export { serve as t };
6867
- //# sourceMappingURL=daemon-ColVHwGZ.mjs.map
6867
+ //# sourceMappingURL=daemon-DPAo6WTa.mjs.map
@@ -4,9 +4,9 @@ import { g as paiHomePath } from "../runtime-paths-WsO9sJFc.mjs";
4
4
  import { Tt as ledgerSummary, a as MODEL_CAPABILITIES, f as escalationCloud, j as readWorkersSection, m as isLocalProvider, n as CAPABILITY_NAME_RE, p as getProviderOrNative } from "../config-XpZWOYOG.mjs";
5
5
  import { S as MainConfigError, c as loadConfig, n as CONFIG_FILE } from "../config-Bu1_vbY8.mjs";
6
6
  import { i as ledgerPath, u as workersLogDir } from "../paths-CHifubDh.mjs";
7
- import "../worktree-CrnOqTBW.mjs";
7
+ import "../worktree-CRs2gyg0.mjs";
8
8
  import { A as setWorkerLabel, C as nowStamp, O as reconcileStatuses, g as isLive, o as ageOf, v as loadStatus, y as loadStatuses } from "../status-ggJ7lgVg.mjs";
9
- import "../pool-BRvoOkv6.mjs";
9
+ import "../pool-Dh-q3iJi.mjs";
10
10
  import "../helpers-CRuBUas3.mjs";
11
11
  import { t as dropItermBundleId } from "../env-BE8mrsxr.mjs";
12
12
  import "../scope-D-h6F6DN.mjs";
@@ -24,17 +24,17 @@ import "../embedding-gate-6rZrWRXa.mjs";
24
24
  import "../embeddings-BVq3esBF.mjs";
25
25
  import "../router-CQSc3lk3.mjs";
26
26
  import "../launch-Jh5NVeNe.mjs";
27
- import { H as testProvider, a as resolveWorkers, c as reportOriginWithHost, f as dirtyPaths, i as liveResolveCtx, t as runWorker, u as startDetached } from "../run-6Q9kCPem.mjs";
28
- import { A as tail, B as loadPlanStatus, C as readRunLog, D as resumeState, E as requestPlanStop, F as runLogPath, G as planRunId, Gt as handoffFromInside, J as queueLockPath, L as fmtElapsed, M as dirtyConflicts, P as loadPlan, S as planStopPath, X as sinceText, Y as readRunLock, b as idleText, j as PlanError, q as planLockPath, qt as readInbox, w as renderSchedule, x as planStatus } from "../controls-BcKFHeG1.mjs";
27
+ import { H as testProvider, a as resolveWorkers, c as reportOriginWithHost, f as dirtyPaths, i as liveResolveCtx, t as runWorker, u as startDetached } from "../run-CSC7mgPf.mjs";
28
+ import { A as tail, B as loadPlanStatus, C as readRunLog, D as resumeState, E as requestPlanStop, F as runLogPath, G as planRunId, Gt as handoffFromInside, J as queueLockPath, L as fmtElapsed, M as dirtyConflicts, P as loadPlan, S as planStopPath, X as sinceText, Y as readRunLock, b as idleText, j as PlanError, q as planLockPath, qt as readInbox, w as renderSchedule, x as planStatus } from "../controls-CPoeudou.mjs";
29
29
  import { a as endLabel } from "../endreason-C577xIQz.mjs";
30
- import { D as deadlineLabel } from "../render-CwIrgxLi.mjs";
30
+ import { D as deadlineLabel } from "../render-BYmQkuLd.mjs";
31
31
  import { r as sayToWorker } from "../operator-CyuB3aVw.mjs";
32
32
  import "../kill-tree-EWYaEk5v.mjs";
33
- import "../pool-cli-B_YR8_Gl.mjs";
34
- import { t as runChain } from "../chain-D-yvET_y.mjs";
35
- import { C as schedulerLines, E as resolveSpecPath, S as withTarget, T as readSpecPrompt, _ as issueClaims, a as branchDiff, d as loadSettings, f as move, g as issueClaim, i as projectChecks, l as QueueStore, n as initProject, o as realQueueDeps, p as queueStatePath, r as isGitProject, s as acceptItems, t as formatCheck, u as again, v as issueStale, w as schedulerView, x as resolveTarget, y as providerCaps } from "../project-setup-CfpApz5o.mjs";
36
- import "../pane-audit-BQytYa60.mjs";
37
- import { d as psOutput, f as replayOutput } from "../viewer-DcpJwGKE.mjs";
33
+ import "../pool-cli-BggU8GRp.mjs";
34
+ import { t as runChain } from "../chain-7n9Gx56r.mjs";
35
+ import { C as schedulerLines, E as resolveSpecPath, S as withTarget, T as readSpecPrompt, _ as issueClaims, a as branchDiff, d as loadSettings, f as move, g as issueClaim, i as projectChecks, l as QueueStore, n as initProject, o as realQueueDeps, p as queueStatePath, r as isGitProject, s as acceptItems, t as formatCheck, u as again, v as issueStale, w as schedulerView, x as resolveTarget, y as providerCaps } from "../project-setup-jvfONJTQ.mjs";
36
+ import "../pane-audit-DKQt71s4.mjs";
37
+ import { d as psOutput, f as replayOutput } from "../viewer-mDXUNHNy.mjs";
38
38
  import { _ as unsetCapabilityPreference, a as describeCapabilities, b as useProvider, c as modelPrefsText, d as setCapabilityPreference, f as setClass, g as setWorkersEnabled, h as setProviderModel, l as removeProvider, m as setProviderEnabled, o as describeModels, p as setProviderCap, r as classTargetText, s as describeProviders, t as addProvider, u as resolveProviderName, v as unsetClass, y as updateProvider } from "../providers-CblTFrhz.mjs";
39
39
  import { a as listConfigOp, i as getConfigValueOp, o as setConfigValueOp, s as unsetConfigValueOp, t as MainConfigOpsError } from "../main-config-ops-BEMpuhDz.mjs";
40
40
  import { n as PaiClient } from "../ipc-client-CaiGJnSM.mjs";