@iowarp/clio-coder 0.3.9 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +92 -0
- package/NOTICE +33 -0
- package/README.md +121 -16
- package/dist/{acp-7LOELQFP.js → acp-ZILU3AUO.js} +19 -18
- package/dist/{agents-FIBG2SHA.js → agents-HYWGBGQR.js} +53 -39
- package/dist/assets/codewiki.json +1 -1
- package/dist/{auth-OI4LIH2I.js → auth-N3QT7CBO.js} +24 -21
- package/dist/{builtins-AD25UL3C.js → builtins-UJLMOVOV.js} +6 -6
- package/dist/{chunk-I4HZDVNP.js → chunk-2LEAKD4C.js} +2 -3
- package/dist/{chunk-465CC7FK.js → chunk-2NM363SV.js} +60 -64
- package/dist/{chunk-4H6ULJ3H.js → chunk-2VG7KLYV.js} +1046 -1370
- package/dist/{chunk-SST6Z5JA.js → chunk-336NSSKI.js} +1 -1
- package/dist/{chunk-NZU6YDNV.js → chunk-3I5NY75V.js} +5 -5
- package/dist/{chunk-47CMYGET.js → chunk-3QSOM6PA.js} +2 -2
- package/dist/chunk-42FMPA75.js +101 -0
- package/dist/{chunk-HAY4ZE2P.js → chunk-5PSMVOLM.js} +2 -2
- package/dist/{chunk-IHKBWSXF.js → chunk-5QIAJV2D.js} +3 -3
- package/dist/chunk-5YHDIDBP.js +97 -0
- package/dist/chunk-6CCS4G3W.js +1529 -0
- package/dist/{chunk-2JDWVJND.js → chunk-6DWBAZ5U.js} +2 -2
- package/dist/{chunk-BVDVID7E.js → chunk-6FN3E6KX.js} +6 -6
- package/dist/{chunk-DG4M6ZUE.js → chunk-6HMJX2VU.js} +59 -59
- package/dist/{chunk-3MRC2YSQ.js → chunk-6I5ILFOF.js} +3 -2
- package/dist/chunk-6NJQITNH.js +1412 -0
- package/dist/chunk-6VC4OV3Z.js +365 -0
- package/dist/{chunk-LU7P4LHA.js → chunk-72GZI5EV.js} +2 -2
- package/dist/{chunk-5T7RBWN2.js → chunk-74YWRRU5.js} +9 -8
- package/dist/{chunk-VPTUJU4P.js → chunk-7EPLI7VL.js} +2 -2
- package/dist/{chunk-CA42X6KT.js → chunk-7OBGU7UB.js} +7 -7
- package/dist/{chunk-56KB5IJP.js → chunk-7PWAODYW.js} +3 -3
- package/dist/chunk-7RY5VZPH.js +573 -0
- package/dist/{chunk-OEDBCISO.js → chunk-ABLSQ6JX.js} +3 -3
- package/dist/{chunk-5HFBWUMU.js → chunk-AFKWHWXF.js} +13 -23
- package/dist/{chunk-FWDFM5ZU.js → chunk-AK5XEFVZ.js} +3 -3
- package/dist/{chunk-WXCJ7VME.js → chunk-AKB4GYDL.js} +7 -7
- package/dist/chunk-AP73CFDC.js +308 -0
- package/dist/{chunk-4LJX2PUC.js → chunk-BBTJOK6Y.js} +5 -5
- package/dist/{chunk-QQ7EKM72.js → chunk-BDPT6GTK.js} +13 -61
- package/dist/chunk-BJGUKIG4.js +302 -0
- package/dist/chunk-BMS5RKQY.js +27 -0
- package/dist/{chunk-TD7UE2L5.js → chunk-BTGG6BG2.js} +81 -40
- package/dist/chunk-BTK3SSSK.js +67 -0
- package/dist/{chunk-M6L6IDJG.js → chunk-BWH6N36D.js} +1 -1
- package/dist/chunk-BWW4HLO4.js +301 -0
- package/dist/{chunk-BNAZZHFG.js → chunk-BYP5D4HI.js} +1 -1
- package/dist/{chunk-HJB5IUKP.js → chunk-C537JADH.js} +18 -18
- package/dist/{chunk-774ILSRL.js → chunk-CDNVLKUX.js} +5 -4
- package/dist/{chunk-HPCTNZM2.js → chunk-CTJ4RNAA.js} +4 -4
- package/dist/{chunk-AEYBF3TB.js → chunk-CWVRRIEI.js} +2 -2
- package/dist/chunk-D4CJV46V.js +462 -0
- package/dist/chunk-D7E7WCDF.js +27 -0
- package/dist/{chunk-5PVQ4SRS.js → chunk-E67WX76H.js} +10 -126
- package/dist/{chunk-FQ4SKYE4.js → chunk-EBY63B7G.js} +2 -5
- package/dist/chunk-EIMVLWB3.js +1842 -0
- package/dist/{chunk-AMKHQW3C.js → chunk-FEFIFZTL.js} +3 -3
- package/dist/{chunk-RAPCMZL4.js → chunk-FSP7CMNU.js} +9 -1
- package/dist/{chunk-3DUR4WUA.js → chunk-FYUN5KZ3.js} +25 -25
- package/dist/{chunk-MV3K5QF2.js → chunk-GCSMB2KY.js} +2 -2
- package/dist/chunk-GIZNH63R.js +40 -0
- package/dist/chunk-GPPB3JBE.js +688 -0
- package/dist/{chunk-B5XRQOLB.js → chunk-GVQJ5CCZ.js} +17 -11
- package/dist/chunk-HHV2GANA.js +88 -0
- package/dist/chunk-HJWWJ6IL.js +184 -0
- package/dist/{chunk-RKRLDWD3.js → chunk-HLW2MRKE.js} +1 -1
- package/dist/chunk-HRQMFLJP.js +75 -0
- package/dist/{chunk-AD7Y7STJ.js → chunk-HUAS7ITX.js} +107 -97
- package/dist/{chunk-O6I4CIEU.js → chunk-I66EAJFY.js} +6 -6
- package/dist/{chunk-S4COXYBG.js → chunk-IG7BCQBA.js} +129 -106
- package/dist/{chunk-N3PBVRTZ.js → chunk-IXJT6DCX.js} +9 -7
- package/dist/chunk-J4HBWF6Y.js +2635 -0
- package/dist/chunk-J5LZHVIT.js +284 -0
- package/dist/{chunk-GAYUJ7LE.js → chunk-JA5QWE4Z.js} +544 -227
- package/dist/{chunk-B5CSFE7B.js → chunk-JIEGK6UF.js} +6 -174
- package/dist/{chunk-VKBMFOYV.js → chunk-JZWT5J3Y.js} +23 -27
- package/dist/chunk-K6BF4U2H.js +1785 -0
- package/dist/{chunk-CGKSTWHD.js → chunk-K6BSR66V.js} +2 -1
- package/dist/{chunk-YSEHGPCT.js → chunk-MA3H6DM5.js} +6 -6
- package/dist/{chunk-EBOC7MT3.js → chunk-MOPSG2X7.js} +9 -9
- package/dist/{chunk-KV2AOLDF.js → chunk-MQXIVJ35.js} +18 -29
- package/dist/{chunk-P3JGPQFL.js → chunk-N5UK64DP.js} +4 -4
- package/dist/chunk-NDDGJUXD.js +81 -0
- package/dist/chunk-NEKRRTYW.js +56 -0
- package/dist/{chunk-4ZG3XFUR.js → chunk-NLFAQR7Z.js} +12 -1
- package/dist/{chunk-VO2LKSTM.js → chunk-O42A54GG.js} +2 -2
- package/dist/{chunk-T3Z6VAAF.js → chunk-OJTRZGR3.js} +53 -92
- package/dist/{chunk-5DQRIYDZ.js → chunk-PBP4B7XR.js} +3 -3
- package/dist/{chunk-NQ6UCCOD.js → chunk-PJJ6MY27.js} +8 -8
- package/dist/chunk-PMZCIOCJ.js +25 -0
- package/dist/{chunk-ZGVHUX3M.js → chunk-PMZVFWSR.js} +2 -2
- package/dist/{chunk-7C6RYZGQ.js → chunk-PVAMAVBB.js} +5 -4
- package/dist/chunk-QDC3K2U3.js +262 -0
- package/dist/{chunk-JEQQR47K.js → chunk-QKIFBZKT.js} +173 -14
- package/dist/{chunk-R7LNVMCS.js → chunk-QMXC4JB7.js} +70 -78
- package/dist/chunk-QSNYB6ZV.js +195 -0
- package/dist/chunk-QTFGO774.js +644 -0
- package/dist/{chunk-ODFEOB4F.js → chunk-R23Z6K6I.js} +27 -9
- package/dist/{chunk-3UUY7R3Z.js → chunk-R32CLGZ6.js} +14 -14
- package/dist/chunk-R346GLFC.js +31 -0
- package/dist/chunk-RKSR6VSF.js +132 -0
- package/dist/{chunk-N5XKWMDW.js → chunk-SCYB3HA4.js} +73 -27
- package/dist/{chunk-PZ4I4JE2.js → chunk-SINK3QR6.js} +135 -125
- package/dist/{chunk-5QKCQQ3E.js → chunk-SUW5DORT.js} +2 -2
- package/dist/chunk-T56WDKA5.js +183 -0
- package/dist/{chunk-ECUO3KDP.js → chunk-TD3PGPQA.js} +87 -26
- package/dist/{chunk-HKO36JWF.js → chunk-THYWACCR.js} +31 -3
- package/dist/{chunk-LXPJXFM5.js → chunk-TVH4ONAM.js} +18 -12
- package/dist/chunk-TVHHYFHE.js +255 -0
- package/dist/chunk-U2WB7TZS.js +271 -0
- package/dist/{chunk-NNNWO6F2.js → chunk-UAPGZHYC.js} +237 -33
- package/dist/{chunk-MIX5N5AC.js → chunk-UEDMSP56.js} +415 -160
- package/dist/{chunk-WIE7ZOSW.js → chunk-UXN6JT4W.js} +3 -3
- package/dist/{chunk-CMZWFGD2.js → chunk-VAVR4IJY.js} +19 -15
- package/dist/{chunk-MV2VUEJC.js → chunk-VEGN6WIQ.js} +2 -2
- package/dist/chunk-VKFQTNDV.js +66 -0
- package/dist/{chunk-FALJGAWU.js → chunk-VKRH2TCS.js} +2 -2
- package/dist/{chunk-A2NJGIB3.js → chunk-VN3SHNBN.js} +2 -2
- package/dist/{chunk-XK56QHLX.js → chunk-VPKWYKEY.js} +19 -5
- package/dist/{chunk-UOSL25KY.js → chunk-VXMFAE2W.js} +1 -1
- package/dist/{chunk-EQ63NRB7.js → chunk-WNP7O5WZ.js} +3 -3
- package/dist/chunk-WR6U3OVP.js +45 -0
- package/dist/{chunk-TEO2TLVN.js → chunk-XKA2ICR3.js} +1051 -1196
- package/dist/{chunk-3V5AYSEQ.js → chunk-Y45G3AXC.js} +72 -65
- package/dist/{chunk-J5Q24KAG.js → chunk-Y4CAGMM6.js} +2 -2
- package/dist/chunk-YAKGTXEV.js +17 -0
- package/dist/{chunk-ZI647VB5.js → chunk-YPI3QQCF.js} +2 -2
- package/dist/{chunk-YW7UVM5V.js → chunk-ZAZB4JMW.js} +55 -11
- package/dist/{chunk-HCBCAYZU.js → chunk-ZJLUDYFY.js} +11 -11
- package/dist/{chunk-HKIYEGME.js → chunk-ZTJUVLTU.js} +2 -2
- package/dist/{chunk-IFBNV6H6.js → chunk-ZW55JB7N.js} +3 -3
- package/dist/cli/index.js +48 -37
- package/dist/clio-IT3G3VQH.js +25 -0
- package/dist/{code-nav-LMW275PA.js → code-nav-RK6S7F6E.js} +8 -8
- package/dist/codewiki/build-worker.js +1 -1
- package/dist/{compile-cache-CVJMMODC.js → compile-cache-OQAVB7Y5.js} +3 -5
- package/dist/{components-ZFA3SAER.js → components-UBWCQSRW.js} +6 -6
- package/dist/{config-RXS5T3JT.js → config-3QZRWZJF.js} +73 -61
- package/dist/configure-FL7Y3KJF.js +54 -0
- package/dist/{context-MVOORGMF.js → context-5HE7ODYK.js} +61 -49
- package/dist/{context-I3BTOTCS.js → context-KYQFRVDC.js} +11 -11
- package/dist/{context-PALKKQYL.js → context-XNHL75JV.js} +43 -28
- package/dist/{context-clear-N2WOYZ2K.js → context-clear-N545L53A.js} +60 -48
- package/dist/{context-working-set-MIEVECVZ.js → context-working-set-QHKXSV2F.js} +15 -13
- package/dist/{dispatch-runner-VVA4SRRH.js → dispatch-runner-RGIE5PCT.js} +109 -72
- package/dist/{docs-7LQ23DLM.js → docs-5NAF6AU7.js} +7 -13
- package/dist/doctor-ZGPEGHIP.js +772 -0
- package/dist/{eval-IJ5VEZDJ.js → eval-GXLL44RD.js} +106 -86
- package/dist/eval-inventory-HBWSWQOK.js +315 -0
- package/dist/{evidence-L5APPXNV.js → evidence-HWLBRH3Q.js} +209 -51
- package/dist/{evolve-RGNKFJ52.js → evolve-FTZBMNVW.js} +57 -45
- package/dist/{extensions-7WYWUX5A.js → extensions-VHRBEID7.js} +7 -7
- package/dist/{fleet-6CNVBZZP.js → fleet-CKZHJWZJ.js} +215 -114
- package/dist/{fleet-commands-L2SXSYEI.js → fleet-commands-EXDXBMV6.js} +13 -12
- package/dist/fleet-decisions-OTHB6KRL.js +157 -0
- package/dist/{fleet-graph-2J3OOIPO.js → fleet-graph-YTEZUCUT.js} +20 -17
- package/dist/fleet-inspect-SS6YMDCK.js +445 -0
- package/dist/{fleet-preflight-CZRJ4JP5.js → fleet-preflight-PBY4VYOM.js} +6 -9
- package/dist/{fleet-validate-C5RI6DP7.js → fleet-validate-KMEM5L3S.js} +25 -20
- package/dist/fleet-verify-QD5M7E7Q.js +178 -0
- package/dist/fleet-view-WAMJYNDT.js +94 -0
- package/dist/{init-VBN2ACVA.js → init-5XQRBOFV.js} +79 -66
- package/dist/install-NKNG7KD4.js +13 -0
- package/dist/interop-34TVO25M.js +116 -0
- package/dist/{library-JHGUMLY2.js → library-3QY6KF57.js} +25 -21
- package/dist/{memory-K4OQIYWG.js → memory-L4UTIIIW.js} +59 -47
- package/dist/{models-2NCZUWDD.js → models-ZVX3QOWE.js} +47 -37
- package/dist/{monitor-MMVTJABD.js → monitor-CEKVSYTS.js} +67 -57
- package/dist/{orchestrator-ZKBPCHW6.js → orchestrator-77BAP6BC.js} +7633 -7699
- package/dist/panes-7STHOAUJ.js +103 -0
- package/dist/panes-SHAUIRXY.js +60 -0
- package/dist/{paths-DBXMZMDU.js → paths-L7LGY6RN.js} +6 -6
- package/dist/{reset-DD5JGOY3.js → reset-EOLM7GVE.js} +15 -14
- package/dist/resources-74GKTLSF.js +115 -0
- package/dist/{run-QEGNX7FL.js → run-HBAUJNNZ.js} +139 -98
- package/dist/{share-JKD3BQMW.js → share-G3APVLVP.js} +25 -21
- package/dist/{skills-LMQIKDOZ.js → skills-35HHUKCR.js} +37 -27
- package/dist/{skills-eval-I7X2774U.js → skills-eval-QN4HSHDC.js} +80 -73
- package/dist/skills-inventory-J357J34F.js +129 -0
- package/dist/slash-commands-JZZCQA32.js +79 -0
- package/dist/{steer-CF5TDANS.js → steer-XAVHJM22.js} +4 -4
- package/dist/{support-I7LOJLIF.js → support-U7QOWY26.js} +7 -7
- package/dist/{targets-RUSR6B5Z.js → targets-DSM6CY3M.js} +67 -59
- package/dist/{terminal-lease-QYVORFR4.js → terminal-lease-JOPFUVEM.js} +15 -10
- package/dist/tools-MKNWVPBH.js +29 -0
- package/dist/{trace-ODOQIVIW.js → trace-ECQ7TIYZ.js} +194 -7
- package/dist/tui-primitives-K5PASC3O.js +17 -0
- package/dist/{uninstall-ZJF5H5ZN.js → uninstall-N34PCTGJ.js} +6 -8
- package/dist/{upgrade-XANW3FXB.js → upgrade-H7TOM7YL.js} +37 -62
- package/dist/{usage-4H7ZRXQT.js → usage-X52N3IDJ.js} +70 -59
- package/dist/{verifiers-UZXNBZEB.js → verifiers-EJTVVSMA.js} +174 -14
- package/dist/{verify-BVKWTNDL.js → verify-YJL6XET2.js} +12 -11
- package/dist/{web-fetch-2YHJ3KTG.js → web-fetch-MPIFL3LL.js} +3 -4
- package/dist/{wiki-generate-MY7WV2QI.js → wiki-generate-4NDZTQ4B.js} +86 -75
- package/dist/with-panes-OBOBFIIR.js +818 -0
- package/dist/worker/entry.js +131 -91
- package/docs/README.md +3 -2
- package/docs/acp.md +25 -4
- package/docs/alcf-provider.md +1 -1
- package/docs/architecture.md +2 -2
- package/docs/artifact-versions.md +4 -1
- package/docs/built-in-agents.md +40 -32
- package/docs/capacity-and-scheduling.md +43 -5
- package/docs/commands-and-modes.md +39 -4
- package/docs/config-knobs-audit.md +3 -0
- package/docs/configuration-and-targets.md +138 -167
- package/docs/context-engine.md +1 -1
- package/docs/development-pipeline.md +19 -0
- package/docs/dispatch-typed-intent.md +385 -0
- package/docs/documentation-coverage.md +2 -2
- package/docs/documentation-guide.md +1 -1
- package/docs/environment-variables.md +3 -1
- package/docs/eval-runner.md +1 -1
- package/docs/evals-internal.md +1 -1
- package/docs/evidence-and-memory.md +2 -2
- package/docs/evolution.md +1 -1
- package/docs/exit-codes-and-output.md +3 -1
- package/docs/extensions-and-sharing.md +25 -1
- package/docs/fleet-demo-runbook.md +6 -3
- package/docs/fleet-dispatch.md +30 -7
- package/docs/installation-and-lifecycle.md +16 -3
- package/docs/middleware-and-components.md +1 -1
- package/docs/model-catalog.md +10 -1
- package/docs/observability.md +3 -3
- package/docs/proactive-memory.md +1 -1
- package/docs/prompt-envelope-and-tools.md +1 -1
- package/docs/provider-adapter-cookbook.md +1 -1
- package/docs/release-cut-checklist.md +164 -177
- package/docs/safety-model.md +2 -2
- package/docs/scientific-validation.md +3 -3
- package/docs/session-lifecycle.md +1 -1
- package/docs/skills-marketplace.md +1 -1
- package/docs/tool-usage.md +18 -8
- package/docs/trace-store.md +16 -11
- package/docs/troubleshooting.md +2 -2
- package/docs/tui-design.md +1 -1
- package/docs/worker-dispatch-mechanics.md +1 -1
- package/evals/README.md +5 -0
- package/evals/behavioral-corpus-grader.mjs +103 -0
- package/evals/behavioral-machinery-baseline.json +2276 -0
- package/evals/behavioral-machinery-driver.ts +250 -0
- package/evals/behavioral-machinery-support.ts +253 -0
- package/evals/behavioral-machinery.yaml +614 -0
- package/evals/behavioral-model-negative-control.yaml +68 -0
- package/evals/behavioral-model.yaml +216 -0
- package/evals/fixtures/behavioral-facts.txt +3 -0
- package/evals/fixtures/behavioral-main.ts +7 -0
- package/evals/fixtures/decoy/note.txt +2 -0
- package/evals/fixtures/private/credentials.txt +1 -0
- package/evals/tracked-metrics-baseline.yaml +229 -0
- package/evals/tracked-metrics-grader.mjs +129 -0
- package/package.json +8 -16
- package/skills/README.md +6 -6
- package/skills/coding/ast-grep/SKILL.md +8 -2
- package/skills/coding/coding-standards/SKILL.md +8 -2
- package/skills/coding/prototype/SKILL.md +8 -2
- package/skills/coding/tdd/SKILL.md +8 -2
- package/skills/context/context-handoff/SKILL.md +12 -3
- package/skills/context/context-handoff/evals.md +3 -3
- package/skills/context/context-prime/SKILL.md +8 -2
- package/skills/context/context-prime/evals.md +2 -2
- package/skills/git/file-ticket/SKILL.md +9 -4
- package/skills/git/file-ticket/evals.md +2 -2
- package/skills/git/fix-issue/SKILL.md +12 -5
- package/skills/git/fix-issue/evals.md +4 -4
- package/skills/git/resolve-merge-conflicts/SKILL.md +8 -2
- package/skills/git/resolve-merge-conflicts/evals.md +2 -2
- package/skills/git/ship/SKILL.md +9 -3
- package/skills/git/ship/evals.md +4 -4
- package/skills/git/worktree-create/SKILL.md +7 -2
- package/skills/git/worktree-create/evals.md +6 -6
- package/skills/git/worktree-merge/SKILL.md +7 -2
- package/skills/git/worktree-merge/evals.md +6 -6
- package/skills/meta/{clio-dev → clio-coder-dev}/SKILL.md +14 -8
- package/skills/meta/{clio-dev → clio-coder-dev}/evals.md +3 -3
- package/skills/meta/{clio-test → clio-coder-test}/SKILL.md +11 -5
- package/skills/meta/{clio-test → clio-coder-test}/evals.md +1 -1
- package/skills/meta/credentials/SKILL.md +9 -2
- package/skills/meta/find-skills/SKILL.md +8 -2
- package/skills/meta/herdr/SKILL.md +8 -2
- package/skills/meta/skill-craft/SKILL.md +21 -4
- package/skills/planning/architecture/SKILL.md +9 -3
- package/skills/planning/backlog/SKILL.md +8 -2
- package/skills/planning/prd/SKILL.md +8 -2
- package/skills/planning/product-intent/SKILL.md +8 -2
- package/skills/planning/tech-spec/SKILL.md +9 -3
- package/skills/registry.yaml +66 -66
- package/skills/research/arxiv-literature/SKILL.md +8 -2
- package/skills/research/experiment-protocol/SKILL.md +9 -2
- package/skills/research/scientific-debugging/SKILL.md +9 -2
- package/skills/research/scientific-debugging/evals.md +2 -2
- package/skills/research/scientific-modernization/SKILL.md +9 -2
- package/skills/skill-marketplace.json +257 -38
- package/skills/workflow/cut-it/SKILL.md +10 -2
- package/skills/workflow/design-council/SKILL.md +11 -2
- package/skills/workflow/grill-me/SKILL.md +8 -2
- package/skills/workflow/workflow-distiller/SKILL.md +8 -2
- package/src/cli/acp.ts +8 -4
- package/src/cli/argv.ts +25 -0
- package/src/cli/auth.ts +2 -2
- package/src/cli/bootstrap-generate.ts +5 -5
- package/src/cli/clio.ts +6 -1
- package/src/cli/config-inspect.ts +3 -3
- package/src/cli/configure-interop.ts +1 -1
- package/src/cli/configure.ts +50 -48
- package/src/cli/default-target.ts +1 -1
- package/src/cli/docs.ts +6 -6
- package/src/cli/doctor-naming.ts +323 -0
- package/src/cli/doctor-panes.ts +156 -0
- package/src/cli/doctor-toolchain.ts +78 -0
- package/src/cli/doctor.ts +34 -1
- package/src/cli/eval-inventory.ts +436 -0
- package/src/cli/eval.ts +13 -0
- package/src/cli/evidence-detail.ts +88 -0
- package/src/cli/evidence-inventory.ts +183 -0
- package/src/cli/evidence.ts +30 -5
- package/src/cli/fleet-decisions.ts +69 -0
- package/src/cli/fleet-inspect.ts +334 -0
- package/src/cli/fleet-preflight.ts +1 -1
- package/src/cli/fleet-verify.ts +133 -0
- package/src/cli/fleet-view.ts +827 -0
- package/src/cli/fleet.ts +154 -40
- package/src/cli/index.ts +14 -2
- package/src/cli/interop-inspect.ts +128 -0
- package/src/cli/interop.ts +34 -0
- package/src/cli/models.ts +3 -3
- package/src/cli/modes/print.ts +1 -1
- package/src/cli/panes.ts +35 -0
- package/src/cli/reset.ts +6 -3
- package/src/cli/run.ts +67 -13
- package/src/cli/share.ts +1 -1
- package/src/cli/skills-eval.ts +11 -11
- package/src/cli/skills-inventory.ts +185 -0
- package/src/cli/skills.ts +16 -13
- package/src/cli/targets.ts +23 -24
- package/src/cli/tools.ts +321 -0
- package/src/cli/trace-inspect.ts +252 -0
- package/src/cli/trace.ts +64 -2
- package/src/cli/uninstall.ts +2 -2
- package/src/cli/upgrade.ts +29 -34
- package/src/cli/usage.ts +2 -2
- package/src/cli/validate-model.ts +1 -1
- package/src/cli/verifiers-inspect.ts +347 -0
- package/src/cli/verifiers.ts +9 -0
- package/src/cli/wiki-generate.ts +5 -5
- package/src/core/bash-exec.ts +1 -1
- package/src/core/boot-trace.ts +3 -3
- package/src/core/bus-events.ts +4 -0
- package/src/core/bus-trace.ts +2 -2
- package/src/core/compile-cache.ts +1 -1
- package/src/core/config.ts +1070 -845
- package/src/core/defaults.ts +342 -463
- package/src/core/domain-loader.ts +6 -4
- package/src/core/event-bus.ts +1 -1
- package/src/core/file-references.ts +78 -88
- package/src/core/git-commit-attribution.ts +3 -9
- package/src/core/guardrails.ts +24 -4
- package/src/core/naming-compat.ts +45 -0
- package/src/core/naming-events.ts +62 -0
- package/src/core/recent-models.ts +1 -7
- package/src/core/residency-protection.ts +4 -8
- package/src/core/resolve-config-value.ts +1 -1
- package/src/core/response-model-id.ts +0 -14
- package/src/core/response-schema.ts +44 -4
- package/src/core/session-routing.ts +84 -74
- package/src/core/skill-activation.ts +18 -0
- package/src/core/termination.ts +4 -4
- package/src/core/theme-token-hex.ts +43 -0
- package/src/core/timers.ts +2 -12
- package/src/core/tool-names.ts +2 -1
- package/src/core/xdg.ts +1 -1
- package/src/domains/agents/catalog.ts +2 -12
- package/src/domains/agents/extension.ts +3 -3
- package/src/domains/agents/fleets/build-review.md +0 -3
- package/src/domains/agents/fleets/build-test.md +0 -3
- package/src/domains/agents/registry.ts +7 -7
- package/src/domains/agents/result-contract-filesystem.ts +32 -0
- package/src/domains/agents/result-contract.ts +165 -36
- package/src/domains/agents/spec.ts +0 -11
- package/src/domains/config/classify.ts +37 -46
- package/src/domains/config/extension.ts +5 -5
- package/src/domains/config/keybindings.ts +48 -47
- package/src/domains/config/watcher.ts +1 -1
- package/src/domains/context/codewiki/indexer.ts +1 -1
- package/src/domains/context/extension.ts +3 -3
- package/src/domains/context/prompt-context.ts +1 -1
- package/src/domains/context/wiki/assemble.ts +2 -2
- package/src/domains/context/working-set/replay/metrics.ts +0 -4
- package/src/domains/context/working-set/replay/report.ts +1 -1
- package/src/domains/context/working-set/replay/synthetic.ts +2 -2
- package/src/domains/dispatch/active-route-planner.ts +2 -2
- package/src/domains/dispatch/admission-error.ts +9 -0
- package/src/domains/dispatch/admission.ts +22 -21
- package/src/domains/dispatch/agent-candidates.ts +1 -1
- package/src/domains/dispatch/agent-ledger-store.ts +1 -1
- package/src/domains/dispatch/agent-ledger.ts +1 -1
- package/src/domains/dispatch/assignment.ts +5 -5
- package/src/domains/dispatch/capacity-lease.ts +23 -6
- package/src/domains/dispatch/code-step.ts +1 -1
- package/src/domains/dispatch/contract.ts +2 -2
- package/src/domains/dispatch/council-topology.ts +398 -0
- package/src/domains/dispatch/extension.ts +287 -111
- package/src/domains/dispatch/fleet-node-prompt.ts +62 -0
- package/src/domains/dispatch/fleet-plan.ts +7 -2
- package/src/domains/dispatch/fleet-preflight.ts +8 -17
- package/src/domains/dispatch/fleet-run.ts +59 -3
- package/src/domains/dispatch/gate-decisions.ts +36 -15
- package/src/domains/dispatch/gate-role-prompts.ts +9 -0
- package/src/domains/dispatch/gate-topology.ts +289 -0
- package/src/domains/dispatch/index.ts +19 -0
- package/src/domains/dispatch/intent-compatibility.ts +330 -0
- package/src/domains/dispatch/intent.ts +85 -1
- package/src/domains/dispatch/joint-route-resolver.ts +1 -1
- package/src/domains/dispatch/path-scope.ts +0 -61
- package/src/domains/dispatch/placement.ts +2 -2
- package/src/domains/dispatch/receipt-findings.ts +1 -1
- package/src/domains/dispatch/receipt-integrity.ts +20 -8
- package/src/domains/dispatch/reservation-store.ts +24 -27
- package/src/domains/dispatch/route-decision.ts +1 -1
- package/src/domains/dispatch/route-history.ts +1 -1
- package/src/domains/dispatch/route-policy.ts +1 -1
- package/src/domains/dispatch/route-readiness.ts +0 -28
- package/src/domains/dispatch/run-event-journal-bridge.ts +149 -0
- package/src/domains/dispatch/run-event-journal.ts +599 -0
- package/src/domains/dispatch/state.ts +45 -1
- package/src/domains/dispatch/tool-stats.ts +1 -1
- package/src/domains/dispatch/transport.ts +2 -19
- package/src/domains/dispatch/types.ts +16 -3
- package/src/domains/dispatch/validation.ts +33 -8
- package/src/domains/dispatch/worker-protocol.ts +2 -2
- package/src/domains/eval/artifacts/store.ts +5 -4
- package/src/domains/eval/compare/compare.ts +3 -16
- package/src/domains/eval/compare/thresholds.ts +0 -8
- package/src/domains/eval/execution-provenance.ts +1 -1
- package/src/domains/eval/inventory.ts +113 -0
- package/src/domains/eval/metrics/token-stream.ts +0 -7
- package/src/domains/eval/report.ts +1 -1
- package/src/domains/eval/runner.ts +1 -1
- package/src/domains/eval/runners/clio-run.ts +7 -6
- package/src/domains/eval/runners/external-command.ts +4 -3
- package/src/domains/eval/schema/artifact.ts +1 -1
- package/src/domains/eval/schema/behavioral-metrics.ts +3 -2
- package/src/domains/eval/schema/behavioral.ts +7 -6
- package/src/domains/eval/schema/execution-envelope.ts +4 -2
- package/src/domains/eval/schema/naming.ts +10 -0
- package/src/domains/eval/schema/serving.ts +31 -0
- package/src/domains/eval/schema/suite.ts +2 -2
- package/src/domains/eval/schema/validate.ts +9 -5
- package/src/domains/eval/schema/verdict.ts +4 -2
- package/src/domains/eval/store.ts +12 -2
- package/src/domains/eval/suites/run.ts +12 -6
- package/src/domains/eval/types.ts +1 -1
- package/src/domains/eval/workspaces/git.ts +1 -1
- package/src/domains/eval/workspaces/temp-copy.ts +1 -1
- package/src/domains/evidence/build.ts +13 -5
- package/src/domains/evidence/store.ts +6 -0
- package/src/domains/interop/consent.ts +7 -7
- package/src/domains/interop/extension.ts +1 -1
- package/src/domains/lifecycle/doctor.ts +27 -21
- package/src/domains/lifecycle/migrations/2026-09-01-clio-coder-naming.ts +155 -0
- package/src/domains/lifecycle/migrations/2026-09-01-retire-panes-knobs.ts +59 -0
- package/src/domains/lifecycle/migrations/2026-09-01-settings-v2.ts +338 -0
- package/src/domains/lifecycle/migrations/index.ts +20 -1
- package/src/domains/lifecycle/naming-history.ts +153 -0
- package/src/domains/lifecycle/naming-mutable-state.ts +104 -0
- package/src/domains/lifecycle/naming-resources.ts +261 -0
- package/src/domains/lifecycle/naming-tool-markers.ts +139 -0
- package/src/domains/lifecycle/naming-yazi.ts +81 -0
- package/src/domains/lifecycle/upgrade-notice.ts +1 -1
- package/src/domains/memory/index.ts +0 -1
- package/src/domains/memory/task-memory-handoff.ts +6 -3
- package/src/domains/memory/task-memory-policy.ts +6 -10
- package/src/domains/memory/task-memory-telemetry.ts +1 -0
- package/src/domains/middleware/index.ts +7 -0
- package/src/domains/middleware/marketplace-offer.ts +339 -0
- package/src/domains/middleware/memory-intervention.ts +33 -21
- package/src/domains/middleware/runtime.ts +2 -2
- package/src/domains/mux/contract.ts +566 -0
- package/src/domains/mux/detect.ts +182 -0
- package/src/domains/mux/dock-controller.ts +365 -0
- package/src/domains/mux/extension.ts +53 -0
- package/src/domains/mux/index.ts +116 -0
- package/src/domains/mux/manifest.ts +6 -0
- package/src/domains/mux/operations.ts +192 -0
- package/src/domains/mux/pane-registry.ts +90 -0
- package/src/domains/mux/protocol.ts +62 -0
- package/src/domains/mux/socket-client.ts +964 -0
- package/src/domains/mux/types.ts +265 -0
- package/src/domains/mux/viewer-command.ts +59 -0
- package/src/domains/mux/yazi/assets/init.lua +2 -0
- package/src/domains/mux/yazi/assets/plugins/git.yazi/LICENSE +21 -0
- package/src/domains/mux/yazi/assets/plugins/git.yazi/README.md +78 -0
- package/src/domains/mux/yazi/assets/plugins/git.yazi/main.lua +255 -0
- package/src/domains/mux/yazi/assets/plugins/git.yazi/types.lua +12 -0
- package/src/domains/mux/yazi/assets/yazi.toml +17 -0
- package/src/domains/mux/yazi/event-stream.ts +182 -0
- package/src/domains/mux/yazi/profile.ts +299 -0
- package/src/domains/mux/yazi/session.ts +251 -0
- package/src/domains/mux/yazi/theme.ts +30 -0
- package/src/domains/observability/cost.ts +21 -0
- package/src/domains/observability/extension.ts +1 -1
- package/src/domains/observability/index.ts +2 -0
- package/src/domains/observability/out-of-turn-usage.ts +2 -2
- package/src/domains/observability/projection.ts +1 -1
- package/src/domains/observability/trace-store.ts +63 -11
- package/src/domains/prompts/compiler.ts +2 -2
- package/src/domains/prompts/extension.ts +3 -3
- package/src/domains/prompts/fragments/identity/clio-worker.md +1 -1
- package/src/domains/prompts/fragments/operating/skills.md +25 -18
- package/src/domains/providers/endpoint-capacity.ts +154 -22
- package/src/domains/providers/endpoint-slots-store.ts +189 -0
- package/src/domains/providers/extension.ts +25 -8
- package/src/domains/providers/index.ts +22 -0
- package/src/domains/providers/knowledge-base-path.ts +1 -1
- package/src/domains/providers/model-runtime-capabilities.ts +46 -2
- package/src/domains/providers/models/cloud-models/alcf.yaml +1 -1
- package/src/domains/providers/models/local-models/{clio-local-coding-targets.yaml → clio-coder-local-coding-targets.yaml} +4 -4
- package/src/domains/providers/plugins.ts +1 -1
- package/src/domains/providers/resolver.ts +1 -1
- package/src/domains/providers/runtimes/boot-manifest.ts +1 -0
- package/src/domains/providers/runtimes/builtins.ts +2 -0
- package/src/domains/providers/runtimes/cloud/alcf.ts +4 -4
- package/src/domains/providers/runtimes/common/lmstudio-http.ts +1 -5
- package/src/domains/providers/runtimes/common/local-synth.ts +3 -3
- package/src/domains/providers/runtimes/common/probe-helpers.ts +2 -2
- package/src/domains/providers/runtimes/local-native/llamacpp-completion.ts +1 -1
- package/src/domains/providers/runtimes/local-native/lmstudio.ts +2 -9
- package/src/domains/providers/runtimes/protocol/litellm.ts +285 -0
- package/src/domains/providers/support.ts +1 -0
- package/src/domains/providers/target-model-cache.ts +124 -0
- package/src/domains/providers/types/knowledge-base.ts +13 -0
- package/src/domains/providers/types/local-model-quirks.ts +2 -2
- package/src/domains/providers/types/target-descriptor.ts +3 -3
- package/src/domains/resources/extension.ts +1 -1
- package/src/domains/resources/index.ts +3 -0
- package/src/domains/resources/library.ts +6 -6
- package/src/domains/resources/prompts/loader.ts +1 -1
- package/src/domains/resources/skills/content-hash.ts +7 -6
- package/src/domains/resources/skills/evals.ts +1 -1
- package/src/domains/resources/skills/install.ts +36 -12
- package/src/domains/resources/skills/loader.ts +72 -13
- package/src/domains/resources/skills/marketplace.ts +21 -2
- package/src/domains/resources/skills/promotion.ts +214 -0
- package/src/domains/safety/action-classifier.ts +6 -0
- package/src/domains/safety/audit.ts +2 -2
- package/src/domains/safety/finish-contract.ts +2 -1
- package/src/domains/safety/run-effects.ts +1 -1
- package/src/domains/scheduling/extension.ts +4 -4
- package/src/domains/session/archive-readers.ts +9 -1
- package/src/domains/session/compaction/branch-summary.ts +4 -0
- package/src/domains/session/compaction/compact.ts +1 -1
- package/src/domains/session/compaction/tokens.ts +4 -0
- package/src/domains/session/context-accounting.ts +1 -1
- package/src/domains/session/decision-board.ts +1 -1
- package/src/domains/session/extension.ts +1 -1
- package/src/domains/session/handoff.ts +2 -2
- package/src/domains/session/prompt-manifest.ts +0 -5
- package/src/domains/session/protected-artifact-journal.ts +12 -6
- package/src/domains/session/retry.ts +1 -1
- package/src/domains/share/archive.ts +85 -36
- package/src/domains/toolchain/archive.ts +175 -0
- package/src/domains/toolchain/contract.ts +28 -0
- package/src/domains/toolchain/extension.ts +47 -0
- package/src/domains/toolchain/index.ts +39 -0
- package/src/domains/toolchain/install.ts +327 -0
- package/src/domains/toolchain/manifest.ts +8 -0
- package/src/domains/toolchain/paths.ts +34 -0
- package/src/domains/toolchain/registry.ts +265 -0
- package/src/domains/toolchain/remove.ts +218 -0
- package/src/domains/toolchain/resolve.ts +182 -0
- package/src/domains/toolchain/types.ts +113 -0
- package/src/domains/toolchain/version.ts +88 -0
- package/src/engine/acp/adapter.ts +3 -3
- package/src/engine/acp/event-mapper.ts +3 -3
- package/src/engine/acp/server.ts +440 -96
- package/src/engine/acp/tool-mediator.ts +2 -2
- package/src/engine/acp/types.ts +20 -2
- package/src/engine/alcf-oauth.ts +5 -5
- package/src/engine/antigravity/subprocess-runtime.ts +2 -2
- package/src/engine/api-registry.ts +1 -1
- package/src/engine/apis/llamacpp-residency.ts +1 -19
- package/src/engine/apis/lmstudio.ts +1 -6
- package/src/engine/apis/ollama-native.ts +3 -3
- package/src/engine/apis/openai-completions.ts +2 -2
- package/src/engine/apis/residency.ts +3 -9
- package/src/engine/claude/sdk-module.ts +87 -0
- package/src/engine/claude/sdk-runtime.ts +25 -17
- package/src/engine/claude/subprocess-runtime.ts +1 -1
- package/src/engine/claude/tool-safety.ts +4 -4
- package/src/engine/loop-guard.ts +0 -5
- package/src/engine/session.ts +14 -7
- package/src/engine/tui-primitives.ts +21 -0
- package/src/engine/tui.ts +1 -0
- package/src/engine/worker-events.ts +6 -6
- package/src/engine/worker-runtime.ts +16 -26
- package/src/entry/boot-options.ts +2 -0
- package/src/entry/orchestrator.ts +207 -90
- package/src/entry/panes-activation.ts +31 -0
- package/src/entry/with-panes.ts +20 -0
- package/src/interactive/application-controller.ts +21 -21
- package/src/interactive/bus-notices.ts +2 -2
- package/src/interactive/chat-loop.ts +8 -8
- package/src/interactive/chat-panel.ts +1 -1
- package/src/interactive/clio-editor.ts +105 -1
- package/src/interactive/context-activity.ts +8 -6
- package/src/interactive/context-meter.ts +3 -6
- package/src/interactive/context-overlay.ts +2 -1
- package/src/interactive/cost-overlay.ts +3 -1
- package/src/interactive/council-grid.ts +3 -5
- package/src/interactive/council.ts +11 -0
- package/src/interactive/dispatch-board.ts +56 -49
- package/src/interactive/editor-bash.ts +21 -0
- package/src/interactive/editor-steer.ts +9 -4
- package/src/interactive/editor-submit.ts +24 -18
- package/src/interactive/external-editor.ts +1 -1
- package/src/interactive/file-reference-completion.ts +360 -0
- package/src/interactive/footer/dashboard.ts +15 -17
- package/src/interactive/footer/notifications.ts +14 -8
- package/src/interactive/footer/widgets.ts +2 -44
- package/src/interactive/interactive-application.ts +229 -62
- package/src/interactive/interactive-event-projection.ts +1 -1
- package/src/interactive/interactive-input-runtime.ts +9 -2
- package/src/interactive/interactive-presentation.ts +21 -16
- package/src/interactive/interactive-shell.ts +2 -2
- package/src/interactive/interactive-slash-runtime.ts +99 -23
- package/src/interactive/interactive-subscriptions.ts +1 -1
- package/src/interactive/interactive-tickers.ts +1 -1
- package/src/interactive/keybinding-manager.ts +4 -4
- package/src/interactive/layout.ts +1 -1
- package/src/interactive/memory-overlay.ts +3 -2
- package/src/interactive/modal-marker.ts +151 -0
- package/src/interactive/mutation-preview.ts +1 -1
- package/src/interactive/mux-bridge.ts +214 -0
- package/src/interactive/overlay-frame.ts +62 -14
- package/src/interactive/overlay-general-openers.ts +7 -2
- package/src/interactive/overlay-key-routing.ts +21 -10
- package/src/interactive/overlay-lifecycle.ts +20 -4
- package/src/interactive/overlay-model-selectors.ts +43 -6
- package/src/interactive/overlay-permission-lifecycle.ts +90 -22
- package/src/interactive/overlay-transitions.ts +18 -4
- package/src/interactive/overlays/agents.ts +3 -2
- package/src/interactive/overlays/ask-user.ts +161 -41
- package/src/interactive/overlays/auth-dialog.ts +1 -0
- package/src/interactive/overlays/context-reset.ts +29 -4
- package/src/interactive/overlays/cwd-fallback.ts +29 -4
- package/src/interactive/overlays/decisions.ts +15 -13
- package/src/interactive/overlays/extensions.ts +1 -0
- package/src/interactive/overlays/fleet-run-approval.ts +4 -3
- package/src/interactive/overlays/handoff-review.ts +3 -2
- package/src/interactive/overlays/help-reference.ts +2 -0
- package/src/interactive/overlays/interop.ts +2 -1
- package/src/interactive/overlays/library-install-confirm.ts +2 -1
- package/src/interactive/overlays/library-tabs.ts +28 -0
- package/src/interactive/overlays/list-overlay.ts +10 -1
- package/src/interactive/overlays/message-picker.ts +2 -1
- package/src/interactive/overlays/model-scope.ts +86 -0
- package/src/interactive/overlays/model-selector.ts +40 -31
- package/src/interactive/overlays/prompts.ts +11 -4
- package/src/interactive/overlays/session-selector.ts +3 -2
- package/src/interactive/overlays/settings-sections.ts +30 -0
- package/src/interactive/overlays/settings.ts +849 -268
- package/src/interactive/overlays/side-question.ts +3 -2
- package/src/interactive/overlays/skills-hub.ts +11 -19
- package/src/interactive/overlays/tree-selector.ts +3 -2
- package/src/interactive/pane-policy.ts +46 -0
- package/src/interactive/panes-runtime.ts +318 -0
- package/src/interactive/permission-overlay.ts +2 -2
- package/src/interactive/renderers/compaction-summary.ts +29 -0
- package/src/interactive/renderers/retry-status.ts +12 -4
- package/src/interactive/renderers/tool-execution.ts +4 -4
- package/src/interactive/renderers/worker-entry.ts +122 -14
- package/src/interactive/session-transcript.ts +3 -3
- package/src/interactive/slash-autocomplete.ts +454 -165
- package/src/interactive/slash-commands.ts +521 -189
- package/src/interactive/slash-spec.ts +160 -17
- package/src/interactive/status/controller.ts +2 -2
- package/src/interactive/stream-pacing-policy.ts +1 -1
- package/src/interactive/tasks-overlay.ts +21 -13
- package/src/interactive/terminal-lease.ts +6 -7
- package/src/interactive/theme/tokens.ts +3 -14
- package/src/interactive/turn-context.ts +58 -13
- package/src/interactive/turn-persistence.ts +2 -2
- package/src/interactive/turn-prewarm.ts +2 -2
- package/src/interactive/turn-runtime.ts +8 -8
- package/src/interactive/turn-state.ts +1 -1
- package/src/interactive/view/artifacts.ts +120 -9
- package/src/interactive/view/view-overlay.ts +14 -10
- package/src/interactive/watch-pane.ts +180 -0
- package/src/interactive/welcome-dashboard.ts +15 -15
- package/src/interactive/worker-progress.ts +11 -5
- package/src/interactive/worker-receipts.ts +20 -2
- package/src/interactive/worker-stream.ts +6 -4
- package/src/interactive/yazi-bridge.ts +451 -0
- package/src/tools/ask-user.ts +3 -3
- package/src/tools/bash.ts +1 -1
- package/src/tools/bootstrap.ts +26 -2
- package/src/tools/builtin-tool-catalog.ts +16 -1
- package/src/tools/compete-worktrees.ts +108 -17
- package/src/tools/context/index.ts +15 -1
- package/src/tools/core-bootstrap.ts +2 -1
- package/src/tools/dispatch-admission.ts +18 -5
- package/src/tools/dispatch-arguments.ts +21 -21
- package/src/tools/dispatch-plan.ts +0 -11
- package/src/tools/dispatch-run-events.ts +145 -28
- package/src/tools/dispatch-runner.ts +40 -13
- package/src/tools/dispatch-types.ts +15 -3
- package/src/tools/dispatch.ts +2 -2
- package/src/tools/executables.ts +17 -14
- package/src/tools/find.ts +1 -6
- package/src/tools/monitor.ts +4 -4
- package/src/tools/observation.ts +54 -4
- package/src/tools/observers.ts +0 -33
- package/src/tools/panes-surface.ts +38 -0
- package/src/tools/panes.ts +112 -0
- package/src/tools/policy.ts +10 -1
- package/src/tools/presentation.ts +1 -0
- package/src/tools/task-worktree.ts +28 -7
- package/src/tools/verify/authoring.ts +3 -6
- package/src/tools/verify/frontend.ts +1 -1
- package/src/tools/web-fetch.ts +1 -1
- package/src/worker/entry.ts +4 -3
- package/src/worker/protocol.ts +16 -14
- package/src/worker/spec-contract.ts +2 -2
- package/src/worker/stdin-demux.ts +2 -2
- package/dist/chunk-D73KXYPF.js +0 -37
- package/dist/chunk-MLOK6ZOS.js +0 -2888
- package/dist/chunk-PNY46YEY.js +0 -1581
- package/dist/chunk-XDOQXGFO.js +0 -515
- package/dist/chunk-YKOFT37S.js +0 -279
- package/dist/clio-LT5V7SSZ.js +0 -26
- package/dist/configure-2WYWSCSD.js +0 -49
- package/dist/doctor-TWBWFK5V.js +0 -165
- package/src/engine/apis/degraded-inference.ts +0 -95
- /package/skills/meta/{clio-test → clio-coder-test}/references/harness.md +0 -0
- /package/skills/meta/{clio-test → clio-coder-test}/references/test-map.md +0 -0
|
@@ -1,4 +1,18 @@
|
|
|
1
1
|
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
fingerprintNativeRuntime
|
|
4
|
+
} from "./chunk-NEKRRTYW.js";
|
|
5
|
+
import {
|
|
6
|
+
INHERITED_PROJECT_CONTEXT,
|
|
7
|
+
acceptInteropAgents,
|
|
8
|
+
declineInteropAgents,
|
|
9
|
+
detectInteropAgents,
|
|
10
|
+
interopProposals,
|
|
11
|
+
renderProposalEntry
|
|
12
|
+
} from "./chunk-BDPT6GTK.js";
|
|
13
|
+
import {
|
|
14
|
+
initializeClioHome
|
|
15
|
+
} from "./chunk-7PWAODYW.js";
|
|
2
16
|
import {
|
|
3
17
|
createDelayedManualCodeInput,
|
|
4
18
|
promptOAuthSelection
|
|
@@ -13,40 +27,30 @@ import {
|
|
|
13
27
|
import {
|
|
14
28
|
credentialWriteFailed,
|
|
15
29
|
printPlaintextCredentialWarning
|
|
16
|
-
} from "./chunk-
|
|
17
|
-
import {
|
|
18
|
-
INHERITED_PROJECT_CONTEXT,
|
|
19
|
-
acceptInteropAgents,
|
|
20
|
-
declineInteropAgents,
|
|
21
|
-
detectInteropAgents,
|
|
22
|
-
fingerprintNativeRuntime,
|
|
23
|
-
interopProposals,
|
|
24
|
-
renderProposalEntry
|
|
25
|
-
} from "./chunk-QQ7EKM72.js";
|
|
26
|
-
import {
|
|
27
|
-
initializeClioHome
|
|
28
|
-
} from "./chunk-56KB5IJP.js";
|
|
30
|
+
} from "./chunk-ZW55JB7N.js";
|
|
29
31
|
import {
|
|
30
32
|
printError,
|
|
31
33
|
printOk
|
|
32
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-VPKWYKEY.js";
|
|
33
35
|
import {
|
|
34
36
|
isOrchestratorEligibleRuntime,
|
|
35
|
-
probeCapabilitiesForModel
|
|
36
|
-
|
|
37
|
+
probeCapabilitiesForModel,
|
|
38
|
+
readTargetModelSnapshot,
|
|
39
|
+
recordTargetModelSnapshot
|
|
40
|
+
} from "./chunk-UEDMSP56.js";
|
|
37
41
|
import {
|
|
38
42
|
credentialsPresent
|
|
39
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-72GZI5EV.js";
|
|
40
44
|
import {
|
|
41
45
|
readSettings,
|
|
42
46
|
removeTargetFromSettings,
|
|
43
47
|
settingsPath,
|
|
44
48
|
updateSettings
|
|
45
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-EIMVLWB3.js";
|
|
46
50
|
import {
|
|
47
51
|
greetLmStudio,
|
|
48
52
|
registerBuiltinRuntimes
|
|
49
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-QKIFBZKT.js";
|
|
50
54
|
import {
|
|
51
55
|
buildProviderSupportEntry,
|
|
52
56
|
configuredTargetsForRuntime,
|
|
@@ -54,20 +58,20 @@ import {
|
|
|
54
58
|
listKnownModelsForRuntime,
|
|
55
59
|
listProviderSupportEntries,
|
|
56
60
|
supportGroupLabel
|
|
57
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-CDNVLKUX.js";
|
|
58
62
|
import {
|
|
59
63
|
openAuthStorage,
|
|
60
64
|
registerClioOAuthProviders,
|
|
61
65
|
resolveAuthTarget,
|
|
62
66
|
resolveRuntimeAuthTarget,
|
|
63
67
|
targetRequiresAuth
|
|
64
|
-
} from "./chunk-
|
|
68
|
+
} from "./chunk-WNP7O5WZ.js";
|
|
65
69
|
import {
|
|
66
70
|
getRuntimeRegistry
|
|
67
71
|
} from "./chunk-NUGM5KR6.js";
|
|
68
72
|
import {
|
|
69
73
|
getCatalogModelForRuntime
|
|
70
|
-
} from "./chunk-
|
|
74
|
+
} from "./chunk-O42A54GG.js";
|
|
71
75
|
import {
|
|
72
76
|
init_esm_shims
|
|
73
77
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -115,7 +119,7 @@ function describe(proposal) {
|
|
|
115
119
|
renderProposalEntry(proposal),
|
|
116
120
|
"",
|
|
117
121
|
`projectContext stays ${INHERITED_PROJECT_CONTEXT}: this agent receives your task text, never the project projection.`,
|
|
118
|
-
`toolGovernance is clio-policy: its tool calls are gated by Clio safety.`
|
|
122
|
+
`toolGovernance is clio-coder-policy: its tool calls are gated by Clio safety.`
|
|
119
123
|
];
|
|
120
124
|
if (proposal.needsNetworkInstall) {
|
|
121
125
|
lines.push(`The ACP adapter is not installed locally; npx fetches it the first time you delegate.`);
|
|
@@ -335,7 +339,7 @@ Non-interactive flags:
|
|
|
335
339
|
--force save a model outside the runtime catalog, or one the
|
|
336
340
|
target does not advertise, without refusing
|
|
337
341
|
--gateway mark the target as a gateway
|
|
338
|
-
--lifecycle <user-managed|clio-managed>
|
|
342
|
+
--lifecycle <user-managed|clio-coder-managed>
|
|
339
343
|
resident model lifecycle policy
|
|
340
344
|
--set-orchestrator use this target for chat
|
|
341
345
|
--set-background use this target for proactive task memory
|
|
@@ -358,7 +362,8 @@ var DEFAULT_PORTS = {
|
|
|
358
362
|
"lemonade-anthropic": 8e3,
|
|
359
363
|
lemonade: 8e3,
|
|
360
364
|
"anthropic-compat": 8e3,
|
|
361
|
-
"openai-compat": 8e3
|
|
365
|
+
"openai-compat": 8e3,
|
|
366
|
+
litellm: 4e3
|
|
362
367
|
};
|
|
363
368
|
function parseSetupArgs(argv) {
|
|
364
369
|
const out = {
|
|
@@ -446,8 +451,8 @@ function parseSetupArgs(argv) {
|
|
|
446
451
|
break;
|
|
447
452
|
case "--lifecycle": {
|
|
448
453
|
const v = need();
|
|
449
|
-
if (v !== "user-managed" && v !== "clio-managed") {
|
|
450
|
-
throw new Error("--lifecycle must be user-managed or clio-managed");
|
|
454
|
+
if (v !== "user-managed" && v !== "clio-coder-managed") {
|
|
455
|
+
throw new Error("--lifecycle must be user-managed or clio-coder-managed");
|
|
451
456
|
}
|
|
452
457
|
out.lifecycle = v;
|
|
453
458
|
break;
|
|
@@ -523,7 +528,7 @@ function printRuntimeList(includeHidden) {
|
|
|
523
528
|
for (const entry of listProviderSupportEntries(getRuntimeRegistry().list(), { includeHidden })) {
|
|
524
529
|
const runtime = getRuntimeRegistry().get(entry.runtimeId);
|
|
525
530
|
const status = runtime && entry.connectable ? auth.statusForTarget(resolveRuntimeAuthTarget(runtime), { includeFallback: false }) : null;
|
|
526
|
-
const authLabel = runtime?.auth === "oauth" ? status?.available ? "connected" : "login" : runtime?.auth === "api-key" ? status?.available ? "credential" : "needs-key" : runtime?.auth ?? "none";
|
|
531
|
+
const authLabel = runtime?.auth === "oauth" ? status?.available ? "connected" : "login" : runtime?.auth === "api-key" ? status?.available ? "credential" : targetRequiresAuth({ id: entry.runtimeId, runtime: entry.runtimeId }, runtime) ? "needs-key" : "key-optional" : runtime?.auth ?? "none";
|
|
527
532
|
rows.push({
|
|
528
533
|
group: supportGroupLabel(entry.group),
|
|
529
534
|
runtimeId: entry.runtimeId,
|
|
@@ -650,12 +655,12 @@ function setOrchestratorPointer(settings, descriptor, model) {
|
|
|
650
655
|
`cannot use target '${descriptor.id}' as orchestrator target because runtime '${runtime.id}' is not an HTTP/native runtime`
|
|
651
656
|
);
|
|
652
657
|
}
|
|
653
|
-
settings.
|
|
654
|
-
settings.
|
|
658
|
+
settings.chat.target = descriptor.id;
|
|
659
|
+
settings.chat.model = model ?? descriptor.defaultModel ?? null;
|
|
655
660
|
}
|
|
656
661
|
function setWorkerDefaultPointer(settings, descriptor, model) {
|
|
657
|
-
settings.
|
|
658
|
-
settings.
|
|
662
|
+
settings.fleet.default.target = descriptor.id;
|
|
663
|
+
settings.fleet.default.model = model ?? descriptor.defaultModel ?? null;
|
|
659
664
|
}
|
|
660
665
|
function setBackgroundPointer(settings, descriptor, model) {
|
|
661
666
|
const runtime = getRuntimeRegistry().get(descriptor.runtime);
|
|
@@ -664,12 +669,12 @@ function setBackgroundPointer(settings, descriptor, model) {
|
|
|
664
669
|
`cannot use target '${descriptor.id}' as background target because runtime '${descriptor.runtime}' is not an HTTP/native runtime`
|
|
665
670
|
);
|
|
666
671
|
}
|
|
667
|
-
settings.
|
|
668
|
-
settings.
|
|
672
|
+
settings.context.memory.target = descriptor.id;
|
|
673
|
+
settings.context.memory.model = model ?? descriptor.defaultModel ?? null;
|
|
669
674
|
}
|
|
670
675
|
function assertOrchestratorReplacementEligible(settings, descriptor) {
|
|
671
|
-
if (settings.
|
|
672
|
-
const role = settings.
|
|
676
|
+
if (settings.chat.target !== descriptor.id && settings.context.memory.target !== descriptor.id) return;
|
|
677
|
+
const role = settings.chat.target === descriptor.id ? "orchestrator" : "background";
|
|
673
678
|
const runtime = getRuntimeRegistry().get(descriptor.runtime);
|
|
674
679
|
if (!runtime) {
|
|
675
680
|
throw new Error(
|
|
@@ -683,7 +688,7 @@ function assertOrchestratorReplacementEligible(settings, descriptor) {
|
|
|
683
688
|
function setWorkerProfilePointer(settings, name, descriptor, model) {
|
|
684
689
|
const trimmed = name.trim();
|
|
685
690
|
if (trimmed.length === 0) throw new Error("fleet profile name must be non-empty");
|
|
686
|
-
settings.
|
|
691
|
+
settings.fleet.profiles[trimmed] = {
|
|
687
692
|
target: descriptor.id,
|
|
688
693
|
model: model ?? descriptor.defaultModel ?? null,
|
|
689
694
|
thinkingLevel: "off"
|
|
@@ -750,10 +755,10 @@ saved target ${descriptor.id} (runtime=${descriptor.runtime})
|
|
|
750
755
|
`);
|
|
751
756
|
}
|
|
752
757
|
warnUndiscoveredContextWindow(descriptor, probe);
|
|
753
|
-
if (settings.
|
|
754
|
-
if (settings.
|
|
755
|
-
if (settings.
|
|
756
|
-
for (const [name, profile] of Object.entries(settings.
|
|
758
|
+
if (settings.chat.target === descriptor.id) process.stdout.write(" orchestrator target\n");
|
|
759
|
+
if (settings.context.memory.target === descriptor.id) process.stdout.write(" background memory target\n");
|
|
760
|
+
if (settings.fleet.default.target === descriptor.id) process.stdout.write(" fleet default\n");
|
|
761
|
+
for (const [name, profile] of Object.entries(settings.fleet.profiles)) {
|
|
757
762
|
if (profile.target === descriptor.id) process.stdout.write(` fleet profile ${name}
|
|
758
763
|
`);
|
|
759
764
|
}
|
|
@@ -764,18 +769,12 @@ settings written to ${settingsPath()}
|
|
|
764
769
|
function buildDescriptor(runtime, id, parts) {
|
|
765
770
|
const descriptor = { id, runtime: runtime.id };
|
|
766
771
|
if (parts.url) descriptor.url = parts.url;
|
|
767
|
-
const wireModels = parts.wireModels?.filter((value, index, all) => value.trim().length > 0 && all.indexOf(value) === index) ?? [];
|
|
768
772
|
if (parts.model) descriptor.defaultModel = parts.model;
|
|
769
|
-
else {
|
|
770
|
-
const firstWireModel = wireModels[0];
|
|
771
|
-
if (firstWireModel) descriptor.defaultModel = firstWireModel;
|
|
772
|
-
}
|
|
773
773
|
const auth = {};
|
|
774
774
|
if (parts.apiKeyEnv) auth.apiKeyEnvVar = parts.apiKeyEnv;
|
|
775
775
|
if (parts.apiKeyRef) auth.apiKeyRef = parts.apiKeyRef;
|
|
776
776
|
if (parts.oauthProfile) auth.oauthProfile = parts.oauthProfile;
|
|
777
777
|
if (Object.keys(auth).length > 0) descriptor.auth = auth;
|
|
778
|
-
if (wireModels.length > 0) descriptor.wireModels = wireModels;
|
|
779
778
|
if (parts.gateway) descriptor.gateway = true;
|
|
780
779
|
if (parts.lifecycle) descriptor.lifecycle = parts.lifecycle;
|
|
781
780
|
const caps = {};
|
|
@@ -862,13 +861,21 @@ async function resolveSupportedWireModels(runtime, target, existing, authToken)
|
|
|
862
861
|
if (runtime.kind === "http") {
|
|
863
862
|
const probe = await runtimeProbe(runtime, target, authToken);
|
|
864
863
|
if (probe?.ok && probe.models && probe.models.length > 0) {
|
|
864
|
+
recordTargetModelSnapshot(target, probe.models);
|
|
865
865
|
return { models: [...probe.models], source: "probe", modelStates: probe.modelStates };
|
|
866
866
|
}
|
|
867
867
|
const discovered = await runtimeProbeModels(runtime, target, authToken);
|
|
868
|
-
if (discovered.length > 0)
|
|
868
|
+
if (discovered.length > 0) {
|
|
869
|
+
recordTargetModelSnapshot(target, discovered);
|
|
870
|
+
return { models: discovered, source: "probe" };
|
|
871
|
+
}
|
|
872
|
+
}
|
|
873
|
+
const cached = readTargetModelSnapshot(target);
|
|
874
|
+
if (cached && cached.models.length > 0) return { models: [...cached.models], source: "cache" };
|
|
875
|
+
if (existing?.wireModels && existing.wireModels.length > 0) {
|
|
876
|
+
recordTargetModelSnapshot(target, existing.wireModels);
|
|
877
|
+
return { models: [...existing.wireModels], source: "legacy" };
|
|
869
878
|
}
|
|
870
|
-
if (existing?.wireModels && existing.wireModels.length > 0)
|
|
871
|
-
return { models: [...existing.wireModels], source: "existing" };
|
|
872
879
|
return { models: [], source: "none" };
|
|
873
880
|
}
|
|
874
881
|
function resolveModelChoice(answer, wireModels, defaultValue) {
|
|
@@ -972,7 +979,6 @@ async function runNonInteractive(runtime, args) {
|
|
|
972
979
|
const descriptor = buildDescriptor(runtime, args.id, {
|
|
973
980
|
...url !== void 0 ? { url } : {},
|
|
974
981
|
...model ? { model } : {},
|
|
975
|
-
...wireModels.length > 0 ? { wireModels } : {},
|
|
976
982
|
...apiKeyEnv !== void 0 ? { apiKeyEnv } : {},
|
|
977
983
|
...apiKeyRef !== void 0 ? { apiKeyRef } : {},
|
|
978
984
|
...oauthProfile !== void 0 ? { oauthProfile } : {},
|
|
@@ -1023,6 +1029,7 @@ async function runNonInteractive(runtime, args) {
|
|
|
1023
1029
|
applyConfiguration(settings);
|
|
1024
1030
|
updateSettings(applyConfiguration);
|
|
1025
1031
|
const probe = await runtimeProbe(runtime, descriptor);
|
|
1032
|
+
if (probe?.ok && probe.models) recordTargetModelSnapshot(descriptor, probe.models);
|
|
1026
1033
|
printSummary(settings, descriptor, probe);
|
|
1027
1034
|
if (runtime.auth === "oauth" && !auth.statusForTarget(resolveRuntimeAuthTarget(runtime), { includeFallback: false }).available) {
|
|
1028
1035
|
process.stdout.write(
|
|
@@ -1174,7 +1181,7 @@ async function runInteractive(rl, preselectedRuntime, defaults) {
|
|
|
1174
1181
|
let runtime = preselectedRuntime ?? await pickRuntimeViaCategory(rl);
|
|
1175
1182
|
if (!runtime) {
|
|
1176
1183
|
printError("configuration cancelled");
|
|
1177
|
-
return
|
|
1184
|
+
return 130;
|
|
1178
1185
|
}
|
|
1179
1186
|
const auth = openAuthStorage();
|
|
1180
1187
|
const settings = readSettings();
|
|
@@ -1280,7 +1287,7 @@ Selected runtime: ${runtime.id} (${support.summary})
|
|
|
1280
1287
|
oauthProfile = runtime.oauthProviderId ?? runtime.id;
|
|
1281
1288
|
}
|
|
1282
1289
|
let model = defaults.model;
|
|
1283
|
-
let inventory =
|
|
1290
|
+
let inventory = { models: [], source: "none" };
|
|
1284
1291
|
const tentative = buildDescriptor(runtime, targetId, {
|
|
1285
1292
|
...url !== void 0 ? { url } : {},
|
|
1286
1293
|
...apiKeyEnv !== void 0 ? { apiKeyEnv } : {},
|
|
@@ -1360,7 +1367,6 @@ Selected runtime: ${runtime.id} (${support.summary})
|
|
|
1360
1367
|
...apiKeyEnv !== void 0 ? { apiKeyEnv } : {},
|
|
1361
1368
|
...apiKeyRef !== void 0 ? { apiKeyRef } : {},
|
|
1362
1369
|
...oauthProfile !== void 0 ? { oauthProfile } : {},
|
|
1363
|
-
...wireModels.length > 0 ? { wireModels } : {},
|
|
1364
1370
|
gateway: gatewayAnswer,
|
|
1365
1371
|
...defaults.lifecycle !== void 0 ? { lifecycle: defaults.lifecycle } : existing?.lifecycle !== void 0 ? { lifecycle: existing.lifecycle } : {},
|
|
1366
1372
|
...contextWindowChoice !== void 0 ? { contextWindow: contextWindowChoice } : {},
|
|
@@ -1381,6 +1387,7 @@ Selected runtime: ${runtime.id} (${support.summary})
|
|
|
1381
1387
|
printPlaintextCredentialWarning();
|
|
1382
1388
|
}
|
|
1383
1389
|
const probe = await runtimeProbe(runtime, descriptor);
|
|
1390
|
+
if (probe?.ok && probe.models) recordTargetModelSnapshot(descriptor, probe.models);
|
|
1384
1391
|
if (probe) {
|
|
1385
1392
|
process.stdout.write("\n");
|
|
1386
1393
|
for (const line of probeLines(descriptor, probe)) process.stdout.write(`${line}
|
|
@@ -1393,28 +1400,28 @@ Selected runtime: ${runtime.id} (${support.summary})
|
|
|
1393
1400
|
}
|
|
1394
1401
|
}
|
|
1395
1402
|
}
|
|
1396
|
-
const setOrchestrator = !isOrchestratorEligibleRuntime(runtime) ? false : defaults.setOrchestrator ? true : await askYesNo(rl, "use as orchestrator (chat) target?", !settings.
|
|
1397
|
-
const setWorkerDefault = defaults.setWorkerDefault ? true : await askYesNo(rl, "use as fleet default?", !settings.
|
|
1403
|
+
const setOrchestrator = !isOrchestratorEligibleRuntime(runtime) ? false : defaults.setOrchestrator ? true : await askYesNo(rl, "use as orchestrator (chat) target?", !settings.chat.target);
|
|
1404
|
+
const setWorkerDefault = defaults.setWorkerDefault ? true : await askYesNo(rl, "use as fleet default?", !settings.fleet.default.target);
|
|
1398
1405
|
const setBackground = !isOrchestratorEligibleRuntime(runtime) ? false : defaults.setBackground ? true : await askYesNo(rl, "use as background memory target?", false);
|
|
1399
1406
|
const orchestratorModel = setOrchestrator ? defaults.orchestratorModel ?? await askModelChoice(
|
|
1400
1407
|
rl,
|
|
1401
1408
|
"Orchestrator model",
|
|
1402
1409
|
wireModels,
|
|
1403
|
-
settings.
|
|
1410
|
+
settings.chat.target === targetId ? settings.chat.model ?? model : model
|
|
1404
1411
|
) : void 0;
|
|
1405
1412
|
if (orchestratorModel === null) return 0;
|
|
1406
1413
|
const workerModel = setWorkerDefault ? defaults.workerModel ?? await askModelChoice(
|
|
1407
1414
|
rl,
|
|
1408
1415
|
"Fleet model",
|
|
1409
1416
|
wireModels,
|
|
1410
|
-
settings.
|
|
1417
|
+
settings.fleet.default.target === targetId ? settings.fleet.default.model ?? model : model
|
|
1411
1418
|
) : void 0;
|
|
1412
1419
|
if (workerModel === null) return 0;
|
|
1413
1420
|
const backgroundModel = setBackground ? defaults.backgroundModel ?? await askModelChoice(
|
|
1414
1421
|
rl,
|
|
1415
1422
|
"Background memory model",
|
|
1416
1423
|
wireModels,
|
|
1417
|
-
settings.
|
|
1424
|
+
settings.context.memory.target === targetId ? settings.context.memory.model ?? model : model
|
|
1418
1425
|
) : void 0;
|
|
1419
1426
|
if (backgroundModel === null) return 0;
|
|
1420
1427
|
const applyWizardChoice = (target) => {
|
|
@@ -1459,13 +1466,13 @@ function runTargetRename(oldId, newId) {
|
|
|
1459
1466
|
const target = settings.targets.find((e) => e.id === oldId);
|
|
1460
1467
|
if (!target) return;
|
|
1461
1468
|
target.id = newId;
|
|
1462
|
-
if (settings.
|
|
1463
|
-
if (settings.
|
|
1464
|
-
if (settings.
|
|
1465
|
-
for (const profile of Object.values(settings.
|
|
1469
|
+
if (settings.chat.target === oldId) settings.chat.target = newId;
|
|
1470
|
+
if (settings.context.memory.target === oldId) settings.context.memory.target = newId;
|
|
1471
|
+
if (settings.fleet.default.target === oldId) settings.fleet.default.target = newId;
|
|
1472
|
+
for (const profile of Object.values(settings.fleet.profiles)) {
|
|
1466
1473
|
if (profile.target === oldId) profile.target = newId;
|
|
1467
1474
|
}
|
|
1468
|
-
settings.
|
|
1475
|
+
settings.chat.modelPicker.cycleSet = settings.chat.modelPicker.cycleSet.map((entry) => {
|
|
1469
1476
|
const [head, ...rest] = entry.split("/");
|
|
1470
1477
|
if (head !== oldId) return entry;
|
|
1471
1478
|
return rest.length === 0 ? newId : `${newId}/${rest.join("/")}`;
|
|
@@ -1548,4 +1555,4 @@ export {
|
|
|
1548
1555
|
runTargetRename,
|
|
1549
1556
|
runConfigureCommand
|
|
1550
1557
|
};
|
|
1551
|
-
//# sourceMappingURL=chunk-
|
|
1558
|
+
//# sourceMappingURL=chunk-Y45G3AXC.js.map
|
|
@@ -2,7 +2,7 @@ import { createRequire as __clioCreateRequire } from "node:module"; const requir
|
|
|
2
2
|
import {
|
|
3
3
|
GUARDRAIL_ENV_VARS,
|
|
4
4
|
resolveGuardrail
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-NLFAQR7Z.js";
|
|
6
6
|
import {
|
|
7
7
|
init_esm_shims
|
|
8
8
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -31,4 +31,4 @@ function armInternalDispatchDeadline(dispatch, runId, label, env = process.env,
|
|
|
31
31
|
export {
|
|
32
32
|
armInternalDispatchDeadline
|
|
33
33
|
};
|
|
34
|
-
//# sourceMappingURL=chunk-
|
|
34
|
+
//# sourceMappingURL=chunk-Y4CAGMM6.js.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
init_esm_shims
|
|
4
|
+
} from "./chunk-3R73A4XB.js";
|
|
5
|
+
|
|
6
|
+
// src/engine/tui-primitives.ts
|
|
7
|
+
init_esm_shims();
|
|
8
|
+
import { ProcessTerminal, TuiAltScreen, truncateToWidth, visibleWidth, wrapTextWithAnsi } from "@earendil-works/pi-tui";
|
|
9
|
+
|
|
10
|
+
export {
|
|
11
|
+
ProcessTerminal,
|
|
12
|
+
TuiAltScreen,
|
|
13
|
+
truncateToWidth,
|
|
14
|
+
visibleWidth,
|
|
15
|
+
wrapTextWithAnsi
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=chunk-YAKGTXEV.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
} from "./chunk-5B2AEOW5.js";
|
|
5
5
|
import {
|
|
6
6
|
ToolNames
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-K6BSR66V.js";
|
|
8
8
|
import {
|
|
9
9
|
init_esm_shims
|
|
10
10
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -34,4 +34,4 @@ var webFetchToolSurface = {
|
|
|
34
34
|
export {
|
|
35
35
|
webFetchToolSurface
|
|
36
36
|
};
|
|
37
|
-
//# sourceMappingURL=chunk-
|
|
37
|
+
//# sourceMappingURL=chunk-YPI3QQCF.js.map
|
|
@@ -3,6 +3,9 @@ import {
|
|
|
3
3
|
createRedactionTally,
|
|
4
4
|
redactSecretsText
|
|
5
5
|
} from "./chunk-4BJ5BYCE.js";
|
|
6
|
+
import {
|
|
7
|
+
normalizeClioCoderEventType
|
|
8
|
+
} from "./chunk-BTK3SSSK.js";
|
|
6
9
|
import {
|
|
7
10
|
processAlive,
|
|
8
11
|
processBirthToken
|
|
@@ -793,13 +796,53 @@ var TraceReader = class {
|
|
|
793
796
|
return this.db.prepare("SELECT * FROM phases WHERE run_id=? ORDER BY seq, phase_id").all(runId);
|
|
794
797
|
}
|
|
795
798
|
events(runId, afterRowid = 0, limit = TRACE_EVENT_POLL_LIMIT) {
|
|
796
|
-
|
|
799
|
+
const rows = this.db.prepare(`SELECT rowid, event_id, run_id, phase_id, parent_id, type, name, payload_json,
|
|
797
800
|
tokens, started_at, ended_at FROM events
|
|
798
801
|
WHERE run_id = ? AND rowid > ? ORDER BY rowid LIMIT ?`).all(
|
|
799
802
|
runId,
|
|
800
803
|
Math.max(0, Math.trunc(afterRowid)),
|
|
801
804
|
clampInt(limit, 1, TRACE_EVENT_POLL_LIMIT)
|
|
802
805
|
);
|
|
806
|
+
return rows.map((row) => ({ ...row, type: normalizeClioCoderEventType(row.type) }));
|
|
807
|
+
}
|
|
808
|
+
/**
|
|
809
|
+
* Per-kind event tallies for one run.
|
|
810
|
+
*
|
|
811
|
+
* Aggregated in SQL rather than by reading rows, so `payload_json` and the
|
|
812
|
+
* free-form event name are never loaded at all. That is the point: a caller
|
|
813
|
+
* that only ever wants shapes should not be holding the payloads in memory
|
|
814
|
+
* on the way to counting them.
|
|
815
|
+
*/
|
|
816
|
+
eventKindCounts(runId) {
|
|
817
|
+
const rows = this.db.prepare("SELECT type, COUNT(*) AS count FROM events WHERE run_id=? GROUP BY type ORDER BY count DESC, type").all(runId);
|
|
818
|
+
const counts = /* @__PURE__ */ new Map();
|
|
819
|
+
for (const row of rows) {
|
|
820
|
+
const type = normalizeClioCoderEventType(row.type);
|
|
821
|
+
counts.set(type, (counts.get(type) ?? 0) + row.count);
|
|
822
|
+
}
|
|
823
|
+
return [...counts].map(([type, count]) => ({ type, count })).sort((left, right) => right.count - left.count || left.type.localeCompare(right.type));
|
|
824
|
+
}
|
|
825
|
+
/** Total events and the wall span they cover, without reading one of them. */
|
|
826
|
+
eventSpan(runId) {
|
|
827
|
+
const row = this.db.prepare(
|
|
828
|
+
`SELECT COUNT(*) AS total, MIN(started_at) AS firstAt,
|
|
829
|
+
MAX(COALESCE(ended_at, started_at)) AS lastAt FROM events WHERE run_id=?`
|
|
830
|
+
).get(runId);
|
|
831
|
+
return row ?? { total: 0, firstAt: null, lastAt: null };
|
|
832
|
+
}
|
|
833
|
+
/**
|
|
834
|
+
* Per-kind process tallies for one run.
|
|
835
|
+
*
|
|
836
|
+
* Same reason as {@link eventKindCounts}, and more sharply: a process row
|
|
837
|
+
* carries the command line, the pid, and the host, none of which a shape
|
|
838
|
+
* count needs.
|
|
839
|
+
*/
|
|
840
|
+
processKindCounts(runId) {
|
|
841
|
+
return this.db.prepare(
|
|
842
|
+
`SELECT kind, COUNT(*) AS total,
|
|
843
|
+
SUM(CASE WHEN ended_at IS NULL THEN 1 ELSE 0 END) AS running
|
|
844
|
+
FROM processes WHERE run_id=? GROUP BY kind ORDER BY total DESC, kind`
|
|
845
|
+
).all(runId);
|
|
803
846
|
}
|
|
804
847
|
processes(runId) {
|
|
805
848
|
return this.db.prepare("SELECT * FROM processes WHERE run_id=? ORDER BY ended_at IS NOT NULL, id").all(runId);
|
|
@@ -811,12 +854,12 @@ var TraceReader = class {
|
|
|
811
854
|
return this.db.prepare("SELECT * FROM envelopes WHERE run_id=? ORDER BY created_at, envelope_id").all(runId);
|
|
812
855
|
}
|
|
813
856
|
select(sql) {
|
|
814
|
-
|
|
857
|
+
assertTraceSelectOnly(sql);
|
|
815
858
|
return this.db.prepare(sql).all();
|
|
816
859
|
}
|
|
817
860
|
};
|
|
818
861
|
function createDispatchTraceMirror(path, options = {}) {
|
|
819
|
-
const warn = options.warn ?? ((message) => process.stderr.write(`[clio:trace] ${message}
|
|
862
|
+
const warn = options.warn ?? ((message) => process.stderr.write(`[clio-coder:trace] ${message}
|
|
820
863
|
`));
|
|
821
864
|
const now = options.now ?? (() => (/* @__PURE__ */ new Date()).toISOString());
|
|
822
865
|
let store = null;
|
|
@@ -909,7 +952,7 @@ function createDispatchTraceMirror(path, options = {}) {
|
|
|
909
952
|
function recordProgress(store, payload, starts, seen, contextWindows, gateRuns, at) {
|
|
910
953
|
if (!isRecord(payload.event)) return;
|
|
911
954
|
const event = payload.event;
|
|
912
|
-
const type = typeof event.type === "string" ? event.type : "progress";
|
|
955
|
+
const type = typeof event.type === "string" ? normalizeClioCoderEventType(event.type) : "progress";
|
|
913
956
|
const toolCallId = stringValue(event.toolCallId) ?? stringValue(event.tool_call_id);
|
|
914
957
|
if (type === "message_end" && isRecord(event.message) && event.message.role === "assistant" && event.message.stopReason !== "error" && event.message.stopReason !== "aborted" && isRecord(event.message.usage)) {
|
|
915
958
|
const usage = event.message.usage;
|
|
@@ -931,7 +974,7 @@ function recordProgress(store, payload, starts, seen, contextWindows, gateRuns,
|
|
|
931
974
|
});
|
|
932
975
|
}
|
|
933
976
|
}
|
|
934
|
-
if ((type === "tool_execution_start" || type === "
|
|
977
|
+
if ((type === "tool_execution_start" || type === "clio_coder_tool_start") && toolCallId !== null) {
|
|
935
978
|
starts.set(`${payload.runId}:${toolCallId}`, {
|
|
936
979
|
toolCallId,
|
|
937
980
|
tool: stringValue(event.toolName) ?? stringValue(event.tool) ?? "tool",
|
|
@@ -940,7 +983,7 @@ function recordProgress(store, payload, starts, seen, contextWindows, gateRuns,
|
|
|
940
983
|
});
|
|
941
984
|
return;
|
|
942
985
|
}
|
|
943
|
-
if ((type === "tool_execution_end" || type === "
|
|
986
|
+
if ((type === "tool_execution_end" || type === "clio_coder_tool_finish") && toolCallId !== null) {
|
|
944
987
|
const key = `${payload.runId}:${toolCallId}`;
|
|
945
988
|
const start = starts.get(key);
|
|
946
989
|
const duration = finiteNonNegative(event.durationMs);
|
|
@@ -1009,8 +1052,8 @@ function recordFailure(store, input, at) {
|
|
|
1009
1052
|
function isCriticalTraceEvent(channel, raw) {
|
|
1010
1053
|
if (channel !== "dispatch.progress") return true;
|
|
1011
1054
|
if (!isRecord(raw) || !isRecord(raw.event)) return false;
|
|
1012
|
-
const type = raw.event.type;
|
|
1013
|
-
return type === "tool_execution_start" || type === "tool_execution_end" || type === "
|
|
1055
|
+
const type = typeof raw.event.type === "string" ? normalizeClioCoderEventType(raw.event.type) : raw.event.type;
|
|
1056
|
+
return type === "tool_execution_start" || type === "tool_execution_end" || type === "clio_coder_tool_start" || type === "clio_coder_tool_finish" || type === "message_end" || type === "attempt_start";
|
|
1014
1057
|
}
|
|
1015
1058
|
function projectProgressPayload(type, event) {
|
|
1016
1059
|
if (type === "message_end") {
|
|
@@ -1099,7 +1142,7 @@ function traceText(value, maxChars) {
|
|
|
1099
1142
|
function sha256(value) {
|
|
1100
1143
|
return createHash("sha256").update(value, "utf8").digest("hex");
|
|
1101
1144
|
}
|
|
1102
|
-
function
|
|
1145
|
+
function assertTraceSelectOnly(sql) {
|
|
1103
1146
|
const trimmed = sql.trim();
|
|
1104
1147
|
if (!/^(SELECT|WITH)\b/i.test(trimmed)) throw new Error("trace sql accepts SELECT or read-only WITH queries only");
|
|
1105
1148
|
if (trimmed.includes(";")) throw new Error("trace sql accepts exactly one statement");
|
|
@@ -1128,6 +1171,7 @@ export {
|
|
|
1128
1171
|
resolveTraceRetentionPolicy,
|
|
1129
1172
|
TraceStore,
|
|
1130
1173
|
TraceReader,
|
|
1131
|
-
createDispatchTraceMirror
|
|
1174
|
+
createDispatchTraceMirror,
|
|
1175
|
+
assertTraceSelectOnly
|
|
1132
1176
|
};
|
|
1133
|
-
//# sourceMappingURL=chunk-
|
|
1177
|
+
//# sourceMappingURL=chunk-ZAZB4JMW.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
loadSkills
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-HUAS7ITX.js";
|
|
5
5
|
import {
|
|
6
6
|
parseFrontmatter
|
|
7
7
|
} from "./chunk-RKKLTLYB.js";
|
|
8
8
|
import {
|
|
9
9
|
enabledExtensionResourceRoots
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-SUW5DORT.js";
|
|
11
11
|
import {
|
|
12
12
|
assertAgentSpecPolicy,
|
|
13
13
|
isAgentAudience,
|
|
@@ -19,13 +19,13 @@ import {
|
|
|
19
19
|
isShadowAgent,
|
|
20
20
|
normalizeAgentSpec,
|
|
21
21
|
parseResultContract
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-IG7BCQBA.js";
|
|
23
23
|
import {
|
|
24
24
|
resolvePackageRoot
|
|
25
25
|
} from "./chunk-IWHMRKLL.js";
|
|
26
26
|
import {
|
|
27
27
|
clioConfigDir
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-BYP5D4HI.js";
|
|
29
29
|
import {
|
|
30
30
|
init_esm_shims
|
|
31
31
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -316,7 +316,7 @@ function loadRecipesFromDir(source, diagnostics = []) {
|
|
|
316
316
|
if (source.source === "builtin") throw error;
|
|
317
317
|
const message = error instanceof Error ? error.message : String(error);
|
|
318
318
|
diagnostics.push({ source: source.source, filepath, message });
|
|
319
|
-
process.stderr.write(`[clio:agents] quarantine path=${filepath} source=${source.source} reason=${message}
|
|
319
|
+
process.stderr.write(`[clio-coder:agents] quarantine path=${filepath} source=${source.source} reason=${message}
|
|
320
320
|
`);
|
|
321
321
|
}
|
|
322
322
|
}
|
|
@@ -334,27 +334,27 @@ function mergeRecipes(...sources) {
|
|
|
334
334
|
for (const group of sources) {
|
|
335
335
|
for (const recipe of group) {
|
|
336
336
|
if (recipe.source !== "builtin" && RESERVED_CUSTOM_AGENT_IDS.has(recipe.id)) {
|
|
337
|
-
process.stderr.write(`[clio:agents] ignore id=${recipe.id} by=${recipe.source} reason=reserved-agent-id
|
|
337
|
+
process.stderr.write(`[clio-coder:agents] ignore id=${recipe.id} by=${recipe.source} reason=reserved-agent-id
|
|
338
338
|
`);
|
|
339
339
|
continue;
|
|
340
340
|
}
|
|
341
341
|
const builtin = builtinById.get(recipe.id);
|
|
342
342
|
if (recipe.source === "extension" && builtin) {
|
|
343
|
-
process.stderr.write(`[clio:agents] ignore override id=${recipe.id} by=extension reason=reserved-builtin
|
|
343
|
+
process.stderr.write(`[clio-coder:agents] ignore override id=${recipe.id} by=extension reason=reserved-builtin
|
|
344
344
|
`);
|
|
345
345
|
continue;
|
|
346
346
|
}
|
|
347
347
|
if (recipe.source === "user" && builtin && isShadowAgent(normalizeAgentSpec(builtin))) {
|
|
348
|
-
process.stderr.write(`[clio:agents] ignore override id=${recipe.id} by=user reason=reserved-shadow
|
|
348
|
+
process.stderr.write(`[clio-coder:agents] ignore override id=${recipe.id} by=user reason=reserved-shadow
|
|
349
349
|
`);
|
|
350
350
|
continue;
|
|
351
351
|
}
|
|
352
352
|
if (recipe.source === "project" && builtin) {
|
|
353
|
-
process.stderr.write(`[clio:agents] ignore override id=${recipe.id} by=project reason=reserved-builtin
|
|
353
|
+
process.stderr.write(`[clio-coder:agents] ignore override id=${recipe.id} by=project reason=reserved-builtin
|
|
354
354
|
`);
|
|
355
355
|
continue;
|
|
356
356
|
}
|
|
357
|
-
if (byId.has(recipe.id)) process.stderr.write(`[clio:agents] override id=${recipe.id} by=${recipe.source}
|
|
357
|
+
if (byId.has(recipe.id)) process.stderr.write(`[clio-coder:agents] override id=${recipe.id} by=${recipe.source}
|
|
358
358
|
`);
|
|
359
359
|
byId.set(recipe.id, recipe);
|
|
360
360
|
}
|
|
@@ -396,4 +396,4 @@ export {
|
|
|
396
396
|
parseAgentRecipeSchema,
|
|
397
397
|
discoverAgentRecipes
|
|
398
398
|
};
|
|
399
|
-
//# sourceMappingURL=chunk-
|
|
399
|
+
//# sourceMappingURL=chunk-ZJLUDYFY.js.map
|
|
@@ -12,7 +12,7 @@ function isBootTraceEnabled() {
|
|
|
12
12
|
function formatBootTrace(phase, detail) {
|
|
13
13
|
if (!isBootTraceEnabled()) return null;
|
|
14
14
|
const suffix = detail !== void 0 && detail.length > 0 ? ` (${detail})` : "";
|
|
15
|
-
return `[clio:boot] +${performance.now().toFixed(1)}ms ${phase}${suffix}
|
|
15
|
+
return `[clio-coder:boot] +${performance.now().toFixed(1)}ms ${phase}${suffix}
|
|
16
16
|
`;
|
|
17
17
|
}
|
|
18
18
|
function traceBoot(phase, detail) {
|
|
@@ -27,4 +27,4 @@ export {
|
|
|
27
27
|
formatBootTrace,
|
|
28
28
|
traceBoot
|
|
29
29
|
};
|
|
30
|
-
//# sourceMappingURL=chunk-
|
|
30
|
+
//# sourceMappingURL=chunk-ZTJUVLTU.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
printError
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-VPKWYKEY.js";
|
|
5
5
|
import {
|
|
6
6
|
source_default
|
|
7
7
|
} from "./chunk-5TSRNF4G.js";
|
|
8
8
|
import {
|
|
9
9
|
authStoragePath
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-WNP7O5WZ.js";
|
|
11
11
|
import {
|
|
12
12
|
init_esm_shims
|
|
13
13
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -35,4 +35,4 @@ export {
|
|
|
35
35
|
printPlaintextCredentialWarning,
|
|
36
36
|
credentialWriteFailed
|
|
37
37
|
};
|
|
38
|
-
//# sourceMappingURL=chunk-
|
|
38
|
+
//# sourceMappingURL=chunk-ZW55JB7N.js.map
|