@iowarp/clio-coder 0.3.7 → 0.3.9
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/CHANGELOG.md +80 -0
- package/README.md +13 -4
- package/dist/{acp-SK4MD6MM.js → acp-7LOELQFP.js} +13 -13
- package/dist/{agents-2FN2K6ME.js → agents-FIBG2SHA.js} +41 -37
- package/dist/assets/codewiki.json +1 -1
- package/dist/{auth-QIYZWM5I.js → auth-OI4LIH2I.js} +31 -24
- package/dist/builtins-AD25UL3C.js +17 -0
- package/dist/{chunk-5FR74PWO.js → chunk-2JDWVJND.js} +2 -2
- package/dist/chunk-3DPEIQKN.js +113 -0
- package/dist/{chunk-EOOQZZDE.js → chunk-3DUR4WUA.js} +19 -19
- package/dist/{chunk-WHJYKASB.js → chunk-3MRC2YSQ.js} +2 -2
- package/dist/{chunk-EBEFWSGL.js → chunk-3UUY7R3Z.js} +14 -10
- package/dist/{chunk-LADCF22A.js → chunk-3V5AYSEQ.js} +113 -54
- package/dist/{chunk-BMWK7ZIZ.js → chunk-465CC7FK.js} +16 -13
- package/dist/{chunk-5WIGXA4T.js → chunk-47CMYGET.js} +111 -4
- package/dist/{chunk-CEYBNUGC.js → chunk-4H6ULJ3H.js} +378 -36
- package/dist/{chunk-YTYFXUI3.js → chunk-4LJX2PUC.js} +9 -9
- package/dist/{chunk-DOOEX22V.js → chunk-56KB5IJP.js} +5 -5
- package/dist/{chunk-SPULKLCF.js → chunk-5DQRIYDZ.js} +2 -2
- package/dist/{chunk-TSHXZTOQ.js → chunk-5HFBWUMU.js} +23 -11
- package/dist/{chunk-5UJ6ECTS.js → chunk-5PVQ4SRS.js} +80 -8
- package/dist/{chunk-ZWLZP4ZT.js → chunk-5QKCQQ3E.js} +359 -17
- package/dist/{chunk-6M7VS3J3.js → chunk-5T7RBWN2.js} +111 -5
- package/dist/chunk-774ILSRL.js +172 -0
- package/dist/chunk-7C6RYZGQ.js +391 -0
- package/dist/{chunk-GH5622CP.js → chunk-A2NJGIB3.js} +2 -2
- package/dist/{chunk-C4JBQ5SR.js → chunk-AD7Y7STJ.js} +6 -6
- package/dist/{chunk-GEYXPTRF.js → chunk-AEYBF3TB.js} +33 -12
- package/dist/{chunk-2SFS6XQE.js → chunk-AMKHQW3C.js} +3 -2
- package/dist/{chunk-D4MDIG46.js → chunk-B5CSFE7B.js} +7 -7
- package/dist/{chunk-MXI6J5JF.js → chunk-B5XRQOLB.js} +10 -10
- package/dist/{chunk-X2KV5FXT.js → chunk-BVDVID7E.js} +2 -2
- package/dist/{chunk-JNXPYBB4.js → chunk-CA42X6KT.js} +3 -3
- package/dist/{chunk-VREKEFLL.js → chunk-D73KXYPF.js} +3 -3
- package/dist/{chunk-JTSEDYVQ.js → chunk-DG4M6ZUE.js} +7 -7
- package/dist/{chunk-DQA7QLMD.js → chunk-EBOC7MT3.js} +10 -25
- package/dist/{chunk-KZ2H5X4G.js → chunk-ECUO3KDP.js} +129 -14
- package/dist/{chunk-JRIO5UD2.js → chunk-EQ63NRB7.js} +5 -5
- package/dist/{chunk-YD734TPH.js → chunk-FALJGAWU.js} +2 -2
- package/dist/{chunk-GWS3VEIW.js → chunk-FWDFM5ZU.js} +24 -3
- package/dist/{chunk-XEGB6BCN.js → chunk-GAYUJ7LE.js} +68 -14
- package/dist/{chunk-UND3GU2L.js → chunk-H7IXIC72.js} +2 -2
- package/dist/{chunk-IR4CFBFN.js → chunk-HAY4ZE2P.js} +12 -12
- package/dist/{chunk-UVDSQ6LW.js → chunk-HCBCAYZU.js} +74 -147
- package/dist/{chunk-4DWFMQDR.js → chunk-HJB5IUKP.js} +89 -145
- package/dist/{chunk-M4AKACEO.js → chunk-HKO36JWF.js} +33 -5
- package/dist/{chunk-KCMKRQX4.js → chunk-HPCTNZM2.js} +45 -82
- package/dist/{chunk-465YSENW.js → chunk-IFBNV6H6.js} +3 -3
- package/dist/{chunk-FJ3H4MN5.js → chunk-IHKBWSXF.js} +2 -2
- package/dist/chunk-JEQQR47K.js +3025 -0
- package/dist/{chunk-FO5ZOVUY.js → chunk-KV2AOLDF.js} +27 -7
- package/dist/chunk-LU7P4LHA.js +33 -0
- package/dist/{chunk-6TUKSZVF.js → chunk-LXPJXFM5.js} +11 -11
- package/dist/{chunk-VQNODYQ4.js → chunk-MIX5N5AC.js} +488 -3668
- package/dist/chunk-MLOK6ZOS.js +2888 -0
- package/dist/{chunk-ZZMN5OM4.js → chunk-MV2VUEJC.js} +2 -2
- package/dist/{chunk-MVVUPGPW.js → chunk-MXHC5QYU.js} +6 -6
- package/dist/{chunk-OBMAI2DP.js → chunk-N3PBVRTZ.js} +12 -388
- package/dist/{chunk-WJHBC77E.js → chunk-N5XKWMDW.js} +17 -7
- package/dist/{chunk-5C3AQNDW.js → chunk-NNNWO6F2.js} +124 -36
- package/dist/{chunk-UFQ3F4FW.js → chunk-NQ6UCCOD.js} +4 -4
- package/dist/chunk-NUGM5KR6.js +165 -0
- package/dist/{chunk-DMD2AGVS.js → chunk-NZU6YDNV.js} +20 -18
- package/dist/{chunk-WHGPSPT5.js → chunk-O6I4CIEU.js} +151 -13
- package/dist/{chunk-XN3L4EYL.js → chunk-OEDBCISO.js} +2 -2
- package/dist/{chunk-PD3MESLB.js → chunk-P3JGPQFL.js} +4 -4
- package/dist/{chunk-UHXRNZ2J.js → chunk-PNY46YEY.js} +23 -6
- package/dist/{chunk-THKY7CD7.js → chunk-PZ4I4JE2.js} +134 -29
- package/dist/{chunk-SROCI7ZU.js → chunk-QQ7EKM72.js} +5 -5
- package/dist/{chunk-QCTRSGHQ.js → chunk-R7LNVMCS.js} +91 -53
- package/dist/{chunk-GOXNB3AO.js → chunk-RAPCMZL4.js} +75 -4
- package/dist/chunk-RKKLTLYB.js +45 -0
- package/dist/{chunk-OB5HIGJY.js → chunk-RKRLDWD3.js} +4 -1
- package/dist/{chunk-DJNLUABN.js → chunk-S4COXYBG.js} +588 -32
- package/dist/{chunk-3HAPLH5M.js → chunk-T3Z6VAAF.js} +172 -11
- package/dist/{chunk-FOT2FX5J.js → chunk-TD7UE2L5.js} +12 -10
- package/dist/{chunk-UUANF5CR.js → chunk-TEO2TLVN.js} +856 -967
- package/dist/{chunk-FCSXB6T2.js → chunk-UOSL25KY.js} +14 -2
- package/dist/{chunk-EELBMBT6.js → chunk-VKBMFOYV.js} +74 -15
- package/dist/chunk-VO2LKSTM.js +165 -0
- package/dist/{chunk-5C77SEEY.js → chunk-VPTUJU4P.js} +3 -3
- package/dist/{chunk-WEH5XRJQ.js → chunk-WIE7ZOSW.js} +2 -2
- package/dist/{chunk-J7PIKKWC.js → chunk-WXCJ7VME.js} +8 -8
- package/dist/{chunk-4DGYLA73.js → chunk-XDOQXGFO.js} +22 -7
- package/dist/{chunk-PPAMZ32Z.js → chunk-XK56QHLX.js} +6 -1
- package/dist/{chunk-AB4XIIVB.js → chunk-YKOFT37S.js} +6 -6
- package/dist/chunk-YSEHGPCT.js +127 -0
- package/dist/{chunk-HFSBBKSQ.js → chunk-YW7UVM5V.js} +138 -3
- package/dist/cli/index.js +32 -32
- package/dist/{clio-WBVQEBKO.js → clio-LT5V7SSZ.js} +9 -9
- package/dist/{code-nav-FGGFIE7L.js → code-nav-LMW275PA.js} +5 -5
- package/dist/codewiki/build-worker.js +4 -4
- package/dist/{components-F7OEATSO.js → components-ZFA3SAER.js} +8 -8
- package/dist/{config-TRBL3RCF.js → config-RXS5T3JT.js} +98 -65
- package/dist/{configure-OLCVPHNM.js → configure-2WYWSCSD.js} +26 -22
- package/dist/{context-MJIJ6GOX.js → context-I3BTOTCS.js} +12 -12
- package/dist/{context-XEWE3MOJ.js → context-MVOORGMF.js} +54 -47
- package/dist/{context-WFPKQSM6.js → context-PALKKQYL.js} +28 -28
- package/dist/{context-clear-KNOS2JPB.js → context-clear-N2WOYZ2K.js} +53 -46
- package/dist/{context-index-SSR5ECNE.js → context-index-HNG3MOME.js} +6 -6
- package/dist/{context-working-set-EUXAZI6N.js → context-working-set-MIEVECVZ.js} +17 -18
- package/dist/{dispatch-runner-B7MTOVKL.js → dispatch-runner-VVA4SRRH.js} +90 -61
- package/dist/{docs-FLJTIDSE.js → docs-7LQ23DLM.js} +8 -8
- package/dist/doctor-TWBWFK5V.js +165 -0
- package/dist/eval-IJ5VEZDJ.js +4483 -0
- package/dist/{evidence-JZNBUOQZ.js → evidence-L5APPXNV.js} +68 -61
- package/dist/{evolve-FJVC4KKI.js → evolve-RGNKFJ52.js} +47 -40
- package/dist/{extensions-IQL36S7K.js → extensions-7WYWUX5A.js} +13 -7
- package/dist/{fleet-BDKYJFCP.js → fleet-6CNVBZZP.js} +113 -76
- package/dist/{fleet-commands-ZFIWZSB3.js → fleet-commands-L2SXSYEI.js} +10 -10
- package/dist/{fleet-graph-Y6HPXIVF.js → fleet-graph-2J3OOIPO.js} +17 -15
- package/dist/{fleet-preflight-BHSNPBMH.js → fleet-preflight-CZRJ4JP5.js} +5 -6
- package/dist/{fleet-validate-BIYREGIK.js → fleet-validate-C5RI6DP7.js} +20 -19
- package/dist/{init-LQUB5COQ.js → init-VBN2ACVA.js} +70 -63
- package/dist/{library-NJAHIGG4.js → library-JHGUMLY2.js} +22 -20
- package/dist/{memory-OG6HOYKM.js → memory-K4OQIYWG.js} +49 -42
- package/dist/{models-5ZG5XY7J.js → models-2NCZUWDD.js} +35 -29
- package/dist/{monitor-TJ7AMTGB.js → monitor-MMVTJABD.js} +64 -45
- package/dist/{orchestrator-WZYB54DM.js → orchestrator-ZKBPCHW6.js} +1971 -520
- package/dist/{paths-XUC7GS6E.js → paths-DBXMZMDU.js} +5 -5
- package/dist/registry-LG64LTF4.js +11 -0
- package/dist/{reset-PXQT45IY.js → reset-DD5JGOY3.js} +11 -11
- package/dist/{run-FQ74YF62.js → run-QEGNX7FL.js} +89 -83
- package/dist/{share-FW7SVCL3.js → share-JKD3BQMW.js} +20 -18
- package/dist/{skills-7E7IRB3R.js → skills-LMQIKDOZ.js} +23 -21
- package/dist/{skills-eval-LI75W6OK.js → skills-eval-I7X2774U.js} +59 -52
- package/dist/{steer-GGWFUJUD.js → steer-CF5TDANS.js} +3 -3
- package/dist/support-I7LOJLIF.js +38 -0
- package/dist/{targets-4CIFKCTW.js → targets-RUSR6B5Z.js} +77 -42
- package/dist/{terminal-lease-WUZY7ZV5.js → terminal-lease-QYVORFR4.js} +6 -4
- package/dist/{trace-PNCASAXC.js → trace-ODOQIVIW.js} +61 -6
- package/dist/{uninstall-7FV7IP4E.js → uninstall-ZJF5H5ZN.js} +8 -8
- package/dist/{upgrade-K2HVIVMQ.js → upgrade-XANW3FXB.js} +29 -26
- package/dist/{usage-GTZELZQX.js → usage-4H7ZRXQT.js} +110 -61
- package/dist/{verifiers-RLAHT27O.js → verifiers-UZXNBZEB.js} +13 -13
- package/dist/{verify-BX3BRKH5.js → verify-BVKWTNDL.js} +9 -9
- package/dist/{wiki-generate-ASIFASCN.js → wiki-generate-MY7WV2QI.js} +76 -69
- package/dist/worker/entry.js +69 -66
- package/docs/alcf-provider.md +1 -1
- package/docs/architecture.md +1 -1
- package/docs/artifact-versions.md +11 -5
- package/docs/built-in-agents.md +1 -1
- package/docs/capacity-and-scheduling.md +23 -2
- package/docs/commands-and-modes.md +2 -2
- package/docs/configuration-and-targets.md +37 -5
- package/docs/context-engine.md +63 -4
- package/docs/documentation-coverage.md +3 -3
- package/docs/documentation-guide.md +1 -1
- package/docs/environment-variables.md +2 -0
- package/docs/eval-runner.md +262 -11
- package/docs/evals-internal.md +72 -2
- package/docs/evidence-and-memory.md +77 -12
- package/docs/evolution.md +1 -1
- package/docs/extensions-and-sharing.md +3 -1
- package/docs/fleet-dispatch.md +34 -9
- package/docs/glossary.md +21 -1
- package/docs/installation-and-lifecycle.md +1 -1
- package/docs/middleware-and-components.md +1 -1
- package/docs/model-catalog.md +1 -1
- package/docs/observability.md +54 -3
- package/docs/proactive-memory.md +127 -14
- package/docs/prompt-envelope-and-tools.md +22 -2
- package/docs/provider-adapter-cookbook.md +1 -1
- package/docs/release-cut-checklist.md +60 -41
- package/docs/safety-model.md +1 -1
- package/docs/scientific-validation.md +1 -1
- package/docs/skills-marketplace.md +1 -1
- package/docs/tool-usage.md +1 -1
- package/docs/trace-store.md +1 -1
- package/docs/troubleshooting.md +87 -0
- package/docs/tui-design.md +1 -1
- package/docs/worker-dispatch-mechanics.md +1 -1
- package/package.json +2 -2
- package/src/cli/agents.ts +1 -1
- package/src/cli/argv.ts +5 -0
- package/src/cli/config-inspect.ts +33 -6
- package/src/cli/config.ts +1 -1
- package/src/cli/configure.ts +107 -23
- package/src/cli/doctor-state-size.ts +82 -0
- package/src/cli/doctor.ts +7 -1
- package/src/cli/eval.ts +80 -16
- package/src/cli/evidence.ts +30 -25
- package/src/cli/extensions.ts +5 -1
- package/src/cli/fleet-preflight.ts +2 -12
- package/src/cli/fleet.ts +32 -3
- package/src/cli/shared.ts +1 -0
- package/src/cli/targets.ts +45 -11
- package/src/cli/trace.ts +63 -4
- package/src/cli/usage.ts +63 -14
- package/src/cli/validate-model.ts +60 -5
- package/src/core/bus-events.ts +54 -1
- package/src/core/cache-telemetry.ts +42 -0
- package/src/core/commit-attribution.ts +4 -4
- package/src/core/config.ts +18 -0
- package/src/core/defaults.ts +36 -6
- package/src/core/endpoint-key.ts +27 -0
- package/src/core/path-boundary.ts +100 -0
- package/src/core/residency-target-key.ts +25 -0
- package/src/core/response-schema.ts +36 -2
- package/src/domains/agents/extension.ts +2 -11
- package/src/domains/agents/fleet-contract.ts +30 -12
- package/src/domains/agents/recipe.ts +7 -1
- package/src/domains/agents/registry.ts +73 -5
- package/src/domains/agents/result-contract.ts +128 -17
- package/src/domains/agents/write-boundary.ts +15 -50
- package/src/domains/config/classify.ts +3 -0
- package/src/domains/context/codewiki/coordinator.ts +12 -4
- package/src/domains/context/project-rules.ts +51 -1
- package/src/domains/dispatch/admission.ts +40 -3
- package/src/domains/dispatch/assignment-reconcile.ts +22 -5
- package/src/domains/dispatch/assignment-store.ts +151 -14
- package/src/domains/dispatch/capacity-lease.ts +98 -9
- package/src/domains/dispatch/contract.ts +26 -1
- package/src/domains/dispatch/delegation-plan.ts +2 -5
- package/src/domains/dispatch/execution-plan.ts +44 -4
- package/src/domains/dispatch/execution-role.ts +9 -1
- package/src/domains/dispatch/extension.ts +309 -96
- package/src/domains/dispatch/fleet-run.ts +78 -4
- package/src/domains/dispatch/gate-role-prompts.ts +38 -0
- package/src/domains/dispatch/heartbeat.ts +32 -8
- package/src/domains/dispatch/index.ts +6 -1
- package/src/domains/dispatch/intent-requirements.ts +40 -0
- package/src/domains/dispatch/intent.ts +84 -8
- package/src/domains/dispatch/orphan-recovery.ts +5 -0
- package/src/domains/dispatch/path-scope.ts +370 -0
- package/src/domains/dispatch/receipt-integrity.ts +2 -1
- package/src/domains/dispatch/reservation-store.ts +116 -8
- package/src/domains/dispatch/state.ts +4 -0
- package/src/domains/dispatch/types.ts +14 -7
- package/src/domains/dispatch/validation.ts +6 -3
- package/src/domains/dispatch/worker-spawn.ts +25 -11
- package/src/domains/dispatch/write-boundary-enforcer.ts +62 -0
- package/src/domains/dispatch/write-boundary.ts +262 -22
- package/src/domains/eval/artifacts/store.ts +62 -0
- package/src/domains/eval/compare/behavioral.ts +224 -0
- package/src/domains/eval/compare/compare.ts +355 -2
- package/src/domains/eval/compare/envelope.ts +128 -0
- package/src/domains/eval/compare/gates.ts +24 -6
- package/src/domains/eval/compare/thresholds.ts +30 -3
- package/src/domains/eval/execution-provenance.ts +240 -0
- package/src/domains/eval/metrics/aggregate.ts +136 -0
- package/src/domains/eval/metrics/call-ledger-stream.ts +112 -0
- package/src/domains/eval/metrics/evidence.ts +79 -2
- package/src/domains/eval/metrics/tracked.ts +413 -0
- package/src/domains/eval/provenance.ts +117 -0
- package/src/domains/eval/reports/comparison.ts +128 -0
- package/src/domains/eval/reports/junit.ts +17 -3
- package/src/domains/eval/reports/markdown.ts +3 -3
- package/src/domains/eval/reports/text.ts +14 -0
- package/src/domains/eval/run-compare.ts +20 -0
- package/src/domains/eval/runners/clio-run.ts +139 -2
- package/src/domains/eval/runners/external-command.ts +28 -3
- package/src/domains/eval/schema/adapter.ts +111 -0
- package/src/domains/eval/schema/artifact.ts +20 -0
- package/src/domains/eval/schema/behavioral-metrics.ts +204 -0
- package/src/domains/eval/schema/behavioral.ts +520 -0
- package/src/domains/eval/schema/execution-envelope.ts +194 -0
- package/src/domains/eval/schema/serving.ts +74 -0
- package/src/domains/eval/schema/suite.ts +38 -8
- package/src/domains/eval/schema/validate.ts +58 -3
- package/src/domains/eval/schema/verdict.ts +237 -0
- package/src/domains/eval/suites/resolve.ts +2 -0
- package/src/domains/eval/suites/run.ts +264 -33
- package/src/domains/eval/verifiers/command.ts +2 -1
- package/src/domains/eval/workspaces/temp-copy.ts +145 -13
- package/src/domains/evidence/build.ts +68 -21
- package/src/domains/evidence/eval.ts +2 -12
- package/src/domains/evidence/findings-markdown.ts +33 -0
- package/src/domains/evidence/index.ts +21 -0
- package/src/domains/evidence/provenance.ts +46 -11
- package/src/domains/evidence/run-trust.ts +7 -113
- package/src/domains/evidence/trust-projection.ts +274 -0
- package/src/domains/evidence/trust-status.ts +145 -17
- package/src/domains/evidence/types.ts +4 -0
- package/src/domains/extensions/compatibility.ts +285 -0
- package/src/domains/extensions/discovery.ts +126 -4
- package/src/domains/extensions/resources.ts +21 -9
- package/src/domains/extensions/state.ts +18 -5
- package/src/domains/extensions/types.ts +6 -1
- package/src/domains/lifecycle/doctor.ts +209 -2
- package/src/domains/memory/index.ts +14 -0
- package/src/domains/memory/task-bank-promotion.ts +64 -0
- package/src/domains/memory/task-memory-policy.ts +77 -8
- package/src/domains/memory/task-memory-spend.ts +131 -0
- package/src/domains/memory/task-memory-status.ts +7 -0
- package/src/domains/memory/task-memory-telemetry.ts +2 -0
- package/src/domains/middleware/index.ts +1 -0
- package/src/domains/middleware/memory-intervention.ts +69 -5
- package/src/domains/middleware/memory-step-endpoint.ts +71 -0
- package/src/domains/observability/background-memory-usage.ts +140 -0
- package/src/domains/observability/cost.ts +1 -1
- package/src/domains/observability/index.ts +7 -0
- package/src/domains/observability/out-of-turn-usage.ts +51 -2
- package/src/domains/observability/trace-store.ts +192 -2
- package/src/domains/prompts/compiler.ts +100 -13
- package/src/domains/prompts/contract.ts +3 -5
- package/src/domains/providers/endpoint-capacity.ts +96 -0
- package/src/domains/providers/extension.ts +30 -2
- package/src/domains/providers/index.ts +10 -0
- package/src/domains/providers/models/local-models/clio-local-coding-targets.yaml +243 -1
- package/src/domains/providers/runtime-resolution.ts +8 -1
- package/src/domains/providers/runtimes/common/probe-helpers.ts +31 -9
- package/src/domains/providers/runtimes/local-native/llamacpp-anthropic.ts +1 -1
- package/src/domains/providers/runtimes/local-native/llamacpp-completion.ts +1 -1
- package/src/domains/providers/runtimes/local-native/llamacpp-embed.ts +1 -1
- package/src/domains/providers/runtimes/local-native/llamacpp-rerank.ts +1 -1
- package/src/domains/providers/runtimes/local-native/llamacpp.ts +4 -1
- package/src/domains/providers/runtimes/local-native/lmstudio.ts +4 -1
- package/src/domains/providers/runtimes/local-native/ollama-native.ts +6 -1
- package/src/domains/providers/types/capability-flags.ts +2 -0
- package/src/domains/providers/types/target-descriptor.ts +2 -0
- package/src/domains/resources/common-loader.ts +3 -0
- package/src/domains/resources/prompts/loader.ts +184 -17
- package/src/domains/safety/call-target.ts +52 -0
- package/src/domains/safety/policy-engine.ts +5 -5
- package/src/domains/safety/run-effects.ts +96 -2
- package/src/domains/safety/scope.ts +7 -12
- package/src/domains/session/context-accounting.ts +52 -1
- package/src/domains/session/context-ledger.ts +37 -13
- package/src/domains/session/index.ts +6 -0
- package/src/domains/session/prompt-cache.ts +140 -0
- package/src/domains/session/prompt-manifest.ts +42 -0
- package/src/engine/acp/adapter.ts +18 -3
- package/src/engine/acp/server.ts +4 -1
- package/src/engine/ai.ts +35 -0
- package/src/engine/apis/llamacpp-residency.ts +55 -3
- package/src/engine/apis/lmstudio.ts +25 -5
- package/src/engine/apis/ollama-native.ts +2 -1
- package/src/engine/apis/openai-completions.ts +80 -17
- package/src/engine/apis/residency-lock.ts +3 -1
- package/src/engine/apis/residency.ts +34 -1
- package/src/engine/prompt-templates.ts +18 -1
- package/src/engine/provider-payload.ts +29 -1
- package/src/engine/worker-runtime.ts +6 -3
- package/src/entry/orchestrator.ts +176 -30
- package/src/interactive/chat-loop-messages.ts +26 -7
- package/src/interactive/chat-loop.ts +318 -41
- package/src/interactive/chat-panel.ts +62 -8
- package/src/interactive/clio-editor.ts +45 -8
- package/src/interactive/context-activity.ts +5 -1
- package/src/interactive/context-meter.ts +1 -1
- package/src/interactive/context-overlay.ts +40 -10
- package/src/interactive/cost-overlay.ts +64 -6
- package/src/interactive/dispatch-board.ts +127 -5
- package/src/interactive/fleet-run-preview.ts +41 -15
- package/src/interactive/handoff-round.ts +41 -2
- package/src/interactive/interactive-application.ts +24 -1
- package/src/interactive/interactive-event-projection.ts +14 -0
- package/src/interactive/interactive-input-runtime.ts +8 -0
- package/src/interactive/interactive-presentation.ts +4 -0
- package/src/interactive/interactive-shell.ts +20 -17
- package/src/interactive/interactive-slash-runtime.ts +27 -4
- package/src/interactive/memory-overlay.ts +8 -0
- package/src/interactive/mutation-preview.ts +295 -0
- package/src/interactive/overlay-general-openers.ts +16 -0
- package/src/interactive/overlay-key-routing.ts +38 -0
- package/src/interactive/overlay-lifecycle.ts +38 -5
- package/src/interactive/overlay-permission-lifecycle.ts +22 -2
- package/src/interactive/overlay-session-lifecycle.ts +73 -9
- package/src/interactive/overlays/ask-user.ts +91 -19
- package/src/interactive/overlays/help-reference.ts +4 -0
- package/src/interactive/overlays/prompts.ts +11 -1
- package/src/interactive/overlays/settings.ts +176 -48
- package/src/interactive/permission-hint.ts +34 -2
- package/src/interactive/permission-overlay.ts +159 -9
- package/src/interactive/prewarm.ts +197 -0
- package/src/interactive/render-trace.ts +162 -15
- package/src/interactive/renderers/tool-execution.ts +4 -0
- package/src/interactive/side-question.ts +58 -1
- package/src/interactive/slash-commands.ts +7 -2
- package/src/interactive/status/controller.ts +11 -0
- package/src/interactive/status/state-machine.ts +54 -2
- package/src/interactive/status/types.ts +7 -0
- package/src/interactive/terminal-lease.ts +2 -0
- package/src/interactive/turn-context.ts +299 -31
- package/src/interactive/turn-persistence.ts +14 -4
- package/src/interactive/turn-prewarm.ts +364 -0
- package/src/interactive/turn-queues.ts +7 -4
- package/src/interactive/turn-runtime.ts +8 -1
- package/src/interactive/turn-state.ts +23 -0
- package/src/interactive/view/artifacts.ts +42 -9
- package/src/interactive/view/view-overlay.ts +43 -6
- package/src/interactive/worker-receipts.ts +14 -2
- package/src/interactive/worker-stream.ts +8 -0
- package/src/tools/ask-user.ts +43 -2
- package/src/tools/dispatch-admission.ts +12 -13
- package/src/tools/dispatch-arguments.ts +27 -0
- package/src/tools/dispatch-plan.ts +46 -9
- package/src/tools/dispatch-runner.ts +48 -13
- package/src/tools/dispatch-scout.ts +1 -1
- package/src/tools/monitor.ts +13 -0
- package/src/tools/registry.ts +16 -0
- package/src/tools/worker-evidence.ts +19 -13
- package/src/worker/spec-contract.ts +2 -1
- package/dist/chunk-AOCYTWAV.js +0 -449
- package/dist/chunk-HWUFFB6L.js +0 -83
- package/dist/chunk-R346GLFC.js +0 -31
- package/dist/chunk-ZGH7FGS5.js +0 -1079
- package/dist/doctor-RN4YKO2X.js +0 -87
- package/dist/eval-RUBJVSNQ.js +0 -2557
|
@@ -10,52 +10,59 @@ import {
|
|
|
10
10
|
import {
|
|
11
11
|
credentialWriteFailed,
|
|
12
12
|
printPlaintextCredentialWarning
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-IFBNV6H6.js";
|
|
14
14
|
import {
|
|
15
15
|
columnWidths,
|
|
16
16
|
formatColumnRow,
|
|
17
17
|
formatColumns,
|
|
18
18
|
printError,
|
|
19
19
|
printOk
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-XK56QHLX.js";
|
|
21
21
|
import "./chunk-5TSRNF4G.js";
|
|
22
22
|
import {
|
|
23
|
-
EMPTY_CAPABILITIES
|
|
24
|
-
|
|
23
|
+
EMPTY_CAPABILITIES
|
|
24
|
+
} from "./chunk-MIX5N5AC.js";
|
|
25
|
+
import "./chunk-CFGTUFWB.js";
|
|
26
|
+
import "./chunk-LU7P4LHA.js";
|
|
27
|
+
import "./chunk-AEYBF3TB.js";
|
|
28
|
+
import {
|
|
29
|
+
readSettings
|
|
30
|
+
} from "./chunk-PNY46YEY.js";
|
|
31
|
+
import "./chunk-FQ4SKYE4.js";
|
|
32
|
+
import "./chunk-ZGVHUX3M.js";
|
|
33
|
+
import "./chunk-RKRLDWD3.js";
|
|
34
|
+
import "./chunk-KV2AOLDF.js";
|
|
35
|
+
import "./chunk-IWHMRKLL.js";
|
|
36
|
+
import {
|
|
37
|
+
registerBuiltinRuntimes
|
|
38
|
+
} from "./chunk-JEQQR47K.js";
|
|
39
|
+
import "./chunk-XDOQXGFO.js";
|
|
40
|
+
import "./chunk-LL4KHSZI.js";
|
|
41
|
+
import "./chunk-4ZG3XFUR.js";
|
|
42
|
+
import {
|
|
25
43
|
listProviderSupportEntries,
|
|
26
|
-
registerBuiltinRuntimes,
|
|
27
44
|
resolveProviderReference,
|
|
28
45
|
supportGroupLabel
|
|
29
|
-
} from "./chunk-
|
|
30
|
-
import "./chunk-CFGTUFWB.js";
|
|
46
|
+
} from "./chunk-774ILSRL.js";
|
|
31
47
|
import {
|
|
32
48
|
authNotRequiredStatus,
|
|
33
49
|
openAuthStorage,
|
|
34
50
|
registerClioOAuthProviders,
|
|
35
51
|
resolveRuntimeAuthTarget,
|
|
36
52
|
targetRequiresAuth
|
|
37
|
-
} from "./chunk-
|
|
38
|
-
import "./chunk-GEYXPTRF.js";
|
|
39
|
-
import {
|
|
40
|
-
readSettings
|
|
41
|
-
} from "./chunk-UHXRNZ2J.js";
|
|
42
|
-
import "./chunk-4DGYLA73.js";
|
|
43
|
-
import "./chunk-LL4KHSZI.js";
|
|
53
|
+
} from "./chunk-EQ63NRB7.js";
|
|
44
54
|
import "./chunk-SST6Z5JA.js";
|
|
45
|
-
import "./chunk-FO5ZOVUY.js";
|
|
46
|
-
import "./chunk-R346GLFC.js";
|
|
47
|
-
import "./chunk-FQ4SKYE4.js";
|
|
48
|
-
import "./chunk-4ZG3XFUR.js";
|
|
49
55
|
import "./chunk-IKCO5N3L.js";
|
|
50
56
|
import "./chunk-3I7MS7N2.js";
|
|
51
|
-
import "./chunk-FCSXB6T2.js";
|
|
52
57
|
import "./chunk-APJ265NV.js";
|
|
53
|
-
import "./chunk-YXLYO42X.js";
|
|
54
58
|
import "./chunk-BNAZZHFG.js";
|
|
55
59
|
import "./chunk-WEPFGWHJ.js";
|
|
56
|
-
import
|
|
57
|
-
|
|
58
|
-
|
|
60
|
+
import {
|
|
61
|
+
getRuntimeRegistry
|
|
62
|
+
} from "./chunk-NUGM5KR6.js";
|
|
63
|
+
import "./chunk-VO2LKSTM.js";
|
|
64
|
+
import "./chunk-UOSL25KY.js";
|
|
65
|
+
import "./chunk-YXLYO42X.js";
|
|
59
66
|
import {
|
|
60
67
|
init_esm_shims
|
|
61
68
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -537,4 +544,4 @@ async function runAuthCommand(args) {
|
|
|
537
544
|
export {
|
|
538
545
|
runAuthCommand
|
|
539
546
|
};
|
|
540
|
-
//# sourceMappingURL=auth-
|
|
547
|
+
//# sourceMappingURL=auth-OI4LIH2I.js.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
BUILTIN_RUNTIMES,
|
|
4
|
+
registerBuiltinRuntimes
|
|
5
|
+
} from "./chunk-JEQQR47K.js";
|
|
6
|
+
import "./chunk-XDOQXGFO.js";
|
|
7
|
+
import "./chunk-LL4KHSZI.js";
|
|
8
|
+
import "./chunk-4ZG3XFUR.js";
|
|
9
|
+
import "./chunk-VO2LKSTM.js";
|
|
10
|
+
import "./chunk-UOSL25KY.js";
|
|
11
|
+
import "./chunk-YXLYO42X.js";
|
|
12
|
+
import "./chunk-3R73A4XB.js";
|
|
13
|
+
export {
|
|
14
|
+
BUILTIN_RUNTIMES,
|
|
15
|
+
registerBuiltinRuntimes
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=builtins-AD25UL3C.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
isSessionEntry
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-RAPCMZL4.js";
|
|
5
5
|
import {
|
|
6
6
|
init_esm_shims
|
|
7
7
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -373,4 +373,4 @@ export {
|
|
|
373
373
|
foldSessionTaskHistory,
|
|
374
374
|
createTaskBoardStore
|
|
375
375
|
};
|
|
376
|
-
//# sourceMappingURL=chunk-
|
|
376
|
+
//# sourceMappingURL=chunk-2JDWVJND.js.map
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
init_esm_shims
|
|
4
|
+
} from "./chunk-3R73A4XB.js";
|
|
5
|
+
|
|
6
|
+
// src/domains/session/prompt-cache.ts
|
|
7
|
+
init_esm_shims();
|
|
8
|
+
|
|
9
|
+
// src/core/cache-telemetry.ts
|
|
10
|
+
init_esm_shims();
|
|
11
|
+
function emptyCacheVerdictCounts() {
|
|
12
|
+
return { hot: 0, partial: 0, cold: 0, small: 0 };
|
|
13
|
+
}
|
|
14
|
+
function uncachedPrefillTokens(backend) {
|
|
15
|
+
if (backend === null || backend === void 0 || backend.cachedTokens === null) return null;
|
|
16
|
+
if (!Number.isFinite(backend.promptTokens) || backend.promptTokens < 0 || !Number.isFinite(backend.cachedTokens) || backend.cachedTokens < 0 || backend.cachedTokens > backend.promptTokens) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
return backend.promptTokens - backend.cachedTokens;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
// src/domains/session/prompt-cache.ts
|
|
23
|
+
function isRecord(value) {
|
|
24
|
+
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
25
|
+
}
|
|
26
|
+
function finiteNonNegative(value) {
|
|
27
|
+
return typeof value === "number" && Number.isFinite(value) && value >= 0;
|
|
28
|
+
}
|
|
29
|
+
function backendTimings(value) {
|
|
30
|
+
if (!isRecord(value)) return null;
|
|
31
|
+
if (!finiteNonNegative(value.promptTokens) || !finiteNonNegative(value.predictedTokens) || !finiteNonNegative(value.promptMs) || !finiteNonNegative(value.predictedMs) || value.source !== "llamacpp-timings" && value.source !== "lmstudio-timings") {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
const cachedTokens = value.cachedTokens;
|
|
35
|
+
if (cachedTokens !== null && !finiteNonNegative(cachedTokens)) return null;
|
|
36
|
+
if (typeof cachedTokens === "number" && cachedTokens > value.promptTokens) return null;
|
|
37
|
+
return {
|
|
38
|
+
promptTokens: value.promptTokens,
|
|
39
|
+
cachedTokens,
|
|
40
|
+
predictedTokens: value.predictedTokens,
|
|
41
|
+
promptMs: value.promptMs,
|
|
42
|
+
predictedMs: value.predictedMs,
|
|
43
|
+
source: value.source
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
function cacheVerdict(value) {
|
|
47
|
+
switch (value) {
|
|
48
|
+
case "hot":
|
|
49
|
+
case "partial":
|
|
50
|
+
case "cold":
|
|
51
|
+
case "small":
|
|
52
|
+
return value;
|
|
53
|
+
default:
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
function hasPromptCacheTelemetry(telemetry) {
|
|
58
|
+
return telemetry.verdictCalls > 0 || telemetry.uncachedPrefillCalls > 0 || Object.keys(telemetry.expectedColdReasonCounts).length > 0;
|
|
59
|
+
}
|
|
60
|
+
function topExpectedColdReason(telemetry) {
|
|
61
|
+
const ranked = Object.entries(telemetry.expectedColdReasonCounts).sort(
|
|
62
|
+
([leftReason, leftCount], [rightReason, rightCount]) => rightCount - leftCount || leftReason.localeCompare(rightReason)
|
|
63
|
+
);
|
|
64
|
+
const first = ranked[0];
|
|
65
|
+
return first === void 0 ? null : { reason: first[0], count: first[1] };
|
|
66
|
+
}
|
|
67
|
+
function foldPromptCacheTelemetry(entries) {
|
|
68
|
+
const verdictCounts = emptyCacheVerdictCounts();
|
|
69
|
+
const expectedColdReasonCounts = {};
|
|
70
|
+
let verdictCalls = 0;
|
|
71
|
+
let uncachedTotal = 0;
|
|
72
|
+
let uncachedPrefillCalls = 0;
|
|
73
|
+
for (const entry of entries) {
|
|
74
|
+
if (entry.kind !== "message" || entry.role !== "assistant" || !isRecord(entry.payload)) continue;
|
|
75
|
+
const promptCache = entry.payload.promptCache;
|
|
76
|
+
if (!isRecord(promptCache)) continue;
|
|
77
|
+
const verdict = cacheVerdict(promptCache.backendVerdict);
|
|
78
|
+
if (verdict !== null) {
|
|
79
|
+
verdictCounts[verdict] += 1;
|
|
80
|
+
verdictCalls += 1;
|
|
81
|
+
}
|
|
82
|
+
const backend = backendTimings(promptCache.backend);
|
|
83
|
+
const uncached = uncachedPrefillTokens(backend);
|
|
84
|
+
if (uncached !== null) {
|
|
85
|
+
uncachedTotal += uncached;
|
|
86
|
+
uncachedPrefillCalls += 1;
|
|
87
|
+
}
|
|
88
|
+
if (!Array.isArray(promptCache.expectedColdReasons)) continue;
|
|
89
|
+
const reasons = new Set(
|
|
90
|
+
promptCache.expectedColdReasons.filter(
|
|
91
|
+
(reason) => typeof reason === "string" && reason.trim().length > 0
|
|
92
|
+
)
|
|
93
|
+
);
|
|
94
|
+
for (const reason of reasons) {
|
|
95
|
+
expectedColdReasonCounts[reason] = (expectedColdReasonCounts[reason] ?? 0) + 1;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return {
|
|
99
|
+
uncachedPrefillTokens: uncachedPrefillCalls > 0 ? uncachedTotal : null,
|
|
100
|
+
uncachedPrefillCalls,
|
|
101
|
+
verdictCounts,
|
|
102
|
+
verdictCalls,
|
|
103
|
+
expectedColdReasonCounts
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
export {
|
|
108
|
+
uncachedPrefillTokens,
|
|
109
|
+
hasPromptCacheTelemetry,
|
|
110
|
+
topExpectedColdReason,
|
|
111
|
+
foldPromptCacheTelemetry
|
|
112
|
+
};
|
|
113
|
+
//# sourceMappingURL=chunk-3DPEIQKN.js.map
|
|
@@ -5,48 +5,48 @@ import {
|
|
|
5
5
|
import {
|
|
6
6
|
SchedulingDomainModule,
|
|
7
7
|
createPromptsDomainModule
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-3UUY7R3Z.js";
|
|
9
9
|
import {
|
|
10
10
|
SafetyDomainModule
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-WXCJ7VME.js";
|
|
12
12
|
import {
|
|
13
13
|
ConfigDomainModule,
|
|
14
14
|
loadDomains
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-465CC7FK.js";
|
|
16
|
+
import {
|
|
17
|
+
ResourcesDomainModule
|
|
18
|
+
} from "./chunk-PZ4I4JE2.js";
|
|
19
|
+
import {
|
|
20
|
+
AgentsDomainModule
|
|
21
|
+
} from "./chunk-YSEHGPCT.js";
|
|
16
22
|
import {
|
|
17
23
|
createObservabilityDomainModule
|
|
18
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-5PVQ4SRS.js";
|
|
19
25
|
import {
|
|
20
26
|
fallbackBootstrapOutput
|
|
21
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-HJB5IUKP.js";
|
|
22
28
|
import {
|
|
23
29
|
renderCodewikiDigest
|
|
24
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-47CMYGET.js";
|
|
25
31
|
import {
|
|
26
32
|
DispatchDomainModule
|
|
27
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-TEO2TLVN.js";
|
|
28
34
|
import {
|
|
29
35
|
SessionDomainModule
|
|
30
|
-
} from "./chunk-
|
|
31
|
-
import {
|
|
32
|
-
ResourcesDomainModule
|
|
33
|
-
} from "./chunk-THKY7CD7.js";
|
|
34
|
-
import {
|
|
35
|
-
AgentsDomainModule
|
|
36
|
-
} from "./chunk-UVDSQ6LW.js";
|
|
36
|
+
} from "./chunk-LXPJXFM5.js";
|
|
37
37
|
import {
|
|
38
38
|
MiddlewareDomainModule
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-GAYUJ7LE.js";
|
|
40
40
|
import {
|
|
41
41
|
UnsupportedResponseSchemaError,
|
|
42
42
|
isResponseSchemaRejection
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-4H6ULJ3H.js";
|
|
44
44
|
import {
|
|
45
45
|
parseJsonObjectPayload
|
|
46
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-S4COXYBG.js";
|
|
47
47
|
import {
|
|
48
48
|
ProvidersDomainModule
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-MIX5N5AC.js";
|
|
50
50
|
import {
|
|
51
51
|
init_esm_shims
|
|
52
52
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -675,4 +675,4 @@ export {
|
|
|
675
675
|
validateInitOptions,
|
|
676
676
|
bootstrapInputFromInitOptions
|
|
677
677
|
};
|
|
678
|
-
//# sourceMappingURL=chunk-
|
|
678
|
+
//# sourceMappingURL=chunk-3DUR4WUA.js.map
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
ceilChars,
|
|
26
26
|
contentChars,
|
|
27
27
|
estimateAgentMessageTokens
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-AEYBF3TB.js";
|
|
29
29
|
import {
|
|
30
30
|
init_esm_shims
|
|
31
31
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -674,4 +674,4 @@ export {
|
|
|
674
674
|
compactionCut,
|
|
675
675
|
selectVisibleEntries
|
|
676
676
|
};
|
|
677
|
-
//# sourceMappingURL=chunk-
|
|
677
|
+
//# sourceMappingURL=chunk-3MRC2YSQ.js.map
|
|
@@ -1,25 +1,29 @@
|
|
|
1
1
|
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
|
-
loadFragments,
|
|
4
3
|
loadOperatorProfile,
|
|
5
4
|
loadProjectRules,
|
|
6
5
|
renderOperatorProfile,
|
|
7
6
|
selectActiveRules
|
|
8
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-HJB5IUKP.js";
|
|
8
|
+
import {
|
|
9
|
+
loadFragments
|
|
10
|
+
} from "./chunk-47CMYGET.js";
|
|
9
11
|
import {
|
|
10
12
|
compile,
|
|
11
|
-
compileWorker
|
|
13
|
+
compileWorker
|
|
14
|
+
} from "./chunk-TEO2TLVN.js";
|
|
15
|
+
import {
|
|
12
16
|
sha256
|
|
13
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-MLOK6ZOS.js";
|
|
18
|
+
import {
|
|
19
|
+
classifyProjectPreload
|
|
20
|
+
} from "./chunk-JVCV3ICN.js";
|
|
14
21
|
import {
|
|
15
22
|
isUserVisibleAgent
|
|
16
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-S4COXYBG.js";
|
|
17
24
|
import {
|
|
18
25
|
BusChannels
|
|
19
|
-
} from "./chunk-
|
|
20
|
-
import {
|
|
21
|
-
classifyProjectPreload
|
|
22
|
-
} from "./chunk-JVCV3ICN.js";
|
|
26
|
+
} from "./chunk-RKRLDWD3.js";
|
|
23
27
|
import {
|
|
24
28
|
init_esm_shims
|
|
25
29
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -655,4 +659,4 @@ export {
|
|
|
655
659
|
createPromptsDomainModule,
|
|
656
660
|
SchedulingDomainModule
|
|
657
661
|
};
|
|
658
|
-
//# sourceMappingURL=chunk-
|
|
662
|
+
//# sourceMappingURL=chunk-3UUY7R3Z.js.map
|
|
@@ -1,16 +1,4 @@
|
|
|
1
1
|
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
|
-
import {
|
|
3
|
-
INHERITED_PROJECT_CONTEXT,
|
|
4
|
-
acceptInteropAgents,
|
|
5
|
-
declineInteropAgents,
|
|
6
|
-
detectInteropAgents,
|
|
7
|
-
fingerprintNativeRuntime,
|
|
8
|
-
interopProposals,
|
|
9
|
-
renderProposalEntry
|
|
10
|
-
} from "./chunk-SROCI7ZU.js";
|
|
11
|
-
import {
|
|
12
|
-
initializeClioHome
|
|
13
|
-
} from "./chunk-DOOEX22V.js";
|
|
14
2
|
import {
|
|
15
3
|
createDelayedManualCodeInput,
|
|
16
4
|
promptOAuthSelection
|
|
@@ -25,39 +13,61 @@ import {
|
|
|
25
13
|
import {
|
|
26
14
|
credentialWriteFailed,
|
|
27
15
|
printPlaintextCredentialWarning
|
|
28
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-IFBNV6H6.js";
|
|
17
|
+
import {
|
|
18
|
+
INHERITED_PROJECT_CONTEXT,
|
|
19
|
+
acceptInteropAgents,
|
|
20
|
+
declineInteropAgents,
|
|
21
|
+
detectInteropAgents,
|
|
22
|
+
fingerprintNativeRuntime,
|
|
23
|
+
interopProposals,
|
|
24
|
+
renderProposalEntry
|
|
25
|
+
} from "./chunk-QQ7EKM72.js";
|
|
26
|
+
import {
|
|
27
|
+
initializeClioHome
|
|
28
|
+
} from "./chunk-56KB5IJP.js";
|
|
29
29
|
import {
|
|
30
30
|
printError,
|
|
31
31
|
printOk
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-XK56QHLX.js";
|
|
33
|
+
import {
|
|
34
|
+
isOrchestratorEligibleRuntime,
|
|
35
|
+
probeCapabilitiesForModel
|
|
36
|
+
} from "./chunk-MIX5N5AC.js";
|
|
37
|
+
import {
|
|
38
|
+
credentialsPresent
|
|
39
|
+
} from "./chunk-LU7P4LHA.js";
|
|
40
|
+
import {
|
|
41
|
+
readSettings,
|
|
42
|
+
removeTargetFromSettings,
|
|
43
|
+
settingsPath,
|
|
44
|
+
updateSettings
|
|
45
|
+
} from "./chunk-PNY46YEY.js";
|
|
46
|
+
import {
|
|
47
|
+
greetLmStudio,
|
|
48
|
+
registerBuiltinRuntimes
|
|
49
|
+
} from "./chunk-JEQQR47K.js";
|
|
33
50
|
import {
|
|
34
51
|
buildProviderSupportEntry,
|
|
35
52
|
configuredTargetsForRuntime,
|
|
36
|
-
credentialsPresent,
|
|
37
53
|
describeRuntimeModels,
|
|
38
|
-
getCatalogModelForRuntime,
|
|
39
|
-
getRuntimeRegistry,
|
|
40
|
-
greetLmStudio,
|
|
41
|
-
isOrchestratorEligibleRuntime,
|
|
42
54
|
listKnownModelsForRuntime,
|
|
43
55
|
listProviderSupportEntries,
|
|
44
|
-
probeCapabilitiesForModel,
|
|
45
|
-
registerBuiltinRuntimes,
|
|
46
56
|
supportGroupLabel
|
|
47
|
-
} from "./chunk-
|
|
57
|
+
} from "./chunk-774ILSRL.js";
|
|
48
58
|
import {
|
|
49
59
|
openAuthStorage,
|
|
50
60
|
registerClioOAuthProviders,
|
|
51
61
|
resolveAuthTarget,
|
|
52
62
|
resolveRuntimeAuthTarget,
|
|
53
63
|
targetRequiresAuth
|
|
54
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-EQ63NRB7.js";
|
|
55
65
|
import {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
} from "./chunk-
|
|
66
|
+
getRuntimeRegistry
|
|
67
|
+
} from "./chunk-NUGM5KR6.js";
|
|
68
|
+
import {
|
|
69
|
+
getCatalogModelForRuntime
|
|
70
|
+
} from "./chunk-VO2LKSTM.js";
|
|
61
71
|
import {
|
|
62
72
|
init_esm_shims
|
|
63
73
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -261,9 +271,21 @@ function formatRuntimeList(rows, width) {
|
|
|
261
271
|
|
|
262
272
|
// src/cli/validate-model.ts
|
|
263
273
|
init_esm_shims();
|
|
274
|
+
var SAMPLE_SIZE = 10;
|
|
275
|
+
function sample(models) {
|
|
276
|
+
const shown = models.slice(0, SAMPLE_SIZE).join(", ");
|
|
277
|
+
return models.length > SAMPLE_SIZE ? `${shown}, \u2026` : shown;
|
|
278
|
+
}
|
|
279
|
+
function describeLiveTarget(live) {
|
|
280
|
+
return live.url ? `target '${live.targetId}' at ${live.url}` : `target '${live.targetId}'`;
|
|
281
|
+
}
|
|
282
|
+
function formatUnadvertisedModelReason(modelId, live) {
|
|
283
|
+
const resident = live.resident.length > 0 ? live.resident.join(", ") : "none";
|
|
284
|
+
return `${describeLiveTarget(live)} does not advertise model '${modelId}'. Advertised (${live.models.length}): ${sample(live.models)}. Resident instances: ${resident}. Pass one of the advertised ids with --model, or --force to save a model the target cannot serve.`;
|
|
285
|
+
}
|
|
264
286
|
function validateModelChoice(input2) {
|
|
265
|
-
const { runtimeId, modelId, knownModels, force } = input2;
|
|
266
|
-
if (knownModels.length === 0) return
|
|
287
|
+
const { runtimeId, modelId, knownModels, live, force } = input2;
|
|
288
|
+
if (knownModels.length === 0) return validateAgainstLive(modelId, live, force);
|
|
267
289
|
if (knownModels.includes(modelId)) return { ok: true };
|
|
268
290
|
if (force) {
|
|
269
291
|
return {
|
|
@@ -271,13 +293,19 @@ function validateModelChoice(input2) {
|
|
|
271
293
|
warning: `model '${modelId}' not in ${runtimeId} catalog (use without --force to reject)`
|
|
272
294
|
};
|
|
273
295
|
}
|
|
274
|
-
const sample = knownModels.slice(0, 10).join(", ");
|
|
275
296
|
return {
|
|
276
297
|
ok: false,
|
|
277
|
-
reason: `model '${modelId}' not in ${runtimeId} catalog. Known: ${sample}. Use --force to skip validation.`,
|
|
278
|
-
knownModels: knownModels.slice(0,
|
|
298
|
+
reason: `model '${modelId}' not in ${runtimeId} catalog. Known: ${sample(knownModels)}. Use --force to skip validation.`,
|
|
299
|
+
knownModels: knownModels.slice(0, SAMPLE_SIZE)
|
|
279
300
|
};
|
|
280
301
|
}
|
|
302
|
+
function validateAgainstLive(modelId, live, force) {
|
|
303
|
+
if (!live || live.models.length === 0) return { ok: true };
|
|
304
|
+
if (live.models.includes(modelId)) return { ok: true };
|
|
305
|
+
const reason = formatUnadvertisedModelReason(modelId, live);
|
|
306
|
+
if (force) return { ok: true, warning: `${reason.replace(/ Pass one of.*$/u, "")} Saved anyway because of --force.` };
|
|
307
|
+
return { ok: false, reason, knownModels: live.models.slice(0, SAMPLE_SIZE) };
|
|
308
|
+
}
|
|
281
309
|
|
|
282
310
|
// src/cli/configure.ts
|
|
283
311
|
var HELP = `clio-coder configure
|
|
@@ -304,7 +332,8 @@ Non-interactive flags:
|
|
|
304
332
|
--agent-profile-model <id> model to use for --agent-profile
|
|
305
333
|
--api-key-env <VAR> read API key from this env var at call time
|
|
306
334
|
--api-key <literal> store API key in credentials.yaml
|
|
307
|
-
--force
|
|
335
|
+
--force save a model outside the runtime catalog, or one the
|
|
336
|
+
target does not advertise, without refusing
|
|
308
337
|
--gateway mark the target as a gateway
|
|
309
338
|
--lifecycle <user-managed|clio-managed>
|
|
310
339
|
resident model lifecycle policy
|
|
@@ -552,14 +581,11 @@ function catalogContextWindowFor(runtime, modelId) {
|
|
|
552
581
|
}
|
|
553
582
|
return null;
|
|
554
583
|
}
|
|
555
|
-
function validateResolvedModel(
|
|
584
|
+
function validateResolvedModel(runtime, target, modelId, force, inventory) {
|
|
556
585
|
if (!modelId) return true;
|
|
557
|
-
const
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
knownModels: runtimeKnownModelsFor(runtimeId),
|
|
561
|
-
force
|
|
562
|
-
});
|
|
586
|
+
const knownModels = runtimeKnownModelsFor(runtime.id);
|
|
587
|
+
const live = inventory.source === "probe" ? liveInventoryFor(target, inventory) : void 0;
|
|
588
|
+
const validation = validateModelChoice({ runtimeId: runtime.id, modelId, knownModels, live, force });
|
|
563
589
|
if (!validation.ok) {
|
|
564
590
|
process.stderr.write(`error: ${validation.reason}
|
|
565
591
|
`);
|
|
@@ -567,6 +593,12 @@ function validateResolvedModel(runtimeId, modelId, force) {
|
|
|
567
593
|
}
|
|
568
594
|
if (validation.warning) process.stderr.write(`warning: ${validation.warning}
|
|
569
595
|
`);
|
|
596
|
+
if (knownModels.length === 0 && live === void 0 && runtime.kind === "http") {
|
|
597
|
+
process.stderr.write(
|
|
598
|
+
`warning: could not verify model '${modelId}': ${target.url ?? `target '${target.id}'`} returned no model list; it is saved as written
|
|
599
|
+
`
|
|
600
|
+
);
|
|
601
|
+
}
|
|
570
602
|
return true;
|
|
571
603
|
}
|
|
572
604
|
function validateContextWindowOverride(runtime, modelId, contextWindow, force) {
|
|
@@ -583,10 +615,11 @@ function validateContextWindowOverride(runtime, modelId, contextWindow, force) {
|
|
|
583
615
|
`);
|
|
584
616
|
return true;
|
|
585
617
|
}
|
|
586
|
-
async function runtimeProbe(runtime, target) {
|
|
618
|
+
async function runtimeProbe(runtime, target, authToken) {
|
|
587
619
|
if (typeof runtime.probe !== "function") return null;
|
|
588
620
|
try {
|
|
589
|
-
|
|
621
|
+
const context = await buildProbeContext(runtime, target);
|
|
622
|
+
return await runtime.probe(target, authToken === void 0 ? context : { ...context, authToken });
|
|
590
623
|
} catch (err) {
|
|
591
624
|
return { ok: false, error: err instanceof Error ? err.message : String(err) };
|
|
592
625
|
}
|
|
@@ -807,12 +840,36 @@ Open: ${verificationUri}
|
|
|
807
840
|
manualCodeInput.cancel();
|
|
808
841
|
}
|
|
809
842
|
}
|
|
843
|
+
function advertisedModelIds(inventory) {
|
|
844
|
+
const ids = [...inventory.models];
|
|
845
|
+
for (const id of Object.keys(inventory.modelStates ?? {})) if (!ids.includes(id)) ids.push(id);
|
|
846
|
+
return ids;
|
|
847
|
+
}
|
|
848
|
+
function residentModelIds(modelStates) {
|
|
849
|
+
return Object.entries(modelStates ?? {}).filter(([, status]) => status.state === "loaded" || status.state === "loading").map(([id]) => id);
|
|
850
|
+
}
|
|
851
|
+
function liveInventoryFor(target, inventory) {
|
|
852
|
+
return {
|
|
853
|
+
targetId: target.id,
|
|
854
|
+
url: target.url,
|
|
855
|
+
models: advertisedModelIds(inventory),
|
|
856
|
+
resident: residentModelIds(inventory.modelStates)
|
|
857
|
+
};
|
|
858
|
+
}
|
|
810
859
|
async function resolveSupportedWireModels(runtime, target, existing, authToken) {
|
|
811
860
|
const known = listKnownModelsForRuntime(runtime.id);
|
|
812
|
-
if (known.length > 0) return known;
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
861
|
+
if (known.length > 0) return { models: known, source: "catalog" };
|
|
862
|
+
if (runtime.kind === "http") {
|
|
863
|
+
const probe = await runtimeProbe(runtime, target, authToken);
|
|
864
|
+
if (probe?.ok && probe.models && probe.models.length > 0) {
|
|
865
|
+
return { models: [...probe.models], source: "probe", modelStates: probe.modelStates };
|
|
866
|
+
}
|
|
867
|
+
const discovered = await runtimeProbeModels(runtime, target, authToken);
|
|
868
|
+
if (discovered.length > 0) return { models: discovered, source: "probe" };
|
|
869
|
+
}
|
|
870
|
+
if (existing?.wireModels && existing.wireModels.length > 0)
|
|
871
|
+
return { models: [...existing.wireModels], source: "existing" };
|
|
872
|
+
return { models: [], source: "none" };
|
|
816
873
|
}
|
|
817
874
|
function resolveModelChoice(answer, wireModels, defaultValue) {
|
|
818
875
|
if (answer.length === 0) return defaultValue;
|
|
@@ -903,13 +960,14 @@ async function runNonInteractive(runtime, args) {
|
|
|
903
960
|
...args.reasoning !== void 0 ? { reasoning: args.reasoning } : {},
|
|
904
961
|
...existing?.lmstudio ? { lmstudio: existing.lmstudio } : {}
|
|
905
962
|
});
|
|
906
|
-
const
|
|
963
|
+
const inventory = await resolveSupportedWireModels(runtime, seed, existing, args.apiKey);
|
|
964
|
+
const wireModels = inventory.models;
|
|
907
965
|
const model = args.model ?? existing?.defaultModel ?? support.defaultModel ?? (support.modelSource === "catalog" ? void 0 : wireModels[0]);
|
|
908
966
|
if (model === void 0 && support.modelSource === "catalog") {
|
|
909
967
|
refuseCatalogSeededModel(runtime, support);
|
|
910
968
|
return 2;
|
|
911
969
|
}
|
|
912
|
-
if (!validateResolvedModel(runtime
|
|
970
|
+
if (!validateResolvedModel(runtime, seed, model, args.force, inventory)) return 2;
|
|
913
971
|
if (!validateContextWindowOverride(runtime, model, args.contextWindow, args.force)) return 2;
|
|
914
972
|
const descriptor = buildDescriptor(runtime, args.id, {
|
|
915
973
|
...url !== void 0 ? { url } : {},
|
|
@@ -1222,7 +1280,7 @@ Selected runtime: ${runtime.id} (${support.summary})
|
|
|
1222
1280
|
oauthProfile = runtime.oauthProviderId ?? runtime.id;
|
|
1223
1281
|
}
|
|
1224
1282
|
let model = defaults.model;
|
|
1225
|
-
let
|
|
1283
|
+
let inventory = existing?.wireModels && existing.wireModels.length > 0 ? { models: [...existing.wireModels], source: "existing" } : { models: [], source: "none" };
|
|
1226
1284
|
const tentative = buildDescriptor(runtime, targetId, {
|
|
1227
1285
|
...url !== void 0 ? { url } : {},
|
|
1228
1286
|
...apiKeyEnv !== void 0 ? { apiKeyEnv } : {},
|
|
@@ -1236,8 +1294,9 @@ Selected runtime: ${runtime.id} (${support.summary})
|
|
|
1236
1294
|
...existing?.lmstudio ? { lmstudio: existing.lmstudio } : {}
|
|
1237
1295
|
});
|
|
1238
1296
|
if (runtime.kind === "http") {
|
|
1239
|
-
|
|
1297
|
+
inventory = await resolveSupportedWireModels(runtime, tentative, existing ?? void 0);
|
|
1240
1298
|
}
|
|
1299
|
+
const wireModels = inventory.models;
|
|
1241
1300
|
const catalogOrdered = support.modelSource === "catalog";
|
|
1242
1301
|
model = model ?? existing?.defaultModel ?? support.defaultModel ?? (catalogOrdered ? void 0 : wireModels[0]);
|
|
1243
1302
|
if (wireModels.length > 0) {
|
|
@@ -1258,11 +1317,11 @@ Selected runtime: ${runtime.id} (${support.summary})
|
|
|
1258
1317
|
process.stdout.write(" a model is required: enter a number from the list or a model id.\n");
|
|
1259
1318
|
continue;
|
|
1260
1319
|
}
|
|
1261
|
-
if (validateResolvedModel(runtime
|
|
1320
|
+
if (validateResolvedModel(runtime, tentative, model, defaults.force, inventory)) break;
|
|
1262
1321
|
}
|
|
1263
1322
|
} else {
|
|
1264
1323
|
for (; ; ) {
|
|
1265
|
-
if (model && validateResolvedModel(runtime
|
|
1324
|
+
if (model && validateResolvedModel(runtime, tentative, model, defaults.force, inventory)) break;
|
|
1266
1325
|
const manual = await ask(rl, "Default model id (blank to leave empty)", model ?? "");
|
|
1267
1326
|
if (manual === null) return 0;
|
|
1268
1327
|
model = manual.length > 0 ? manual : void 0;
|
|
@@ -1489,4 +1548,4 @@ export {
|
|
|
1489
1548
|
runTargetRename,
|
|
1490
1549
|
runConfigureCommand
|
|
1491
1550
|
};
|
|
1492
|
-
//# sourceMappingURL=chunk-
|
|
1551
|
+
//# sourceMappingURL=chunk-3V5AYSEQ.js.map
|