@iowarp/clio-coder 0.4.2 → 0.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +35 -0
- package/CONTRIBUTING.md +86 -19
- package/README.md +35 -6
- package/dist/{acp-TMDQZDIG.js → acp-H2NGRPWO.js} +11 -11
- package/dist/{agents-5N5NG3XG.js → agents-TL5LLUQP.js} +54 -53
- package/dist/assets/codewiki.json +1 -1
- package/dist/{auth-Z5CCBXKQ.js → auth-E5SW4HMS.js} +19 -16
- package/dist/{builtins-K6TNDT24.js → builtins-IA7V7FUC.js} +9 -4
- package/dist/{chunk-ZW4HH5JJ.js → chunk-2APPQIER.js} +6 -6
- package/dist/{chunk-72GZI5EV.js → chunk-2JH2WHGE.js} +2 -2
- package/dist/{chunk-UBRFI4HS.js → chunk-2UG5F4C5.js} +127 -47
- package/dist/{chunk-UH632ZYL.js → chunk-2UH2KFUP.js} +2 -2
- package/dist/{chunk-3F7VUY77.js → chunk-2VIKGWFZ.js} +2 -2
- package/dist/{chunk-I66EAJFY.js → chunk-2WZ546HR.js} +267 -232
- package/dist/{chunk-RKSR6VSF.js → chunk-4IUZQIJ3.js} +29 -1
- package/dist/{chunk-2X4RYJTJ.js → chunk-4UVU7BJ5.js} +2 -2
- package/dist/{chunk-M2DAX4F6.js → chunk-4WR7VSYB.js} +2 -2
- package/dist/{chunk-5KW52TEP.js → chunk-54CBCGIR.js} +5 -5
- package/dist/{chunk-3KIPBMUA.js → chunk-5ICU3EUH.js} +2 -2
- package/dist/{chunk-77QIVUZB.js → chunk-5MEZN6CB.js} +4 -4
- package/dist/{chunk-O42A54GG.js → chunk-5OIVVPHF.js} +2 -2
- package/dist/{chunk-LJID3DYZ.js → chunk-64I3JVYM.js} +2 -2
- package/dist/{chunk-4JDLP6ZS.js → chunk-6PTFB5VS.js} +7 -7
- package/dist/{chunk-VN3SHNBN.js → chunk-7DICMOS6.js} +2 -2
- package/dist/{chunk-HLAFFSEK.js → chunk-7DRAWPTZ.js} +2 -2
- package/dist/chunk-7E7I3WLS.js +3762 -0
- package/dist/{chunk-YJISEZKC.js → chunk-7ZYNNDKC.js} +6 -6
- package/dist/{chunk-I66ZTYNP.js → chunk-AF4YM7Z4.js} +236 -101
- package/dist/{chunk-2HFQNRV3.js → chunk-AX2THNSA.js} +12 -12
- package/dist/{chunk-PGF63K6I.js → chunk-B4OAX3SI.js} +65 -3
- package/dist/{chunk-W6NIE6OW.js → chunk-B4VEBZKF.js} +3 -3
- package/dist/{chunk-JBCS7CRR.js → chunk-BEPZRGGU.js} +10 -10
- package/dist/{chunk-XGDPUNND.js → chunk-CE5AX47J.js} +2 -2
- package/dist/{chunk-I64IFBLB.js → chunk-DWUOQKRU.js} +17 -10
- package/dist/{chunk-DZAW46HP.js → chunk-E3TPLWFX.js} +3 -3
- package/dist/{chunk-HIICAHCJ.js → chunk-EKCHAPYA.js} +2 -2
- package/dist/{chunk-XE3PCIXH.js → chunk-F5JHEYZM.js} +7 -7
- package/dist/{chunk-5PFYMY2V.js → chunk-FTMGRKEF.js} +2 -2
- package/dist/{chunk-ZNT2M6TG.js → chunk-G76U63X4.js} +17 -17
- package/dist/{chunk-34BHNEE3.js → chunk-GHS5EBTQ.js} +58 -7
- package/dist/{chunk-2NHR3NAY.js → chunk-GI7YYQ3F.js} +40 -34
- package/dist/{chunk-DYHAXKHD.js → chunk-GWZNEVM2.js} +12 -8
- package/dist/chunk-GYV6VZOC.js +26 -0
- package/dist/{chunk-MQXIVJ35.js → chunk-HAXOFFRH.js} +5 -5
- package/dist/{chunk-W4YEMFBX.js → chunk-HEQY7ZFI.js} +2 -2
- package/dist/{chunk-IKOZFYBN.js → chunk-I7ZPNEJM.js} +145 -102
- package/dist/{chunk-WNP7O5WZ.js → chunk-ID64D7PE.js} +4 -4
- package/dist/{chunk-XQRY4DTA.js → chunk-IGLP3ODT.js} +10 -10
- package/dist/chunk-IJNZMHLA.js +101 -0
- package/dist/{chunk-JWJGP5DQ.js → chunk-INY6HTFL.js} +7 -7
- package/dist/{chunk-PBP4B7XR.js → chunk-IUE3Y34X.js} +2 -2
- package/dist/{chunk-B74PXLU7.js → chunk-IWT4SF4R.js} +3 -3
- package/dist/{chunk-B7HM5Z7T.js → chunk-JDAY6FIL.js} +5 -5
- package/dist/{chunk-PJX3WQUQ.js → chunk-JEQ3XTHC.js} +2 -2
- package/dist/{chunk-FSP7CMNU.js → chunk-JGRC33J2.js} +50 -4
- package/dist/{chunk-X7IARSHT.js → chunk-JKKCYP3C.js} +9 -9
- package/dist/{chunk-HJWWJ6IL.js → chunk-JSC3U7TI.js} +16 -4
- package/dist/{chunk-SSEYRH53.js → chunk-KK4JZPBQ.js} +19 -140
- package/dist/{chunk-IHXBNWMM.js → chunk-KXDSS5WJ.js} +7 -3
- package/dist/{chunk-Q4XWMHX6.js → chunk-L47TF46W.js} +2 -2
- package/dist/{chunk-O3YUNJZ2.js → chunk-LDJG7DW3.js} +81 -24
- package/dist/{chunk-CDNVLKUX.js → chunk-LLDJM5XK.js} +13 -7
- package/dist/{chunk-F2I26BDK.js → chunk-MUW2BDDH.js} +4 -4
- package/dist/{chunk-HKMD33FO.js → chunk-MWUZBSAQ.js} +79 -76
- package/dist/{chunk-QQLGQY2A.js → chunk-N2Z7HLVY.js} +20 -20
- package/dist/{chunk-DZEK6CJN.js → chunk-NIQJ66N4.js} +19 -19
- package/dist/{chunk-CWVRRIEI.js → chunk-NZMNUPZZ.js} +2 -2
- package/dist/{chunk-462T4EGZ.js → chunk-O5CVSAG5.js} +2 -2
- package/dist/{chunk-TPEQIQIE.js → chunk-OML5D5V5.js} +8 -8
- package/dist/{chunk-IKSLQ4XV.js → chunk-PAJQJ7BS.js} +558 -216
- package/dist/{chunk-ZW55JB7N.js → chunk-PUVDKJ2Y.js} +2 -2
- package/dist/{chunk-UH347SHR.js → chunk-QWGDJJYJ.js} +11 -11
- package/dist/chunk-R6Q67RJH.js +134 -0
- package/dist/{chunk-CRFOIAX3.js → chunk-RRNP2ANY.js} +6 -6
- package/dist/{chunk-IDNA72AH.js → chunk-RSJ25QSL.js} +2 -2
- package/dist/chunk-SKHCAU7K.js +385 -0
- package/dist/{chunk-RLYRBIYQ.js → chunk-TM6LQDI3.js} +20 -12
- package/dist/chunk-UOIZ7DA4.js +41 -0
- package/dist/{chunk-P75RZCJW.js → chunk-UPZU6GE4.js} +3 -3
- package/dist/{chunk-MCMZMDAC.js → chunk-V2ANDPVT.js} +4 -4
- package/dist/{chunk-AK5XEFVZ.js → chunk-VA5FNYMT.js} +26 -13
- package/dist/{chunk-IMXMHHMQ.js → chunk-VW6DOEDG.js} +332 -57
- package/dist/{chunk-XOXV5GKE.js → chunk-W6RRQCPQ.js} +16 -7
- package/dist/{chunk-CYZW7JHJ.js → chunk-WBKFA554.js} +8 -8
- package/dist/{chunk-BO7Y52RY.js → chunk-WCXUNS7U.js} +7 -7
- package/dist/{chunk-ZGNYYXQ6.js → chunk-WRBAGUNF.js} +3 -3
- package/dist/{chunk-FVDGR2ZL.js → chunk-XIVNBFZS.js} +85 -30
- package/dist/{chunk-BYMNWQ7O.js → chunk-XPWWI35G.js} +299 -58
- package/dist/{chunk-KPXDY6QF.js → chunk-XRZT5WY5.js} +2 -2
- package/dist/{chunk-AZ4WMN4W.js → chunk-Y3CBHOR6.js} +2 -2
- package/dist/{chunk-VXMFAE2W.js → chunk-YPC6ZR5L.js} +19 -6
- package/dist/{chunk-54ODD65L.js → chunk-YQWYVTMC.js} +4 -4
- package/dist/{chunk-M2WXEHER.js → chunk-ZA4VCIGV.js} +2 -2
- package/dist/{chunk-7BHIY2MW.js → chunk-ZDN3Y73Y.js} +6 -6
- package/dist/{chunk-E7GT7O5N.js → chunk-ZWPRK62N.js} +7 -4
- package/dist/cli/index.js +38 -37
- package/dist/{clio-7VB377CC.js → clio-CMMK4KRR.js} +7 -7
- package/dist/{code-nav-YVLCYA7V.js → code-nav-MDZNQS33.js} +7 -7
- package/dist/{components-UBWCQSRW.js → components-UCUQ4QXW.js} +4 -4
- package/dist/{config-4HVOS65E.js → config-SVM5P5YI.js} +76 -74
- package/dist/{configure-PIWO7B24.js → configure-LE3IK2TJ.js} +26 -24
- package/dist/{context-IYEHL3WQ.js → context-2OHRKS42.js} +66 -63
- package/dist/{context-N6ZE3LGJ.js → context-E3VC7RX5.js} +15 -11
- package/dist/{context-KQYIWPWT.js → context-VNCR7KAG.js} +60 -45
- package/dist/{context-clear-G4OGZJDS.js → context-clear-BW4O37TG.js} +61 -59
- package/dist/context-map-COB37XXN.js +505 -0
- package/dist/{context-working-set-BWLF6LJP.js → context-working-set-VDS25HXZ.js} +17 -16
- package/dist/{dispatch-runner-2QQAITS3.js → dispatch-runner-5AHT53RF.js} +85 -74
- package/dist/{doctor-LHBD36VU.js → doctor-WNNVO6FY.js} +37 -37
- package/dist/{eval-C45FYRJ6.js → eval-7G7SGAYO.js} +285 -114
- package/dist/{eval-inventory-6DEJPLBF.js → eval-inventory-Y6QRFOH5.js} +4 -4
- package/dist/{evidence-6SHONYAF.js → evidence-VD6736FQ.js} +63 -62
- package/dist/{evolve-KRKMV72X.js → evolve-AL3NGVRL.js} +62 -61
- package/dist/{extensions-KPZ2UHBB.js → extensions-MOVJ32NM.js} +7 -7
- package/dist/{fleet-IVTCKDHT.js → fleet-QZHUMAGI.js} +110 -108
- package/dist/{fleet-commands-EDWL3IT7.js → fleet-commands-BAYT5FJZ.js} +10 -10
- package/dist/{fleet-decisions-YP3YEFGK.js → fleet-decisions-IREVMRU4.js} +7 -6
- package/dist/{fleet-graph-ZFWKHY2M.js → fleet-graph-YCTT3HTI.js} +19 -18
- package/dist/{fleet-inspect-FVUNCBML.js → fleet-inspect-QVJTDAVB.js} +55 -54
- package/dist/{fleet-preflight-UN5XED4R.js → fleet-preflight-25QAFPK4.js} +4 -4
- package/dist/{fleet-validate-XOWC4HSX.js → fleet-validate-5O57AAJ7.js} +23 -22
- package/dist/{fleet-verify-UN3SODEL.js → fleet-verify-CPH2W2T6.js} +56 -55
- package/dist/{fleet-view-TWHJKCN6.js → fleet-view-SWBR3VGQ.js} +55 -54
- package/dist/{init-T2QORQ3Y.js → init-J477LKZH.js} +78 -76
- package/dist/{interop-IN5I2A66.js → interop-3FCM6XLG.js} +11 -11
- package/dist/{library-LSCATDLZ.js → library-QUQEIUG6.js} +28 -27
- package/dist/{memory-HYOKAGGJ.js → memory-SGGSEP65.js} +64 -63
- package/dist/{models-2GPMFYCM.js → models-HEKUAXXK.js} +49 -43
- package/dist/{monitor-E4ASVUJH.js → monitor-HKU57TYQ.js} +61 -60
- package/dist/{orchestrator-DDMPR3PY.js → orchestrator-VDFAEFAI.js} +919 -546
- package/dist/{panes-E3RUXOW5.js → panes-DN2SSFOH.js} +3 -3
- package/dist/{panes-IXKLOKA2.js → panes-TALGNPZT.js} +8 -8
- package/dist/{paths-L7LGY6RN.js → paths-NBMFAIEZ.js} +5 -5
- package/dist/reset-EAJFFJVB.js +344 -0
- package/dist/{resources-OTRSN34L.js → resources-OVKSEFVE.js} +27 -20
- package/dist/{run-5DEYH5QK.js → run-7DP7ZF2J.js} +113 -109
- package/dist/{share-IHWTLO3M.js → share-WML67FT3.js} +26 -25
- package/dist/{skills-IYMXMKW4.js → skills-SG662R2K.js} +39 -31
- package/dist/{skills-eval-DROHSJAR.js → skills-eval-VVZEUU46.js} +74 -73
- package/dist/{skills-inventory-D7X4L4ZX.js → skills-inventory-I2E23GET.js} +21 -20
- package/dist/{slash-commands-QBM7UZ3B.js → slash-commands-S7MBJDQK.js} +35 -34
- package/dist/{steer-Z5DO23FJ.js → steer-2LQOMCPB.js} +3 -3
- package/dist/{support-U7QOWY26.js → support-CC2UJBJ6.js} +6 -6
- package/dist/{targets-P2FUC4IL.js → targets-4QC3HIEW.js} +48 -45
- package/dist/{terminal-lease-YREJ3JX2.js → terminal-lease-TUHIJ6Y2.js} +2 -2
- package/dist/{tools-5B7RO6MV.js → tools-TFGJICCU.js} +8 -8
- package/dist/{trace-YMGMUM6A.js → trace-FXMXUZUF.js} +7 -7
- package/dist/uninstall-5PEVOE5B.js +408 -0
- package/dist/upgrade-M4WXY6KN.js +303 -0
- package/dist/{usage-ME5MPXGX.js → usage-N7ZNVLEM.js} +147 -102
- package/dist/{verifiers-BVZ7IWOO.js → verifiers-DJTP4XX6.js} +15 -15
- package/dist/{verify-5K7ZKQFC.js → verify-RWE4PPEK.js} +9 -9
- package/dist/{wiki-generate-F5W5QTYY.js → wiki-generate-C7IQOXSP.js} +84 -82
- package/dist/{with-panes-BYOJCLAM.js → with-panes-4GCGSL7J.js} +9 -9
- package/dist/worker/entry.js +61 -60
- package/docs/architecture/artifact-placement.md +1 -0
- package/docs/architecture/artifact-versions.md +1 -1
- package/docs/architecture/context-engine.md +4 -0
- package/docs/architecture/middleware-and-components.md +1 -1
- package/docs/architecture/model-catalog.md +21 -10
- package/docs/architecture/observability.md +12 -1
- package/docs/architecture/prompt-envelope-and-tools.md +2 -0
- package/docs/architecture/provider-adapter-cookbook.md +63 -0
- package/docs/architecture/safety-model.md +15 -5
- package/docs/guide/built-in-agents.md +17 -3
- package/docs/guide/commands-and-modes.md +1 -1
- package/docs/guide/configuration-and-targets.md +97 -9
- package/docs/guide/configuration-reference.md +7 -2
- package/docs/guide/environment-variables.md +2 -0
- package/docs/guide/installation-and-lifecycle.md +37 -4
- package/docs/guide/proactive-memory.md +66 -55
- package/docs/guide/skills-marketplace.md +18 -0
- package/docs/process/development-pipeline.md +34 -1
- package/docs/process/eval-runner.md +67 -3
- package/evals/behavioral-model.yaml +3 -2
- package/package.json +2 -2
- package/skills/README.md +7 -5
- package/skills/coding/ast-grep/SKILL.md +101 -30
- package/skills/coding/ast-grep/evals.md +26 -0
- package/skills/coding/coding-standards/SKILL.md +40 -5
- package/skills/coding/coding-standards/evals.md +23 -0
- package/skills/coding/prototype/SKILL.md +87 -28
- package/skills/coding/prototype/evals.md +19 -0
- package/skills/coding/tdd/SKILL.md +80 -53
- package/skills/coding/tdd/evals.md +20 -0
- package/skills/context/context-handoff/SKILL.md +43 -2
- package/skills/context/context-handoff/evals.md +44 -0
- package/skills/context/context-prime/SKILL.md +45 -15
- package/skills/context/context-prime/evals.md +45 -0
- package/skills/git/branch-closeout/SKILL.md +132 -0
- package/skills/git/branch-closeout/evals.md +133 -0
- package/skills/git/branch-closeout/references/closeout-checklist.md +81 -0
- package/skills/git/file-ticket/SKILL.md +77 -63
- package/skills/git/file-ticket/assets/issue-template.md +22 -0
- package/skills/git/file-ticket/evals.md +31 -26
- package/skills/git/file-ticket/references/issue-discovery.md +49 -0
- package/skills/git/fix-issue/SKILL.md +87 -64
- package/skills/git/fix-issue/evals.md +35 -31
- package/skills/git/fix-issue/references/diagnosis-and-rca.md +46 -0
- package/skills/git/resolve-merge-conflicts/SKILL.md +100 -51
- package/skills/git/resolve-merge-conflicts/evals.md +52 -25
- package/skills/git/resolve-merge-conflicts/references/conflict-matrix.md +126 -0
- package/skills/git/ship/SKILL.md +103 -67
- package/skills/git/ship/assets/pr-template.md +21 -0
- package/skills/git/ship/evals.md +44 -28
- package/skills/git/ship/references/remote-and-branch-policy.md +62 -0
- package/skills/git/worktree-create/SKILL.md +80 -50
- package/skills/git/worktree-create/evals.md +40 -33
- package/skills/git/worktree-create/references/worktree-setup.md +62 -66
- package/skills/git/worktree-merge/SKILL.md +112 -65
- package/skills/git/worktree-merge/evals.md +42 -34
- package/skills/git/worktree-merge/references/merge-strategies.md +52 -0
- package/skills/planning/archify/SKILL.md +196 -0
- package/skills/planning/archify/evals.md +65 -0
- package/skills/planning/architecture/SKILL.md +61 -12
- package/skills/planning/architecture/evals.md +65 -0
- package/skills/planning/backlog/SKILL.md +130 -14
- package/skills/planning/backlog/evals.md +142 -0
- package/skills/planning/prd/SKILL.md +46 -6
- package/skills/planning/prd/evals.md +54 -0
- package/skills/planning/product-intent/SKILL.md +57 -2
- package/skills/planning/product-intent/evals.md +70 -0
- package/skills/planning/tech-spec/SKILL.md +53 -2
- package/skills/planning/tech-spec/evals.md +73 -0
- package/skills/registry.yaml +58 -50
- package/skills/remote.yaml +13 -0
- package/skills/research/arxiv-literature/SKILL.md +76 -18
- package/skills/research/arxiv-literature/evals.md +50 -0
- package/skills/research/experiment-protocol/SKILL.md +20 -1
- package/skills/research/experiment-protocol/evals.md +23 -0
- package/skills/research/scientific-debugging/SKILL.md +23 -1
- package/skills/research/scientific-debugging/evals.md +18 -0
- package/skills/research/scientific-modernization/SKILL.md +26 -1
- package/skills/research/scientific-modernization/evals.md +27 -0
- package/skills/skill-marketplace.json +63 -28
- package/skills/workflow/cut-it/SKILL.md +65 -5
- package/skills/workflow/cut-it/evals.md +101 -0
- package/skills/workflow/design-council/SKILL.md +117 -27
- package/skills/workflow/design-council/evals.md +161 -0
- package/skills/workflow/grill-me/SKILL.md +86 -10
- package/skills/workflow/grill-me/evals.md +153 -0
- package/skills/workflow/workflow-distiller/SKILL.md +76 -17
- package/skills/workflow/workflow-distiller/evals.md +118 -0
- package/src/cli/configure-interop.ts +105 -13
- package/src/cli/configure-oauth.ts +57 -0
- package/src/cli/configure-onboarding.ts +980 -0
- package/src/cli/configure-target.ts +594 -0
- package/src/cli/configure.ts +1082 -528
- package/src/cli/context-map.ts +114 -0
- package/src/cli/context.ts +4 -0
- package/src/cli/index.ts +1 -0
- package/src/cli/lifecycle-presenter.ts +436 -0
- package/src/cli/models.ts +10 -2
- package/src/cli/modes/print.ts +5 -1
- package/src/cli/reset.ts +228 -106
- package/src/cli/run.ts +7 -2
- package/src/cli/select.ts +664 -0
- package/src/cli/skills.ts +9 -2
- package/src/cli/targets.ts +3 -0
- package/src/cli/uninstall.ts +233 -165
- package/src/cli/upgrade.ts +204 -149
- package/src/cli/usage.ts +86 -27
- package/src/cli/validate-model.ts +3 -3
- package/src/core/config.ts +56 -0
- package/src/core/external-diagnostic.ts +44 -0
- package/src/core/gateway-routing.ts +157 -0
- package/src/core/safe-exec.ts +17 -2
- package/src/core/skill-activation.ts +89 -2
- package/src/domains/agents/builtins/world-knowledge.md +31 -0
- package/src/domains/agents/catalog.ts +1 -1
- package/src/domains/agents/result-contract.ts +70 -0
- package/src/domains/context/wiki/map-seed.ts +589 -0
- package/src/domains/context/wiki/plan.ts +2 -2
- package/src/domains/dispatch/admission.ts +29 -0
- package/src/domains/dispatch/agent-candidates.ts +10 -0
- package/src/domains/dispatch/budget-envelope.ts +86 -1
- package/src/domains/dispatch/capability-match.ts +1 -0
- package/src/domains/dispatch/capacity-lease.ts +17 -0
- package/src/domains/dispatch/contract.ts +11 -1
- package/src/domains/dispatch/extension.ts +134 -29
- package/src/domains/dispatch/types.ts +3 -0
- package/src/domains/dispatch/worker-model-metadata.ts +38 -0
- package/src/domains/eval/metrics/call-ledger-stream.ts +34 -11
- package/src/domains/eval/metrics/token-stream.ts +201 -31
- package/src/domains/eval/metrics/tracked.ts +40 -4
- package/src/domains/eval/runners/clio-run.ts +5 -2
- package/src/domains/eval/schema/suite.ts +28 -0
- package/src/domains/eval/schema/verdict.ts +2 -2
- package/src/domains/eval/suites/resolve.ts +13 -1
- package/src/domains/eval/suites/run.ts +24 -3
- package/src/domains/interop/registry.ts +6 -2
- package/src/domains/interop/types.ts +4 -0
- package/src/domains/lifecycle/migrations/index.ts +4 -0
- package/src/domains/memory/task-memory-policy.ts +70 -26
- package/src/domains/memory/task-memory-telemetry.ts +1 -0
- package/src/domains/middleware/index.ts +0 -1
- package/src/domains/middleware/marketplace-offer.ts +3 -35
- package/src/domains/middleware/memory-intervention.ts +127 -32
- package/src/domains/middleware/memory-step-endpoint.ts +3 -2
- package/src/domains/middleware/skills-reminder.ts +31 -2
- package/src/domains/observability/compaction-usage.ts +118 -0
- package/src/domains/observability/cost.ts +1 -1
- package/src/domains/observability/extension.ts +6 -1
- package/src/domains/observability/out-of-turn-usage.ts +52 -21
- package/src/domains/providers/contract.ts +4 -1
- package/src/domains/providers/extension.ts +40 -9
- package/src/domains/providers/model-capabilities.ts +9 -0
- package/src/domains/providers/model-discovery.ts +2 -0
- package/src/domains/providers/model-runtime-capabilities.ts +15 -5
- package/src/domains/providers/models/local-models/clio-coder-local-coding-targets.yaml +32 -12
- package/src/domains/providers/runtimes/antigravity/antigravity-code.ts +225 -45
- package/src/domains/providers/runtimes/common/lmstudio-http.ts +6 -2
- package/src/domains/providers/runtimes/common/local-synth.ts +2 -0
- package/src/domains/providers/runtimes/protocol/litellm.ts +119 -29
- package/src/domains/providers/support.ts +11 -5
- package/src/domains/providers/target-model-cache.ts +25 -2
- package/src/domains/providers/types/capability-flags.ts +2 -0
- package/src/domains/providers/types/runtime-descriptor.ts +20 -1
- package/src/domains/providers/types/target-descriptor.ts +19 -0
- package/src/domains/resources/index.ts +3 -0
- package/src/domains/resources/skills/install.ts +72 -7
- package/src/domains/resources/skills/loader.ts +7 -0
- package/src/domains/resources/skills/marketplace.ts +63 -11
- package/src/domains/safety/autonomy.ts +15 -0
- package/src/domains/safety/index.ts +1 -0
- package/src/domains/safety/path-policy.ts +1 -1
- package/src/domains/safety/policy-engine.ts +34 -11
- package/src/domains/safety/protected-artifacts.ts +191 -88
- package/src/domains/safety/run-effects.ts +2 -22
- package/src/domains/safety/skill-authority.ts +55 -0
- package/src/domains/session/compaction/compact.ts +72 -22
- package/src/domains/session/entries.ts +6 -0
- package/src/domains/session/usage.ts +3 -3
- package/src/engine/agent.ts +13 -3
- package/src/engine/ai.ts +26 -8
- package/src/engine/antigravity/subprocess-runtime.ts +386 -120
- package/src/engine/api-registry.ts +3 -0
- package/src/engine/apis/openai-completions.ts +117 -14
- package/src/engine/external-subprocess.ts +114 -6
- package/src/entry/background-model-metadata.ts +18 -0
- package/src/entry/compaction-prompt.ts +57 -0
- package/src/entry/orchestrator.ts +405 -216
- package/src/entry/task-memory-lifecycle.ts +35 -0
- package/src/interactive/chat-loop-messages.ts +13 -4
- package/src/interactive/chat-loop.ts +65 -2
- package/src/interactive/chat-renderer.ts +1 -0
- package/src/interactive/cost-overlay.ts +26 -2
- package/src/interactive/interactive-slash-runtime.ts +2 -1
- package/src/interactive/renderers/worker-entry.ts +32 -0
- package/src/interactive/slash-commands.ts +24 -6
- package/src/interactive/theme/labels.ts +19 -13
- package/src/interactive/turn-context.ts +9 -5
- package/src/interactive/turn-recovery.ts +8 -0
- package/src/interactive/turn-runtime.ts +27 -11
- package/src/interactive/turn-state.ts +7 -0
- package/src/interactive/worker-receipts.ts +1 -0
- package/src/interactive/worker-stream.ts +6 -1
- package/src/tools/context/index.ts +30 -9
- package/src/tools/dispatch-arguments.ts +1 -0
- package/src/tools/dispatch-event-text.ts +10 -0
- package/src/tools/dispatch-plan.ts +1 -0
- package/src/tools/dispatch-runner.ts +12 -0
- package/src/tools/registry.ts +11 -5
- package/src/tools/worker-evidence.ts +3 -1
- package/src/worker/spec-contract.ts +4 -0
- package/dist/chunk-2Z2IKEXI.js +0 -1554
- package/dist/reset-OAQP3W4O.js +0 -230
- package/dist/uninstall-N34PCTGJ.js +0 -331
- package/dist/upgrade-PXK3S2YM.js +0 -325
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,41 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to Clio Coder are documented in this file. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and versions follow Semantic Versioning; pre-1.0 minor releases may include incompatible changes.
|
|
4
4
|
|
|
5
|
+
## 0.4.3 - 2026-09-05
|
|
6
|
+
|
|
7
|
+
This release adds Archify architecture maps and experimental Antigravity research delegation, and tightens thinking controls, session memory, compaction and execution evidence. Usage and cost reports retain explicit coverage limits; full evidence reconciliation is deferred to v0.4.5 or later.
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
- Remote marketplace entries. `skills/remote.yaml` lists skills whose content lives in another repository at a pinned ref; `npm run skills:pin` publishes each into `skills/skill-marketplace.json` with `origin: "remote"`, the upstream tree as `sourceUrl`, the catalog `overlay` package whose files land on top of the clone at install, and the upstream top-level members to `exclude`. The overlay `SKILL.md` is pinned in `skills/registry.yaml`, so `skills:check` fails on its drift. Install stages the fetched tree, applies the exclusions and the overlay, validates the shaped result, and swaps it in atomically; discovery lets an overlay-bearing index entry win over its own catalog folder, and `clio-coder skills update` re-applies the same shaping. Contract: `tests/contracts/skill-remote-entries.test.ts`.
|
|
11
|
+
- The `archify` skill (`skills/planning/archify/`), a remote entry pinned to `tt-a1i/archify` v2.16.0: validated interactive architecture, workflow, sequence, dataflow, and lifecycle diagrams as standalone HTML from a typed JSON spec. Clio ships only the wrapper `SKILL.md` and `evals.md`; the renderer, schemas, and brand-mark notices come from upstream at install time and never enter the npm tarball. The wrapper adds Clio's placement rule (`.clio-coder/artifacts/maps/`), the repository-evidence flow through `clio-coder context map`, and `verify(check="frontend")` after `deliver`, and omits upstream's update-awareness step because it performs a network request during a chat turn.
|
|
12
|
+
- `clio-coder context map [--out <path>] [--json]` writes an archify architecture seed from the codewiki index with no model call: components are the largest directory areas (capped at 12, plus at most three external packages), connections are import edges collapsed area to area, and `meta.repository` is recorded only for a GitHub origin at a full revision; only then do components carry `sources`, each citing an indexed file and its first symbol's line, since archify accepts citations only against a pinned revision. Placement is layered with explicit routes for archify's standard profile; composition warnings may still need operator edits. Pass `--repo-root .` when the seed carries pinned repository evidence. It refuses, naming `clio-coder context index`, when no index exists. Contract: `tests/contracts/context-map-seed.test.ts`.
|
|
13
|
+
- `.clio-coder/artifacts/maps/` is a placement class (human transient) in `docs/architecture/artifact-placement.md`; `docs/guide/skills-marketplace.md` documents remote entries and overlays with archify as the worked example, and `docs/architecture/context-engine.md` documents the seed's guarantees.
|
|
14
|
+
- A distinct, permanently read-only `world-knowledge` shadow agent handles current open-world discovery, ecosystem comparisons, broad external context, and advisory second opinions. Its compact result contract separates supported facts and source identifiers from synthesis, uncertainties, and follow-up verification, and it reports honestly when native discovery/search is unavailable instead of treating URL retrieval as search or fabricating citations.
|
|
15
|
+
- Reusable `branch-closeout` Git skill (`skills/git/branch-closeout/`) for proving merged work on canonical remotes, inspecting dirty or ignored worktree state, safely removing registered worktrees through Git, deleting local branches, optionally removing contributor fork branches, and auditing surviving repository references.
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
- The local and hosted CI gate checks skill pins once through lint, removing the duplicate explicit pass. The full contract/smoke, trace-viewer and release-package checks remain in place; contributor guidance distinguishes focused checks from the complete release gate.
|
|
19
|
+
- The existing `context.compaction.model` and `context.compaction.systemPrompt` overrides now take effect. An explicit model must uniquely resolve to an available, eligible summary route; invalid choices fail visibly instead of silently using chat. Custom UTF-8 prompt files are reread at compaction time, must be nonempty regular files of at most 65,536 bytes, and resolve relative paths against the session workspace. Unset controls retain the active chat route and built-in prompt; checkpoints record the selected usage route while older checkpoints remain readable (#324).
|
|
20
|
+
- Antigravity external delegation remains experimental and now uses a bounded external-agent subprocess boundary: it is dispatch-only, uses the operator's existing `agy` session, sends literal prompts over structured stdin, accepts only a valid one-terminal stream, bounds and redacts all external output, runs with an allowlisted environment, cancels the POSIX process group, and attributes receipts to external delegation rather than the Gemini API. Its non-generating live `{id,label}` catalog is authoritative and round-trips through the generic model snapshot; failures distinguish missing CLI, sign-in, required CLI update, unavailable catalog, and disappeared configured models. Clio records per-tool recipe budgets as unobserved/not enforced inside the external one-shot loop and never automatically retries a generating run.
|
|
21
|
+
- First-run onboarding can offer **Antigravity CLI — experimental local delegation** only after a valid primary target exists. The optional step never changes chat/background pointers or enables dangerous full access; it can create a `world-knowledge-external` fleet profile and bind `world-knowledge`. Noninteractive `configure` gains `--bind-agent <agentId>` alongside `--agent-profile`, and model/target listings preserve live labels and source/freshness.
|
|
22
|
+
- Hardened the entire Git skill suite under `skills/git/` (`file-ticket`, `fix-issue`, `ship`, `worktree-create`, `worktree-merge`, `resolve-merge-conflicts`). Added formal argument contracts with structural parsing; made workflow bodies project-agnostic without hardcoding repos, remotes, or branch names while preserving the canonical-main-only policy in `CONTRIBUTING.md`; required confirmation before every outward ticket action including duplicate issue comments; decoupled unsupported RCA automation claims from `fix-issue`; separated `ship` into explicit `commit`, `pr`, maintainer-local, and `closeout` modes; corrected rebase ours/theirs reversal semantics and added conflict matrices covering binary, rename, modify/delete, and lockfile conflicts; supported configurable roots, safe path derivation, and strategy controls in worktree operations; and expanded evals across all skills.
|
|
23
|
+
- Branch and worktree closeout is now an explicit final development step: prove the merged result, inspect local state, remove registered worktrees through Git, delete local scaffolding, and report every surviving branch, stash, local-only tag, and canonical remote head. The canonical repository keeps only `main`: maintainer topic and compact release-candidate branches such as `v043` stay local, contributors submit branches from their forks, and dotted names such as `v0.4.3` are reserved for immutable release tags.
|
|
24
|
+
|
|
25
|
+
### Fixed
|
|
26
|
+
- Dedicated memory, compaction and native worker admission now discover cold LiteLLM target metadata before resolving thinking controls; sharing a gateway URL with chat no longer hides a missing target probe. Memory keeps discovery within its existing cancellation/deadline boundary, rechecks known endpoint capacity at actual launch, and does not turn cancelled metadata into endpoint failure. Compaction now sends its intended thinking-off request through the simple stream API. Workers keep their approved route and reservation while discovery runs within the invocation's cancellation and admission deadline; late cancelled metadata cannot launch a worker. Unknown runtime declarations remain unguessed.
|
|
27
|
+
- Failed or empty compaction now retains known per-stream usage in the existing out-of-turn ledger, including a successful first stream before a failed or empty second split response. Rows retain the originating session and selected route, distinguish completed/error/aborted calls, and keep missing or ambiguous zero usage unknown. For completed compactions, the checkpoint remains the sole durable accounting source; checkpoint-write ambiguity fails visibly without speculative double counting. Usage reports expose known and errored subtotals with missing coverage, and live successful accounting follows the selected compaction route. Adapter prices remain estimates, and existing numeric cost ceilings bound known spending only. Usage reports read the retained failed-compaction records; eval totals and live /cost reseeding do not yet reconcile that out-of-turn store.
|
|
28
|
+
- Thinking controls now survive LiteLLM parameter filtering for declared upstream runtimes. Unanimous per-alias LM Studio metadata selects its explicit off effort, while llama.cpp keeps template controls; only a legitimately resolved effort is added to the gateway request allowance. Gateway routing, authentication and residency stay unchanged, unknown/mixed declarations are not guessed, and returned reasoning is not hidden. Qwen3.8 exposes off/low/medium/xhigh; released high/max choices normalize to xhigh without changing saved preferences or confusing the vendor template default with Clio defaults.
|
|
29
|
+
- Proactive memory prefers its dedicated configured route and can use the active chat model when that route is unavailable, including a shared reasoning model with thinking requested off. A dedicated client error permits one fallback within the original remaining deadline; cancellation, scope changes, timeouts and model output do not trigger retries. Known usage and telemetry remain separate for each attempted route. Memory now consults existing endpoint capacity evidence and observed foreground/dispatch occupancy instead of treating every shared URL as a busy one-slot server; LiteLLM retains gateway routing authority. Unset memory roles stay rules-only, and fallback selection does not change saved settings.
|
|
30
|
+
- Context map seeds now keep distinct directory areas, external packages, and connections identifiable when readable IDs collide. Collision suffixes preserve other existing readable IDs, and internal and external imports with matching names retain their own destinations and counts.
|
|
31
|
+
- Active project and user skill trees now remain operator-owned for both main-agent and worker tool admissions, including full-auto. Direct mutations, recognized shell mutation and Clio installation commands (including `skills sync` and confirmed `library add --yes` with skill dependencies), ancestor deletion, and current symlink aliases are refused even when general default path protections are disabled. Literal shell comments and redirection targets cannot masquerade as help/version arguments to bypass that guard. Quoted search patterns remain read-only, and literal operator filenames do not hide later mutation operands. Unconfirmed library plans remain available. Marketplace matches now require the existing bound operator answer before installation at every autonomy level; operator CLI, hub and slash installation/update workflows remain available. Draft skills outside active roots. Shell command inspection remains a bounded guard rather than an operating-system sandbox; arbitrary programs, dynamic expansions, aliases and concurrent filesystem changes still require supervision (#300).
|
|
32
|
+
- Native session and eval call timing now starts before each provider stream invocation, so TTFT and API duration include the request's wait for response headers and later tool-loop calls have their own clocks. Empty output does not manufacture TTFT. Historical timing values remain unchanged; stdout-only fallback timing still starts at the provider's message-start event and must not be compared as complete request latency.
|
|
33
|
+
- Eval now exposes observed provider terminal reasons, retry phases, and errored-call known usage subtotals for opt-in health gates (#278). Known failed-call spend stays in total accounting, and repeated retry countdown frames do not inflate attempt counts. Missing, partial, or ambiguous all-zero failed usage remains explicitly incomplete; stream cost can reflect adapter pricing and does not certify billing. Recovered tasks keep the existing default pass policy, and retries hidden inside a runtime remain unobserved. Reported failed reasoning remains separate from output/total tokens; an ambiguous adapter estimate is not promoted to provider-reported usage.
|
|
34
|
+
- Completed parallel dispatch receipts keep their sealed ledger status while finalization waits for durable persistence. Heartbeat reconciliation no longer regresses a finished run to running, stale, or dead during ledger lock contention; active workers still receive normal stall detection. Batch host checks and receipt digest verification retain their existing semantics.
|
|
35
|
+
- Eval first-call TTFT now reports `{ value: null, source: "estimated" }` when timing is absent, preserving a measured zero as `{ value: 0, source: "ledger" }`. The first call is selected by its recorded timestamp across session ledgers. Stream fallback measures only observed output after a call start and leaves missing timing absent. Verdict consumers must handle nullable TTFT; historical numeric artifacts remain readable without rewriting (#277).
|
|
36
|
+
- Headless runs that recover from a provider failure with a successful tool-only artifact completion no longer retain the earlier error and fail evaluation despite producing the required artifact. Terminal errors, failed artifacts, cancellation, and shutdown still fail truthfully; recovered runs retain their failure history and reported spend (#275).
|
|
37
|
+
- Transient task memory and its observer state now reset on explicit session and branch switches, including same-session `/tree` navigation. Late background completions cannot mutate the successor bank, deliver reminders, or propose durable memory. Reported usage keeps its originating session identity without inflating the successor's live cost. Ordinary forward turns and compaction retain continuity; abort-ignoring transports may still finish, but their stale content is discarded (#323).
|
|
38
|
+
- Eval tracked token and model-call totals no longer double-count assistant calls recorded by both the native runner's session ledger and stdout fold (#276). Tracked metrics prefer durable assistant-call facts, including timing and cache provenance, and fall back to stream calls when no durable calls exist; durable compaction and tool records remain included. Compaction usage intentionally makes tracked totals differ from stdout-only totals. Artifacts record source counts and warn when observed counts differ or an external runner mixes sources. Partial or mixed ledgers can still omit stream-only calls, and fork-inherited history is not reconciled: no shared call identity proves overlap or complete coverage, so these cases must not be treated as reconciled run totals. Full reconciliation across session, stdout, fork and out-of-turn evidence is deferred to v0.4.5 or later. This release exposes count-based diagnostics but does not automatically reject cost or efficiency comparisons on incomplete evidence.
|
|
39
|
+
|
|
5
40
|
## 0.4.2 - 2026-09-02
|
|
6
41
|
|
|
7
42
|
### Added
|
package/CONTRIBUTING.md
CHANGED
|
@@ -32,12 +32,21 @@ Local and GitHub PR gate (fast, deterministic):
|
|
|
32
32
|
npm run ci
|
|
33
33
|
```
|
|
34
34
|
|
|
35
|
+
This runs type checking, lint (including boundaries, documentation drift and
|
|
36
|
+
skill pins), one build, the contract/smoke suite, and the trace-viewer suite.
|
|
37
|
+
Use `npm run skills:check` when checking skill pins on their own; it is already
|
|
38
|
+
included in `lint` and `ci`.
|
|
39
|
+
|
|
35
40
|
Release gate (for maintainers before tags or release artifacts):
|
|
36
41
|
|
|
37
42
|
```bash
|
|
38
43
|
npm run ci:release
|
|
39
44
|
```
|
|
40
45
|
|
|
46
|
+
The release gate includes `ci` and adds the package audit. Running `ci` again
|
|
47
|
+
on the same unchanged tree is unnecessary. Run a focused regression while
|
|
48
|
+
developing a repair, then the full gate for the candidate being reviewed.
|
|
49
|
+
|
|
41
50
|
Live provider validation (manual/opt-in, after `npm run build`):
|
|
42
51
|
|
|
43
52
|
```bash
|
|
@@ -74,22 +83,34 @@ below together with `.github/workflows/release.yml` and
|
|
|
74
83
|
[v0.4.1 release-cut checklist](docs/history/release-cut-checklist.md) is a
|
|
75
84
|
historical record, not a reusable current checklist.
|
|
76
85
|
|
|
77
|
-
1. During development, keep the top changelog section at `## Unreleased
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
86
|
+
1. During development, keep the top changelog section at `## Unreleased`. A
|
|
87
|
+
maintainer collects release work on a **local-only** compact candidate
|
|
88
|
+
branch (`v043` for `v0.4.3`) and bumps `version` there. Never push this
|
|
89
|
+
candidate branch to the canonical repository. Before the cut, retitle the
|
|
90
|
+
changelog section `## <version> - YYYY-MM-DD`.
|
|
91
|
+
2. Run `npm run ci:release` on the exact candidate. It runs the full `ci` gate,
|
|
92
|
+
then `scripts/check-release.mjs`, which verifies the built `dist/` and
|
|
93
|
+
audits the exact npm package contents.
|
|
94
|
+
3. Fetch `origin`, require the fetched `origin/main` to be the candidate's
|
|
95
|
+
ancestor, then fast-forward local `main` with `git merge --ff-only v043`.
|
|
96
|
+
Re-run the release gate if the candidate changed and verify local `main`
|
|
97
|
+
equals the reviewed candidate SHA.
|
|
98
|
+
4. Fetch once more and stop on unexpected movement. With explicit maintainer
|
|
99
|
+
authorization, push only `refs/heads/main:refs/heads/main`; no topic or
|
|
100
|
+
release-candidate branch is pushed to canonical `origin`.
|
|
101
|
+
5. Require CI for that exact `main` SHA to pass. Create the annotated tag on
|
|
102
|
+
that commit and push only it: `git tag -a v0.4.3` followed by
|
|
103
|
+
`git push origin refs/tags/v0.4.3`. The tag must match `package.json`; the
|
|
104
|
+
release workflow refuses mismatches.
|
|
105
|
+
6. `.github/workflows/release.yml` verifies the tag against `package.json`,
|
|
106
|
+
runs `npm run ci:release` on the tagged tree, and creates the GitHub release
|
|
107
|
+
with the tarball attached and the version's `CHANGELOG.md` section as the
|
|
108
|
+
body. It does not publish to npm.
|
|
109
|
+
7. A maintainer publishes from the tagged commit with `npm publish`;
|
|
92
110
|
`prepublishOnly` runs the same `ci:release` gate in release mode first.
|
|
111
|
+
8. Verify the release and tag, then delete the local compact candidate branch.
|
|
112
|
+
The canonical remote returns to its steady state: `main` plus immutable
|
|
113
|
+
release tags and GitHub releases, with no release branch.
|
|
93
114
|
|
|
94
115
|
What `scripts/check-release.mjs` enforces, and how to respond when it fails:
|
|
95
116
|
|
|
@@ -105,7 +126,7 @@ What `scripts/check-release.mjs` enforces, and how to respond when it fails:
|
|
|
105
126
|
- Runtime resources must resolve from the installed package root: prompt
|
|
106
127
|
fragments, builtin agents, model catalogs, the Markdown guides in `docs/`, the 128px logo,
|
|
107
128
|
and `damage-control-rules.yaml`. A new runtime resource must be listed in
|
|
108
|
-
both package.json `files` and
|
|
129
|
+
both package.json `files` and `scripts/release-manifest.json`.
|
|
109
130
|
The double bookkeeping is deliberate: neither edit can silently drop a
|
|
110
131
|
resource the CLI needs at runtime.
|
|
111
132
|
- Size budgets: 10 MB tarball, 50 MB unpacked, set in `check-release.mjs`.
|
|
@@ -122,14 +143,22 @@ that needs them runs.
|
|
|
122
143
|
|
|
123
144
|
## Hard Rules
|
|
124
145
|
|
|
125
|
-
1.
|
|
126
|
-
|
|
127
|
-
|
|
146
|
+
1. The canonical repository's only branch is `main`. Maintainer topic,
|
|
147
|
+
integration, and release-candidate branches stay local and are never pushed
|
|
148
|
+
to canonical `origin`.
|
|
149
|
+
2. Contributors push topic branches to their own forks and open pull requests
|
|
150
|
+
from the fork into canonical `main`; they never push a topic branch to the
|
|
151
|
+
canonical repository.
|
|
152
|
+
3. A maintainer may update canonical `main` only by an explicitly authorized,
|
|
153
|
+
reviewed fast-forward from the exact locally gated candidate. Everyone else
|
|
154
|
+
changes `main` through a pull request reviewed by `@akougkas`.
|
|
128
155
|
4. Keep every PR focused. Split unrelated docs, runtime, CLI, and TUI work.
|
|
129
156
|
5. Update `CHANGELOG.md` for user-visible behavior, developer workflow, or
|
|
130
157
|
release status changes.
|
|
131
158
|
6. Run `npm run ci` before requesting review.
|
|
132
159
|
7. Do not commit secrets, local config, generated `dist/`, or scratch plans.
|
|
160
|
+
8. Push release tags as fully qualified `refs/tags/vX.Y.Z`; never push a
|
|
161
|
+
similarly named branch.
|
|
133
162
|
|
|
134
163
|
## Architecture Invariants
|
|
135
164
|
|
|
@@ -170,6 +199,44 @@ Examples:
|
|
|
170
199
|
- `fix/session-resume-replay`
|
|
171
200
|
- `docs/github-governance`
|
|
172
201
|
|
|
202
|
+
Maintainer branches are local-only. A temporary release candidate uses the
|
|
203
|
+
compact version spelling with no dots: `v043` for release tag `v0.4.3`. Never
|
|
204
|
+
create or push a branch named `v0.4.3`; dotted `vX.Y.Z` names belong exclusively
|
|
205
|
+
to immutable release tags. The compact branch is local scaffolding and is
|
|
206
|
+
deleted after its reviewed commit reaches `main` and the release succeeds.
|
|
207
|
+
|
|
208
|
+
Contributors use the same topic prefixes in their own forks. The pull request
|
|
209
|
+
head is `<contributor-fork>:<topic>` and its base is canonical `main`. Delete
|
|
210
|
+
the fork branch after merge so both the canonical repository and contributor
|
|
211
|
+
forks return to a small steady state.
|
|
212
|
+
|
|
213
|
+
### Branch closeout
|
|
214
|
+
|
|
215
|
+
Branch and worktree cleanup is part of finishing work, not optional future
|
|
216
|
+
housekeeping. Use `branch-closeout` (or `ship closeout`) to automate this
|
|
217
|
+
verification and teardown safely. After a PR is merged or a release is tagged:
|
|
218
|
+
|
|
219
|
+
1. Fetch and prune remote-tracking refs, then verify the PR is merged and its
|
|
220
|
+
result is represented on `origin/main`. An ancestry check is sufficient for
|
|
221
|
+
merge commits; squash and cherry-pick landings require the merged PR and
|
|
222
|
+
resulting commit as evidence rather than a matching subject alone.
|
|
223
|
+
2. Confirm the source worktree has no tracked or untracked work worth keeping.
|
|
224
|
+
Remove a registered worktree with `git worktree remove <path>`, never
|
|
225
|
+
`rm -rf`; use `--force` only after explicitly authorizing disposal of the
|
|
226
|
+
remaining local artifacts.
|
|
227
|
+
3. Delete the local topic or release branch. For a contributor PR, delete its
|
|
228
|
+
branch from the contributor's fork after merge. A topic branch must never be
|
|
229
|
+
created on canonical `origin`, and canonical `main` is never deleted.
|
|
230
|
+
4. Preserve unfinished experiments by filing their result and next decision in
|
|
231
|
+
an issue, not by accumulating anonymous `work/`, `wip/`, or `tmp` refs.
|
|
232
|
+
5. Report the remaining local branches, worktrees, stashes, local-only tags,
|
|
233
|
+
and canonical remote heads. The expected canonical head set is exactly
|
|
234
|
+
`refs/heads/main`; every additional head is a cleanup failure.
|
|
235
|
+
|
|
236
|
+
For a release, first verify `refs/tags/vX.Y.Z^{commit}` equals the reviewed
|
|
237
|
+
commit on `main`, then close the compact candidate branch such as `v043`.
|
|
238
|
+
Published tags are never deleted, moved, or recreated during cleanup.
|
|
239
|
+
|
|
173
240
|
## Commits
|
|
174
241
|
|
|
175
242
|
Use concise conventional subjects:
|
package/README.md
CHANGED
|
@@ -138,7 +138,13 @@ The complete interactive and CLI reference is
|
|
|
138
138
|
Clio stores each model connection as a named **target**: runtime, endpoint,
|
|
139
139
|
model, credentials, and any verified capability overrides. Interactive chat,
|
|
140
140
|
proactive memory, fleet defaults, and individual worker profiles can route
|
|
141
|
-
independently.
|
|
141
|
+
independently. A LiteLLM target keeps the gateway in charge of physical routing,
|
|
142
|
+
authentication, and backend residency; distinct model routes can share one URL.
|
|
143
|
+
Set `context.memory.target` and `context.memory.model` to opt into a dedicated
|
|
144
|
+
memory model. Unset memory roles remain rules-only; a configured route can fall
|
|
145
|
+
back to active chat when unavailable and request capacity permits.
|
|
146
|
+
`context.compaction.model` selects a dedicated summary model; leaving it unset
|
|
147
|
+
uses active chat. An invalid explicit compaction model fails visibly.
|
|
142
148
|
|
|
143
149
|
| Target family | Supported routes |
|
|
144
150
|
| --- | --- |
|
|
@@ -147,7 +153,7 @@ independently.
|
|
|
147
153
|
| Cloud APIs | OpenAI, Anthropic, Google, Groq, Mistral, DeepSeek, OpenRouter, Amazon Bedrock |
|
|
148
154
|
| Institutional gateways | Argonne ALCF Sophia and Metis over Globus OAuth |
|
|
149
155
|
| Subscriptions | ChatGPT Plus/Pro through `openai-codex`; Claude Pro/Max through `anthropic-max` |
|
|
150
|
-
| Worker integrations | Claude SDK, Claude Code, Google Antigravity, and configured ACP agents |
|
|
156
|
+
| Worker integrations | Claude SDK, Claude Code, experimental Google Antigravity delegation, and configured ACP agents |
|
|
151
157
|
|
|
152
158
|
The interactive wizard is the easiest path:
|
|
153
159
|
|
|
@@ -222,11 +228,24 @@ directory. See [Context Engine](docs/architecture/context-engine.md),
|
|
|
222
228
|
[Proactive Memory](docs/guide/proactive-memory.md) for the detailed contracts.
|
|
223
229
|
|
|
224
230
|
The local skills marketplace may offer a matching shipped skill during a
|
|
225
|
-
request.
|
|
226
|
-
|
|
227
|
-
|
|
231
|
+
request. Every promotion install requires an explicit bound operator answer,
|
|
232
|
+
including in full-auto. Promotion installs retain their catalog source gate,
|
|
233
|
+
and installation does not activate the skill. Active
|
|
234
|
+
project and user skill trees are operator-owned: main and worker tool admissions
|
|
235
|
+
refuse direct and recognized shell mutations. Draft skill changes outside those
|
|
236
|
+
roots, then use the operator's installation or update workflow. This bounded
|
|
237
|
+
command inspection does not confine arbitrary programs or dynamic shell paths.
|
|
238
|
+
Manual installs remain available for a source you deliberately choose. See
|
|
228
239
|
[Skills Marketplace](docs/guide/skills-marketplace.md).
|
|
229
240
|
|
|
241
|
+
For a repository architecture map, run `clio-coder context index` followed by
|
|
242
|
+
`clio-coder context map`. The latter writes a deterministic JSON seed from the
|
|
243
|
+
index's directory areas and imports. The operator-installed `archify` remote
|
|
244
|
+
skill validates and delivers the interactive diagram; Clio ships its wrapper
|
|
245
|
+
and pinned install metadata, while the renderer comes from upstream. Source
|
|
246
|
+
citations require a pinned GitHub revision. Validation can still report
|
|
247
|
+
composition warnings that need human edits.
|
|
248
|
+
|
|
230
249
|
## Delegate with bounds
|
|
231
250
|
|
|
232
251
|
Clio's orchestrator can send focused assignments to worker agents instead of
|
|
@@ -289,6 +308,16 @@ clio-coder trace phases <run-id>
|
|
|
289
308
|
clio-coder trace tail <run-id>
|
|
290
309
|
```
|
|
291
310
|
|
|
311
|
+
`clio-coder usage report` preserves known failed-compaction spending and labels
|
|
312
|
+
missing coverage. Adapter prices are estimates, and numeric spending ceilings
|
|
313
|
+
bound the known sum; absent telemetry does not prove a call was free. Eval's
|
|
314
|
+
provider-health checks are opt-in and separate from task success. Partial or
|
|
315
|
+
mixed session/stdout evidence and inherited fork history are not reconciled;
|
|
316
|
+
full reconciliation is deferred to v0.4.5 or later, and 0.4.3 does not add an
|
|
317
|
+
automatic cost-comparison rejection. See the
|
|
318
|
+
[Eval Runner](docs/process/eval-runner.md#token-accounting--provenance) for source
|
|
319
|
+
and timing limits.
|
|
320
|
+
|
|
292
321
|
Evidence helps you audit a run; it does not prove that generated code is
|
|
293
322
|
scientifically correct. Domain validation, reference results, and human review
|
|
294
323
|
remain part of the job. The detailed boundaries are in
|
|
@@ -354,7 +383,7 @@ clio-coder --version
|
|
|
354
383
|
From source, pinned to this version:
|
|
355
384
|
|
|
356
385
|
```bash
|
|
357
|
-
git clone --branch v0.4.
|
|
386
|
+
git clone --branch v0.4.3 https://github.com/iowarp/clio-coder.git
|
|
358
387
|
cd clio-coder
|
|
359
388
|
npm ci
|
|
360
389
|
npm run install:local
|
|
@@ -6,32 +6,32 @@ import {
|
|
|
6
6
|
} from "./chunk-2VTFPG5O.js";
|
|
7
7
|
import {
|
|
8
8
|
runClioCommand
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-ZTJUVLTU.js";
|
|
9
|
+
} from "./chunk-AX2THNSA.js";
|
|
10
|
+
import "./chunk-4WR7VSYB.js";
|
|
12
11
|
import "./chunk-I7XBWTYH.js";
|
|
13
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-PUVDKJ2Y.js";
|
|
13
|
+
import "./chunk-ZTJUVLTU.js";
|
|
14
14
|
import {
|
|
15
15
|
printError
|
|
16
16
|
} from "./chunk-VPKWYKEY.js";
|
|
17
17
|
import "./chunk-5TSRNF4G.js";
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-GHS5EBTQ.js";
|
|
19
19
|
import "./chunk-D7E7WCDF.js";
|
|
20
|
-
import {
|
|
21
|
-
MAX_TIMER_DELAY_MS
|
|
22
|
-
} from "./chunk-EBY63B7G.js";
|
|
23
20
|
import "./chunk-IWHMRKLL.js";
|
|
24
21
|
import "./chunk-UXCU4E3T.js";
|
|
25
22
|
import "./chunk-LL4KHSZI.js";
|
|
26
23
|
import "./chunk-S66XZJOF.js";
|
|
27
|
-
import
|
|
24
|
+
import {
|
|
25
|
+
MAX_TIMER_DELAY_MS
|
|
26
|
+
} from "./chunk-EBY63B7G.js";
|
|
27
|
+
import "./chunk-ID64D7PE.js";
|
|
28
28
|
import "./chunk-336NSSKI.js";
|
|
29
29
|
import "./chunk-IKCO5N3L.js";
|
|
30
30
|
import "./chunk-3I7MS7N2.js";
|
|
31
31
|
import "./chunk-APJ265NV.js";
|
|
32
|
-
import "./chunk-BYP5D4HI.js";
|
|
33
32
|
import "./chunk-WEPFGWHJ.js";
|
|
34
33
|
import "./chunk-YXLYO42X.js";
|
|
34
|
+
import "./chunk-BYP5D4HI.js";
|
|
35
35
|
import {
|
|
36
36
|
init_esm_shims
|
|
37
37
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -127,4 +127,4 @@ async function runAcpCommand(args, options = {}) {
|
|
|
127
127
|
export {
|
|
128
128
|
runAcpCommand
|
|
129
129
|
};
|
|
130
|
-
//# sourceMappingURL=acp-
|
|
130
|
+
//# sourceMappingURL=acp-H2NGRPWO.js.map
|
|
@@ -1,87 +1,88 @@
|
|
|
1
1
|
import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
SafetyDomainModule
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import {
|
|
9
|
-
ensureClioState
|
|
10
|
-
} from "./chunk-XQRY4DTA.js";
|
|
11
|
-
import "./chunk-3KIPBMUA.js";
|
|
4
|
+
} from "./chunk-YQWYVTMC.js";
|
|
5
|
+
import "./chunk-MUW2BDDH.js";
|
|
6
|
+
import "./chunk-GWZNEVM2.js";
|
|
7
|
+
import "./chunk-5ICU3EUH.js";
|
|
12
8
|
import {
|
|
13
9
|
ConfigDomainModule,
|
|
14
10
|
loadDomains
|
|
15
|
-
} from "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-M2DAX4F6.js";
|
|
18
|
-
import "./chunk-4O6MANBS.js";
|
|
19
|
-
import "./chunk-LCGCVYZ4.js";
|
|
20
|
-
import "./chunk-RVG5JXAL.js";
|
|
21
|
-
import "./chunk-3DPEIQKN.js";
|
|
11
|
+
} from "./chunk-WBKFA554.js";
|
|
12
|
+
import "./chunk-4WR7VSYB.js";
|
|
22
13
|
import {
|
|
23
14
|
AgentsDomainModule
|
|
24
|
-
} from "./chunk-
|
|
25
|
-
import "./chunk-
|
|
15
|
+
} from "./chunk-UPZU6GE4.js";
|
|
16
|
+
import "./chunk-RRNP2ANY.js";
|
|
26
17
|
import "./chunk-DR52UMZW.js";
|
|
27
|
-
import "./chunk-
|
|
28
|
-
import "./chunk-
|
|
29
|
-
import "./chunk-XGDPUNND.js";
|
|
30
|
-
import "./chunk-3F7VUY77.js";
|
|
18
|
+
import "./chunk-RVG5JXAL.js";
|
|
19
|
+
import "./chunk-2VIKGWFZ.js";
|
|
31
20
|
import "./chunk-RKKLTLYB.js";
|
|
32
|
-
import "./chunk-
|
|
33
|
-
import
|
|
21
|
+
import "./chunk-N2Z7HLVY.js";
|
|
22
|
+
import {
|
|
23
|
+
ensureClioState
|
|
24
|
+
} from "./chunk-IGLP3ODT.js";
|
|
25
|
+
import "./chunk-3M6DQK6S.js";
|
|
26
|
+
import "./chunk-LCGCVYZ4.js";
|
|
27
|
+
import "./chunk-LDJG7DW3.js";
|
|
28
|
+
import "./chunk-NDDGJUXD.js";
|
|
29
|
+
import "./chunk-CE5AX47J.js";
|
|
30
|
+
import "./chunk-3DPEIQKN.js";
|
|
31
|
+
import "./chunk-7DRAWPTZ.js";
|
|
32
|
+
import "./chunk-5MEZN6CB.js";
|
|
33
|
+
import "./chunk-NEKRRTYW.js";
|
|
34
|
+
import "./chunk-INY6HTFL.js";
|
|
35
|
+
import "./chunk-I7XBWTYH.js";
|
|
36
|
+
import "./chunk-PUVDKJ2Y.js";
|
|
37
|
+
import "./chunk-4O6MANBS.js";
|
|
38
|
+
import {
|
|
39
|
+
printError
|
|
40
|
+
} from "./chunk-VPKWYKEY.js";
|
|
41
|
+
import "./chunk-5TSRNF4G.js";
|
|
34
42
|
import "./chunk-5PSMVOLM.js";
|
|
35
|
-
import "./chunk-
|
|
36
|
-
import "./chunk-
|
|
37
|
-
import "./chunk-
|
|
38
|
-
import "./chunk-FVDGR2ZL.js";
|
|
39
|
-
import "./chunk-VN3SHNBN.js";
|
|
40
|
-
import "./chunk-FSP7CMNU.js";
|
|
43
|
+
import "./chunk-RSJ25QSL.js";
|
|
44
|
+
import "./chunk-XIVNBFZS.js";
|
|
45
|
+
import "./chunk-7DICMOS6.js";
|
|
41
46
|
import "./chunk-HHV2GANA.js";
|
|
42
47
|
import {
|
|
43
48
|
isUserVisibleAgent
|
|
44
|
-
} from "./chunk-
|
|
45
|
-
import "./chunk-
|
|
49
|
+
} from "./chunk-B4OAX3SI.js";
|
|
50
|
+
import "./chunk-I7ZPNEJM.js";
|
|
51
|
+
import "./chunk-GYV6VZOC.js";
|
|
46
52
|
import "./chunk-UL3WSD3F.js";
|
|
47
53
|
import "./chunk-ECH6PKUQ.js";
|
|
48
54
|
import "./chunk-5B2AEOW5.js";
|
|
55
|
+
import "./chunk-QSNYB6ZV.js";
|
|
56
|
+
import "./chunk-JGRC33J2.js";
|
|
49
57
|
import "./chunk-K6BSR66V.js";
|
|
50
|
-
import "./chunk-
|
|
51
|
-
import "./chunk-
|
|
52
|
-
import "./chunk-
|
|
53
|
-
import "./chunk-I7XBWTYH.js";
|
|
54
|
-
import "./chunk-ZW55JB7N.js";
|
|
55
|
-
import {
|
|
56
|
-
printError
|
|
57
|
-
} from "./chunk-VPKWYKEY.js";
|
|
58
|
-
import "./chunk-5TSRNF4G.js";
|
|
59
|
-
import "./chunk-72GZI5EV.js";
|
|
60
|
-
import "./chunk-MQXIVJ35.js";
|
|
58
|
+
import "./chunk-QDC3K2U3.js";
|
|
59
|
+
import "./chunk-2JH2WHGE.js";
|
|
60
|
+
import "./chunk-HAXOFFRH.js";
|
|
61
61
|
import "./chunk-R346GLFC.js";
|
|
62
|
-
import "./chunk-
|
|
63
|
-
import "./chunk-
|
|
64
|
-
import "./chunk-IHXBNWMM.js";
|
|
65
|
-
import "./chunk-34BHNEE3.js";
|
|
62
|
+
import "./chunk-KXDSS5WJ.js";
|
|
63
|
+
import "./chunk-GHS5EBTQ.js";
|
|
66
64
|
import "./chunk-D7E7WCDF.js";
|
|
67
|
-
import "./chunk-
|
|
65
|
+
import "./chunk-BTK3SSSK.js";
|
|
66
|
+
import "./chunk-PMZVFWSR.js";
|
|
68
67
|
import "./chunk-F4EKGO4N.js";
|
|
69
|
-
import "./chunk-
|
|
70
|
-
import "./chunk-EBY63B7G.js";
|
|
71
|
-
import "./chunk-6EJMN2Y3.js";
|
|
68
|
+
import "./chunk-XPLRXC72.js";
|
|
72
69
|
import "./chunk-IWHMRKLL.js";
|
|
73
70
|
import "./chunk-UXCU4E3T.js";
|
|
74
71
|
import "./chunk-LL4KHSZI.js";
|
|
72
|
+
import "./chunk-JSC3U7TI.js";
|
|
75
73
|
import "./chunk-S66XZJOF.js";
|
|
76
|
-
import "./chunk-
|
|
74
|
+
import "./chunk-JIEGK6UF.js";
|
|
75
|
+
import "./chunk-EBY63B7G.js";
|
|
76
|
+
import "./chunk-6EJMN2Y3.js";
|
|
77
|
+
import "./chunk-ID64D7PE.js";
|
|
77
78
|
import "./chunk-336NSSKI.js";
|
|
78
79
|
import "./chunk-IKCO5N3L.js";
|
|
79
80
|
import "./chunk-3I7MS7N2.js";
|
|
80
81
|
import "./chunk-APJ265NV.js";
|
|
81
|
-
import "./chunk-BYP5D4HI.js";
|
|
82
82
|
import "./chunk-WEPFGWHJ.js";
|
|
83
83
|
import "./chunk-NUGM5KR6.js";
|
|
84
84
|
import "./chunk-YXLYO42X.js";
|
|
85
|
+
import "./chunk-BYP5D4HI.js";
|
|
85
86
|
import {
|
|
86
87
|
init_esm_shims
|
|
87
88
|
} from "./chunk-3R73A4XB.js";
|
|
@@ -141,4 +142,4 @@ function renderLine(spec) {
|
|
|
141
142
|
export {
|
|
142
143
|
runAgentsCommand
|
|
143
144
|
};
|
|
144
|
-
//# sourceMappingURL=agents-
|
|
145
|
+
//# sourceMappingURL=agents-TL5LLUQP.js.map
|