@iowarp/clio-coder 0.4.9 → 0.5.0
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/marketplace.json +11 -3
- package/CHANGELOG.md +153 -0
- package/CODE_OF_CONDUCT.md +10 -0
- package/CONTRIBUTING.md +208 -382
- package/NOTICE +8 -2
- package/README.md +199 -418
- package/ROADMAP.md +82 -0
- package/SECURITY.md +14 -11
- package/dist/acp-KS7ARGV6.js +132 -0
- package/dist/agents-YOGJ2YEJ.js +163 -0
- package/dist/assets/codewiki.json +1 -1
- package/dist/auth-CEDCO6O6.js +557 -0
- package/dist/background-YWTBPSQU.js +39 -0
- package/dist/builtins-GDYO4RTR.js +23 -0
- package/dist/chunk-27YTM2CV.js +175 -0
- package/dist/chunk-2AF6YC7Q.js +75 -0
- package/dist/chunk-2DTIWSAW.js +381 -0
- package/dist/chunk-2EMLKSCX.js +262 -0
- package/dist/chunk-2OJ3YZQP.js +665 -0
- package/dist/chunk-2VLYHHFT.js +35 -0
- package/dist/chunk-2WVPJF3Z.js +204 -0
- package/dist/chunk-33OASOS6.js +176 -0
- package/dist/chunk-3BD2LXYJ.js +19 -0
- package/dist/chunk-3JHUFKG7.js +30 -0
- package/dist/chunk-3JLTRPN7.js +711 -0
- package/dist/chunk-3LT34CAM.js +2796 -0
- package/dist/chunk-3O5JWP4L.js +1670 -0
- package/dist/chunk-3UW3KU4A.js +21 -0
- package/dist/chunk-4A6YRGV4.js +569 -0
- package/dist/chunk-4D2BRCZ3.js +67 -0
- package/dist/chunk-4SYHGVDE.js +668 -0
- package/dist/chunk-4VDHLCF5.js +66 -0
- package/dist/chunk-4WOOTKFD.js +637 -0
- package/dist/chunk-4WV4PI66.js +80 -0
- package/dist/chunk-53OXPRI6.js +195 -0
- package/dist/chunk-55RMDDFM.js +1347 -0
- package/dist/chunk-56XP4FJU.js +2025 -0
- package/dist/chunk-5B3RTYAK.js +123 -0
- package/dist/chunk-5CD243WE.js +45 -0
- package/dist/chunk-5JQR5B4D.js +709 -0
- package/dist/chunk-5KQEUIWM.js +597 -0
- package/dist/chunk-5LP5FNNR.js +915 -0
- package/dist/chunk-62UK7AGW.js +9344 -0
- package/dist/chunk-6CTHLZFB.js +563 -0
- package/dist/chunk-6EJYVCTN.js +23 -0
- package/dist/chunk-6OWUM2NC.js +12289 -0
- package/dist/chunk-6RJMYYIE.js +1023 -0
- package/dist/chunk-6W75D37F.js +643 -0
- package/dist/chunk-733ZBT5P.js +1721 -0
- package/dist/chunk-77DCC6JZ.js +3710 -0
- package/dist/chunk-7QXCO3AF.js +156 -0
- package/dist/chunk-7RET77VB.js +481 -0
- package/dist/chunk-A4MVRV4C.js +65 -0
- package/dist/chunk-ALJWT6O6.js +93 -0
- package/dist/chunk-AVSR2HKI.js +232 -0
- package/dist/chunk-B7GY6QER.js +42 -0
- package/dist/chunk-BFOSV5EZ.js +178 -0
- package/dist/chunk-BGOIM7NB.js +103 -0
- package/dist/chunk-BJH6WFIB.js +372 -0
- package/dist/chunk-BOBCCDJ6.js +1533 -0
- package/dist/chunk-BRCOSE7O.js +117 -0
- package/dist/chunk-BYFHHCFV.js +601 -0
- package/dist/chunk-C2CPOIH2.js +83 -0
- package/dist/chunk-C7AQTPCE.js +694 -0
- package/dist/chunk-CBAQPTDU.js +165 -0
- package/dist/chunk-CDQ2UC6W.js +125 -0
- package/dist/chunk-CN6SW5DC.js +177 -0
- package/dist/chunk-CRHPCPZP.js +132 -0
- package/dist/chunk-CTFPFW3H.js +44 -0
- package/dist/chunk-D3KWFOUT.js +103 -0
- package/dist/chunk-D65E25JG.js +185 -0
- package/dist/chunk-DCGHJQ2U.js +236 -0
- package/dist/chunk-DE2LU267.js +106 -0
- package/dist/chunk-DF6PI6GN.js +97 -0
- package/dist/chunk-DGC6X6XR.js +53 -0
- package/dist/chunk-DOUISWEE.js +526 -0
- package/dist/chunk-DR3TAEUA.js +188 -0
- package/dist/chunk-DVTBERFY.js +33 -0
- package/dist/chunk-DXSETN72.js +1051 -0
- package/dist/chunk-DZLR4UEH.js +128 -0
- package/dist/chunk-E6IPKW2E.js +77 -0
- package/dist/chunk-EG4ARXPC.js +139 -0
- package/dist/chunk-EKV4UBCM.js +652 -0
- package/dist/chunk-EOJPDNUP.js +1325 -0
- package/dist/chunk-EX57VVWW.js +4157 -0
- package/dist/chunk-EYTLV3W3.js +5937 -0
- package/dist/chunk-EZD2BXGP.js +475 -0
- package/dist/chunk-EZDCA34W.js +314 -0
- package/dist/chunk-FD2I4KBR.js +33 -0
- package/dist/chunk-FD3IAHQM.js +27 -0
- package/dist/chunk-FFYTC2KQ.js +416 -0
- package/dist/chunk-FGSQHUCK.js +110 -0
- package/dist/chunk-GCQFN7YI.js +32 -0
- package/dist/chunk-GGPF6LLE.js +38 -0
- package/dist/chunk-GGWI3OVM.js +215 -0
- package/dist/chunk-GLIQT7SU.js +172 -0
- package/dist/chunk-GN7QBEEI.js +95 -0
- package/dist/chunk-GRHOXDKB.js +1104 -0
- package/dist/chunk-HMN2C6YL.js +54 -0
- package/dist/chunk-HOEDA42N.js +310 -0
- package/dist/chunk-HOYZUKG7.js +192 -0
- package/dist/chunk-HQVN7G4F.js +1021 -0
- package/dist/chunk-HSQQFDB3.js +519 -0
- package/dist/chunk-I4ELN5BX.js +47 -0
- package/dist/chunk-I4Y4WKZR.js +386 -0
- package/dist/chunk-IFPDAD7R.js +797 -0
- package/dist/chunk-IN7DGBVS.js +582 -0
- package/dist/chunk-ISHUS7HC.js +396 -0
- package/dist/chunk-JPXLJSGR.js +191 -0
- package/dist/chunk-JQCLXSFI.js +69 -0
- package/dist/chunk-KBUTSJSR.js +61 -0
- package/dist/chunk-KW5HXKLJ.js +56 -0
- package/dist/chunk-L4APUGCT.js +139 -0
- package/dist/chunk-L7G7K4I2.js +505 -0
- package/dist/chunk-LAR7DX5E.js +1840 -0
- package/dist/chunk-LAVUQX3B.js +462 -0
- package/dist/chunk-LJRBX7QR.js +116 -0
- package/dist/chunk-LNOXCGN2.js +1864 -0
- package/dist/chunk-LTWH2ACR.js +23002 -0
- package/dist/chunk-LYJJ6546.js +661 -0
- package/dist/chunk-M2IPMWCN.js +457 -0
- package/dist/chunk-MGLRTOCK.js +101 -0
- package/dist/chunk-MZF5IKZT.js +160 -0
- package/dist/chunk-N24R6KWS.js +386 -0
- package/dist/chunk-NASYVWDB.js +604 -0
- package/dist/chunk-NBXFPI7U.js +195 -0
- package/dist/chunk-NDPF2N2L.js +400 -0
- package/dist/chunk-NFSK2VNU.js +446 -0
- package/dist/chunk-NG3QQSXY.js +43 -0
- package/dist/chunk-NOCSM22Y.js +63 -0
- package/dist/chunk-NVPXXW2H.js +1143 -0
- package/dist/chunk-O63U2I6I.js +30 -0
- package/dist/chunk-OJXOA6YU.js +98 -0
- package/dist/chunk-OPD7GL6F.js +1196 -0
- package/dist/chunk-OQ2EOAHA.js +14399 -0
- package/dist/chunk-OV62D6KO.js +688 -0
- package/dist/chunk-OZ76TLGU.js +740 -0
- package/dist/chunk-P4GNZPXO.js +1156 -0
- package/dist/chunk-PS6JAWJZ.js +78 -0
- package/dist/chunk-PXRCXGLK.js +1865 -0
- package/dist/chunk-QDUUOZ3S.js +108 -0
- package/dist/chunk-QG6I2T5E.js +1416 -0
- package/dist/chunk-QHSBROEW.js +308 -0
- package/dist/chunk-QNUQ7K7D.js +46 -0
- package/dist/chunk-QZTTRSJE.js +333 -0
- package/dist/chunk-R2UUNSNQ.js +1605 -0
- package/dist/chunk-R7FGRZNF.js +1794 -0
- package/dist/chunk-RNDCROSG.js +199 -0
- package/dist/chunk-S36CXHO2.js +302 -0
- package/dist/chunk-SJGS3GDI.js +575 -0
- package/dist/chunk-SQZHXUB3.js +510 -0
- package/dist/chunk-SUTLW6ND.js +686 -0
- package/dist/chunk-SYF7FVBL.js +179 -0
- package/dist/chunk-T2MDZES3.js +1577 -0
- package/dist/chunk-T33IYTZM.js +1146 -0
- package/dist/chunk-TDGYTWM6.js +49 -0
- package/dist/chunk-TGL5FZVD.js +132 -0
- package/dist/chunk-TGWZXJ7L.js +1205 -0
- package/dist/chunk-TKDRT2DF.js +114 -0
- package/dist/chunk-TV2EBCSQ.js +152 -0
- package/dist/chunk-U26XXPJS.js +367 -0
- package/dist/chunk-U5QU5ZOD.js +419 -0
- package/dist/chunk-U6YTUVOX.js +1011 -0
- package/dist/chunk-UCINIRHW.js +188 -0
- package/dist/chunk-UJD5MPP6.js +52 -0
- package/dist/chunk-URCXX7WJ.js +146 -0
- package/dist/chunk-UX2L5CUD.js +898 -0
- package/dist/chunk-UZVYEF57.js +114 -0
- package/dist/chunk-V35KZDUZ.js +218 -0
- package/dist/chunk-VESL6DQY.js +1058 -0
- package/dist/chunk-VKHLUZNO.js +986 -0
- package/dist/chunk-VOYUCAQF.js +584 -0
- package/dist/chunk-VYRQHORQ.js +414 -0
- package/dist/chunk-W53XSRQE.js +245 -0
- package/dist/chunk-X4CEFOSG.js +226 -0
- package/dist/chunk-XDHUDE5K.js +380 -0
- package/dist/chunk-XISLDHEL.js +1290 -0
- package/dist/chunk-XM34YQ2Y.js +169 -0
- package/dist/chunk-XMDBTYCH.js +661 -0
- package/dist/chunk-XS2QPZJE.js +449 -0
- package/dist/chunk-YBUECLAF.js +618 -0
- package/dist/chunk-YQ6XEFVK.js +332 -0
- package/dist/chunk-YYLCPDCC.js +990 -0
- package/dist/chunk-Z4GLJ6J4.js +1035 -0
- package/dist/chunk-ZARZ4POR.js +210 -0
- package/dist/chunk-ZJPORZTC.js +119 -0
- package/dist/chunk-ZNUZ3EXD.js +243 -0
- package/dist/chunk-ZPST2KQO.js +49 -0
- package/dist/chunk-ZR5YA6ZF.js +512 -0
- package/dist/chunk-ZU4JPCPR.js +319 -0
- package/dist/chunk-ZUKUCZYZ.js +39 -0
- package/dist/cli/index.js +56 -45
- package/dist/clio-K2PBVCEM.js +27 -0
- package/dist/clio-context-tools-GR4OHFSO.js +145 -0
- package/dist/code-nav-4X3OI6DK.js +715 -0
- package/dist/codewiki/build-worker.js +4 -4
- package/dist/compile-cache-YRB6QRO7.js +18 -0
- package/dist/components-RQOJ6NUR.js +675 -0
- package/dist/config-Q5J7UBAB.js +291 -0
- package/dist/config-XE7XYZLU.js +38 -0
- package/dist/config-graph-P3555574.js +175 -0
- package/dist/configure-KIJ32ZO6.js +104 -0
- package/dist/context-LFBQOSXT.js +344 -0
- package/dist/context-NNLBES2Y.js +82 -0
- package/dist/context-WBH3KSVR.js +302 -0
- package/dist/context-clear-YOHMQ6SQ.js +208 -0
- package/dist/context-index-X2N5UAIF.js +120 -0
- package/dist/context-map-HOSMGUG2.js +555 -0
- package/dist/context-working-set-MRAEVDNV.js +1564 -0
- package/dist/data-tool-JJPBGMQJ.js +2986 -0
- package/dist/detail-RHJOTGN4.js +139 -0
- package/dist/dispatch-runner-NC7PYNIO.js +2477 -0
- package/dist/docs-K4GBWRUX.js +342 -0
- package/dist/doctor-S5KZ2GTN.js +1138 -0
- package/dist/doctor-deep-2EJQSHIZ.js +130 -0
- package/dist/domain-loader-MB34FDPD.js +13 -0
- package/dist/eval-3D6M36N7.js +5220 -0
- package/dist/eval-inventory-SM3HNM47.js +260 -0
- package/dist/evals-FO6JEUCN.js +104 -0
- package/dist/evidence-6IYN52ET.js +262 -0
- package/dist/evidence-JVECPI3F.js +250 -0
- package/dist/evidence-XNVPPLVK.js +410 -0
- package/dist/evolve-TLPUDJDM.js +634 -0
- package/dist/extensions-ROZJ5X3J.js +311 -0
- package/dist/fleet-6RJWIOEO.js +284 -0
- package/dist/fleet-WKVBF5SZ.js +942 -0
- package/dist/fleet-commands-L6WFT7KZ.js +76 -0
- package/dist/fleet-decisions-BTQMWU5A.js +55 -0
- package/dist/fleet-graph-553DZ67Q.js +141 -0
- package/dist/fleet-inspect-236FZPRB.js +329 -0
- package/dist/fleet-new-CKUXP3CO.js +48 -0
- package/dist/fleet-preflight-NZQHABWO.js +95 -0
- package/dist/fleet-validate-7NLAE26R.js +96 -0
- package/dist/fleet-verify-E3RO6A5W.js +226 -0
- package/dist/fleet-view-KMZQY7YJ.js +144 -0
- package/dist/gui/client/assets/abnfDiagram-VCTEODGH-DPBWQwNn.js +1 -0
- package/dist/gui/client/assets/architecture-7GRP2DOG-D1w8FrFW.js +1 -0
- package/dist/gui/client/assets/architectureDiagram-5GKGNRK7-CVPgKd1-.js +36 -0
- package/dist/gui/client/assets/blockDiagram-I7D4REHJ-BLmnqkK5.js +129 -0
- package/dist/gui/client/assets/c4Diagram-7LVT6UL2-4AU9cfM7.js +38 -0
- package/dist/gui/client/assets/channel-DwFZ0m8S.js +1 -0
- package/dist/gui/client/assets/chunk-4HAMMTFA-EOWkKCav.js +62 -0
- package/dist/gui/client/assets/chunk-75Z2AOVW-CygeoIMl.js +2 -0
- package/dist/gui/client/assets/chunk-DU6HZSFF-s27fViLb.js +125 -0
- package/dist/gui/client/assets/chunk-F27PBJKO-BrHvwLsZ.js +1 -0
- package/dist/gui/client/assets/chunk-GMAD6QVW-DzPh-7jt.js +72 -0
- package/dist/gui/client/assets/chunk-GVQU2GXP-pIaQkIzm.js +1 -0
- package/dist/gui/client/assets/chunk-IMKFNOWR-BGJVE_Br.js +231 -0
- package/dist/gui/client/assets/chunk-L3NEJ4N5-B3YLuhww.js +1 -0
- package/dist/gui/client/assets/chunk-OSK3NFVY-BRj61HHU.js +10 -0
- package/dist/gui/client/assets/chunk-P2QGCYS3-Sno90KxP.js +1 -0
- package/dist/gui/client/assets/chunk-POPQ4Y6H-Cw8NTbxr.js +1 -0
- package/dist/gui/client/assets/chunk-PWAF6VOD-BIhHgz37.js +1 -0
- package/dist/gui/client/assets/chunk-SHT3W25Y-Cqv7npBj.js +168 -0
- package/dist/gui/client/assets/chunk-SVP7TREG-Hxzl6Dee.js +88 -0
- package/dist/gui/client/assets/chunk-TICWLB2K-CIFVyVP2.js +206 -0
- package/dist/gui/client/assets/classDiagram-ZZMXUADV-BJbAiI_w.js +1 -0
- package/dist/gui/client/assets/classDiagram-v2-VYDZK3BY-BJbAiI_w.js +1 -0
- package/dist/gui/client/assets/cynefin-OW5HDTMX-DecLWZ-y.js +1 -0
- package/dist/gui/client/assets/cynefinDiagram-5FMLGOSQ-CK-T2N-D.js +62 -0
- package/dist/gui/client/assets/dagre-GXQ25YYZ-C0dfg-OS.js +4 -0
- package/dist/gui/client/assets/diagram-S7CK7UJ4-EaJukVh-.js +30 -0
- package/dist/gui/client/assets/diagram-UQ7AKVKN-xcOucEtP.js +41 -0
- package/dist/gui/client/assets/diagram-VSXAHHWV-3AUJACMf.js +3 -0
- package/dist/gui/client/assets/diagram-VX7I27RA-TPknLqam.js +24 -0
- package/dist/gui/client/assets/diagram-Z3DM3KII-wa1q3YMF.js +24 -0
- package/dist/gui/client/assets/ebnfDiagram-PWID7BFC-JBCF2-s7.js +1 -0
- package/dist/gui/client/assets/erDiagram-RLTQ6QDP-CmXjXPc4.js +99 -0
- package/dist/gui/client/assets/eventmodeling-NTZA5JFV-D_1aJWYl.js +1 -0
- package/dist/gui/client/assets/flowDiagram-HODETNUW-BQtZlael.js +1 -0
- package/dist/gui/client/assets/framework-Bq-znqwW.js +9 -0
- package/dist/gui/client/assets/ganttDiagram-EL5Y4UJY-IPaL_kaa.js +292 -0
- package/dist/gui/client/assets/gitGraph-4MIJSDKK-Oy0Q3hoc.js +1 -0
- package/dist/gui/client/assets/gitGraphDiagram-WWUBYQGX-jtAuBmbc.js +106 -0
- package/dist/gui/client/assets/index-CuFuBEdL.css +1 -0
- package/dist/gui/client/assets/index-hMbEIsX0.js +87 -0
- package/dist/gui/client/assets/info-A6RAGUB7-UtEs1tv7.js +1 -0
- package/dist/gui/client/assets/infoDiagram-27XIBGKW-hlwR1pBW.js +2 -0
- package/dist/gui/client/assets/ishikawaDiagram-5VMMS53U-C6vMtfsd.js +70 -0
- package/dist/gui/client/assets/journeyDiagram-3NMN7TZE-EAwAl_PS.js +139 -0
- package/dist/gui/client/assets/kanban-definition-UXKFOSKX-CQOhRKHW.js +89 -0
- package/dist/gui/client/assets/line-DbcwGZTW.js +1 -0
- package/dist/gui/client/assets/mermaid-parser.core-C2QfVcHd.js +7 -0
- package/dist/gui/client/assets/mermaid.core-N9qUTre1.js +44 -0
- package/dist/gui/client/assets/mindmap-definition-YA3MSWOX-BR_FL9gK.js +96 -0
- package/dist/gui/client/assets/packet-AYTQ26CC-CbBJ2oAa.js +1 -0
- package/dist/gui/client/assets/pegDiagram-XKGWAZYB-BruU0IHM.js +1 -0
- package/dist/gui/client/assets/pie-WAS4IAKB-BWdSng4H.js +1 -0
- package/dist/gui/client/assets/pieDiagram-E7YTZNPT-CR3ljgdU.js +39 -0
- package/dist/gui/client/assets/quadrantDiagram-AXDQQJYC-C-boKslr.js +7 -0
- package/dist/gui/client/assets/radar-RG4KPBEZ-CGlOnAKG.js +1 -0
- package/dist/gui/client/assets/railroad-74A4TZTK-CDvuAlyC.js +1 -0
- package/dist/gui/client/assets/railroad-abnf-HS5TGJTU-CQUA9crC.js +1 -0
- package/dist/gui/client/assets/railroad-ebnf-LZEXJU2U-CD857gxq.js +1 -0
- package/dist/gui/client/assets/railroad-peg-WCYAUIDC-DUV4k35E.js +1 -0
- package/dist/gui/client/assets/railroadDiagram-O6MQD6OU-DMR4LXmA.js +1 -0
- package/dist/gui/client/assets/requirementDiagram-BXWQKSXE-DVltaF6c.js +84 -0
- package/dist/gui/client/assets/sankeyDiagram-P5KCCOFB-CHdNz472.js +40 -0
- package/dist/gui/client/assets/sequenceDiagram-WJ2MYXX4-DaMafIty.js +162 -0
- package/dist/gui/client/assets/stateDiagram-D77RDMKH-CEbBHqn3.js +1 -0
- package/dist/gui/client/assets/stateDiagram-v2-MP3YSRHH-B3JgDdFg.js +1 -0
- package/dist/gui/client/assets/swimlanes-42K2YHIH-BlPHndnJ.js +1 -0
- package/dist/gui/client/assets/swimlanesDiagram-VR7AAH4N-BPabHwsZ.js +8 -0
- package/dist/gui/client/assets/timeline-definition-24CTP7MA-E4Y1lPBI.js +120 -0
- package/dist/gui/client/assets/treeView-Q6P3EWNA-DrY0uhTN.js +1 -0
- package/dist/gui/client/assets/treemap-WGGIJYW6-CVotnLHf.js +1 -0
- package/dist/gui/client/assets/vennDiagram-4TSXK5OY-DJNrLIOF.js +34 -0
- package/dist/gui/client/assets/wardley-WFR3VGLG-ClOpAp5S.js +1 -0
- package/dist/gui/client/assets/wardleyDiagram-VM6X3IG4-qhMoKOXc.js +78 -0
- package/dist/gui/client/assets/xychartDiagram-S5SC5T6Z-CTuXoo9R.js +7 -0
- package/dist/gui/client/index.html +6 -0
- package/dist/gui/ops-worker.js +167 -0
- package/dist/gui/reads-worker.js +473 -0
- package/dist/gui/server.js +9780 -0
- package/dist/gui-QJS7XQMV.js +16 -0
- package/dist/init-DV5B6HQG.js +354 -0
- package/dist/install-6C45YXFP.js +19 -0
- package/dist/install-O7NSRU2W.js +13 -0
- package/dist/interactive-OXGYZYAS.js +22381 -0
- package/dist/interop-J7UOBOSF.js +254 -0
- package/dist/inventory-OEGIL6PY.js +144 -0
- package/dist/library-B3UPGY4V.js +83 -0
- package/dist/library-MXQA5DLT.js +309 -0
- package/dist/library-ROZAMUIL.js +496 -0
- package/dist/library-import-2LTWOVBD.js +190 -0
- package/dist/library-inventory-LJ3XHLWO.js +60 -0
- package/dist/library-validation-DARHHUNW.js +46 -0
- package/dist/mcp-2GSPYQ54.js +28 -0
- package/dist/memory-J3STUUIK.js +537 -0
- package/dist/models-Y3GMFJ2V.js +314 -0
- package/dist/monitor-LHNH577J.js +811 -0
- package/dist/orchestrator-DTAPXULA.js +12117 -0
- package/dist/panes-A743ONZ5.js +103 -0
- package/dist/panes-CTNO57ZY.js +76 -0
- package/dist/paths-3SBYJQDP.js +68 -0
- package/dist/preload-OJBMAIXF.js +140 -0
- package/dist/providers-CMETPZNS.js +232 -0
- package/dist/registry-37T4U6X2.js +15 -0
- package/dist/reset-O7EUCYWO.js +346 -0
- package/dist/resources-FY6XYFN2.js +189 -0
- package/dist/run-H64MEVTA.js +1067 -0
- package/dist/run-script-PQ5NRU3X.js +42 -0
- package/dist/settings-SNIQNXCW.js +73 -0
- package/dist/settings-controls-X6GMCPVG.js +202 -0
- package/dist/share-CAFMMQLM.js +299 -0
- package/dist/skills-ERKQUC7L.js +114 -0
- package/dist/skills-eval-CQ23MYQK.js +1099 -0
- package/dist/skills-inventory-TVUYJDVN.js +142 -0
- package/dist/slash-commands-ROG3KIFJ.js +107 -0
- package/dist/startup-background-KDWCQMWT.js +247 -0
- package/dist/steer-KKYXJSH4.js +77 -0
- package/dist/support-M3RCUUEL.js +40 -0
- package/dist/system-ZDW44ZGX.js +142 -0
- package/dist/target-runtimes-PWA22WVW.js +73 -0
- package/dist/targets-AJWA6E7Z.js +1207 -0
- package/dist/tasks-6L2JJRC5.js +39 -0
- package/dist/terminal-lease-YFUSDPAD.js +432 -0
- package/dist/tools-5XJUABRD.js +30 -0
- package/dist/trace-LA5MVR4Y.js +527 -0
- package/dist/tree-sitter-TQW3Y52T.js +4673 -0
- package/dist/tui-primitives-IUCVWLH5.js +19 -0
- package/dist/uninstall-SAWGGXAB.js +448 -0
- package/dist/upgrade-HSNSVTZG.js +300 -0
- package/dist/usage-XSILDHKF.js +1083 -0
- package/dist/verifiers-ECA5GIHL.js +633 -0
- package/dist/verify-R6QQCCEB.js +31 -0
- package/dist/version-PLZYB5KW.js +22 -0
- package/dist/web-fetch-PVZNMBOB.js +803 -0
- package/dist/wiki-generate-RP22WP5K.js +647 -0
- package/dist/with-panes-W3PAZPRF.js +629 -0
- package/dist/worker/entry.js +324 -284
- package/dist/workspace-check-3764ZKC2.js +83 -0
- package/docs/README.md +26 -10
- package/docs/architecture/acp.md +179 -12
- package/docs/architecture/artifact-placement.md +1 -1
- package/docs/architecture/capacity-and-scheduling.md +7 -8
- package/docs/architecture/context-engine.md +350 -95
- package/docs/architecture/model-catalog.md +18 -11
- package/docs/architecture/observability.md +1 -1
- package/docs/architecture/pi-boundary.md +59 -6
- package/docs/architecture/prompt-envelope-and-tools.md +147 -39
- package/docs/architecture/provider-adapter-cookbook.md +2 -2
- package/docs/architecture/safety-model.md +18 -4
- package/docs/architecture/trace-store.md +2 -2
- package/docs/architecture/tui-design.md +41 -81
- package/docs/architecture/worker-dispatch-mechanics.md +9 -1
- package/docs/gui/README.md +69 -0
- package/docs/gui/boundary-doctrine.md +104 -0
- package/docs/gui/chat-rendering-spec.md +1440 -0
- package/docs/gui/cli-surface-routing.md +148 -0
- package/docs/gui/delivery-order.md +53 -0
- package/docs/gui/event-bus-coverage.md +103 -0
- package/docs/gui/inspector-presentation.md +71 -0
- package/docs/gui/parity/01-cli-surface.md +74 -0
- package/docs/gui/parity/02-slash-and-surfaces.md +110 -0
- package/docs/gui/parity/03-domains-and-plan.md +69 -0
- package/docs/gui/performance-baseline.md +76 -0
- package/docs/gui/settings-write-surface.md +267 -0
- package/docs/gui/workflow-coverage.md +64 -0
- package/docs/guide/built-in-agents.md +1 -1
- package/docs/guide/commands-and-modes.md +256 -99
- package/docs/guide/configuration-and-targets.md +485 -124
- package/docs/guide/configuration-reference.md +165 -82
- package/docs/guide/doctor.md +127 -0
- package/docs/guide/environment-variables.md +1 -1
- package/docs/guide/exit-codes-and-output.md +3 -1
- package/docs/guide/extensions-and-sharing.md +3 -14
- package/docs/guide/fleet-dispatch.md +231 -45
- package/docs/guide/glossary.md +1 -1
- package/docs/guide/installation-and-lifecycle.md +27 -16
- package/docs/guide/interop.md +2 -2
- package/docs/guide/proactive-memory.md +154 -68
- package/docs/guide/resource-library.md +4 -0
- package/docs/guide/skills-marketplace.md +8 -4
- package/docs/guide/slurm.md +88 -0
- package/docs/guide/tool-usage.md +134 -11
- package/docs/guide/troubleshooting.md +4 -2
- package/docs/process/battletest-2026-09-20-fixes.md +161 -0
- package/docs/process/configure-tree-proposal.md +637 -0
- package/docs/process/documentation-coverage.md +8 -0
- package/docs/process/documentation-guide.md +18 -1
- package/docs/process/eval-runner.md +58 -14
- package/docs/process/performance-methodology.md +11 -3
- package/docs/process/release-cut-checklist.md +29 -3
- package/docs/process/tool-audit-v0.4.9.md +3 -0
- package/examples/extensions/README.md +1 -3
- package/examples/extensions/lab-status/clio-coder-extension.json +1 -1
- package/examples/extensions/measurements/clio-coder-extension.json +1 -1
- package/library/registry.yaml +30 -5
- package/library/skills/git/fix-issue/SKILL.md +2 -1
- package/library/skills/git/fix-issue/plugin.json +1 -1
- package/library/skills/git/ship/SKILL.md +2 -1
- package/library/skills/git/ship/plugin.json +1 -1
- package/library/skills/meta/clio-coder-test/SKILL.md +5 -6
- package/library/skills/meta/clio-coder-test/evals.md +2 -2
- package/library/skills/meta/clio-coder-test/references/test-map.md +2 -2
- package/library/skills/registry.yaml +9 -5
- package/library/skills/research/slurm-jobs/SKILL.md +110 -0
- package/library/skills/research/slurm-jobs/evals.md +39 -0
- package/library/skills/research/slurm-jobs/plugin.json +23 -0
- package/library/skills/skill-marketplace.json +18 -2
- package/package.json +15 -10
- package/src/cli/args.ts +59 -0
- package/src/cli/argv.ts +7 -0
- package/src/cli/clio.ts +9 -1
- package/src/cli/configure-controls.ts +136 -0
- package/src/cli/configure-onboarding.ts +24 -7
- package/src/cli/configure-quick.ts +32 -7
- package/src/cli/configure-target.ts +11 -1
- package/src/cli/configure.ts +253 -256
- package/src/cli/docs-server.ts +290 -0
- package/src/cli/docs.ts +60 -15
- package/src/cli/doctor-deep.ts +126 -0
- package/src/cli/doctor-hpc.ts +122 -0
- package/src/cli/doctor-slurm.ts +130 -0
- package/src/cli/doctor-task-worktrees.ts +88 -0
- package/src/cli/doctor.ts +165 -16
- package/src/cli/fleet-verify.ts +3 -2
- package/src/cli/gui.ts +111 -0
- package/src/cli/index.ts +14 -4
- package/src/cli/library.ts +2 -7
- package/src/cli/modes/json-stream.ts +4 -2
- package/src/cli/modes/print.ts +252 -25
- package/src/cli/run.ts +199 -71
- package/src/cli/skills.ts +25 -7
- package/src/cli/targets.ts +87 -9
- package/src/cli/uninstall.ts +28 -8
- package/src/cli/usage.ts +2 -1
- package/src/cli/workspace-check.ts +71 -0
- package/src/core/bash-exec.ts +8 -2
- package/src/core/bus-events.ts +32 -3
- package/src/core/cache-telemetry.ts +3 -2
- package/src/core/compile-cache.ts +11 -1
- package/src/core/config.ts +59 -6
- package/src/core/defaults.ts +27 -5
- package/src/core/diagnostics.ts +25 -0
- package/src/core/event-bus.ts +2 -1
- package/src/core/gateway-routing.ts +10 -3
- package/src/core/git-commit-attribution.ts +2 -1
- package/src/core/naming-compat.ts +6 -4
- package/src/core/package-root.ts +0 -9
- package/src/core/path-canonical.ts +143 -24
- package/src/core/residency-target-key.ts +2 -6
- package/src/core/run-overrides.ts +1 -1
- package/src/core/settings-awareness.ts +108 -0
- package/src/core/settings-controls.ts +673 -0
- package/src/core/settings-navigation.ts +116 -0
- package/src/core/theme-token-hex.ts +19 -9
- package/src/core/turn-constraints.ts +52 -0
- package/src/domains/agents/builtins/scout.md +7 -17
- package/src/domains/agents/catalog.ts +5 -1
- package/src/domains/agents/extension.ts +2 -1
- package/src/domains/agents/registry.ts +4 -3
- package/src/domains/agents/result-contract.ts +132 -1
- package/src/domains/config/classify.ts +11 -7
- package/src/domains/config/extension.ts +5 -1
- package/src/domains/config/keybindings.ts +2 -2
- package/src/domains/context/codewiki/coordinator.ts +10 -0
- package/src/domains/context/worker/snapshot.ts +6 -3
- package/src/domains/dispatch/active-route-planner.ts +2 -0
- package/src/domains/dispatch/agent-candidates.ts +5 -1
- package/src/domains/dispatch/capability-match.ts +1 -1
- package/src/domains/dispatch/contract.ts +28 -0
- package/src/domains/dispatch/event-pump.ts +37 -3
- package/src/domains/dispatch/extension.ts +391 -48
- package/src/domains/dispatch/failure-classification.ts +37 -2
- package/src/domains/dispatch/receipt-integrity.ts +3 -0
- package/src/domains/dispatch/run-identity.ts +10 -3
- package/src/domains/dispatch/target-breaker.ts +163 -0
- package/src/domains/dispatch/types.ts +29 -2
- package/src/domains/dispatch/worker-model-loads.ts +66 -0
- package/src/domains/dispatch/worker-protocol.ts +20 -1
- package/src/domains/dispatch/worker-spawn.ts +28 -2
- package/src/domains/eval/artifacts/redact.ts +9 -0
- package/src/domains/eval/metrics/noop.ts +61 -0
- package/src/domains/eval/reports/junit.ts +5 -1
- package/src/domains/eval/reports/text.ts +7 -0
- package/src/domains/eval/runners/clio-run.ts +19 -8
- package/src/domains/eval/runners/external-command.ts +29 -4
- package/src/domains/eval/schema/adapter.ts +6 -2
- package/src/domains/eval/schema/suite.ts +2 -0
- package/src/domains/eval/schema/validate.ts +3 -0
- package/src/domains/eval/suites/run.ts +167 -26
- package/src/domains/evidence/detail.ts +3 -2
- package/src/domains/extensions/operator-runtime.ts +11 -4
- package/src/domains/gateway/mcp/client.ts +1 -1
- package/src/domains/lifecycle/doctor.ts +42 -26
- package/src/domains/lifecycle/migrations/2026-09-18-ollama-runtime-id.ts +38 -0
- package/src/domains/lifecycle/migrations/index.ts +2 -0
- package/src/domains/middleware/demo-guidance.ts +36 -0
- package/src/domains/middleware/dispatch-nudge.ts +1 -1
- package/src/domains/middleware/memory-intervention.ts +51 -4
- package/src/domains/middleware/runtime.ts +5 -4
- package/src/domains/middleware/skills-reminder.ts +29 -52
- package/src/domains/middleware/task-nudge.ts +1 -0
- package/src/domains/middleware/watchdog.ts +4 -0
- package/src/domains/observability/extension.ts +2 -1
- package/src/domains/observability/out-of-turn-usage.ts +3 -2
- package/src/domains/observability/projection.ts +3 -2
- package/src/domains/observability/worker-progress.ts +48 -0
- package/src/domains/prompts/compiler.ts +148 -52
- package/src/domains/prompts/contract.ts +3 -3
- package/src/domains/prompts/demo-guidance.ts +8 -0
- package/src/domains/prompts/extension.ts +12 -7
- package/src/domains/prompts/fragments/identity/clio.md +2 -1
- package/src/domains/prompts/fragments/identity/docs-routing.md +2 -0
- package/src/domains/prompts/fragments/identity/self-awareness.md +4 -0
- package/src/domains/prompts/fragments/operating/contract.md +16 -7
- package/src/domains/prompts/fragments/operating/delegation.md +29 -13
- package/src/domains/prompts/fragments/operating/skills.md +18 -10
- package/src/domains/prompts/fragments/operating/worker.md +2 -0
- package/src/domains/providers/cache-deployment.ts +45 -2
- package/src/domains/providers/contract.ts +52 -11
- package/src/domains/providers/extension.ts +230 -53
- package/src/domains/providers/model-discovery.ts +22 -8
- package/src/domains/providers/models/local-models/clio-coder-local-coding-targets.yaml +5 -7
- package/src/domains/providers/plugins.ts +3 -4
- package/src/domains/providers/probe/fingerprint.ts +2 -2
- package/src/domains/providers/probe/reasoning.ts +9 -16
- package/src/domains/providers/probe/tool-call.ts +236 -0
- package/src/domains/providers/registry.ts +51 -8
- package/src/domains/providers/runtime-resolution.ts +60 -12
- package/src/domains/providers/runtimes/boot-manifest.ts +1 -1
- package/src/domains/providers/runtimes/builtins.ts +2 -2
- package/src/domains/providers/runtimes/common/lmstudio-http.ts +57 -41
- package/src/domains/providers/runtimes/common/local-synth.ts +3 -1
- package/src/domains/providers/runtimes/common/ollama-model-ids.ts +11 -0
- package/src/domains/providers/runtimes/common/probe-helpers.ts +53 -0
- package/src/domains/providers/runtimes/local-native/llamacpp-completion.ts +3 -1
- package/src/domains/providers/runtimes/local-native/llamacpp-embed.ts +7 -13
- package/src/domains/providers/runtimes/local-native/llamacpp-rerank.ts +7 -17
- package/src/domains/providers/runtimes/local-native/llamacpp.ts +1 -0
- package/src/domains/providers/runtimes/local-native/ollama.ts +211 -0
- package/src/domains/providers/runtimes/protocol/litellm.ts +77 -65
- package/src/domains/providers/support.ts +1 -1
- package/src/domains/providers/types/local-model-quirks.ts +2 -3
- package/src/domains/providers/types/runtime-descriptor.ts +23 -3
- package/src/domains/providers/types/target-descriptor.ts +15 -3
- package/src/domains/resources/collision.ts +7 -2
- package/src/domains/resources/index.ts +1 -0
- package/src/domains/resources/library-actions.ts +4 -2
- package/src/domains/resources/library-inventory.ts +6 -2
- package/src/domains/resources/prompts/loader.ts +20 -7
- package/src/domains/resources/skills/availability.ts +56 -0
- package/src/domains/resources/skills/loader.ts +20 -9
- package/src/domains/safety/action-classifier.ts +282 -31
- package/src/domains/safety/audit.ts +2 -1
- package/src/domains/safety/autonomy.ts +54 -11
- package/src/domains/safety/decision-presentation.ts +17 -4
- package/src/domains/safety/finish-contract-registration.ts +25 -1
- package/src/domains/safety/finish-contract.ts +20 -5
- package/src/domains/safety/path-policy.ts +6 -2
- package/src/domains/safety/policy-engine.ts +168 -48
- package/src/domains/safety/protected-artifacts.ts +527 -16
- package/src/domains/safety/read-scope.ts +120 -0
- package/src/domains/safety/skill-authority.ts +52 -16
- package/src/domains/scheduling/cluster.ts +14 -3
- package/src/domains/scheduling/contract.ts +7 -0
- package/src/domains/scheduling/extension.ts +20 -9
- package/src/domains/scheduling/local-capacity.ts +160 -0
- package/src/domains/session/context-accounting.ts +44 -31
- package/src/domains/session/context-ledger.ts +10 -3
- package/src/domains/session/entries.ts +4 -0
- package/src/domains/session/history.ts +1 -1
- package/src/domains/session/prompt-cache.ts +1 -0
- package/src/domains/session/prompt-manifest.ts +3 -1
- package/src/domains/session/retry.ts +4 -6
- package/src/domains/session/task-board.ts +19 -4
- package/src/domains/session/tree/preview.ts +3 -2
- package/src/engine/acp/commands.ts +653 -0
- package/src/engine/acp/server.ts +639 -20
- package/src/engine/acp/tool-mediator.ts +30 -7
- package/src/engine/acp/types.ts +58 -0
- package/src/engine/agent.ts +55 -10
- package/src/engine/ai.ts +11 -2
- package/src/engine/api-registry.ts +5 -4
- package/src/engine/apis/degraded-inference.ts +243 -0
- package/src/engine/apis/llamacpp-residency.ts +50 -6
- package/src/engine/apis/lmstudio-residency.ts +3 -5
- package/src/engine/apis/lmstudio.ts +137 -31
- package/src/engine/apis/ollama-http.ts +118 -0
- package/src/engine/apis/ollama-native.ts +216 -97
- package/src/engine/apis/openai-completions.ts +191 -189
- package/src/engine/apis/output-budget.ts +3 -1
- package/src/engine/apis/residency-lock.ts +2 -1
- package/src/engine/apis/residency.ts +339 -89
- package/src/engine/apis/sampling-overrides.ts +23 -2
- package/src/engine/apis/types.ts +1 -2
- package/src/engine/claude/tool-safety.ts +30 -5
- package/src/engine/context.ts +13 -0
- package/src/engine/env-api-keys.ts +2 -1
- package/src/engine/gemma-channel-filter.ts +3 -2
- package/src/engine/instrumented-tui.ts +25 -0
- package/src/engine/loop-guard.ts +172 -6
- package/src/engine/pi-mono-names.ts +16 -0
- package/src/engine/prewarm.ts +44 -15
- package/src/engine/provider-payload.ts +52 -14
- package/src/engine/session.ts +4 -2
- package/src/engine/worker-events.ts +9 -1
- package/src/engine/worker-runtime.ts +269 -42
- package/src/engine/worker-tools.ts +8 -3
- package/src/entry/boot-options.ts +23 -0
- package/src/entry/orchestrator.ts +207 -36
- package/src/interactive/assistant-generation-timing.ts +52 -0
- package/src/interactive/chat-loop-messages.ts +4 -1
- package/src/interactive/chat-loop.ts +59 -9
- package/src/interactive/chat-panel.ts +10 -1
- package/src/interactive/clio-editor.ts +51 -79
- package/src/interactive/context-meter.ts +1 -0
- package/src/interactive/context-overlay.ts +21 -8
- package/src/interactive/cost-overlay.ts +1 -1
- package/src/interactive/dispatch-board.ts +39 -8
- package/src/interactive/editor-bash.ts +0 -34
- package/src/interactive/editor-rails.ts +43 -0
- package/src/interactive/editor-submit.ts +34 -2
- package/src/interactive/footer/dashboard.ts +67 -38
- package/src/interactive/footer/demo-hints.ts +40 -0
- package/src/interactive/footer/key-hints.ts +21 -0
- package/src/interactive/footer/notifications.ts +1 -1
- package/src/interactive/footer/pages.ts +486 -0
- package/src/interactive/footer/system-metrics.ts +147 -0
- package/src/interactive/footer/widgets.ts +158 -63
- package/src/interactive/footer-panel.ts +29 -7
- package/src/interactive/interactive-application.ts +109 -21
- package/src/interactive/interactive-event-projection.ts +6 -2
- package/src/interactive/interactive-presentation.ts +25 -29
- package/src/interactive/interactive-slash-runtime.ts +32 -18
- package/src/interactive/interactive-subscriptions.ts +25 -5
- package/src/interactive/interactive-tickers.ts +21 -5
- package/src/interactive/keybinding-manager.ts +9 -0
- package/src/interactive/overlay-frame.ts +29 -7
- package/src/interactive/overlay-lifecycle.ts +5 -3
- package/src/interactive/overlay-model-selectors.ts +4 -0
- package/src/interactive/overlay-permission-lifecycle.ts +6 -5
- package/src/interactive/overlays/ask-user.ts +103 -110
- package/src/interactive/overlays/help-reference.ts +1 -0
- package/src/interactive/overlays/message-picker.ts +3 -29
- package/src/interactive/overlays/session-selector.ts +3 -2
- package/src/interactive/overlays/settings-sections.ts +2 -30
- package/src/interactive/overlays/settings.ts +310 -607
- package/src/interactive/permission-hint.ts +3 -3
- package/src/interactive/permission-overlay.ts +45 -27
- package/src/interactive/renderers/doctor-report.ts +43 -0
- package/src/interactive/renderers/tool-execution.ts +87 -62
- package/src/interactive/renderers/worker-entry.ts +76 -3
- package/src/interactive/side-question.ts +3 -1
- package/src/interactive/slash-commands.ts +78 -23
- package/src/interactive/startup-background.ts +131 -0
- package/src/interactive/startup-diagnostics.ts +16 -0
- package/src/interactive/status/state-machine.ts +16 -3
- package/src/interactive/status/types.ts +2 -0
- package/src/interactive/status/verbs.ts +1 -1
- package/src/interactive/terminal-lease.ts +26 -22
- package/src/interactive/theme/components.ts +1 -1
- package/src/interactive/theme/rules.ts +1 -1
- package/src/interactive/theme/tokens.ts +16 -10
- package/src/interactive/transcript-detail.ts +4 -0
- package/src/interactive/turn-context.ts +56 -20
- package/src/interactive/turn-middleware.ts +57 -9
- package/src/interactive/turn-prewarm.ts +121 -18
- package/src/interactive/turn-recovery.ts +10 -8
- package/src/interactive/turn-runtime.ts +74 -29
- package/src/interactive/turn-state.ts +3 -0
- package/src/interactive/welcome-art.ts +36 -0
- package/src/interactive/welcome-dashboard.ts +209 -49
- package/src/interactive/worker-replay.ts +4 -0
- package/src/interactive/worker-stream.ts +17 -2
- package/src/tools/agent-tools.ts +22 -1
- package/src/tools/builtin-tool-catalog.ts +2 -2
- package/src/tools/codewiki/code-nav.ts +1 -1
- package/src/tools/codewiki/shared.ts +39 -1
- package/src/tools/compete-worktrees.ts +8 -91
- package/src/tools/context/docs-engine.ts +44 -12
- package/src/tools/context/index.ts +126 -22
- package/src/tools/context/library.ts +1 -1
- package/src/tools/context/surface.ts +12 -7
- package/src/tools/core-bootstrap.ts +3 -0
- package/src/tools/dispatch-runner.ts +18 -0
- package/src/tools/dispatch-schema.ts +187 -206
- package/src/tools/edit.ts +46 -42
- package/src/tools/file-mutation-queue.ts +25 -26
- package/src/tools/gateway/clio-context-surface.ts +1 -1
- package/src/tools/gateway/index.ts +7 -3
- package/src/tools/gateway/mcp-capabilities.ts +5 -3
- package/src/tools/grep.ts +14 -2
- package/src/tools/ls.ts +1 -4
- package/src/tools/monitor.ts +14 -1
- package/src/tools/observation.ts +1 -3
- package/src/tools/path-utils.ts +51 -18
- package/src/tools/process-lease.ts +99 -0
- package/src/tools/read.ts +1 -1
- package/src/tools/registry.ts +71 -9
- package/src/tools/task-worktree.ts +296 -17
- package/src/tools/tasks.ts +29 -7
- package/src/tools/worker-evidence.ts +60 -1
- package/src/tools/worktree-root.ts +252 -0
- package/src/tools/write.ts +34 -30
- package/src/worker/entry.ts +18 -1
- package/src/worker/protocol.ts +54 -1
- package/src/worker/spec-contract.ts +22 -2
- package/dist/acp-ZWZCPS2A.js +0 -130
- package/dist/agents-LYSOWZUE.js +0 -150
- package/dist/auth-WBQGKWQ5.js +0 -551
- package/dist/background-BUMOBAQN.js +0 -37
- package/dist/builtins-ODRJOEDI.js +0 -22
- package/dist/chunk-2DRRZ57Q.js +0 -571
- package/dist/chunk-2JBZYUPY.js +0 -105
- package/dist/chunk-2VBWFXYE.js +0 -198
- package/dist/chunk-2X2R3UTH.js +0 -1018
- package/dist/chunk-32KJPXAM.js +0 -75
- package/dist/chunk-37LW32LZ.js +0 -32
- package/dist/chunk-3A3CUMKA.js +0 -54
- package/dist/chunk-3AND2EFU.js +0 -215
- package/dist/chunk-3RDHGNU7.js +0 -647
- package/dist/chunk-3SUDBGEI.js +0 -1323
- package/dist/chunk-3TQN67I2.js +0 -396
- package/dist/chunk-3U4BL2EV.js +0 -103
- package/dist/chunk-3UQADNG2.js +0 -302
- package/dist/chunk-434LRQ6Z.js +0 -13441
- package/dist/chunk-4ATBOFRP.js +0 -7802
- package/dist/chunk-4DNL43EZ.js +0 -139
- package/dist/chunk-4HFJKRGZ.js +0 -5250
- package/dist/chunk-555E2WVV.js +0 -322
- package/dist/chunk-5GZICIYO.js +0 -462
- package/dist/chunk-5PHVPU4G.js +0 -160
- package/dist/chunk-5RTEFNBP.js +0 -197
- package/dist/chunk-64XJW7NT.js +0 -380
- package/dist/chunk-6TKOFFGE.js +0 -1058
- package/dist/chunk-6UJ7RDI7.js +0 -1143
- package/dist/chunk-7FBCRWVT.js +0 -1801
- package/dist/chunk-7JSOSVLP.js +0 -283
- package/dist/chunk-7N3OLLSL.js +0 -637
- package/dist/chunk-7QQRPB2E.js +0 -915
- package/dist/chunk-A6DULIMH.js +0 -986
- package/dist/chunk-AB3QXXBC.js +0 -123
- package/dist/chunk-ACCECAH4.js +0 -49
- package/dist/chunk-AM6CEP2K.js +0 -2120
- package/dist/chunk-AUHVBIDW.js +0 -19
- package/dist/chunk-AY4XE6GN.js +0 -665
- package/dist/chunk-BBA2TAWV.js +0 -667
- package/dist/chunk-BFPHMSK7.js +0 -169
- package/dist/chunk-BMNVVKEW.js +0 -604
- package/dist/chunk-CKK25WN3.js +0 -72
- package/dist/chunk-CTGZCEI6.js +0 -33
- package/dist/chunk-DIAJYJYG.js +0 -446
- package/dist/chunk-DVNAPPXU.js +0 -27
- package/dist/chunk-DXVMLM3Z.js +0 -92
- package/dist/chunk-E3LEPLQ2.js +0 -68
- package/dist/chunk-EHZRAB4U.js +0 -63
- package/dist/chunk-EM2DIQAJ.js +0 -179
- package/dist/chunk-EM2WNQS2.js +0 -93
- package/dist/chunk-ETF4ROKH.js +0 -595
- package/dist/chunk-F2YM3JY4.js +0 -22513
- package/dist/chunk-FEBQWHJT.js +0 -1023
- package/dist/chunk-FPS4R2RN.js +0 -1975
- package/dist/chunk-GD55RTIW.js +0 -33
- package/dist/chunk-GJDRMBDI.js +0 -573
- package/dist/chunk-GREYLTZ5.js +0 -658
- package/dist/chunk-H2WSCZZT.js +0 -238
- package/dist/chunk-H6IUCY6Q.js +0 -117
- package/dist/chunk-H72DCH3E.js +0 -563
- package/dist/chunk-H7TXJR23.js +0 -705
- package/dist/chunk-HBJQQTKM.js +0 -40
- package/dist/chunk-HCVKSGNZ.js +0 -990
- package/dist/chunk-HVCAY2FH.js +0 -67
- package/dist/chunk-I47EJPYL.js +0 -1377
- package/dist/chunk-IALGWTLO.js +0 -36
- package/dist/chunk-IALZJE37.js +0 -1710
- package/dist/chunk-IC7JXLOM.js +0 -1577
- package/dist/chunk-IOSVTTCD.js +0 -108
- package/dist/chunk-IPTPMLA6.js +0 -475
- package/dist/chunk-IZZI3SKQ.js +0 -128
- package/dist/chunk-JABWPKFY.js +0 -27
- package/dist/chunk-JIYWMQZ5.js +0 -175
- package/dist/chunk-JKU34ACI.js +0 -693
- package/dist/chunk-JOBN2YQQ.js +0 -176
- package/dist/chunk-JOL2QRLE.js +0 -152
- package/dist/chunk-JTR3VSV3.js +0 -44
- package/dist/chunk-JU6MAMRJ.js +0 -362
- package/dist/chunk-JURMQWVJ.js +0 -15
- package/dist/chunk-K2BLQC5E.js +0 -262
- package/dist/chunk-K3XN4LZ4.js +0 -402
- package/dist/chunk-KIVFXGBM.js +0 -688
- package/dist/chunk-KKRXONXG.js +0 -43
- package/dist/chunk-KOAHT3N2.js +0 -395
- package/dist/chunk-KP5BPXR3.js +0 -73
- package/dist/chunk-KQ6IDQIB.js +0 -39
- package/dist/chunk-KRJQG47M.js +0 -1289
- package/dist/chunk-KW6OJ7IY.js +0 -221
- package/dist/chunk-L3NBWLSN.js +0 -314
- package/dist/chunk-L4RUTLRL.js +0 -59
- package/dist/chunk-LGTVWPRN.js +0 -47
- package/dist/chunk-LSQW6KZO.js +0 -200
- package/dist/chunk-LTR5QCLS.js +0 -446
- package/dist/chunk-LWJYOHT3.js +0 -165
- package/dist/chunk-M6YLF66Z.js +0 -2687
- package/dist/chunk-MJ4QEJVT.js +0 -185
- package/dist/chunk-MO65K5CH.js +0 -1148
- package/dist/chunk-MTOZEQHL.js +0 -637
- package/dist/chunk-MZDPF35R.js +0 -45
- package/dist/chunk-MZKYVIWW.js +0 -188
- package/dist/chunk-NBPA5QM6.js +0 -386
- package/dist/chunk-NMBEW4PP.js +0 -688
- package/dist/chunk-NPLLK3HO.js +0 -3610
- package/dist/chunk-NSYGPIVW.js +0 -39
- package/dist/chunk-NXTV5OI5.js +0 -1020
- package/dist/chunk-NYDG4QP4.js +0 -689
- package/dist/chunk-OA2GDACN.js +0 -146
- package/dist/chunk-PJI57EC6.js +0 -236
- package/dist/chunk-PJJBUGMR.js +0 -4484
- package/dist/chunk-PNJE7JPS.js +0 -50
- package/dist/chunk-PP23PZEV.js +0 -1347
- package/dist/chunk-PPIFDSBK.js +0 -409
- package/dist/chunk-PTFISXQO.js +0 -319
- package/dist/chunk-QB33Z5S7.js +0 -1865
- package/dist/chunk-QGNII5VC.js +0 -110
- package/dist/chunk-QH3ZTUOA.js +0 -113
- package/dist/chunk-QI72X67S.js +0 -481
- package/dist/chunk-QJMRYTCX.js +0 -56
- package/dist/chunk-QKHZZFKH.js +0 -98
- package/dist/chunk-RDKX2PME.js +0 -66
- package/dist/chunk-RL7LJYN4.js +0 -66
- package/dist/chunk-RPMNIFRY.js +0 -65
- package/dist/chunk-RQROVOV3.js +0 -670
- package/dist/chunk-S34A7BSP.js +0 -97
- package/dist/chunk-SJETVJHX.js +0 -119
- package/dist/chunk-SJMNU4ZS.js +0 -634
- package/dist/chunk-SL2RDHKO.js +0 -19
- package/dist/chunk-SLLG2G44.js +0 -85
- package/dist/chunk-SQAZN2V3.js +0 -2744
- package/dist/chunk-SQBT46OF.js +0 -814
- package/dist/chunk-SRCEQKQS.js +0 -165
- package/dist/chunk-TCUOGIL2.js +0 -52
- package/dist/chunk-TIWPKCVO.js +0 -42
- package/dist/chunk-U44YYLVV.js +0 -1529
- package/dist/chunk-UIU7MGZ3.js +0 -486
- package/dist/chunk-USBBEKHW.js +0 -177
- package/dist/chunk-VHKTOLEW.js +0 -1416
- package/dist/chunk-VPWGADBG.js +0 -3151
- package/dist/chunk-VQD7NH7Z.js +0 -356
- package/dist/chunk-VWFCAK34.js +0 -697
- package/dist/chunk-W5RM7YAH.js +0 -78
- package/dist/chunk-W72LLZAV.js +0 -243
- package/dist/chunk-WGRDABW7.js +0 -207
- package/dist/chunk-WWRV5RJI.js +0 -165
- package/dist/chunk-XCUDZQLX.js +0 -195
- package/dist/chunk-XFLSL7BT.js +0 -386
- package/dist/chunk-XJZEDCNT.js +0 -391
- package/dist/chunk-XLLEL3K7.js +0 -709
- package/dist/chunk-XNZWWDC3.js +0 -686
- package/dist/chunk-XRECG65F.js +0 -308
- package/dist/chunk-XTQ7MEJG.js +0 -457
- package/dist/chunk-XW2UZICE.js +0 -372
- package/dist/chunk-Y3M2T5RO.js +0 -891
- package/dist/chunk-YGDMBK7O.js +0 -567
- package/dist/chunk-YJCCMYYT.js +0 -125
- package/dist/chunk-YPQOPFP7.js +0 -797
- package/dist/chunk-YQYINEJI.js +0 -132
- package/dist/chunk-ZF6CV4WZ.js +0 -5614
- package/dist/chunk-ZKJU55MX.js +0 -326
- package/dist/chunk-ZKQ63XZ5.js +0 -1196
- package/dist/chunk-ZKVMDNAN.js +0 -962
- package/dist/chunk-ZST3FRCV.js +0 -132
- package/dist/clio-JUDCLNHC.js +0 -26
- package/dist/clio-context-tools-FT672MNZ.js +0 -136
- package/dist/code-nav-7OVCTP2Z.js +0 -688
- package/dist/compile-cache-WJEPUZEJ.js +0 -16
- package/dist/components-OZXZMDWU.js +0 -674
- package/dist/config-P3ZQVF63.js +0 -275
- package/dist/config-graph-GKAOBAS5.js +0 -160
- package/dist/configure-25LRYZJG.js +0 -86
- package/dist/context-72VQV7JX.js +0 -73
- package/dist/context-COWRWXP3.js +0 -286
- package/dist/context-WB3D474G.js +0 -344
- package/dist/context-clear-Y4LYMWC6.js +0 -192
- package/dist/context-index-W6A4V7OC.js +0 -120
- package/dist/context-map-DKL3QT6D.js +0 -555
- package/dist/context-working-set-TMZYVC7A.js +0 -1560
- package/dist/data-tool-KMBWKKWR.js +0 -2987
- package/dist/detail-4GLROGY5.js +0 -123
- package/dist/dispatch-runner-TR3LBP5P.js +0 -2446
- package/dist/docs-ZK777W2G.js +0 -101
- package/dist/doctor-WC4OV2OB.js +0 -814
- package/dist/eval-FUNWJNUJ.js +0 -5050
- package/dist/eval-inventory-CX24K2JT.js +0 -260
- package/dist/evals-L73EBHSU.js +0 -104
- package/dist/evidence-AVJ2RTHX.js +0 -392
- package/dist/evidence-P4NZOAK7.js +0 -233
- package/dist/evidence-Y55WKYHH.js +0 -246
- package/dist/evolve-MAWKRYWF.js +0 -617
- package/dist/extensions-PYQH3H47.js +0 -308
- package/dist/fleet-M4H2QBWT.js +0 -268
- package/dist/fleet-ULBXXRDR.js +0 -923
- package/dist/fleet-commands-7NNC4JZU.js +0 -76
- package/dist/fleet-decisions-EHEY7KPU.js +0 -52
- package/dist/fleet-graph-LQ2AHZT3.js +0 -136
- package/dist/fleet-inspect-5IGBIIYZ.js +0 -312
- package/dist/fleet-new-RCKGSRDV.js +0 -48
- package/dist/fleet-preflight-UTTNOKMG.js +0 -27
- package/dist/fleet-validate-YGILJKA6.js +0 -91
- package/dist/fleet-verify-AUWTCDKR.js +0 -210
- package/dist/fleet-view-TGUFCY5A.js +0 -127
- package/dist/init-GFN2Z7NF.js +0 -333
- package/dist/install-3RZDDP23.js +0 -13
- package/dist/install-6PIF6F6W.js +0 -19
- package/dist/interop-EF5JUWWK.js +0 -246
- package/dist/inventory-I6VJDDYF.js +0 -127
- package/dist/library-3J5IO2OJ.js +0 -75
- package/dist/library-IJTOFTDS.js +0 -307
- package/dist/library-Z3KZSHPE.js +0 -492
- package/dist/library-import-IMKFLDHX.js +0 -183
- package/dist/library-inventory-CQP5D6GU.js +0 -56
- package/dist/library-validation-33UTX7AI.js +0 -42
- package/dist/mcp-5FWZKUS6.js +0 -26
- package/dist/memory-36CWN67Y.js +0 -520
- package/dist/models-KQ6PQJJQ.js +0 -302
- package/dist/monitor-XX6ZD6KC.js +0 -785
- package/dist/orchestrator-SK6HDAOP.js +0 -42067
- package/dist/panes-L27QRXUH.js +0 -74
- package/dist/panes-LXZIWNOZ.js +0 -103
- package/dist/paths-7DJDU4P4.js +0 -67
- package/dist/preload-K2TDYI4Y.js +0 -124
- package/dist/registry-DESGAXWK.js +0 -11
- package/dist/reset-73VU3XNT.js +0 -345
- package/dist/resources-3BYJYVYL.js +0 -181
- package/dist/run-AR7PY6GW.js +0 -896
- package/dist/run-script-H2KUDIII.js +0 -41
- package/dist/settings-3VMBMWID.js +0 -72
- package/dist/share-HVWH4FPF.js +0 -293
- package/dist/skills-5TYEY75Q.js +0 -100
- package/dist/skills-eval-CK3MD63Z.js +0 -1083
- package/dist/skills-inventory-KSFYG3I6.js +0 -138
- package/dist/slash-commands-DMVHML7P.js +0 -98
- package/dist/steer-XCD6V3EW.js +0 -77
- package/dist/support-JAZL6VBR.js +0 -38
- package/dist/system-3TDQRMZZ.js +0 -116
- package/dist/targets-EZKHAYRN.js +0 -1117
- package/dist/tasks-SNEFHWYW.js +0 -36
- package/dist/terminal-lease-BNLFA4OF.js +0 -419
- package/dist/tools-7IM6BDCE.js +0 -28
- package/dist/trace-C3MBGD4S.js +0 -524
- package/dist/tree-sitter-AQUUOSYM.js +0 -4673
- package/dist/tui-primitives-36BY2774.js +0 -18
- package/dist/uninstall-WWLOSZ42.js +0 -432
- package/dist/upgrade-ETK2JNSJ.js +0 -297
- package/dist/usage-S2HOB7BZ.js +0 -1065
- package/dist/verifiers-QDTEVH7R.js +0 -632
- package/dist/verify-SUKUK6XM.js +0 -31
- package/dist/version-RFPKO6T7.js +0 -21
- package/dist/web/client/assets/abnfDiagram-VCTEODGH-BznNOe_I.js +0 -1
- package/dist/web/client/assets/architecture-7GRP2DOG-BQO9DL_y.js +0 -1
- package/dist/web/client/assets/architectureDiagram-5GKGNRK7-CKPbdvyx.js +0 -36
- package/dist/web/client/assets/blockDiagram-I7D4REHJ-prINbpbM.js +0 -129
- package/dist/web/client/assets/c4Diagram-7LVT6UL2-DkVRKtyU.js +0 -38
- package/dist/web/client/assets/channel-c4EeUUqA.js +0 -1
- package/dist/web/client/assets/chunk-4HAMMTFA-CV0Z1ApC.js +0 -62
- package/dist/web/client/assets/chunk-75Z2AOVW-D34Nohxq.js +0 -2
- package/dist/web/client/assets/chunk-DU6HZSFF-Das_cS-O.js +0 -125
- package/dist/web/client/assets/chunk-F27PBJKO-CmRojxkG.js +0 -1
- package/dist/web/client/assets/chunk-GMAD6QVW-ClYZmc73.js +0 -72
- package/dist/web/client/assets/chunk-GVQU2GXP-B2BiHFt-.js +0 -1
- package/dist/web/client/assets/chunk-IMKFNOWR-BGApZ8nP.js +0 -231
- package/dist/web/client/assets/chunk-L3NEJ4N5-DIzCgpkY.js +0 -1
- package/dist/web/client/assets/chunk-OSK3NFVY-BPT-yePv.js +0 -10
- package/dist/web/client/assets/chunk-P2QGCYS3-BC1WTc2t.js +0 -1
- package/dist/web/client/assets/chunk-POPQ4Y6H-BSjzBmZU.js +0 -1
- package/dist/web/client/assets/chunk-PWAF6VOD-BIjLs86Z.js +0 -1
- package/dist/web/client/assets/chunk-SHT3W25Y-CduDz2cm.js +0 -168
- package/dist/web/client/assets/chunk-SVP7TREG-XUn4pPAP.js +0 -88
- package/dist/web/client/assets/chunk-TICWLB2K-DcBy2DKy.js +0 -206
- package/dist/web/client/assets/classDiagram-ZZMXUADV-C0HR7YKN.js +0 -1
- package/dist/web/client/assets/classDiagram-v2-VYDZK3BY-C0HR7YKN.js +0 -1
- package/dist/web/client/assets/cynefin-OW5HDTMX-BecPbyM6.js +0 -1
- package/dist/web/client/assets/cynefinDiagram-5FMLGOSQ-BzMzFwyT.js +0 -62
- package/dist/web/client/assets/dagre-GXQ25YYZ-CAWJmRMG.js +0 -4
- package/dist/web/client/assets/diagram-S7CK7UJ4--lp0ALmn.js +0 -30
- package/dist/web/client/assets/diagram-UQ7AKVKN-gKUnsjcj.js +0 -41
- package/dist/web/client/assets/diagram-VSXAHHWV-BoN5D1Gh.js +0 -3
- package/dist/web/client/assets/diagram-VX7I27RA-BMtuswQ6.js +0 -24
- package/dist/web/client/assets/diagram-Z3DM3KII-DtU8LXrA.js +0 -24
- package/dist/web/client/assets/ebnfDiagram-PWID7BFC-DDcnv9BH.js +0 -1
- package/dist/web/client/assets/erDiagram-RLTQ6QDP-DvRb4iDL.js +0 -99
- package/dist/web/client/assets/eventmodeling-NTZA5JFV-01h4SbTc.js +0 -1
- package/dist/web/client/assets/flowDiagram-HODETNUW-Bll_YZ6T.js +0 -1
- package/dist/web/client/assets/framework-YGoR34M4.js +0 -9
- package/dist/web/client/assets/ganttDiagram-EL5Y4UJY-DdFZ9hvH.js +0 -292
- package/dist/web/client/assets/gitGraph-4MIJSDKK-DjD_AAMj.js +0 -1
- package/dist/web/client/assets/gitGraphDiagram-WWUBYQGX-CDyN9n2u.js +0 -106
- package/dist/web/client/assets/index-CVcy0FAn.js +0 -75
- package/dist/web/client/assets/index-Dsi52apB.css +0 -1
- package/dist/web/client/assets/info-A6RAGUB7-C_XK8Hq0.js +0 -1
- package/dist/web/client/assets/infoDiagram-27XIBGKW-DIe4tJ1i.js +0 -2
- package/dist/web/client/assets/ishikawaDiagram-5VMMS53U-CVl5unKI.js +0 -70
- package/dist/web/client/assets/journeyDiagram-3NMN7TZE-CPEB1Vt8.js +0 -139
- package/dist/web/client/assets/kanban-definition-UXKFOSKX-j-9WXjYQ.js +0 -89
- package/dist/web/client/assets/line-BIDAcEtX.js +0 -1
- package/dist/web/client/assets/mermaid-parser.core-Ux4vssh0.js +0 -7
- package/dist/web/client/assets/mermaid.core-CDuwVKeh.js +0 -44
- package/dist/web/client/assets/mindmap-definition-YA3MSWOX-5MlQEeQ6.js +0 -96
- package/dist/web/client/assets/packet-AYTQ26CC-DRO66c9Q.js +0 -1
- package/dist/web/client/assets/pegDiagram-XKGWAZYB-BakZnSjM.js +0 -1
- package/dist/web/client/assets/pie-WAS4IAKB-BEzcmhz8.js +0 -1
- package/dist/web/client/assets/pieDiagram-E7YTZNPT-DpmqgoPt.js +0 -39
- package/dist/web/client/assets/quadrantDiagram-AXDQQJYC-DuMPwwV2.js +0 -7
- package/dist/web/client/assets/radar-RG4KPBEZ-Djm3oXl5.js +0 -1
- package/dist/web/client/assets/railroad-74A4TZTK-Cpvkwsao.js +0 -1
- package/dist/web/client/assets/railroad-abnf-HS5TGJTU-CpRQ3ruG.js +0 -1
- package/dist/web/client/assets/railroad-ebnf-LZEXJU2U-1Rm5a5eJ.js +0 -1
- package/dist/web/client/assets/railroad-peg-WCYAUIDC-C8344cTh.js +0 -1
- package/dist/web/client/assets/railroadDiagram-O6MQD6OU-CgMS4B6R.js +0 -1
- package/dist/web/client/assets/requirementDiagram-BXWQKSXE-CX5eoNdN.js +0 -84
- package/dist/web/client/assets/sankeyDiagram-P5KCCOFB-CODBX2N3.js +0 -40
- package/dist/web/client/assets/sequenceDiagram-WJ2MYXX4-eUhhF8OR.js +0 -162
- package/dist/web/client/assets/stateDiagram-D77RDMKH-vR6l0NC2.js +0 -1
- package/dist/web/client/assets/stateDiagram-v2-MP3YSRHH-BYUm8jLY.js +0 -1
- package/dist/web/client/assets/swimlanes-42K2YHIH-v9Tw_zX7.js +0 -1
- package/dist/web/client/assets/swimlanesDiagram-VR7AAH4N-B2jdCvhD.js +0 -8
- package/dist/web/client/assets/timeline-definition-24CTP7MA-DxianbhU.js +0 -120
- package/dist/web/client/assets/treeView-Q6P3EWNA-DLxnZb9R.js +0 -1
- package/dist/web/client/assets/treemap-WGGIJYW6-I7UnZ6xJ.js +0 -1
- package/dist/web/client/assets/vennDiagram-4TSXK5OY-Ar7M8Mrj.js +0 -34
- package/dist/web/client/assets/wardley-WFR3VGLG-B8ZSHeDu.js +0 -1
- package/dist/web/client/assets/wardleyDiagram-VM6X3IG4-Qks2FmIn.js +0 -78
- package/dist/web/client/assets/xychartDiagram-S5SC5T6Z-BBBjRtiE.js +0 -7
- package/dist/web/client/index.html +0 -6
- package/dist/web/ops-worker.js +0 -37
- package/dist/web/reads-worker.js +0 -1726
- package/dist/web/server.js +0 -8499
- package/dist/web-EMGUGGEI.js +0 -13
- package/dist/web-fetch-6BRRVQON.js +0 -805
- package/dist/wiki-generate-XHSJTDOP.js +0 -627
- package/dist/with-panes-Z6BTEHMZ.js +0 -628
- package/evals/README.md +0 -9
- package/evals/behavioral-corpus-grader.mjs +0 -236
- package/evals/behavioral-machinery-baseline.json +0 -2276
- package/evals/behavioral-machinery-driver.ts +0 -250
- package/evals/behavioral-machinery-support.ts +0 -254
- package/evals/behavioral-machinery.yaml +0 -614
- package/evals/behavioral-model-negative-control.yaml +0 -69
- package/evals/behavioral-model.yaml +0 -482
- package/evals/fixtures/behavioral-facts.txt +0 -3
- package/evals/fixtures/behavioral-main.ts +0 -7
- package/evals/fixtures/decoy/note.txt +0 -2
- package/evals/fixtures/docs-retrieval.json +0 -102
- package/evals/fixtures/private/credentials.txt +0 -1
- package/evals/fixtures/scalar-decision.json +0 -17
- package/evals/fixtures/scout-citation-pipeline.json +0 -55
- package/evals/fixtures/source-explanation.json +0 -74
- package/evals/fixtures/tool-arguments.json +0 -18
- package/evals/fixtures/tool-surface/read.txt +0 -4
- package/evals/fixtures/tool-surface/subdir/keep.txt +0 -1
- package/evals/no-edit-memory-grader.mjs +0 -149
- package/evals/scalar-decision-grader.py +0 -41
- package/evals/scalar-decision-machinery.ts +0 -145
- package/evals/source-explanation-grader.mjs +0 -118
- package/evals/tool-surface-grader.mjs +0 -53
- package/evals/tool-surface-model.yaml +0 -274
- package/evals/tracked-metrics-baseline.yaml +0 -229
- package/evals/tracked-metrics-grader.mjs +0 -129
- package/src/cli/web.ts +0 -79
- package/src/domains/providers/runtimes/local-native/ollama-native.ts +0 -122
- /package/dist/assets/{web-notices → gui-notices}/@hono__node-server-LICENSE +0 -0
- /package/dist/assets/{web-notices → gui-notices}/hono-LICENSE +0 -0
- /package/dist/{web → gui}/client/THIRD_PARTY_LICENSES.md +0 -0
- /package/dist/{web → gui}/client/assets/arc-Pry-7G1_.js +0 -0
- /package/dist/{web → gui}/client/assets/array-BifhSqXX.js +0 -0
- /package/dist/{web → gui}/client/assets/atkinson-hyperlegible-next-latin-ext-wght-normal-C6vrW8VD.woff2 +0 -0
- /package/dist/{web → gui}/client/assets/atkinson-hyperlegible-next-latin-wght-normal-BcXVPD7q.woff2 +0 -0
- /package/dist/{web → gui}/client/assets/chunk-2Q5K7J3B-C1jixKkw.js +0 -0
- /package/dist/{web → gui}/client/assets/chunk-5VM5RSS4-ZNzvKenW.js +0 -0
- /package/dist/{web → gui}/client/assets/chunk-FOHPRMQF-CoA4358r.js +0 -0
- /package/dist/{web → gui}/client/assets/chunk-JWPE2WC7-DVXcaiue.js +0 -0
- /package/dist/{web → gui}/client/assets/chunk-XXDRQBXY-DqAYeljN.js +0 -0
- /package/dist/{web → gui}/client/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +0 -0
- /package/dist/{web → gui}/client/assets/commit-mono-latin-400-normal-s0S3qwFW.woff +0 -0
- /package/dist/{web → gui}/client/assets/commit-mono-latin-400-normal-wzhe4RuD.woff2 +0 -0
- /package/dist/{web → gui}/client/assets/cose-bilkent-JH36ORCC-CVh1icwb.js +0 -0
- /package/dist/{web → gui}/client/assets/cytoscape.esm-c2aL46s-.js +0 -0
- /package/dist/{web → gui}/client/assets/dagre-C-rnJpZF.js +0 -0
- /package/dist/{web → gui}/client/assets/defaultLocale-BFoDCU3G.js +0 -0
- /package/dist/{web → gui}/client/assets/dist-v5Q1xZ2K.js +0 -0
- /package/dist/{web → gui}/client/assets/graphlib-DS17s2tU.js +0 -0
- /package/dist/{web → gui}/client/assets/init-C-OQMol4.js +0 -0
- /package/dist/{web → gui}/client/assets/katex-ZlcWpGUi.js +0 -0
- /package/dist/{web → gui}/client/assets/linear-SzVmGSw4.js +0 -0
- /package/dist/{web → gui}/client/assets/newsreader-latin-ext-wght-normal-C-3rgBeH.woff2 +0 -0
- /package/dist/{web → gui}/client/assets/newsreader-latin-wght-normal-CCVVNp6i.woff2 +0 -0
- /package/dist/{web → gui}/client/assets/newsreader-vietnamese-wght-normal-Czsa-EzN.woff2 +0 -0
- /package/dist/{web → gui}/client/assets/ordinal-BDEzSJ7C.js +0 -0
- /package/dist/{web → gui}/client/assets/path-fybaL0A-.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-bash-D6zCJ74D.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-c-04YixN25.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-clike-DapgWyxx.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-core-BtsZdCS6.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-cpp-C-lJbC-6.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-css-CPgOzxXp.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-diff-BF8m0_mq.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-docker-DkT6yOFj.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-fortran-Be5x3y1V.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-go-C_8qAH5n.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-ini-BESK3y0r.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-javascript-BnO-swvr.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-json-Dp_-W-Hv.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-jsx-D-D0NWtC.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-julia-DIjOgiAV.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-latex-DNMbqcH_.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-makefile-CRKWLQ8l.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-markdown-C0FPJ1Iz.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-markup-Cp04rIa1.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-matlab-D-nk08al.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-python-CfiSVtM6.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-r-QmNGR8LX.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-rust-Bu9N8X3N.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-shell-session-Be4UuYoM.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-sql-CYhVDMEE.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-toml-DKb54GAT.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-tsx-p6J2Kc_4.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-typescript-BMqONzxf.js +0 -0
- /package/dist/{web → gui}/client/assets/prism-yaml-C0JHu8gr.js +0 -0
- /package/dist/{web → gui}/client/assets/purify.es-ChwZkWde.js +0 -0
- /package/dist/{web → gui}/client/assets/rolldown-runtime-hePW80VL.js +0 -0
- /package/dist/{web → gui}/client/assets/rough.esm-Dy-Kn_BL.js +0 -0
- /package/dist/{web → gui}/client/assets/sizeCapture-INFHLROL-B0uUizjq.js +0 -0
- /package/dist/{web → gui}/client/assets/src-B6xuSHsQ.js +0 -0
- /package/dist/{web → gui}/client/clio-coder-logo.webp +0 -0
- /package/dist/{web → gui}/client/icon-192.png +0 -0
- /package/dist/{web → gui}/client/icon-512.png +0 -0
- /package/dist/{web → gui}/client/manifest.webmanifest +0 -0
- /package/dist/{web → gui}/client/offline.css +0 -0
- /package/dist/{web → gui}/client/offline.html +0 -0
- /package/dist/{web → gui}/client/offline.js +0 -0
- /package/dist/{web → gui}/client/sw.js +0 -0
|
@@ -1,20 +1,30 @@
|
|
|
1
1
|
import { BusChannels } from "../../core/bus-events.js";
|
|
2
2
|
import { type ClioSettings, readSettings } from "../../core/config.js";
|
|
3
|
+
import { writeDiagnostic } from "../../core/diagnostics.js";
|
|
3
4
|
import type { DomainBundle, DomainContext, DomainExtension } from "../../core/domain-loader.js";
|
|
4
5
|
import { ensurePiAiRegistered } from "../../engine/ai.js";
|
|
5
6
|
import { registerClioApiProviders, setGlobalDefaultMaxOutputTokens } from "../../engine/apis/index.js";
|
|
7
|
+
import { releaseModelsLoadedDuring, releaseScopeFor } from "../../engine/apis/residency.js";
|
|
6
8
|
import { registerClioOAuthProviders } from "../../engine/oauth.js";
|
|
7
9
|
import type { ConfigContract } from "../config/contract.js";
|
|
8
10
|
|
|
9
11
|
import { authNotRequiredStatus, openAuthStorage, resolveAuthTarget, targetRequiresAuth } from "./auth/index.js";
|
|
10
12
|
import { mergeCapabilities } from "./capabilities.js";
|
|
11
13
|
import { capabilitiesFromCatalogModel, getCatalogModelForRuntime } from "./catalog.js";
|
|
12
|
-
import type {
|
|
14
|
+
import type {
|
|
15
|
+
ContextWindowProvenance,
|
|
16
|
+
LiveProbeOptions,
|
|
17
|
+
ProvidersContract,
|
|
18
|
+
TargetHealth,
|
|
19
|
+
TargetStatus,
|
|
20
|
+
ToolCallVerification,
|
|
21
|
+
} from "./contract.js";
|
|
13
22
|
import { credentialsPresent } from "./credentials.js";
|
|
14
23
|
import { recordEndpointSlotsFromStatus } from "./endpoint-capacity.js";
|
|
15
24
|
import { resolveProviderKnowledgeBaseRoots } from "./knowledge-base-path.js";
|
|
16
25
|
import { probeCapabilitiesForModel } from "./model-capabilities.js";
|
|
17
26
|
import { loadPluginRuntimes } from "./plugins.js";
|
|
27
|
+
import { probeToolCall } from "./probe/tool-call.js";
|
|
18
28
|
import { getRuntimeRegistry } from "./registry.js";
|
|
19
29
|
import { registerBuiltinRuntimes } from "./runtimes/builtins.js";
|
|
20
30
|
import { listKnownModelsForRuntime } from "./support.js";
|
|
@@ -31,6 +41,10 @@ import type { ProbeContext, ProbeResult, RuntimeDescriptor } from "./types/runti
|
|
|
31
41
|
import type { TargetDescriptor } from "./types/target-descriptor.js";
|
|
32
42
|
|
|
33
43
|
const DEFAULT_PROBE_TIMEOUT_MS = 5_000;
|
|
44
|
+
/** The tool probe generates, so it can pay for a cold load of a large local model. */
|
|
45
|
+
const DEFAULT_TOOL_PROBE_TIMEOUT_MS = 120_000;
|
|
46
|
+
/** The key a turn sends to a target that needs none, matched so the probe request is the turn's. */
|
|
47
|
+
const LOCAL_API_KEY_FALLBACK = "clio-coder-local-target";
|
|
34
48
|
|
|
35
49
|
class NullKnowledgeBase implements KnowledgeBase {
|
|
36
50
|
lookup(_modelId: string): KnowledgeBaseHit | null {
|
|
@@ -47,7 +61,7 @@ function loadKnowledgeBase(): KnowledgeBase {
|
|
|
47
61
|
if (roots.length === 0) return new NullKnowledgeBase();
|
|
48
62
|
return new FileKnowledgeBase(roots);
|
|
49
63
|
} catch (err) {
|
|
50
|
-
|
|
64
|
+
writeDiagnostic(`[providers] knowledge base disabled: ${err instanceof Error ? err.message : String(err)}\n`);
|
|
51
65
|
return new NullKnowledgeBase();
|
|
52
66
|
}
|
|
53
67
|
}
|
|
@@ -138,8 +152,10 @@ function discoveredModelsSource(
|
|
|
138
152
|
cachedModels: ReadonlyArray<string>,
|
|
139
153
|
desc: RuntimeDescriptor,
|
|
140
154
|
): "probe" | "cache" | "runtime" | "none" {
|
|
141
|
-
if (probe?.models !== undefined) return "probe";
|
|
142
|
-
if (preservePreviousProbe && previous?.discoveredModels && previous.discoveredModels.length > 0)
|
|
155
|
+
if (probe?.ok && probe.models !== undefined) return "probe";
|
|
156
|
+
if (preservePreviousProbe && previous?.discoveredModels && previous.discoveredModels.length > 0) {
|
|
157
|
+
return previous.discoveredModelsSource === "runtime" ? "runtime" : "cache";
|
|
158
|
+
}
|
|
143
159
|
if (cachedModels.length > 0) return "cache";
|
|
144
160
|
if (desc.knownModels && desc.knownModels.length > 0) return "runtime";
|
|
145
161
|
return "none";
|
|
@@ -169,10 +185,10 @@ export interface ProbeMerge {
|
|
|
169
185
|
/**
|
|
170
186
|
* Merge a fresh probe result with the previous known status. A probe that was
|
|
171
187
|
* not attempted (`probe === null`) or that failed (`probe.ok === false`) must
|
|
172
|
-
* not discard the last successful catalog
|
|
173
|
-
*
|
|
188
|
+
* not discard the last successful catalog for an unchanged target. Failed
|
|
189
|
+
* probes clear resident state; a transient outage keeps models selectable from
|
|
174
190
|
* `cache`, while health and availability (decided by the caller from `probe`)
|
|
175
|
-
* reflect the failure. Only a successful
|
|
191
|
+
* reflect the failure. Only a successful nonempty catalog replaces the cached candidates.
|
|
176
192
|
*/
|
|
177
193
|
function mergeProbeResult(
|
|
178
194
|
desc: RuntimeDescriptor,
|
|
@@ -183,35 +199,65 @@ function mergeProbeResult(
|
|
|
183
199
|
cachedModelLabels: Readonly<Record<string, string>> = {},
|
|
184
200
|
): ProbeMerge {
|
|
185
201
|
const probeSucceeded = probe?.ok ?? false;
|
|
186
|
-
const
|
|
202
|
+
const preserveCatalog = previous !== undefined && sameProbeIdentity(previous.target, target);
|
|
203
|
+
// Successful metadata replaces the factual snapshot, including absent fields.
|
|
204
|
+
// Only catalog candidates may survive a successful but empty metadata read.
|
|
205
|
+
const preservePrevious = !probeSucceeded && preserveCatalog;
|
|
206
|
+
// Several catalog adapters return [] when metadata cannot be read. It is
|
|
207
|
+
// not sufficient evidence to erase the last useful catalog.
|
|
208
|
+
const catalogProbe = probeSucceeded && probe?.models && probe.models.length > 0 ? probe : null;
|
|
187
209
|
const probeCapabilities =
|
|
188
210
|
probe?.discoveredCapabilities ?? (preservePrevious ? previous.probeCapabilities : null) ?? null;
|
|
189
|
-
|
|
211
|
+
let probeModelCapabilities =
|
|
190
212
|
probe?.modelCapabilities ?? (preservePrevious ? previous.probeModelCapabilities : null) ?? null;
|
|
191
213
|
const probeModelId =
|
|
192
214
|
probe?.discoveredCapabilities !== undefined
|
|
193
215
|
? (probe.capabilityModelId ?? null)
|
|
194
216
|
: ((preservePrevious ? previous.probeModelId : null) ?? null);
|
|
195
|
-
|
|
217
|
+
let probeNotes =
|
|
196
218
|
probe?.notes && probe.notes.length > 0 ? probe.notes : preservePrevious ? previous.probeNotes : undefined;
|
|
197
219
|
const probeSurfaces = probe?.surfaces ?? (preservePrevious ? previous.probeSurfaces : undefined);
|
|
198
220
|
const discoveredModels = uniqueModels(
|
|
199
|
-
|
|
200
|
-
(
|
|
221
|
+
catalogProbe?.models ??
|
|
222
|
+
(preserveCatalog ? previous.discoveredModels : undefined) ??
|
|
201
223
|
(cachedModels.length > 0 ? cachedModels : undefined) ??
|
|
202
224
|
desc.knownModels ??
|
|
203
225
|
[],
|
|
204
226
|
);
|
|
205
|
-
const discoveredModelStates =
|
|
227
|
+
const discoveredModelStates =
|
|
228
|
+
probe === null
|
|
229
|
+
? ((preservePrevious ? previous.discoveredModelStates : null) ?? null)
|
|
230
|
+
: probe.ok
|
|
231
|
+
? (probe.modelStates ?? null)
|
|
232
|
+
: null;
|
|
233
|
+
if (probe?.ok === false && preservePrevious && previous.discoveredModelStates) {
|
|
234
|
+
// Keep only conservative context bounds from the last observation, not
|
|
235
|
+
// a claim that its model, instance, load config or slots are still live.
|
|
236
|
+
for (const [modelId, state] of Object.entries(previous.discoveredModelStates)) {
|
|
237
|
+
const window = positiveWindow(state.contextLength);
|
|
238
|
+
if (window === undefined) continue;
|
|
239
|
+
const caps = probeModelCapabilities?.[modelId] ?? probeCapabilitiesForModel(previous, modelId);
|
|
240
|
+
probeModelCapabilities = {
|
|
241
|
+
...probeModelCapabilities,
|
|
242
|
+
[modelId]: { ...caps, contextWindow: Math.min(window, positiveWindow(caps?.contextWindow) ?? window) },
|
|
243
|
+
};
|
|
244
|
+
}
|
|
245
|
+
probeNotes = [
|
|
246
|
+
...new Set([
|
|
247
|
+
...(probeNotes ?? []),
|
|
248
|
+
"Current model residency is unknown after the failed probe; last observed context limits are retained conservatively.",
|
|
249
|
+
]),
|
|
250
|
+
];
|
|
251
|
+
}
|
|
206
252
|
const discoveredModelLabels =
|
|
207
|
-
|
|
208
|
-
(
|
|
209
|
-
(cachedModels.length > 0 ? cachedModelLabels : undefined) ??
|
|
253
|
+
catalogProbe?.modelLabels ??
|
|
254
|
+
(catalogProbe === null && preserveCatalog ? previous.discoveredModelLabels : undefined) ??
|
|
255
|
+
(catalogProbe === null && cachedModels.length > 0 ? cachedModelLabels : undefined) ??
|
|
210
256
|
{};
|
|
211
257
|
const merge: ProbeMerge = {
|
|
212
258
|
discoveredModels,
|
|
213
259
|
discoveredModelLabels,
|
|
214
|
-
discoveredModelsSource: discoveredModelsSource(
|
|
260
|
+
discoveredModelsSource: discoveredModelsSource(catalogProbe, preserveCatalog, previous, cachedModels, desc),
|
|
215
261
|
discoveredModelStates,
|
|
216
262
|
probeCapabilities,
|
|
217
263
|
probeModelCapabilities,
|
|
@@ -255,7 +301,7 @@ export function createProvidersBundle(context: DomainContext): DomainBundle<Prov
|
|
|
255
301
|
const authStore = openAuthStorage();
|
|
256
302
|
const kb = loadKnowledgeBase();
|
|
257
303
|
const statuses = new Map<string, TargetStatus>();
|
|
258
|
-
const reasoningCache = new Map<string,
|
|
304
|
+
const reasoningCache = new Map<string, true>();
|
|
259
305
|
const unsubscribeConfigListeners: Array<() => void> = [];
|
|
260
306
|
let stopped = false;
|
|
261
307
|
|
|
@@ -347,6 +393,7 @@ export function createProvidersBundle(context: DomainContext): DomainBundle<Prov
|
|
|
347
393
|
};
|
|
348
394
|
if (previous?.probeNotes && previous.probeNotes.length > 0) out.probeNotes = previous.probeNotes;
|
|
349
395
|
if (previous?.probeSurfaces) out.probeSurfaces = previous.probeSurfaces;
|
|
396
|
+
if (previous?.toolProbe) out.toolProbe = previous.toolProbe;
|
|
350
397
|
return out;
|
|
351
398
|
}
|
|
352
399
|
const availability = availabilityFor(desc, target, authStatusFor);
|
|
@@ -356,16 +403,25 @@ export function createProvidersBundle(context: DomainContext): DomainBundle<Prov
|
|
|
356
403
|
const { capabilities, contextWindowProvenance } = capabilitiesFor(desc, target, merge, kb);
|
|
357
404
|
const healthy = probe !== null ? probe.ok : null;
|
|
358
405
|
const unservedDefault = probe?.ok ? unservedDefaultModelReason(desc, target, merge) : null;
|
|
406
|
+
// A failed probe is still failed health evidence. Separately, permit a
|
|
407
|
+
// configured HTTP inference attempt; the inference endpoint can differ.
|
|
408
|
+
const allowHttpInferenceAttempt =
|
|
409
|
+
desc.kind === "http" &&
|
|
410
|
+
Boolean(target.url?.trim()) &&
|
|
411
|
+
!probe?.authFailed &&
|
|
412
|
+
probe?.failureKind !== "authentication" &&
|
|
413
|
+
probe?.failureKind !== "missing";
|
|
414
|
+
const catalogOnlyFailure = probe?.failureKind === "catalog-unavailable";
|
|
359
415
|
const health: TargetHealth =
|
|
360
416
|
probe === null
|
|
361
417
|
? (previous?.health ?? emptyHealth())
|
|
362
418
|
: {
|
|
363
|
-
status: healthy ? (unservedDefault === null ? "healthy" : "degraded") : "down",
|
|
419
|
+
status: healthy ? (unservedDefault === null ? "healthy" : "degraded") : catalogOnlyFailure ? "degraded" : "down",
|
|
364
420
|
lastCheckAt: new Date().toISOString(),
|
|
365
421
|
lastError: probe.error ?? unservedDefault,
|
|
366
422
|
latencyMs: probe.latencyMs ?? null,
|
|
367
423
|
};
|
|
368
|
-
const available = availability.available && (probe === null || probe.ok);
|
|
424
|
+
const available = availability.available && (probe === null || probe.ok || allowHttpInferenceAttempt);
|
|
369
425
|
const reason = probe !== null && !probe.ok ? (probe.error ?? "probe failed") : availability.reason;
|
|
370
426
|
const out: TargetStatus = {
|
|
371
427
|
target,
|
|
@@ -385,13 +441,14 @@ export function createProvidersBundle(context: DomainContext): DomainBundle<Prov
|
|
|
385
441
|
};
|
|
386
442
|
if (merge.probeNotes && merge.probeNotes.length > 0) out.probeNotes = merge.probeNotes;
|
|
387
443
|
if (merge.probeSurfaces) out.probeSurfaces = merge.probeSurfaces;
|
|
444
|
+
if (previous?.toolProbe) out.toolProbe = previous.toolProbe;
|
|
388
445
|
return out;
|
|
389
446
|
}
|
|
390
447
|
|
|
391
448
|
async function probeTargetInternal(
|
|
392
449
|
target: TargetDescriptor,
|
|
393
450
|
live: boolean,
|
|
394
|
-
options?:
|
|
451
|
+
options?: LiveProbeOptions,
|
|
395
452
|
): Promise<TargetStatus | null> {
|
|
396
453
|
options?.signal?.throwIfAborted();
|
|
397
454
|
if (stopped) return null;
|
|
@@ -431,43 +488,81 @@ export function createProvidersBundle(context: DomainContext): DomainBundle<Prov
|
|
|
431
488
|
}
|
|
432
489
|
options?.signal?.throwIfAborted();
|
|
433
490
|
if (!currentProbeTarget(target)) return null;
|
|
434
|
-
if (
|
|
435
|
-
const
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
491
|
+
if (options?.reasoning === true) {
|
|
492
|
+
const note = (outcome: string): void => {
|
|
493
|
+
probeResult = { ...probeResult, notes: [...(probeResult.notes ?? []), outcome] };
|
|
494
|
+
};
|
|
495
|
+
const candidateModelId = probeCandidateModelId(target);
|
|
496
|
+
if (!probeResult.ok) {
|
|
497
|
+
note("Reasoning qualification not run: metadata probe failed.");
|
|
498
|
+
} else if (typeof desc.probeReasoning !== "function") {
|
|
499
|
+
note("Reasoning qualification not run: runtime has no reasoning qualification probe.");
|
|
500
|
+
} else if (!candidateModelId) {
|
|
501
|
+
note("Reasoning qualification not run: no chat or default model is configured.");
|
|
502
|
+
} else {
|
|
439
503
|
try {
|
|
440
504
|
const result = await desc.probeReasoning(target, candidateModelId, probeCtx);
|
|
441
505
|
options?.signal?.throwIfAborted();
|
|
442
506
|
if (!currentProbeTarget(target)) return null;
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
...(probeResult.
|
|
451
|
-
|
|
452
|
-
...(probeResult.modelCapabilities
|
|
453
|
-
|
|
507
|
+
if (result.reasoning === true && !result.error) {
|
|
508
|
+
note(`Reasoning qualification observed reasoning output for '${candidateModelId}'.`);
|
|
509
|
+
reasoningCache.set(reasoningCacheKey(target.id, candidateModelId), true);
|
|
510
|
+
const capabilityModelId = probeResult.capabilityModelId ?? null;
|
|
511
|
+
if (capabilityModelId === null || capabilityModelId === candidateModelId) {
|
|
512
|
+
probeResult = {
|
|
513
|
+
...probeResult,
|
|
514
|
+
discoveredCapabilities: { ...(probeResult.discoveredCapabilities ?? {}), reasoning: result.reasoning },
|
|
515
|
+
modelCapabilities: {
|
|
516
|
+
...(probeResult.modelCapabilities ?? {}),
|
|
517
|
+
[candidateModelId]: {
|
|
518
|
+
...(probeResult.modelCapabilities?.[candidateModelId] ?? {}),
|
|
519
|
+
reasoning: result.reasoning,
|
|
520
|
+
},
|
|
454
521
|
},
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
}
|
|
522
|
+
capabilityModelId: capabilityModelId ?? candidateModelId,
|
|
523
|
+
};
|
|
524
|
+
}
|
|
525
|
+
} else {
|
|
526
|
+
note(
|
|
527
|
+
result.error
|
|
528
|
+
? `Reasoning qualification error for '${candidateModelId}': ${result.error}; support remains unqualified by this check.`
|
|
529
|
+
: `Reasoning qualification inconclusive for '${candidateModelId}': no reasoning output observed; this does not establish lack of support.`,
|
|
530
|
+
);
|
|
458
531
|
}
|
|
459
|
-
} catch {
|
|
460
|
-
|
|
532
|
+
} catch (err) {
|
|
533
|
+
note(
|
|
534
|
+
`Reasoning qualification error for '${candidateModelId}': ${err instanceof Error ? err.message : String(err)}; support remains unqualified by this check.`,
|
|
535
|
+
);
|
|
461
536
|
}
|
|
462
537
|
}
|
|
463
538
|
}
|
|
539
|
+
let toolProbe: ToolCallVerification | null = null;
|
|
540
|
+
if (probeResult.ok && options?.tools === true) {
|
|
541
|
+
toolProbe = await runToolProbe(target, desc, probeCtx, options.toolsTimeoutMs ?? DEFAULT_TOOL_PROBE_TIMEOUT_MS);
|
|
542
|
+
options.signal?.throwIfAborted();
|
|
543
|
+
if (!currentProbeTarget(target)) return null;
|
|
544
|
+
const modelId = toolProbe.modelId;
|
|
545
|
+
const capabilityModelId = probeResult.capabilityModelId ?? null;
|
|
546
|
+
if (toolProbe.status === "verified" && modelId && (capabilityModelId === null || capabilityModelId === modelId)) {
|
|
547
|
+
probeResult = {
|
|
548
|
+
...probeResult,
|
|
549
|
+
discoveredCapabilities: { ...(probeResult.discoveredCapabilities ?? {}), tools: true },
|
|
550
|
+
modelCapabilities: {
|
|
551
|
+
...(probeResult.modelCapabilities ?? {}),
|
|
552
|
+
[modelId]: { ...(probeResult.modelCapabilities?.[modelId] ?? {}), tools: true },
|
|
553
|
+
},
|
|
554
|
+
capabilityModelId: capabilityModelId ?? modelId,
|
|
555
|
+
};
|
|
556
|
+
}
|
|
557
|
+
}
|
|
464
558
|
// Cancellation, target edits/removal, and shutdown revoke publication.
|
|
465
559
|
options?.signal?.throwIfAborted();
|
|
466
560
|
const current = currentProbeTarget(target);
|
|
467
561
|
if (!current) return null;
|
|
468
562
|
const status = buildStatus(current, desc, probeResult, previous);
|
|
563
|
+
if (toolProbe) status.toolProbe = toolProbe;
|
|
469
564
|
statuses.set(target.id, status);
|
|
470
|
-
if (probeResult.ok && probeResult.models !== undefined) {
|
|
565
|
+
if (probeResult.ok && probeResult.models !== undefined && probeResult.models.length > 0) {
|
|
471
566
|
recordTargetModelSnapshot(
|
|
472
567
|
target,
|
|
473
568
|
probeResult.models,
|
|
@@ -482,7 +577,76 @@ export function createProvidersBundle(context: DomainContext): DomainBundle<Prov
|
|
|
482
577
|
return status;
|
|
483
578
|
}
|
|
484
579
|
|
|
485
|
-
|
|
580
|
+
/** The only models an inference probe may touch: the chat model on this target, else its default. */
|
|
581
|
+
function probeCandidateModelId(target: TargetDescriptor): string | null {
|
|
582
|
+
const settings = readConfig();
|
|
583
|
+
const orchestratorModel = settings.chat.target === target.id ? settings.chat.model : null;
|
|
584
|
+
return orchestratorModel ?? target.defaultModel ?? null;
|
|
585
|
+
}
|
|
586
|
+
|
|
587
|
+
async function runToolProbe(
|
|
588
|
+
target: TargetDescriptor,
|
|
589
|
+
desc: RuntimeDescriptor,
|
|
590
|
+
probeCtx: ProbeContext,
|
|
591
|
+
timeoutMs: number,
|
|
592
|
+
): Promise<ToolCallVerification> {
|
|
593
|
+
const modelId = probeCandidateModelId(target);
|
|
594
|
+
const skipped = (error: string): ToolCallVerification => ({
|
|
595
|
+
status: "skipped",
|
|
596
|
+
modelId,
|
|
597
|
+
streamed: false,
|
|
598
|
+
frames: null,
|
|
599
|
+
toolCall: false,
|
|
600
|
+
argumentsValid: false,
|
|
601
|
+
latencyMs: null,
|
|
602
|
+
checkedAt: Date.now(),
|
|
603
|
+
error,
|
|
604
|
+
});
|
|
605
|
+
if (!modelId) return skipped("no chat or default model is set for this target");
|
|
606
|
+
// SDK and subprocess runtimes stream through their own worker runners,
|
|
607
|
+
// not the engine request path this probe exercises.
|
|
608
|
+
if (desc.kind !== "http") return skipped(`runtime kind '${desc.kind}' does not stream through the engine`);
|
|
609
|
+
let model: ReturnType<RuntimeDescriptor["synthesizeModel"]>;
|
|
610
|
+
try {
|
|
611
|
+
model = desc.synthesizeModel(target, modelId, kb.lookup(modelId));
|
|
612
|
+
} catch (err) {
|
|
613
|
+
return skipped(`model synthesis failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
614
|
+
}
|
|
615
|
+
const apiKey = targetRequiresAuth(target, desc) ? probeCtx.authToken : LOCAL_API_KEY_FALLBACK;
|
|
616
|
+
// The probe can load and pin a cold model, and `targets` never runs the
|
|
617
|
+
// orchestrator's release on exit, so the release happens here for every
|
|
618
|
+
// caller, on success, failure, and abort. It is scoped to this server and
|
|
619
|
+
// this model: in-session `/doctor deep` shares the process with chat turns,
|
|
620
|
+
// and a model a concurrent turn loaded belongs to that turn.
|
|
621
|
+
const result = await releaseModelsLoadedDuring(
|
|
622
|
+
() =>
|
|
623
|
+
probeToolCall({
|
|
624
|
+
model,
|
|
625
|
+
timeoutMs,
|
|
626
|
+
...(apiKey !== undefined ? { apiKey } : {}),
|
|
627
|
+
...(probeCtx.signal ? { signal: probeCtx.signal } : {}),
|
|
628
|
+
}),
|
|
629
|
+
releaseScopeFor([target.url, model.baseUrl], [modelId, model.id]),
|
|
630
|
+
);
|
|
631
|
+
const out: ToolCallVerification = {
|
|
632
|
+
status: result.ok ? "verified" : "failed",
|
|
633
|
+
modelId,
|
|
634
|
+
streamed: result.streamed,
|
|
635
|
+
frames: result.frames,
|
|
636
|
+
toolCall: result.toolCall,
|
|
637
|
+
argumentsValid: result.argumentsValid,
|
|
638
|
+
latencyMs: result.latencyMs,
|
|
639
|
+
checkedAt: Date.now(),
|
|
640
|
+
};
|
|
641
|
+
if (result.error !== undefined) out.error = result.error;
|
|
642
|
+
return out;
|
|
643
|
+
}
|
|
644
|
+
|
|
645
|
+
async function probeReasoningForModelInternal(
|
|
646
|
+
targetId: string,
|
|
647
|
+
modelId: string,
|
|
648
|
+
options?: { active?: boolean; signal?: AbortSignal },
|
|
649
|
+
): Promise<boolean | null> {
|
|
486
650
|
if (stopped) return null;
|
|
487
651
|
const settings = readConfig();
|
|
488
652
|
const configuredTarget = settings.targets.find((ep) => ep.id === targetId);
|
|
@@ -490,13 +654,19 @@ export function createProvidersBundle(context: DomainContext): DomainBundle<Prov
|
|
|
490
654
|
const target = structuredClone(configuredTarget);
|
|
491
655
|
const desc = registry.get(target.runtime);
|
|
492
656
|
if (!desc || typeof desc.probeReasoning !== "function") return null;
|
|
493
|
-
const
|
|
657
|
+
const cached = reasoningCache.get(reasoningCacheKey(targetId, modelId)) ?? null;
|
|
658
|
+
if (options?.active !== true) return cached;
|
|
659
|
+
options.signal?.throwIfAborted();
|
|
660
|
+
const probeCtx = await buildProbeContextForTarget(target, desc, options.signal);
|
|
494
661
|
if (!currentProbeTarget(target)) return null;
|
|
495
662
|
try {
|
|
496
663
|
const result = await desc.probeReasoning(target, modelId, probeCtx);
|
|
497
|
-
if (!currentProbeTarget(target)) return null;
|
|
498
|
-
|
|
499
|
-
|
|
664
|
+
if (!currentProbeTarget(target) || options.signal?.aborted) return null;
|
|
665
|
+
if (result.reasoning === true && !result.error) {
|
|
666
|
+
reasoningCache.set(reasoningCacheKey(targetId, modelId), true);
|
|
667
|
+
return true;
|
|
668
|
+
}
|
|
669
|
+
return cached;
|
|
500
670
|
} catch {
|
|
501
671
|
return null;
|
|
502
672
|
}
|
|
@@ -505,7 +675,14 @@ export function createProvidersBundle(context: DomainContext): DomainBundle<Prov
|
|
|
505
675
|
async function probeAll(): Promise<void> {
|
|
506
676
|
const settings = readConfig();
|
|
507
677
|
const next = new Map<string, TargetStatus>();
|
|
508
|
-
|
|
678
|
+
for (const previous of statuses.values()) {
|
|
679
|
+
const current = settings.targets.find((target) => target.id === previous.target.id);
|
|
680
|
+
if (!current || !sameProbeIdentity(previous.target, current)) {
|
|
681
|
+
for (const key of reasoningCache.keys()) {
|
|
682
|
+
if (key.startsWith(`${previous.target.id}:`)) reasoningCache.delete(key);
|
|
683
|
+
}
|
|
684
|
+
}
|
|
685
|
+
}
|
|
509
686
|
for (const target of settings.targets) {
|
|
510
687
|
const desc = registry.get(target.runtime);
|
|
511
688
|
const status = buildStatus(target, desc, null, statuses.get(target.id));
|
|
@@ -517,13 +694,13 @@ export function createProvidersBundle(context: DomainContext): DomainBundle<Prov
|
|
|
517
694
|
}
|
|
518
695
|
}
|
|
519
696
|
|
|
520
|
-
async function probeAllLive(): Promise<void> {
|
|
697
|
+
async function probeAllLive(options?: LiveProbeOptions): Promise<void> {
|
|
521
698
|
const settings = readConfig();
|
|
522
699
|
const activeIds = new Set(settings.targets.map((ep) => ep.id));
|
|
523
700
|
for (const id of Array.from(statuses.keys())) {
|
|
524
701
|
if (!activeIds.has(id)) statuses.delete(id);
|
|
525
702
|
}
|
|
526
|
-
await Promise.all(settings.targets.map((ep) => probeTargetInternal(ep, true)));
|
|
703
|
+
await Promise.all(settings.targets.map((ep) => probeTargetInternal(ep, true, options)));
|
|
527
704
|
}
|
|
528
705
|
|
|
529
706
|
const extension: DomainExtension = {
|
|
@@ -589,8 +766,8 @@ export function createProvidersBundle(context: DomainContext): DomainBundle<Prov
|
|
|
589
766
|
const cached = reasoningCache.get(reasoningCacheKey(targetId, modelId));
|
|
590
767
|
return cached ?? null;
|
|
591
768
|
},
|
|
592
|
-
probeReasoningForModel(targetId, modelId) {
|
|
593
|
-
return probeReasoningForModelInternal(targetId, modelId);
|
|
769
|
+
probeReasoningForModel(targetId, modelId, options) {
|
|
770
|
+
return probeReasoningForModelInternal(targetId, modelId, options);
|
|
594
771
|
},
|
|
595
772
|
auth: {
|
|
596
773
|
statusForTarget(target, runtime) {
|
|
@@ -76,14 +76,14 @@ export function modelResidencyForStatus(status: DiscoveryStatus | null | undefin
|
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
export function hasLiveModelCatalog(status: TargetStatus): boolean {
|
|
79
|
-
return status.discoveredModelsSource === "probe"
|
|
79
|
+
return status.discoveredModelsSource === "probe";
|
|
80
80
|
}
|
|
81
81
|
|
|
82
82
|
/**
|
|
83
83
|
* Enumerate selectable wire model ids for a target. Before a live catalog is
|
|
84
84
|
* known, Clio keeps useful configured/default/catalog hints. Once the target
|
|
85
|
-
* returns a live catalog,
|
|
86
|
-
*
|
|
85
|
+
* returns a live catalog, it supplies the current selectable candidates. Cached
|
|
86
|
+
* catalogs remain useful hints alongside configured/default ids, never live proof.
|
|
87
87
|
*/
|
|
88
88
|
export function modelCandidatesForStatus(status: TargetStatus): ProviderModelCandidate[] {
|
|
89
89
|
const configured = uniqueModels(status.target.wireModels ?? []);
|
|
@@ -95,7 +95,7 @@ export function modelCandidatesForStatus(status: TargetStatus): ProviderModelCan
|
|
|
95
95
|
const trimmed = id.trim();
|
|
96
96
|
if (trimmed.length === 0 || seen.has(trimmed)) return;
|
|
97
97
|
seen.add(trimmed);
|
|
98
|
-
const state = status.discoveredModelStates?.[trimmed];
|
|
98
|
+
const state = hasLiveModelCatalog(status) ? status.discoveredModelStates?.[trimmed] : undefined;
|
|
99
99
|
out.push({
|
|
100
100
|
id: trimmed,
|
|
101
101
|
...(status.discoveredModelLabels?.[trimmed] ? { label: status.discoveredModelLabels[trimmed] } : {}),
|
|
@@ -105,11 +105,20 @@ export function modelCandidatesForStatus(status: TargetStatus): ProviderModelCan
|
|
|
105
105
|
});
|
|
106
106
|
};
|
|
107
107
|
|
|
108
|
-
if (hasLiveModelCatalog(status)) {
|
|
108
|
+
if (hasLiveModelCatalog(status) && discovered.length > 0) {
|
|
109
109
|
for (const id of discovered) add(id, "live");
|
|
110
110
|
return out;
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
+
// A cached catalog is still useful for selection, but it cannot exclude an
|
|
114
|
+
// explicitly configured model or claim that an instance is currently loaded.
|
|
115
|
+
if (status.discoveredModelsSource === "cache") {
|
|
116
|
+
for (const id of configured) add(id, "configured");
|
|
117
|
+
if (defaultModel) add(defaultModel, "default");
|
|
118
|
+
for (const id of discovered) add(id, "catalog");
|
|
119
|
+
if (out.length > 0) return out;
|
|
120
|
+
}
|
|
121
|
+
|
|
113
122
|
if (configured.length > 0) {
|
|
114
123
|
for (const id of configured) add(id, "configured");
|
|
115
124
|
if (defaultModel) add(defaultModel, "default");
|
|
@@ -136,10 +145,15 @@ export function modelIdsForStatus(status: TargetStatus): string[] {
|
|
|
136
145
|
export function canonicalizeWireModelId(status: TargetStatus, requested: string): string {
|
|
137
146
|
const trimmedRequested = requested.trim();
|
|
138
147
|
if (trimmedRequested.length === 0) return requested;
|
|
139
|
-
//
|
|
140
|
-
// exists, otherwise the configured wire models.
|
|
148
|
+
// Prefer live wire ids; otherwise retain configured ids and cached hints.
|
|
141
149
|
const candidates = uniqueModels(
|
|
142
|
-
hasLiveModelCatalog(status)
|
|
150
|
+
hasLiveModelCatalog(status)
|
|
151
|
+
? status.discoveredModels
|
|
152
|
+
: [
|
|
153
|
+
...(status.target.wireModels ?? []),
|
|
154
|
+
status.target.defaultModel ?? "",
|
|
155
|
+
...(status.discoveredModelsSource === "cache" ? status.discoveredModels : []),
|
|
156
|
+
],
|
|
143
157
|
);
|
|
144
158
|
if (candidates.includes(trimmedRequested)) return trimmedRequested;
|
|
145
159
|
|
|
@@ -133,7 +133,6 @@
|
|
|
133
133
|
temperature: 0.5
|
|
134
134
|
topP: 0.9
|
|
135
135
|
topK: 20
|
|
136
|
-
reasoningBudget: 4096
|
|
137
136
|
instruct:
|
|
138
137
|
temperature: 0.5
|
|
139
138
|
topP: 0.9
|
|
@@ -399,7 +398,6 @@
|
|
|
399
398
|
temperature: 0.6
|
|
400
399
|
topP: 0.95
|
|
401
400
|
topK: 20
|
|
402
|
-
reasoningBudget: 4096
|
|
403
401
|
instruct:
|
|
404
402
|
temperature: 0.7
|
|
405
403
|
topP: 0.80
|
|
@@ -469,7 +467,6 @@
|
|
|
469
467
|
temperature: 0.6
|
|
470
468
|
topP: 0.95
|
|
471
469
|
topK: 20
|
|
472
|
-
reasoningBudget: 4096
|
|
473
470
|
instruct:
|
|
474
471
|
temperature: 0.6
|
|
475
472
|
topP: 0.95
|
|
@@ -550,7 +547,6 @@
|
|
|
550
547
|
temperature: 0.6
|
|
551
548
|
topP: 0.95
|
|
552
549
|
topK: 20
|
|
553
|
-
reasoningBudget: 4096
|
|
554
550
|
instruct:
|
|
555
551
|
temperature: 0.6
|
|
556
552
|
topP: 0.95
|
|
@@ -655,6 +651,11 @@
|
|
|
655
651
|
These effort levels come from that server diagnostic, not from
|
|
656
652
|
Qwen or Qwopus name similarity. Other capabilities remain supplied
|
|
657
653
|
by the route probe; no sampler, hardware, or context size is inherited.
|
|
654
|
+
Since 2026-09-18 the mini/qwopus3.8-27b-dense route is mini's default
|
|
655
|
+
and serves Qwopus3.8-27B-Flash-MTP IQ4_XS, four slots sharing one
|
|
656
|
+
262144-token pool with q8_0 KV (dotfiles 1cc3773). Its preset sets
|
|
657
|
+
reasoning-effort high. The effort levels below were measured on the
|
|
658
|
+
-q6 route only and have not been re-measured on this deployment.
|
|
658
659
|
thinking:
|
|
659
660
|
mechanism: effort-levels
|
|
660
661
|
effortByLevel:
|
|
@@ -1462,7 +1463,6 @@
|
|
|
1462
1463
|
temperature: 0.3
|
|
1463
1464
|
topP: 0.9
|
|
1464
1465
|
topK: 20
|
|
1465
|
-
reasoningBudget: 4096
|
|
1466
1466
|
instruct:
|
|
1467
1467
|
temperature: 0.7 # 0.7 keeps tool-call JSON parseable; gemma card's 1.0 is for chat
|
|
1468
1468
|
topP: 0.95
|
|
@@ -1599,7 +1599,6 @@
|
|
|
1599
1599
|
temperature: 0.6
|
|
1600
1600
|
topP: 0.95
|
|
1601
1601
|
topK: 20
|
|
1602
|
-
reasoningBudget: 4096
|
|
1603
1602
|
instruct:
|
|
1604
1603
|
temperature: 0.2
|
|
1605
1604
|
topP: 0.9
|
|
@@ -1668,7 +1667,6 @@
|
|
|
1668
1667
|
temperature: 0.6
|
|
1669
1668
|
topP: 0.95
|
|
1670
1669
|
topK: 20
|
|
1671
|
-
reasoningBudget: 2048
|
|
1672
1670
|
gpuTiers:
|
|
1673
1671
|
"16gb": "Use this as the local 16GB emulation target. It keeps the output cap below the 32GB-class MoE defaults."
|
|
1674
1672
|
runtimePreference:
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { writeDiagnostic } from "../../core/diagnostics.js";
|
|
1
2
|
/**
|
|
2
3
|
* Loads out-of-tree runtime descriptors into the registry. Two surfaces:
|
|
3
4
|
*
|
|
@@ -31,9 +32,7 @@ export async function loadPluginRuntimes(
|
|
|
31
32
|
const ids = await registry.loadFromDir(pluginDir, activateExternalPluginApiBridge);
|
|
32
33
|
loaded.push(...ids);
|
|
33
34
|
} catch (err) {
|
|
34
|
-
|
|
35
|
-
`[providers] loadFromDir ${pluginDir} failed: ${err instanceof Error ? err.message : String(err)}\n`,
|
|
36
|
-
);
|
|
35
|
+
writeDiagnostic(`[providers] loadFromDir ${pluginDir} failed: ${err instanceof Error ? err.message : String(err)}\n`);
|
|
37
36
|
}
|
|
38
37
|
|
|
39
38
|
for (const packageName of packages) {
|
|
@@ -41,7 +40,7 @@ export async function loadPluginRuntimes(
|
|
|
41
40
|
const ids = await registry.loadFromPackage(packageName, activateExternalPluginApiBridge);
|
|
42
41
|
loaded.push(...ids);
|
|
43
42
|
} catch (err) {
|
|
44
|
-
|
|
43
|
+
writeDiagnostic(
|
|
45
44
|
`[providers] loadFromPackage ${packageName} failed: ${err instanceof Error ? err.message : String(err)}\n`,
|
|
46
45
|
);
|
|
47
46
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export interface NativeRuntimeFingerprint {
|
|
2
|
-
runtimeId: "lmstudio" | "ollama
|
|
2
|
+
runtimeId: "lmstudio" | "ollama";
|
|
3
3
|
displayName: string;
|
|
4
4
|
}
|
|
5
5
|
|
|
@@ -60,7 +60,7 @@ export async function fingerprintNativeRuntime(
|
|
|
60
60
|
try {
|
|
61
61
|
const data = (await ollama.json()) as { version?: unknown };
|
|
62
62
|
if (typeof data.version === "string") {
|
|
63
|
-
return { runtimeId: "ollama
|
|
63
|
+
return { runtimeId: "ollama", displayName: "Ollama" };
|
|
64
64
|
}
|
|
65
65
|
} catch {
|
|
66
66
|
// A reachable endpoint with a non-JSON version reply fingerprints as
|