@tekmidian/pai 1.0.0 → 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.
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +67 -5
- package/dist/aibroker-client-BxzeEHPF.mjs +3 -0
- package/dist/{aibroker-client-CXEYBzbf.mjs → aibroker-client-CQPGqLxL.mjs} +1 -1
- package/dist/atomic-file-BorMa4T3.mjs +21 -0
- package/dist/{auto-route-D5SXrMpB.mjs → auto-route-B7Yu6Uam.mjs} +3 -3
- package/dist/auto-route-CjjQqU1o.mjs +11 -0
- package/dist/budget-Dod6rnA9.mjs +15 -0
- package/dist/{caller-identity-CVTuiLSs.mjs → caller-identity-yLFb7CKq.mjs} +6 -5
- package/dist/{capacity-DaXrVj3J.mjs → capacity-DEveQdFV.mjs} +3 -3
- package/dist/{chain-BcQlIlEd.mjs → chain-7n9Gx56r.mjs} +5 -5
- package/dist/cli/index.mjs +1628 -370
- package/dist/{cockpit-actions-ODmt8yF9.mjs → cockpit-actions-BBHeyEZI.mjs} +84 -42
- package/dist/cockpit-actions-DR9X514g.mjs +20 -0
- package/dist/cockpit-memory--dnShXBA.mjs +20 -0
- package/dist/{config-BSXKyeJ1.mjs → config-Bu1_vbY8.mjs} +42 -3
- package/dist/{config-B955yYmo.mjs → config-Cxi-aBf4.mjs} +2 -2
- package/dist/{config-TaWmdTLx.mjs → config-DtENJ6cL.mjs} +1 -1
- package/dist/{config-D5chi2LO.mjs → config-XpZWOYOG.mjs} +2 -2
- package/dist/{controls-BGkK_Bdi.mjs → controls-CPoeudou.mjs} +37 -22
- package/dist/daemon/index.mjs +43 -42
- package/dist/daemon-DKdBNKfa.mjs +45 -0
- package/dist/{daemon-CorGh6Ub.mjs → daemon-DPAo6WTa.mjs} +103 -55
- package/dist/daemon-mcp/index.mjs +40 -39
- package/dist/{define-DGFu-sCf.mjs → define-CjJsmq-6.mjs} +1 -1
- package/dist/{detect-C1d5cUkT.mjs → detect-9CZNO0yf.mjs} +2 -2
- package/dist/detect-D1ziFFfA.mjs +10 -0
- package/dist/{embed-pass-CeQD8kRE.mjs → embed-pass-DIWjA68P.mjs} +5 -5
- package/dist/{embedding-gate-BHuBsgHD.mjs → embedding-gate-6rZrWRXa.mjs} +5 -5
- package/dist/{embedding-gate-Z7CJSOJk.mjs → embedding-gate-Cnk4YCyX.mjs} +3 -3
- package/dist/{embeddings-D4t6L-EH.mjs → embeddings-BVq3esBF.mjs} +1 -1
- package/dist/{embeddings-OF9Pt4by.mjs → embeddings-CIkJBKd-.mjs} +1 -1
- package/dist/{endreason-x1KOSrcO.mjs → endreason-C577xIQz.mjs} +7 -6
- package/dist/{env-DArqGq-Z.mjs → env-BE8mrsxr.mjs} +1 -1
- package/dist/factory-Bsib-qDG.mjs +9 -0
- package/dist/{factory-BtjbQ0np.mjs → factory-DjAAsqr_.mjs} +15 -13
- package/dist/{fallback-BIyEpPsQ.mjs → fallback-DFlItw1Z.mjs} +5 -5
- package/dist/{fmt-age-BiSHrTKN.mjs → fmt-age-ByDkvkoU.mjs} +1 -1
- package/dist/{health-C6jZWvRG.mjs → health-Dnym-qcT.mjs} +4 -4
- package/dist/{helpers-DFmYRCOa.mjs → helpers-BD6V-p9w.mjs} +2 -2
- package/dist/helpers-CMGjy_0N.mjs +10 -0
- package/dist/{helpers-CJpb_MNB.mjs → helpers-CRuBUas3.mjs} +87 -38
- package/dist/hooks/capture-all-events.mjs +52 -11
- package/dist/hooks/capture-session-summary.mjs +64 -47
- package/dist/hooks/capture-tool-output.mjs +49 -8
- package/dist/hooks/context-compression-hook.mjs +30 -10
- package/dist/hooks/initialize-session.mjs +1 -0
- package/dist/hooks/load-core-context.mjs +1 -1
- package/dist/hooks/load-project-context.mjs +32 -29
- package/dist/hooks/security-validator.mjs +45 -13
- package/dist/hooks/stop-hook.mjs +54 -16
- package/dist/hooks/supervision-banner.mjs +9 -0
- package/dist/hooks/sync-todo-to-md.mjs +147 -113
- package/dist/hooks/worker-edit-repair.mjs +2 -1
- package/dist/hooks/worker-guard.mjs +40 -16
- package/dist/hooks/worker-note.mjs +12 -5
- package/dist/hooks/worker-path-repair.mjs +1 -1
- package/dist/hooks/worker-pool-host.mjs +329 -231
- package/dist/hooks/worker-status-line.mjs +195 -114
- package/dist/index.d.mts +18 -0
- package/dist/index.mjs +12 -12
- package/dist/{indexer-backend-BM2CUSu8.mjs → indexer-backend-Cll7le4P.mjs} +149 -96
- package/dist/{ipc-client-BMqWw_gv.mjs → ipc-client-CaiGJnSM.mjs} +1 -1
- package/dist/{ipc-client-YYDD6zzU.mjs → ipc-client-ZRmDKd5Z.mjs} +1 -1
- package/dist/kill-tree-BG7dRVtp.mjs +10 -0
- package/dist/{kill-tree-BjYz5BxK.mjs → kill-tree-EWYaEk5v.mjs} +8 -8
- package/dist/{launch-CLp0OJxV.mjs → launch-CXVlZjHt.mjs} +8 -8
- package/dist/{launch-DgqQdAjI.mjs → launch-Jh5NVeNe.mjs} +3 -3
- package/dist/local-candidate-DLdwQt0s.mjs +112 -0
- package/dist/local-instances-DOxSgT_L.mjs +210 -0
- package/dist/local-instances-ZeRkkuS5.mjs +6 -0
- package/dist/{local-tiers-DPZYqv9m.mjs → local-tiers-BE4jGaMa.mjs} +2 -2
- package/dist/{local-tiers-DnBIAkbK.mjs → local-tiers-DNMI5W86.mjs} +3 -3
- package/dist/{main-config-ops-C0SflOWk.mjs → main-config-ops-BEMpuhDz.mjs} +3 -3
- package/dist/{main-resolver-DVPpSWVy.mjs → main-resolver-3Ns1HPmS.mjs} +18 -17
- package/dist/{migrate-BUJHadA8.mjs → migrate-DrA_OwlZ.mjs} +45 -14
- package/dist/min-max-DrSRUaWQ.mjs +16 -0
- package/dist/{model-inventory-Dasber3S.mjs → model-inventory-BFVSNFT3.mjs} +13 -12
- package/dist/{models-add-Bt7aUHDs.mjs → models-add-C1QIc1DA.mjs} +39 -38
- package/dist/operator-BTqvTIc8.mjs +7 -0
- package/dist/{operator-DZxcP-g8.mjs → operator-CyuB3aVw.mjs} +3 -3
- package/dist/{pai-marker-kIYuNt3c.mjs → pai-marker-BcZyJguM.mjs} +7 -6
- package/dist/{pane-audit-OGYrOAik.mjs → pane-audit-DKQt71s4.mjs} +7 -7
- package/dist/{paths-DoRuFc60.mjs → paths-CFHTloSe.mjs} +3 -3
- package/dist/{paths-DoIyRnhx.mjs → paths-CHifubDh.mjs} +3 -3
- package/dist/{planner-DLGOYlVb.mjs → planner-BmFACdLa.mjs} +31 -30
- package/dist/{pool-CZ5MZaXg.mjs → pool-Dh-q3iJi.mjs} +45 -6
- package/dist/{pool-cli-BxNSPzzY.mjs → pool-cli-BggU8GRp.mjs} +5 -5
- package/dist/{pool-cli-CbJfl37y.mjs → pool-cli-DQ6OzRy2.mjs} +6 -6
- package/dist/postgres-BdBNkL_l.mjs +7 -0
- package/dist/{postgres-CDnd_k5f.mjs → postgres-C6ti4haA.mjs} +55 -34
- package/dist/{project-setup-DM4npnL3.mjs → project-setup-jvfONJTQ.mjs} +131 -74
- package/dist/providers-BeDiVEb-.mjs +16 -0
- package/dist/{providers-UsKtLcUR.mjs → providers-CblTFrhz.mjs} +6 -6
- package/dist/{query-feedback-I-txSnld.mjs → query-feedback-BRfPtqki.mjs} +2 -2
- package/dist/registrable-BzH4TObg.mjs +9 -0
- package/dist/{registrable-LrRIVYQc.mjs → registrable-DpyTtajg.mjs} +4 -4
- package/dist/{render-BDbb4CF-.mjs → render-BYmQkuLd.mjs} +8 -8
- package/dist/render-CoMvwMPs.mjs +13 -0
- package/dist/{reranker-B4r4vykM.mjs → reranker-8g6xMwP7.mjs} +1 -1
- package/dist/{reranker-DxxMCtA0.mjs → reranker-CqCbpGnX.mjs} +1 -1
- package/dist/root-FtJsxYnm.mjs +36 -0
- package/dist/{root-BMeJuHOb.mjs → root-Xglu0OPD.mjs} +11 -11
- package/dist/route-table-B7zpoypi.mjs +15 -0
- package/dist/{router-L8Nu-OHF.mjs → router-CQSc3lk3.mjs} +17 -7
- package/dist/{router-D6Ec6Fid.mjs → router-DwHJRgG9.mjs} +1 -1
- package/dist/{routing-CUyiglfu.mjs → routing-BAAST9vT.mjs} +27 -308
- package/dist/{routing-ZuGlc0ge.mjs → routing-CENt4HH1.mjs} +13 -12
- package/dist/{run-ulAi5dFD.mjs → run-CSC7mgPf.mjs} +35 -33
- package/dist/{scan-B7I0gPe-.mjs → scan-C_Y5W9py.mjs} +6 -6
- package/dist/{local-candidate-jOjTNlOL.mjs → scheduler-CtUyWJ3O.mjs} +7 -109
- package/dist/scheduler-dmHXoRvm.mjs +3 -0
- package/dist/{scope-D5VSQxe4.mjs → scope-D-h6F6DN.mjs} +4 -4
- package/dist/{search-CPoE0830.mjs → search-RSyeQqj1.mjs} +18 -18
- package/dist/{session-CNXF6DLP.mjs → session-8iqQDkqb.mjs} +55 -31
- package/dist/session-BeqAbNPd.mjs +35 -0
- package/dist/session-scan-BJI_ZO8M.mjs +9 -0
- package/dist/{session-scan-BDLEc4w1.mjs → session-scan-W-gbwJHM.mjs} +6 -6
- package/dist/{sources-CjhUKKtO.mjs → sources-ESUkZaWv.mjs} +1 -1
- package/dist/{status-DYydKQUI.mjs → status-Dm4dYciN.mjs} +4 -4
- package/dist/{status-CvVi9cDf.mjs → status-ggJ7lgVg.mjs} +17 -9
- package/dist/{stop-words-SdSL1WKH.mjs → stop-words-DSEYQdNe.mjs} +1 -1
- package/dist/{test-isolation-CoDeOVXb.mjs → test-isolation-lqSmYxr0.mjs} +1 -1
- package/dist/{timeouts-OwEONmc8.mjs → timeouts-1MLooEBB.mjs} +1 -1
- package/dist/{tool-errors-AeRQuG3Y.mjs → tool-errors-7E13StWd.mjs} +4 -3
- package/dist/{tool-errors-R5E0fCgf.mjs → tool-errors-CJWODvlo.mjs} +6 -6
- package/dist/viewer-CqozWW39.mjs +22 -0
- package/dist/{viewer-DtWj5Vti.mjs → viewer-mDXUNHNy.mjs} +15 -15
- package/dist/{wait-BMUR-U-U.mjs → wait-ByV0OyMZ.mjs} +3 -3
- package/dist/{worker-config-BLqa1yiD.mjs → worker-config-CJhEMk19.mjs} +294 -92
- package/dist/worker-config-DESkIjMF.mjs +41 -0
- package/dist/{workers-config-DEI9lrV4.mjs → workers-config-f8KrkY4L.mjs} +2 -2
- package/dist/{worktree-zmRf556h.mjs → worktree-CRs2gyg0.mjs} +37 -7
- package/dist/{zettelkasten-nigq7fqs.mjs → zettelkasten-B_rRRRvD.mjs} +5 -5
- package/dist/{zettelkasten-Cr_Xj0mG.mjs → zettelkasten-BzMm8REH.mjs} +29 -19
- package/docs/README.md +2 -0
- package/docs/cockpit.md +10 -4
- package/docs/commands/README.md +4 -4
- package/docs/commands/backup.md +2 -0
- package/docs/commands/install.md +29 -4
- package/docs/commands/providers.md +1 -1
- package/docs/commands/restore.md +4 -0
- package/docs/commands/setup.md +29 -4
- package/docs/commands/worker.md +1 -1
- package/docs/config.md +2 -0
- package/docs/features.md +299 -0
- package/docs/images/architecture.drawio +51 -0
- package/docs/images/architecture.png +0 -0
- package/docs/images/architecture.svg +3 -0
- package/docs/images/cockpit-01-system-tokens.jpg +0 -0
- package/docs/images/cockpit-02-totals-cache.jpg +0 -0
- package/docs/images/cockpit-03-local-servers-models-pool.jpg +0 -0
- package/docs/images/cockpit-04-workers-memory.jpg +0 -0
- package/docs/images/cockpit-05-performance.jpg +0 -0
- package/docs/images/cockpit-06-runs-speed-routing.jpg +0 -0
- package/docs/images/cockpit-07-settings-registry.jpg +0 -0
- package/docs/install/index.md +29 -0
- package/docs/three-tier-coding.md +1 -1
- package/gemini-extension.json +1 -1
- package/package.json +1 -5
- package/pai-plugin.json +1 -1
- package/plugins/context-preservation/plugin.json +1 -1
- package/plugins/core/plugin.json +1 -1
- package/plugins/core/skills/setup/SKILL.md +41 -9
- package/plugins/creative/plugin.json +1 -1
- package/plugins/observability/plugin.json +1 -1
- package/plugins/productivity/plugin.json +1 -1
- package/plugins/semantic-search/plugin.json +1 -1
- package/plugins/ui/plugin.json +1 -1
- package/plugins/zettelkasten/plugin.json +1 -1
- package/src/hooks/session-autosave.sh +8 -1
- package/src/hooks/session-stop.sh +8 -1
- package/src/hooks/ts/capture-all-events.ts +7 -12
- package/src/hooks/ts/lib/context-fill.ts +2 -1
- package/src/hooks/ts/lib/path-repair.ts +1 -1
- package/src/hooks/ts/lib/project-utils/notify.ts +1 -0
- package/src/hooks/ts/lib/project-utils/session-notes.ts +23 -6
- package/src/hooks/ts/lib/raw-capture.ts +36 -0
- package/src/hooks/ts/lib/session-summary.ts +129 -0
- package/src/hooks/ts/lib/todo-sync.ts +120 -0
- package/src/hooks/ts/lib/worker-git-guard.ts +1 -1
- package/src/hooks/ts/post-tool-use/capture-tool-output.ts +6 -10
- package/src/hooks/ts/post-tool-use/sync-todo-to-md.ts +5 -105
- package/src/hooks/ts/pre-compact/context-compression-hook.ts +1 -1
- package/src/hooks/ts/pre-tool-use/security-validator.ts +35 -14
- package/src/hooks/ts/session-end/capture-session-summary.ts +20 -128
- package/src/hooks/ts/session-start/load-core-context.ts +3 -3
- package/src/hooks/ts/session-start/load-project-context.ts +18 -22
- package/src/hooks/ts/stop/stop-hook.ts +13 -5
- package/src/hooks/ztk-auto.sh +7 -2
- package/dist/aibroker-client-JjE74jo0.mjs +0 -3
- package/dist/auto-route-BRk8NEFv.mjs +0 -11
- package/dist/budget-DuhQ2zzG.mjs +0 -14
- package/dist/cockpit-actions-DcQ-ucU8.mjs +0 -19
- package/dist/cockpit-memory-KV45PPO2.mjs +0 -19
- package/dist/daemon-C7yt_ptC.mjs +0 -44
- package/dist/detect-DRUkmHnb.mjs +0 -10
- package/dist/factory-DAGG9_n8.mjs +0 -9
- package/dist/helpers-DPJEHPq6.mjs +0 -10
- package/dist/kill-tree-LV0Q7Mte.mjs +0 -10
- package/dist/operator-CfL0HiBK.mjs +0 -7
- package/dist/postgres-DgqWyqhN.mjs +0 -7
- package/dist/providers-CTu2s1z2.mjs +0 -15
- package/dist/registrable-D9aNZOTh.mjs +0 -9
- package/dist/render-BSfVlYHj.mjs +0 -13
- package/dist/root-xI9DqVIe.mjs +0 -35
- package/dist/route-table-HjvnLVEU.mjs +0 -14
- package/dist/session-BJHzmUg2.mjs +0 -34
- package/dist/session-scan-YORKE1NO.mjs +0 -9
- package/dist/viewer-B8709jDN.mjs +0 -22
- package/dist/worker-config-D8tRuvo7.mjs +0 -40
- package/docs/images/cockpit-limits-routing.jpg +0 -0
- package/docs/images/cockpit-models.jpg +0 -0
- package/docs/images/cockpit-usage.jpg +0 -0
- package/docs/images/cockpit-workers-system.jpg +0 -0
- package/scripts/build-docs.mjs +0 -41
- package/scripts/build-hooks.mjs +0 -311
- package/scripts/build-skill-stubs.mjs +0 -216
- package/scripts/copy-defaults.mjs +0 -46
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
import { g as paiHomePath, h as paiHomeDir } from "./runtime-paths-WsO9sJFc.mjs";
|
|
2
|
-
import { j as readWorkersSection, t as ANTHROPIC_NATIVE, tt as workersYamlPath, wt as appendLedger } from "./config-
|
|
3
|
-
import { c as loadConfig, f as readMainConfigRaw, h as effectiveMainConfig, m as deepMergeConfig, p as writeMainConfigRaw, u as paiConfigFilePath, y as shippedMainDefaults } from "./config-
|
|
4
|
-
import { i as ledgerPath, u as workersLogDir } from "./paths-
|
|
5
|
-
import {
|
|
6
|
-
import { _ as readLocalConfig } from "./local-tiers-
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
2
|
+
import { Et as parseLedger, j as readWorkersSection, t as ANTHROPIC_NATIVE, tt as workersYamlPath, wt as appendLedger } from "./config-XpZWOYOG.mjs";
|
|
3
|
+
import { c as loadConfig, f as readMainConfigRaw, h as effectiveMainConfig, m as deepMergeConfig, p as writeMainConfigRaw, u as paiConfigFilePath, y as shippedMainDefaults } from "./config-Bu1_vbY8.mjs";
|
|
4
|
+
import { i as ledgerPath, u as workersLogDir } from "./paths-CHifubDh.mjs";
|
|
5
|
+
import { it as readInventory } from "./routing-BAAST9vT.mjs";
|
|
6
|
+
import { _ as readLocalConfig } from "./local-tiers-BE4jGaMa.mjs";
|
|
7
|
+
import { f as sharedScheduler } from "./scheduler-CtUyWJ3O.mjs";
|
|
8
|
+
import { r as instanceEngineKey } from "./local-instances-DOxSgT_L.mjs";
|
|
9
|
+
import { o as primaryLocal, s as readLocalStatus } from "./local-candidate-DLdwQt0s.mjs";
|
|
10
|
+
import { t as LOCAL_PROBE_TIMEOUT_MS } from "./timeouts-1MLooEBB.mjs";
|
|
11
|
+
import { f as setClass } from "./providers-CblTFrhz.mjs";
|
|
12
|
+
import { o as setConfigValueOp, s as unsetConfigValueOp } from "./main-config-ops-BEMpuhDz.mjs";
|
|
13
|
+
import { n as PaiClient } from "./ipc-client-CaiGJnSM.mjs";
|
|
14
|
+
import { l as readEmbedPasses } from "./embed-pass-DIWjA68P.mjs";
|
|
13
15
|
import { appendFileSync, closeSync, existsSync, mkdirSync, openSync, readFileSync, readSync, readdirSync, renameSync, rmSync, rmdirSync, statSync, writeFileSync } from "node:fs";
|
|
16
|
+
import { randomBytes } from "node:crypto";
|
|
14
17
|
import { dirname, join } from "node:path";
|
|
15
18
|
import { execFileSync, spawn } from "node:child_process";
|
|
16
|
-
import { randomBytes } from "node:crypto";
|
|
17
19
|
|
|
18
20
|
//#region src/memory/run-state.ts
|
|
19
21
|
/**
|
|
@@ -262,6 +264,11 @@ function num(section, key, fallback) {
|
|
|
262
264
|
const v = section[key];
|
|
263
265
|
return typeof v === "number" && Number.isFinite(v) && v > 0 ? v : fallback;
|
|
264
266
|
}
|
|
267
|
+
/** Like num, but 0 is a real setting (a threshold or hold of 0 turns it off). */
|
|
268
|
+
function numZ(section, key, fallback) {
|
|
269
|
+
const v = section[key];
|
|
270
|
+
return typeof v === "number" && Number.isFinite(v) && v >= 0 ? v : fallback;
|
|
271
|
+
}
|
|
265
272
|
/** A non-empty string from the config subtree, else the shipped fallback. */
|
|
266
273
|
function str(section, key, fallback) {
|
|
267
274
|
return typeof section[key] === "string" && section[key] ? section[key] : fallback;
|
|
@@ -379,42 +386,42 @@ function cockpitLayout() {
|
|
|
379
386
|
sparkHeightPx: num(s, "sparkHeightPx", SHIPPED.sparkHeightPx),
|
|
380
387
|
sparkViewMaxPx: num(s, "sparkViewMaxPx", SHIPPED.sparkViewMaxPx),
|
|
381
388
|
sparkPlotHeightPx: num(s, "sparkPlotHeightPx", SHIPPED.sparkPlotHeightPx),
|
|
382
|
-
sparkPlotTopPx:
|
|
389
|
+
sparkPlotTopPx: numZ(s, "sparkPlotTopPx", SHIPPED.sparkPlotTopPx),
|
|
383
390
|
donutSizePx: num(s, "donutSizePx", SHIPPED.donutSizePx),
|
|
384
391
|
donutRadiusPx: num(s, "donutRadiusPx", SHIPPED.donutRadiusPx),
|
|
385
392
|
donutStrokePx: num(s, "donutStrokePx", SHIPPED.donutStrokePx),
|
|
386
393
|
donutViewBoxPx: num(s, "donutViewBoxPx", SHIPPED.donutViewBoxPx),
|
|
387
|
-
minLabelGapPx:
|
|
388
|
-
minBarPx:
|
|
394
|
+
minLabelGapPx: numZ(s, "minLabelGapPx", SHIPPED.minLabelGapPx),
|
|
395
|
+
minBarPx: numZ(s, "minBarPx", SHIPPED.minBarPx),
|
|
389
396
|
sysHistoryLen: num(s, "sysHistoryLen", SHIPPED.sysHistoryLen),
|
|
390
397
|
dailyDays: num(s, "dailyDays", SHIPPED.dailyDays),
|
|
391
398
|
sessionsRows: num(s, "sessionsRows", SHIPPED.sessionsRows),
|
|
392
399
|
sessionsTopRows: num(s, "sessionsTopRows", SHIPPED.sessionsTopRows),
|
|
393
400
|
sessionNameMaxPct: num(s, "sessionNameMaxPct", SHIPPED.sessionNameMaxPct),
|
|
394
401
|
workerRows: num(s, "workerRows", SHIPPED.workerRows),
|
|
395
|
-
lowRequestMin:
|
|
402
|
+
lowRequestMin: numZ(s, "lowRequestMin", SHIPPED.lowRequestMin),
|
|
396
403
|
colorPruneDays: num(s, "colorPruneDays", SHIPPED.colorPruneDays),
|
|
397
404
|
pollMs: num(s, "pollMs", SHIPPED.pollMs),
|
|
398
405
|
limitsPollMs: num(s, "limitsPollMs", SHIPPED.limitsPollMs),
|
|
399
406
|
poolPollMs: num(s, "poolPollMs", SHIPPED.poolPollMs),
|
|
400
407
|
clockTickMs: num(s, "clockTickMs", SHIPPED.clockTickMs),
|
|
401
408
|
stampStaleSecs: num(s, "stampStaleSecs", SHIPPED.stampStaleSecs),
|
|
402
|
-
holdLastGoodSecs:
|
|
409
|
+
holdLastGoodSecs: numZ(s, "holdLastGoodSecs", SHIPPED.holdLastGoodSecs),
|
|
403
410
|
jobPollMs: num(s, "jobPollMs", SHIPPED.jobPollMs),
|
|
404
|
-
jobFirstDelayMs:
|
|
411
|
+
jobFirstDelayMs: numZ(s, "jobFirstDelayMs", SHIPPED.jobFirstDelayMs),
|
|
405
412
|
jobMaxTries: num(s, "jobMaxTries", SHIPPED.jobMaxTries),
|
|
406
413
|
serverCounterStaleSecs: num(s, "serverCounterStaleSecs", SHIPPED.serverCounterStaleSecs),
|
|
407
|
-
gaugeWarnPct:
|
|
408
|
-
gaugeBadPct:
|
|
409
|
-
hitWarn:
|
|
410
|
-
hitBad:
|
|
411
|
-
errorWarn:
|
|
412
|
-
errorBad:
|
|
414
|
+
gaugeWarnPct: numZ(s, "gaugeWarnPct", SHIPPED.gaugeWarnPct),
|
|
415
|
+
gaugeBadPct: numZ(s, "gaugeBadPct", SHIPPED.gaugeBadPct),
|
|
416
|
+
hitWarn: numZ(s, "hitWarn", SHIPPED.hitWarn),
|
|
417
|
+
hitBad: numZ(s, "hitBad", SHIPPED.hitBad),
|
|
418
|
+
errorWarn: numZ(s, "errorWarn", SHIPPED.errorWarn),
|
|
419
|
+
errorBad: numZ(s, "errorBad", SHIPPED.errorBad),
|
|
413
420
|
memoryTitle: str(s, "memoryTitle", SHIPPED.memoryTitle),
|
|
414
421
|
memoryPollMs: num(s, "memoryPollMs", SHIPPED.memoryPollMs),
|
|
415
|
-
memoryCoverageWarn:
|
|
416
|
-
memoryCoverageBad:
|
|
417
|
-
memoryStartGraceSecs:
|
|
422
|
+
memoryCoverageWarn: numZ(s, "memoryCoverageWarn", SHIPPED.memoryCoverageWarn),
|
|
423
|
+
memoryCoverageBad: numZ(s, "memoryCoverageBad", SHIPPED.memoryCoverageBad),
|
|
424
|
+
memoryStartGraceSecs: numZ(s, "memoryStartGraceSecs", SHIPPED.memoryStartGraceSecs),
|
|
418
425
|
memoryStallSecs: num(s, "memoryStallSecs", SHIPPED.memoryStallSecs),
|
|
419
426
|
memoryHistoryLen: num(s, "memoryHistoryLen", SHIPPED.memoryHistoryLen),
|
|
420
427
|
memoryRingPx: num(s, "memoryRingPx", SHIPPED.memoryRingPx)
|
|
@@ -1195,6 +1202,11 @@ function writeJob(home, j) {
|
|
|
1195
1202
|
writeFileSync(path, JSON.stringify(j) + "\n", "utf8");
|
|
1196
1203
|
} catch {}
|
|
1197
1204
|
}
|
|
1205
|
+
/** The running local model's name, for the "stops X first" confirm text. */
|
|
1206
|
+
function runningLocalModel(st) {
|
|
1207
|
+
const r = primaryLocal(st);
|
|
1208
|
+
return r ? `${r.provider} (${r.model})` : null;
|
|
1209
|
+
}
|
|
1198
1210
|
/** The catalogue model a name stands for: a model name as is, a provider name (the Local servers card) resolved to the model that serves it. */
|
|
1199
1211
|
function resolveTierName(name, models, yamlPath) {
|
|
1200
1212
|
if (models.includes(name)) return name;
|
|
@@ -1226,6 +1238,31 @@ function readLabels() {
|
|
|
1226
1238
|
return {};
|
|
1227
1239
|
}
|
|
1228
1240
|
}
|
|
1241
|
+
/** The label of a runtime (or one of its models), "" when none is set. */
|
|
1242
|
+
function labelFor(runtime, model) {
|
|
1243
|
+
const block = readLabels()[runtime];
|
|
1244
|
+
if (model) {
|
|
1245
|
+
if (block && typeof block === "object" && !Array.isArray(block)) {
|
|
1246
|
+
const v = block[model];
|
|
1247
|
+
return typeof v === "string" ? v : "";
|
|
1248
|
+
}
|
|
1249
|
+
return "";
|
|
1250
|
+
}
|
|
1251
|
+
return typeof block === "string" ? block : "";
|
|
1252
|
+
}
|
|
1253
|
+
/** Which classes currently pin this provider (the "workers" toggle state). */
|
|
1254
|
+
function classesOnProvider(workers, provider) {
|
|
1255
|
+
return Object.entries(workers.classes).filter(([, t]) => (typeof t === "string" ? t.split("/")[0] : t.provider) === provider).map(([c]) => c);
|
|
1256
|
+
}
|
|
1257
|
+
/** The provider the orchestrate/chat side runs on: the session profile's chat
|
|
1258
|
+
* provider when set, else the active provider ("" = the built-in anthropic). */
|
|
1259
|
+
function orchestratorProvider(workers) {
|
|
1260
|
+
try {
|
|
1261
|
+
const p = readWorkersSection().raw.session?.profile?.chat?.provider;
|
|
1262
|
+
if (typeof p === "string" && p) return p;
|
|
1263
|
+
} catch {}
|
|
1264
|
+
return workers.active && workers.active !== "auto" ? workers.active : "";
|
|
1265
|
+
}
|
|
1229
1266
|
/** Requests running or waiting on one engine key in a scheduler snapshot. */
|
|
1230
1267
|
function engineInflight(snap, key) {
|
|
1231
1268
|
const e = snap.engines[key];
|
|
@@ -1236,23 +1273,23 @@ function defaultDeps() {
|
|
|
1236
1273
|
const logDir = workersLogDir(workers);
|
|
1237
1274
|
return {
|
|
1238
1275
|
startTier: async (tierName) => {
|
|
1239
|
-
const { startTier } = await import("./worker-config-
|
|
1276
|
+
const { startTier } = await import("./worker-config-DESkIjMF.mjs");
|
|
1240
1277
|
const cfg = readLocalConfig(workersYamlPath());
|
|
1241
1278
|
const tier = cfg.tiers[tierName];
|
|
1242
1279
|
if (!tier) throw new Error(`no tier "${tierName}" (configured: ${Object.keys(cfg.tiers).join(", ") || "none"})`);
|
|
1243
1280
|
await startTier(cfg, tierName, tier);
|
|
1244
1281
|
},
|
|
1245
1282
|
stopAll: async () => {
|
|
1246
|
-
const { stopAll } = await import("./worker-config-
|
|
1283
|
+
const { stopAll } = await import("./worker-config-DESkIjMF.mjs");
|
|
1247
1284
|
await stopAll(readLocalConfig(workersYamlPath()));
|
|
1248
1285
|
},
|
|
1249
1286
|
startModel: async (model) => {
|
|
1250
|
-
const { startInstance } = await import("./worker-config-
|
|
1287
|
+
const { startInstance } = await import("./worker-config-DESkIjMF.mjs");
|
|
1251
1288
|
await startInstance(readLocalConfig(workersYamlPath()), model);
|
|
1252
1289
|
},
|
|
1253
1290
|
stopModel: async (target, opts) => {
|
|
1254
|
-
const { stopInstance } = await import("./worker-config-
|
|
1255
|
-
const { currentInstances } = await import("./worker-config-
|
|
1291
|
+
const { stopInstance } = await import("./worker-config-DESkIjMF.mjs");
|
|
1292
|
+
const { currentInstances } = await import("./worker-config-DESkIjMF.mjs");
|
|
1256
1293
|
const cfg = readLocalConfig(workersYamlPath());
|
|
1257
1294
|
const keys = new Map(currentInstances(cfg).map((r) => [r.id, instanceEngineKey(r)]));
|
|
1258
1295
|
await stopInstance(cfg, target, opts, {
|
|
@@ -1261,7 +1298,7 @@ function defaultDeps() {
|
|
|
1261
1298
|
});
|
|
1262
1299
|
},
|
|
1263
1300
|
runningCount: async (model) => {
|
|
1264
|
-
const { currentInstances } = await import("./worker-config-
|
|
1301
|
+
const { currentInstances } = await import("./worker-config-DESkIjMF.mjs");
|
|
1265
1302
|
return currentInstances(readLocalConfig(workersYamlPath())).filter((r) => r.model === model && r.state !== "failed").length;
|
|
1266
1303
|
},
|
|
1267
1304
|
setClass: (cls, target) => void setClass(cls, target),
|
|
@@ -1545,7 +1582,7 @@ async function runCockpitAction(body, deps, hooks = {}) {
|
|
|
1545
1582
|
if (action === "route.set") {
|
|
1546
1583
|
if (!target) return fail("target (tier) required");
|
|
1547
1584
|
try {
|
|
1548
|
-
const { setRoute } = await import("./route-table-
|
|
1585
|
+
const { setRoute } = await import("./route-table-B7zpoypi.mjs");
|
|
1549
1586
|
const models = Array.isArray(body.models) ? body.models : value !== void 0 ? value.split(",") : body.models;
|
|
1550
1587
|
const change = setRoute(target, models, deps.configPath);
|
|
1551
1588
|
writeLedgerLine(deps, action, change.id, `set:${change.entries.join(">")}`);
|
|
@@ -1562,7 +1599,7 @@ async function runCockpitAction(body, deps, hooks = {}) {
|
|
|
1562
1599
|
if (value !== "on" && value !== "off") return fail(`value must be on or off, got "${value ?? ""}"`);
|
|
1563
1600
|
if (!deps.workers.providers[target]?.characteristics) return fail(`"${target}" is not a registered endpoint (providers.${target}.characteristics)`);
|
|
1564
1601
|
try {
|
|
1565
|
-
const { setProviderEnabled } = await import("./providers-
|
|
1602
|
+
const { setProviderEnabled } = await import("./providers-BeDiVEb-.mjs");
|
|
1566
1603
|
setProviderEnabled(target, value === "on", deps.configPath);
|
|
1567
1604
|
writeLedgerLine(deps, action, target, `routing ${value}`);
|
|
1568
1605
|
return {
|
|
@@ -1588,7 +1625,7 @@ async function runCockpitAction(body, deps, hooks = {}) {
|
|
|
1588
1625
|
message: `worker classes → ${provider}`
|
|
1589
1626
|
};
|
|
1590
1627
|
}
|
|
1591
|
-
const { useProvider } = await import("./providers-
|
|
1628
|
+
const { useProvider } = await import("./providers-BeDiVEb-.mjs");
|
|
1592
1629
|
useProvider(provider);
|
|
1593
1630
|
try {
|
|
1594
1631
|
const raw = readMainConfigRaw();
|
|
@@ -1623,14 +1660,14 @@ async function memoryRunRefusal(deps, nowMs = Date.now()) {
|
|
|
1623
1660
|
}
|
|
1624
1661
|
/** The daemon's count of chunks without vectors; null when it does not answer. */
|
|
1625
1662
|
async function daemonEmbedBacklog() {
|
|
1626
|
-
const { fetchDaemonMemory } = await import("./cockpit-memory
|
|
1663
|
+
const { fetchDaemonMemory } = await import("./cockpit-memory--dnShXBA.mjs");
|
|
1627
1664
|
return (await fetchDaemonMemory())?.embedBacklog ?? null;
|
|
1628
1665
|
}
|
|
1629
1666
|
/** The daemon's in-process passes (no child, so no marker): its status says whether one runs. */
|
|
1630
1667
|
async function daemonMemoryBusy() {
|
|
1631
1668
|
try {
|
|
1632
|
-
const { PaiClient } = await import("./ipc-client-
|
|
1633
|
-
const { loadConfig } = await import("./config-
|
|
1669
|
+
const { PaiClient } = await import("./ipc-client-ZRmDKd5Z.mjs");
|
|
1670
|
+
const { loadConfig } = await import("./config-DtENJ6cL.mjs");
|
|
1634
1671
|
const s = await new PaiClient(loadConfig().socketPath).call("status", {}, 5e3);
|
|
1635
1672
|
if (s.embedInProgress) return "embed already running (started by daemon)";
|
|
1636
1673
|
if (s.indexInProgress) return "index already running (started by daemon)";
|
|
@@ -1744,7 +1781,7 @@ async function finishRuntimeJob(deps, hooks, id, runtime, op) {
|
|
|
1744
1781
|
end(state, message);
|
|
1745
1782
|
}
|
|
1746
1783
|
async function defaultRefreshInventory() {
|
|
1747
|
-
const { computeInventory, readInventoryInput, writeInventory } = await import("./model-inventory-
|
|
1784
|
+
const { computeInventory, readInventoryInput, writeInventory } = await import("./model-inventory-BFVSNFT3.mjs");
|
|
1748
1785
|
writeInventory(workersLogDir(readWorkersSection().workers), await computeInventory(readInventoryInput()));
|
|
1749
1786
|
}
|
|
1750
1787
|
/** Runs the injected local job, records its outcome in the job file and ledger. */
|
|
@@ -1806,7 +1843,12 @@ async function scaleModel(deps, model, count) {
|
|
|
1806
1843
|
}
|
|
1807
1844
|
await needDep(deps.stopModel)(model, count === 0 ? { all: true } : { count: have - count });
|
|
1808
1845
|
}
|
|
1846
|
+
/** The ledger lines of cockpit actions (for the card's result text / history). */
|
|
1847
|
+
function cockpitActionLedger(ledgerFile, lastN = 10) {
|
|
1848
|
+
if (!existsSync(ledgerFile)) return [];
|
|
1849
|
+
return parseLedger(readFileSync(ledgerFile, "utf8")).filter((l) => l.event === COCKPIT_ACTION_EVENT).slice(-lastN).map((l) => `${l.stamp} ${l.fields.action ?? "?"} ${l.fields.target ?? "-"} ${l.fields.result ?? ""}`);
|
|
1850
|
+
}
|
|
1809
1851
|
|
|
1810
1852
|
//#endregion
|
|
1811
|
-
export {
|
|
1812
|
-
//# sourceMappingURL=cockpit-actions-
|
|
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-BBHeyEZI.mjs.map
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import "./config-XpZWOYOG.mjs";
|
|
2
|
+
import "./config-Bu1_vbY8.mjs";
|
|
3
|
+
import "./paths-CHifubDh.mjs";
|
|
4
|
+
import "./status-ggJ7lgVg.mjs";
|
|
5
|
+
import "./scope-D-h6F6DN.mjs";
|
|
6
|
+
import "./routing-BAAST9vT.mjs";
|
|
7
|
+
import "./tool-errors-7E13StWd.mjs";
|
|
8
|
+
import "./wait-ByV0OyMZ.mjs";
|
|
9
|
+
import "./local-tiers-BE4jGaMa.mjs";
|
|
10
|
+
import "./caller-identity-yLFb7CKq.mjs";
|
|
11
|
+
import "./capacity-DEveQdFV.mjs";
|
|
12
|
+
import "./local-instances-DOxSgT_L.mjs";
|
|
13
|
+
import "./local-candidate-DLdwQt0s.mjs";
|
|
14
|
+
import "./providers-CblTFrhz.mjs";
|
|
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-BBHeyEZI.mjs";
|
|
17
|
+
import "./ipc-client-CaiGJnSM.mjs";
|
|
18
|
+
import "./embed-pass-DIWjA68P.mjs";
|
|
19
|
+
|
|
20
|
+
export { COCKPIT_ACTION_EVENT, RUNTIME_START_EVENT, RUNTIME_STOP_EVENT, WORKER_ROLE_CLASSES, classesOnProvider, cockpitActionLedger, cockpitJobFile, defaultDeps, engineInflight, labelFor, labelPath, logTailSince, memoryRunRefusal, orchestratorProvider, readCockpitJob, readLabels, resolveTierName, runCockpitAction, runningLocalModel, runningRuntimeJob, runningRuntimeJobs, runtimeJobProgress, runtimeOpRefusal, runtimeStartStop, spawnMemoryRun, tierNames, writeLedgerLine };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import "./config-XpZWOYOG.mjs";
|
|
2
|
+
import "./config-Bu1_vbY8.mjs";
|
|
3
|
+
import "./paths-CHifubDh.mjs";
|
|
4
|
+
import "./status-ggJ7lgVg.mjs";
|
|
5
|
+
import "./scope-D-h6F6DN.mjs";
|
|
6
|
+
import "./routing-BAAST9vT.mjs";
|
|
7
|
+
import "./tool-errors-7E13StWd.mjs";
|
|
8
|
+
import "./wait-ByV0OyMZ.mjs";
|
|
9
|
+
import "./local-tiers-BE4jGaMa.mjs";
|
|
10
|
+
import "./caller-identity-yLFb7CKq.mjs";
|
|
11
|
+
import "./capacity-DEveQdFV.mjs";
|
|
12
|
+
import "./local-instances-DOxSgT_L.mjs";
|
|
13
|
+
import "./local-candidate-DLdwQt0s.mjs";
|
|
14
|
+
import "./providers-CblTFrhz.mjs";
|
|
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-BBHeyEZI.mjs";
|
|
17
|
+
import "./ipc-client-CaiGJnSM.mjs";
|
|
18
|
+
import "./embed-pass-DIWjA68P.mjs";
|
|
19
|
+
|
|
20
|
+
export { fetchDaemonMemory };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { _ as resolvePaiFile, c as PaiFileMigrationError, f as legacyConfigDir, g as paiHomePath, l as claudeHomeDir, m as migratePaiFile, o as paiSocketPath } from "./runtime-paths-WsO9sJFc.mjs";
|
|
2
|
-
import { t as assertTestWriteAllowed } from "./test-isolation-
|
|
2
|
+
import { t as assertTestWriteAllowed } from "./test-isolation-lqSmYxr0.mjs";
|
|
3
3
|
import { chmodSync, copyFileSync, existsSync, mkdirSync, readFileSync, readdirSync, renameSync, unlinkSync, writeFileSync } from "node:fs";
|
|
4
4
|
import { basename, dirname, join } from "node:path";
|
|
5
5
|
import { homedir, userInfo } from "node:os";
|
|
@@ -13,6 +13,45 @@ const DEFAULT_PG_CONNECTION_TIMEOUT_MS = 5e3;
|
|
|
13
13
|
function postgresConnectionString(config) {
|
|
14
14
|
return config.connectionString ?? `postgresql://${config.user ?? "pai"}:${config.password ?? "pai"}@${config.host ?? "localhost"}:${config.port ?? 5432}/${config.database ?? "pai"}`;
|
|
15
15
|
}
|
|
16
|
+
/** Postgres truncates identifiers beyond this many bytes. */
|
|
17
|
+
const PG_IDENT_MAX_BYTES = 63;
|
|
18
|
+
/** Throws unless `name` is usable as a database or role name: non-empty, no NUL, not option-like, at most `maxBytes`. */
|
|
19
|
+
function assertPgName(name, kind, maxBytes = PG_IDENT_MAX_BYTES) {
|
|
20
|
+
if (name === "" || name.includes("\0") || name.startsWith("-")) throw new Error(`invalid Postgres ${kind} name ${JSON.stringify(name)}`);
|
|
21
|
+
if (Buffer.byteLength(name) > maxBytes) throw new Error(`Postgres ${kind} name "${name}" is longer than ${maxBytes} bytes`);
|
|
22
|
+
}
|
|
23
|
+
/** Double-quoted SQL identifier; keeps case and neutralises any character. */
|
|
24
|
+
function quoteIdent(name) {
|
|
25
|
+
if (name === "" || name.includes("\0")) throw new Error(`invalid Postgres identifier ${JSON.stringify(name)}`);
|
|
26
|
+
return `"${name.replace(/"/g, "\"\"")}"`;
|
|
27
|
+
}
|
|
28
|
+
/** Full target (names and server) read from the URL the storage backend uses. */
|
|
29
|
+
function postgresFullTarget(config) {
|
|
30
|
+
const connectionString = postgresConnectionString(config);
|
|
31
|
+
const url = new URL(connectionString);
|
|
32
|
+
const database = decodeURIComponent(url.pathname.replace(/^\//, ""));
|
|
33
|
+
const user = decodeURIComponent(url.username);
|
|
34
|
+
assertPgName(database, "database");
|
|
35
|
+
assertPgName(user, "user");
|
|
36
|
+
return {
|
|
37
|
+
database,
|
|
38
|
+
user,
|
|
39
|
+
host: url.hostname.replace(/^\[|\]$/g, "") || "localhost",
|
|
40
|
+
port: url.port ? Number(url.port) : 5432,
|
|
41
|
+
password: url.password ? decodeURIComponent(url.password) : void 0,
|
|
42
|
+
connectionString
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
const LOCAL_HOSTS = new Set([
|
|
46
|
+
"localhost",
|
|
47
|
+
"127.0.0.1",
|
|
48
|
+
"::1",
|
|
49
|
+
"0.0.0.0"
|
|
50
|
+
]);
|
|
51
|
+
/** True when the target is the local server PAI's `pai-pgvector` container publishes; anything else is an external server reached directly. */
|
|
52
|
+
function isContainerTarget(t) {
|
|
53
|
+
return t.host === void 0 || LOCAL_HOSTS.has(t.host.toLowerCase());
|
|
54
|
+
}
|
|
16
55
|
|
|
17
56
|
//#endregion
|
|
18
57
|
//#region src/config/json-store.ts
|
|
@@ -752,5 +791,5 @@ function ensureConfigDir() {
|
|
|
752
791
|
}
|
|
753
792
|
|
|
754
793
|
//#endregion
|
|
755
|
-
export {
|
|
756
|
-
//# sourceMappingURL=config-
|
|
794
|
+
export { assertPgName as A, migrateMainConfigToYaml as C, readJsonStrict as D, writeYamlFileAtomic as E, postgresConnectionString as M, postgresFullTarget as N, writeJsonAtomic as O, quoteIdent as P, MainConfigError as S, YamlStoreError as T, effectiveWorkersYamlRaw as _, ensureConfigDir as a, shippedWorkersDefaults as b, loadConfig as c, paiConfigYamlFilePath as d, readMainConfigRaw as f, effectiveWorkersYamlDoc as g, effectiveMainConfig as h, defaults as i, isContainerTarget as j, DEFAULT_PG_CONNECTION_TIMEOUT_MS as k, migrateConfigFile as l, deepMergeConfig as m, CONFIG_FILE as n, expandHome as o, writeMainConfigRaw as p, ConfigMigrationError as r, homeRel as s, CONFIG_DIR as t, paiConfigFilePath as u, shippedDefaultsDir as v, resolvedMainConfigPath as w, userWorkersYamlRaw as x, shippedMainDefaults as y };
|
|
795
|
+
//# sourceMappingURL=config-Bu1_vbY8.mjs.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as providerQuotaSkipAt, C as parseMcpSetsValue, D as providerContextWindow, E as parseWorkersConfig, F as writeWorkersSection, M as resolveCapability, N as resolveModelCapability, O as providerCostTier, P as resolveProviderKey, S as parseClassesValue, T as parseProvider, _ as maskKey, a as MODEL_CAPABILITIES, b as nativeOrchestratorModel, c as WorkersConfigError, d as defaultWorkersConfig, f as escalationCloud, g as keysDir, h as isModelCapability, ht as DEFAULT_CONTEXT_WINDOW, i as DEFAULT_POOL_PORT, j as readWorkersSection, k as providerKeyPath, l as assertProviderRunnable, m as isLocalProvider, n as CAPABILITY_NAME_RE, o as PROVIDER_TAGS, p as getProviderOrNative, r as DEFAULT_COST_TIER, s as WORKER_CLASSES, t as ANTHROPIC_NATIVE, u as classModelCapability, v as nativeAnthropicModels, w as parseModelsBlock, x as parseCapabilitiesValue, y as nativeAnthropicProvider } from "./config-
|
|
2
|
-
import { o as expandHome, s as homeRel } from "./config-
|
|
1
|
+
import { A as providerQuotaSkipAt, C as parseMcpSetsValue, D as providerContextWindow, E as parseWorkersConfig, F as writeWorkersSection, M as resolveCapability, N as resolveModelCapability, O as providerCostTier, P as resolveProviderKey, S as parseClassesValue, T as parseProvider, _ as maskKey, a as MODEL_CAPABILITIES, b as nativeOrchestratorModel, c as WorkersConfigError, d as defaultWorkersConfig, f as escalationCloud, g as keysDir, h as isModelCapability, ht as DEFAULT_CONTEXT_WINDOW, i as DEFAULT_POOL_PORT, j as readWorkersSection, k as providerKeyPath, l as assertProviderRunnable, m as isLocalProvider, n as CAPABILITY_NAME_RE, o as PROVIDER_TAGS, p as getProviderOrNative, r as DEFAULT_COST_TIER, s as WORKER_CLASSES, t as ANTHROPIC_NATIVE, u as classModelCapability, v as nativeAnthropicModels, w as parseModelsBlock, x as parseCapabilitiesValue, y as nativeAnthropicProvider } from "./config-XpZWOYOG.mjs";
|
|
2
|
+
import { o as expandHome, s as homeRel } from "./config-Bu1_vbY8.mjs";
|
|
3
3
|
|
|
4
4
|
export { ANTHROPIC_NATIVE, CAPABILITY_NAME_RE, DEFAULT_CONTEXT_WINDOW, DEFAULT_COST_TIER, DEFAULT_POOL_PORT, MODEL_CAPABILITIES, PROVIDER_TAGS, WORKER_CLASSES, WorkersConfigError, assertProviderRunnable, classModelCapability, defaultWorkersConfig, escalationCloud, expandHome, getProviderOrNative, homeRel, isLocalProvider, isModelCapability, keysDir, maskKey, nativeAnthropicModels, nativeAnthropicProvider, nativeOrchestratorModel, parseCapabilitiesValue, parseClassesValue, parseMcpSetsValue, parseModelsBlock, parseProvider, parseWorkersConfig, providerContextWindow, providerCostTier, providerKeyPath, providerQuotaSkipAt, readWorkersSection, resolveCapability, resolveModelCapability, resolveProviderKey, writeWorkersSection };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as ensureConfigDir, c as loadConfig, d as paiConfigYamlFilePath, f as readMainConfigRaw, i as defaults, l as migrateConfigFile, n as CONFIG_FILE, o as expandHome, p as writeMainConfigRaw, r as ConfigMigrationError, s as homeRel, t as CONFIG_DIR, u as paiConfigFilePath } from "./config-
|
|
1
|
+
import { a as ensureConfigDir, c as loadConfig, d as paiConfigYamlFilePath, f as readMainConfigRaw, i as defaults, l as migrateConfigFile, n as CONFIG_FILE, o as expandHome, p as writeMainConfigRaw, r as ConfigMigrationError, s as homeRel, t as CONFIG_DIR, u as paiConfigFilePath } from "./config-Bu1_vbY8.mjs";
|
|
2
2
|
|
|
3
3
|
export { CONFIG_DIR, CONFIG_FILE, ConfigMigrationError, defaults, ensureConfigDir, expandHome, homeRel, loadConfig, migrateConfigFile, paiConfigFilePath, paiConfigYamlFilePath, readMainConfigRaw, writeMainConfigRaw };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { _ as resolvePaiFile, f as legacyConfigDir, g as paiHomePath, l as claudeHomeDir, m as migratePaiFile } from "./runtime-paths-WsO9sJFc.mjs";
|
|
2
|
-
import { D as readJsonStrict, E as writeYamlFileAtomic, O as writeJsonAtomic, T as YamlStoreError, _ as effectiveWorkersYamlRaw, b as shippedWorkersDefaults, f as readMainConfigRaw, g as effectiveWorkersYamlDoc, h as effectiveMainConfig, n as CONFIG_FILE, o as expandHome, p as writeMainConfigRaw, u as paiConfigFilePath, x as userWorkersYamlRaw } from "./config-
|
|
2
|
+
import { D as readJsonStrict, E as writeYamlFileAtomic, O as writeJsonAtomic, T as YamlStoreError, _ as effectiveWorkersYamlRaw, b as shippedWorkersDefaults, f as readMainConfigRaw, g as effectiveWorkersYamlDoc, h as effectiveMainConfig, n as CONFIG_FILE, o as expandHome, p as writeMainConfigRaw, u as paiConfigFilePath, x as userWorkersYamlRaw } from "./config-Bu1_vbY8.mjs";
|
|
3
3
|
import { appendFileSync, chmodSync, existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
4
4
|
import { dirname, join, resolve } from "node:path";
|
|
5
5
|
import { Document, Scalar, parseDocument } from "yaml";
|
|
@@ -2475,4 +2475,4 @@ function escalationCloud() {
|
|
|
2475
2475
|
|
|
2476
2476
|
//#endregion
|
|
2477
2477
|
export { starterWorkersYamlText as $, providerQuotaSkipAt as A, WORKERS_YAML_FILENAME as B, parseMcpSetsValue as C, withSummary as Ct, providerContextWindow as D, parseWorkersConfig as E, parseLedger as Et, writeWorkersSection as F, inlineWorkersYamlKeys as G, defaultWorkersYamlPath as H, LOOPBACK_HOST as I, parseBuiltinAnthropic as J, migrateWorkersToYaml as K, isLoopbackHostname as L, resolveCapability as M, resolveModelCapability as N, providerCostTier as O, resolveProviderKey as P, relocateWorkersYaml as Q, isLoopbackUrl as R, parseClassesValue as S, sessionNote as St, parseProvider as T, ledgerSummary as Tt, effectiveWorkersYamlData as U, buildWorkersYamlText as V, initWorkersYaml as W, readMergeVerify as X, parseWorkersYamlDocument as Y, readWorkersYaml as Z, maskKey as _, contextWindowFromModelId as _t, MODEL_CAPABILITIES as a, MAX_ROUTE_MODELS as at, nativeOrchestratorModel as b, ledgerEscalate as bt, WorkersConfigError as c, entryProvider as ct, defaultWorkersConfig as d, migrateSessionRoutes as dt, workersYamlLegacyNotice as et, escalationCloud as f, parseEntry as ft, keysDir as g, certainContextWindow as gt, isModelCapability as h, DEFAULT_CONTEXT_WINDOW as ht, DEFAULT_POOL_PORT as i, yamlProviderToRaw as it, readWorkersSection as j, providerKeyPath as k, assertProviderRunnable as l, findTier as lt, isLocalProvider as m, targetList as mt, CAPABILITY_NAME_RE as n, writeWorkersYaml as nt, PROVIDER_TAGS as o, applyRouteOverrides as ot, getProviderOrNative as p, sessionTier as pt, needsWorkersYamlRelocation as q, DEFAULT_COST_TIER as r, writeWorkersYamlText as rt, WORKER_CLASSES as s, classRoute as st, ANTHROPIC_NATIVE as t, workersYamlPath as tt, classModelCapability as u, listForPolicy as ut, nativeAnthropicModels as v, stripModelVariant as vt, parseModelsBlock as w, appendLedger as wt, parseCapabilitiesValue as x, planEscalation as xt, nativeAnthropicProvider as y, ESCALATE_FAILURES as yt, loopbackUrl as z };
|
|
2478
|
-
//# sourceMappingURL=config-
|
|
2478
|
+
//# sourceMappingURL=config-XpZWOYOG.mjs.map
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import { g as paiHomePath } from "./runtime-paths-WsO9sJFc.mjs";
|
|
2
|
-
import { Et as parseLedger, d as defaultWorkersConfig, f as escalationCloud, j as readWorkersSection, m as isLocalProvider, wt as appendLedger, yt as ESCALATE_FAILURES } from "./config-
|
|
3
|
-
import { h as effectiveMainConfig, u as paiConfigFilePath } from "./config-
|
|
4
|
-
import { i as ledgerPath, l as statusPath, o as panesDir, u as workersLogDir } from "./paths-
|
|
5
|
-
import { C as nowStamp, D as pidAlive$1, T as ownsPidCached, b as loadStatusesCached, g as isLive, h as isChatPane, k as saveStatus, v as loadStatus } from "./status-
|
|
6
|
-
import { c as scopeKey, i as itermUuid$1, p as currentWorkerId } from "./scope-
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { d as paneRunStatusRow, f as paneStatusRow } from "./render-
|
|
11
|
-
import { r as sayToWorker } from "./operator-
|
|
2
|
+
import { Et as parseLedger, d as defaultWorkersConfig, f as escalationCloud, j as readWorkersSection, m as isLocalProvider, wt as appendLedger, yt as ESCALATE_FAILURES } from "./config-XpZWOYOG.mjs";
|
|
3
|
+
import { h as effectiveMainConfig, u as paiConfigFilePath } from "./config-Bu1_vbY8.mjs";
|
|
4
|
+
import { i as ledgerPath, l as statusPath, o as panesDir, u as workersLogDir } from "./paths-CHifubDh.mjs";
|
|
5
|
+
import { C as nowStamp, D as pidAlive$1, T as ownsPidCached, b as loadStatusesCached, g as isLive, h as isChatPane, k as saveStatus, v as loadStatus } from "./status-ggJ7lgVg.mjs";
|
|
6
|
+
import { c as scopeKey, i as itermUuid$1, p as currentWorkerId } from "./scope-D-h6F6DN.mjs";
|
|
7
|
+
import { a as buildsDir, l as listBuildsSync, m as ticketKind } from "./caller-identity-yLFb7CKq.mjs";
|
|
8
|
+
import { o as providerCap, s as queueRows } from "./capacity-DEveQdFV.mjs";
|
|
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-BYmQkuLd.mjs";
|
|
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
|
+
import { createHash } from "node:crypto";
|
|
13
14
|
import { dirname, isAbsolute, join, resolve } from "node:path";
|
|
14
15
|
import { homedir, tmpdir } from "node:os";
|
|
15
16
|
import { execFile, execFileSync, spawn } from "node:child_process";
|
|
16
17
|
import { parse } from "yaml";
|
|
17
|
-
import { createHash } from "node:crypto";
|
|
18
18
|
import { createConnection, createServer } from "node:net";
|
|
19
19
|
import { PassThrough, Writable } from "node:stream";
|
|
20
20
|
import { createInterface } from "node:readline";
|
|
@@ -847,8 +847,8 @@ async function runPaneExec(id, d = {}) {
|
|
|
847
847
|
let show = out;
|
|
848
848
|
let showErr = err;
|
|
849
849
|
if (sp.statusLine && (d.tty ?? process.stdout.isTTY === true)) {
|
|
850
|
-
const { loadStatus } = await import("./status-
|
|
851
|
-
const { sayToWorker } = await import("./operator-
|
|
850
|
+
const { loadStatus } = await import("./status-Dm4dYciN.mjs");
|
|
851
|
+
const { sayToWorker } = await import("./operator-BTqvTIc8.mjs");
|
|
852
852
|
const b = startPaneBar({
|
|
853
853
|
spec: sp.statusLine,
|
|
854
854
|
write: (x) => out(x),
|
|
@@ -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-
|
|
959
|
-
const { makeColor } = await import("./render-
|
|
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 = "";
|
|
@@ -2866,13 +2866,28 @@ function readRunLock(path, isAlive = (p) => pidAlive$1(p)) {
|
|
|
2866
2866
|
async function withRunLock(path, what, fn, deps = {}) {
|
|
2867
2867
|
if (!path) return fn();
|
|
2868
2868
|
const pid = deps.pid ?? process.pid;
|
|
2869
|
-
const held = readRunLock(path, deps.isAlive);
|
|
2870
|
-
if (held && held.pid !== pid) throw new RunLockedError(what, held);
|
|
2871
2869
|
mkdirSync(dirname(path), { recursive: true });
|
|
2872
|
-
|
|
2870
|
+
const body = JSON.stringify({
|
|
2873
2871
|
pid,
|
|
2874
2872
|
startedAt: (deps.now ?? Date.now)()
|
|
2875
|
-
})
|
|
2873
|
+
});
|
|
2874
|
+
for (let attempt = 0;; attempt++) {
|
|
2875
|
+
const held = readRunLock(path, deps.isAlive);
|
|
2876
|
+
if (held && held.pid !== pid) throw new RunLockedError(what, held);
|
|
2877
|
+
try {
|
|
2878
|
+
writeFileSync(path, body, {
|
|
2879
|
+
encoding: "utf8",
|
|
2880
|
+
flag: held ? "w" : "wx"
|
|
2881
|
+
});
|
|
2882
|
+
break;
|
|
2883
|
+
} catch (e) {
|
|
2884
|
+
if (e.code !== "EEXIST") throw e;
|
|
2885
|
+
if (attempt >= 2) throw e;
|
|
2886
|
+
if (!readRunLock(path, deps.isAlive)) try {
|
|
2887
|
+
unlinkSync(path);
|
|
2888
|
+
} catch {}
|
|
2889
|
+
}
|
|
2890
|
+
}
|
|
2876
2891
|
const release = () => {
|
|
2877
2892
|
try {
|
|
2878
2893
|
if (JSON.parse(readFileSync(path, "utf8")).pid === pid) unlinkSync(path);
|
|
@@ -4142,11 +4157,11 @@ function originTarget(origin) {
|
|
|
4142
4157
|
}
|
|
4143
4158
|
/** Real messenger over AIBroker's socket; unreachable AIBroker is logged and ignored. */
|
|
4144
4159
|
function aibrokerMessenger(logDir, warn = (s) => process.stderr.write(s + "\n"), resolveHost = async () => "", send = async (target, text) => {
|
|
4145
|
-
const { sendToSession } = await import("./aibroker-client-
|
|
4160
|
+
const { sendToSession } = await import("./aibroker-client-BxzeEHPF.mjs");
|
|
4146
4161
|
return sendToSession(target, text);
|
|
4147
4162
|
}, toPailot = (text) => guardedPailot(logDir, text, async (t) => {
|
|
4148
4163
|
try {
|
|
4149
|
-
const { callAiBroker } = await import("./aibroker-client-
|
|
4164
|
+
const { callAiBroker } = await import("./aibroker-client-BxzeEHPF.mjs");
|
|
4150
4165
|
await callAiBroker("pailot_send", { text: t }, 8e3);
|
|
4151
4166
|
return true;
|
|
4152
4167
|
} catch (e) {
|
|
@@ -4691,4 +4706,4 @@ async function returnControlsIfHeld(logDir, id) {
|
|
|
4691
4706
|
|
|
4692
4707
|
//#endregion
|
|
4693
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 };
|
|
4694
|
-
//# sourceMappingURL=controls-
|
|
4709
|
+
//# sourceMappingURL=controls-CPoeudou.mjs.map
|
package/dist/daemon/index.mjs
CHANGED
|
@@ -1,47 +1,48 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import "../utils-J2b9y8PC.mjs";
|
|
3
|
-
import "../migrate-
|
|
4
|
-
import "../config-
|
|
5
|
-
import { a as ensureConfigDir, c as loadConfig } from "../config-
|
|
6
|
-
import "../paths-
|
|
7
|
-
import "../worktree-
|
|
8
|
-
import "../status-
|
|
9
|
-
import "../pool-
|
|
10
|
-
import "../registrable-
|
|
11
|
-
import "../pai-marker-
|
|
12
|
-
import "../helpers-
|
|
13
|
-
import "../reranker-
|
|
14
|
-
import { t as dropItermBundleId } from "../env-
|
|
15
|
-
import "../scope-
|
|
16
|
-
import "../routing-
|
|
17
|
-
import "../tool-errors-
|
|
18
|
-
import "../wait-
|
|
19
|
-
import "../local-tiers-
|
|
20
|
-
import "../caller-identity-
|
|
21
|
-
import "../
|
|
22
|
-
import "../
|
|
23
|
-
import "../
|
|
24
|
-
import "../
|
|
25
|
-
import "../
|
|
26
|
-
import "../
|
|
27
|
-
import "../
|
|
28
|
-
import "../
|
|
29
|
-
import "../
|
|
30
|
-
import "../
|
|
31
|
-
import "../
|
|
32
|
-
import "../
|
|
33
|
-
import "../
|
|
34
|
-
import "../
|
|
35
|
-
import "../
|
|
36
|
-
import "../
|
|
37
|
-
import "../
|
|
38
|
-
import "../
|
|
39
|
-
import
|
|
40
|
-
import "../
|
|
41
|
-
import "../
|
|
42
|
-
import
|
|
43
|
-
import "../
|
|
44
|
-
import "../
|
|
3
|
+
import "../migrate-DrA_OwlZ.mjs";
|
|
4
|
+
import "../config-XpZWOYOG.mjs";
|
|
5
|
+
import { a as ensureConfigDir, c as loadConfig } from "../config-Bu1_vbY8.mjs";
|
|
6
|
+
import "../paths-CHifubDh.mjs";
|
|
7
|
+
import "../worktree-CRs2gyg0.mjs";
|
|
8
|
+
import "../status-ggJ7lgVg.mjs";
|
|
9
|
+
import "../pool-Dh-q3iJi.mjs";
|
|
10
|
+
import "../registrable-DpyTtajg.mjs";
|
|
11
|
+
import "../pai-marker-BcZyJguM.mjs";
|
|
12
|
+
import "../helpers-CRuBUas3.mjs";
|
|
13
|
+
import "../reranker-CqCbpGnX.mjs";
|
|
14
|
+
import { t as dropItermBundleId } from "../env-BE8mrsxr.mjs";
|
|
15
|
+
import "../scope-D-h6F6DN.mjs";
|
|
16
|
+
import "../routing-BAAST9vT.mjs";
|
|
17
|
+
import "../tool-errors-7E13StWd.mjs";
|
|
18
|
+
import "../wait-ByV0OyMZ.mjs";
|
|
19
|
+
import "../local-tiers-BE4jGaMa.mjs";
|
|
20
|
+
import "../caller-identity-yLFb7CKq.mjs";
|
|
21
|
+
import "../capacity-DEveQdFV.mjs";
|
|
22
|
+
import "../local-instances-DOxSgT_L.mjs";
|
|
23
|
+
import "../local-candidate-DLdwQt0s.mjs";
|
|
24
|
+
import "../factory-DjAAsqr_.mjs";
|
|
25
|
+
import "../postgres-C6ti4haA.mjs";
|
|
26
|
+
import "../embedding-gate-6rZrWRXa.mjs";
|
|
27
|
+
import "../embeddings-BVq3esBF.mjs";
|
|
28
|
+
import "../router-CQSc3lk3.mjs";
|
|
29
|
+
import "../detect-9CZNO0yf.mjs";
|
|
30
|
+
import "../scan-C_Y5W9py.mjs";
|
|
31
|
+
import "../launch-Jh5NVeNe.mjs";
|
|
32
|
+
import "../run-CSC7mgPf.mjs";
|
|
33
|
+
import "../controls-CPoeudou.mjs";
|
|
34
|
+
import "../endreason-C577xIQz.mjs";
|
|
35
|
+
import "../render-BYmQkuLd.mjs";
|
|
36
|
+
import "../operator-CyuB3aVw.mjs";
|
|
37
|
+
import "../kill-tree-EWYaEk5v.mjs";
|
|
38
|
+
import "../pool-cli-BggU8GRp.mjs";
|
|
39
|
+
import "../pane-audit-DKQt71s4.mjs";
|
|
40
|
+
import { n as PaiClient } from "../ipc-client-CaiGJnSM.mjs";
|
|
41
|
+
import "../embed-pass-DIWjA68P.mjs";
|
|
42
|
+
import "../indexer-backend-Cll7le4P.mjs";
|
|
43
|
+
import { t as serve } from "../daemon-DPAo6WTa.mjs";
|
|
44
|
+
import "../auto-route-B7Yu6Uam.mjs";
|
|
45
|
+
import "../zettelkasten-BzMm8REH.mjs";
|
|
45
46
|
|
|
46
47
|
//#region src/daemon/index.ts
|
|
47
48
|
/**
|