@iowarp/clio-coder 0.4.6 → 0.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +283 -0
- package/CHANGELOG.md +50 -0
- package/CONTRIBUTING.md +102 -29
- package/NOTICE +8 -0
- package/README.md +37 -5
- package/dist/{acp-UVEVWSDL.js → acp-W3Y3TRHD.js} +12 -12
- package/dist/{agents-VWY37DTK.js → agents-J4ICNLQ3.js} +52 -52
- package/dist/assets/codewiki.json +1 -1
- package/dist/assets/tui-notices/get-east-asian-width-LICENSE +9 -0
- package/dist/assets/tui-notices/marked-LICENSE +44 -0
- package/dist/assets/tui-notices/pi-tui-LICENSE +21 -0
- package/dist/{auth-PCV2XQDV.js → auth-X2UJUMOC.js} +24 -24
- package/dist/{builtins-PD652MTK.js → builtins-XLXWWSRF.js} +6 -6
- package/dist/{chunk-DZK63TZJ.js → chunk-24S3DN22.js} +336 -612
- package/dist/{chunk-NTK3WTHM.js → chunk-24TOGHPO.js} +2 -2
- package/dist/{chunk-M6TAYK66.js → chunk-2O2LVQQK.js} +11 -4
- package/dist/{chunk-OQM5IVJY.js → chunk-34XHRVKG.js} +3 -3
- package/dist/{chunk-LY4N4TTL.js → chunk-3LXJOICS.js} +2 -2
- package/dist/{chunk-3BJGMT2D.js → chunk-3XE4NRLF.js} +1 -1
- package/dist/{chunk-N2OKBREN.js → chunk-4MFBBY2Z.js} +3 -3
- package/dist/{chunk-5VTJP36Q.js → chunk-4N2RZ4TO.js} +2 -2
- package/dist/{chunk-WNGF5AJX.js → chunk-4QKAITQT.js} +3 -3
- package/dist/chunk-4UHVS5T7.js +207 -0
- package/dist/{chunk-GLYBJ4RQ.js → chunk-5AJPUR72.js} +6 -6
- package/dist/{chunk-5CY4Q6QI.js → chunk-5EQO5NWP.js} +105 -3
- package/dist/{chunk-6HAO6X5B.js → chunk-65BGHOUR.js} +8 -5
- package/dist/{chunk-6VRRJT7L.js → chunk-6CA2BHOR.js} +2 -2
- package/dist/{chunk-HL26ADLH.js → chunk-6CB2IL4N.js} +2 -1
- package/dist/{chunk-E7RF4KBO.js → chunk-6LRLOJHQ.js} +3 -3
- package/dist/{chunk-HXHFDHB6.js → chunk-6TAATXXH.js} +6 -6
- package/dist/{chunk-P6M7RKMI.js → chunk-6YHPAAZR.js} +3 -3
- package/dist/{chunk-5QRX7SLS.js → chunk-7EEGBKV4.js} +7 -7
- package/dist/{chunk-BS4GAMUB.js → chunk-A67NR5AT.js} +2 -2
- package/dist/{chunk-WJIMKGD6.js → chunk-BAU36233.js} +8 -8
- package/dist/{chunk-PZN2LQY6.js → chunk-BO4XV5VX.js} +4 -4
- package/dist/{chunk-I2K2NCZQ.js → chunk-BQQ5MXUC.js} +6 -6
- package/dist/{chunk-X3BI7HTV.js → chunk-C3G5PNUO.js} +21 -21
- package/dist/{chunk-SRZOW5L2.js → chunk-C6GEXX4L.js} +1 -1
- package/dist/{chunk-6RYDAVQT.js → chunk-CE64C5K5.js} +219 -64
- package/dist/chunk-CP3HIR5H.js +2119 -0
- package/dist/{chunk-BBV5TKE6.js → chunk-CPXGJI2A.js} +2 -2
- package/dist/{chunk-IGLVVNEG.js → chunk-CULVKYTK.js} +4 -4
- package/dist/{chunk-DXLUVUD4.js → chunk-D2T66PDV.js} +5 -5
- package/dist/{chunk-NF3BK5WR.js → chunk-DACXIVVF.js} +5 -5
- package/dist/{chunk-IKRWLEDA.js → chunk-DLIYANB7.js} +20 -15
- package/dist/{chunk-RGZNQ5CT.js → chunk-DO7M3LSX.js} +9 -9
- package/dist/{chunk-2QPI3TR3.js → chunk-DVJL77SO.js} +2 -2
- package/dist/{chunk-ODUTYZIU.js → chunk-EUEXGXXR.js} +5 -5
- package/dist/{chunk-WKUYQBCG.js → chunk-EUZRMP4Y.js} +18 -16
- package/dist/{chunk-JMPL7NUB.js → chunk-G4LGUTOE.js} +4 -4
- package/dist/{chunk-CBSKDFWL.js → chunk-GEVQNST4.js} +2 -2
- package/dist/{chunk-NNWJYUNO.js → chunk-GFQ7P2UF.js} +7 -7
- package/dist/{chunk-SXQKNKRA.js → chunk-GI5RRMAH.js} +14 -14
- package/dist/{chunk-HPTJF6DG.js → chunk-GVZFCJHE.js} +336 -83
- package/dist/{chunk-ACCKVSHU.js → chunk-GXIWHXDB.js} +3 -3
- package/dist/{chunk-LUL5Z66S.js → chunk-HOX4YZ2K.js} +6 -5
- package/dist/chunk-HRAKUPIH.js +57 -0
- package/dist/{chunk-F5Z7EWMN.js → chunk-IJMW64DX.js} +50 -50
- package/dist/{chunk-QNWRHOMF.js → chunk-IMOD2YPV.js} +16 -9
- package/dist/{chunk-HZ2T2YED.js → chunk-IQCNVLO6.js} +28 -8
- package/dist/{chunk-HZFBVU5X.js → chunk-ISNCCX42.js} +8 -8
- package/dist/{chunk-7JSSKXG2.js → chunk-IZYTT3CD.js} +7 -3
- package/dist/chunk-KKEYGFX4.js +915 -0
- package/dist/{chunk-HHVJNVUJ.js → chunk-KS7ETA3P.js} +2 -2
- package/dist/{chunk-BLTEAUCB.js → chunk-L3Z5ANCV.js} +7 -7
- package/dist/{chunk-4VMV6OS6.js → chunk-LBFQMYS3.js} +2 -2
- package/dist/{chunk-URBGEOH3.js → chunk-M6Z2V6YU.js} +5 -5
- package/dist/{chunk-BT7HGDOX.js → chunk-MBJO5VNZ.js} +12 -12
- package/dist/chunk-MNQN3X6Y.js +595 -0
- package/dist/{chunk-3QKXHCGS.js → chunk-MZHXENL7.js} +5 -5
- package/dist/chunk-MZNWZUJM.js +1801 -0
- package/dist/{chunk-7YJWEF2L.js → chunk-N37QC5FV.js} +5 -5
- package/dist/{chunk-TJFDL26W.js → chunk-NCCQ6DVS.js} +7 -7
- package/dist/{chunk-P5JMBPDJ.js → chunk-NO7J45X6.js} +162 -47
- package/dist/chunk-OH3YYA3B.js +15 -0
- package/dist/{chunk-22PQ4TX4.js → chunk-P4DL2LM5.js} +16 -77
- package/dist/{chunk-LIN2K3EL.js → chunk-PFLOULP3.js} +4 -4
- package/dist/{chunk-QXFBABFJ.js → chunk-QKWL7SYE.js} +11 -11
- package/dist/chunk-RFCKPS2V.js +26 -0
- package/dist/{chunk-ZS43Y2FT.js → chunk-RTLNFZMD.js} +12 -4
- package/dist/{chunk-U7H5WRG5.js → chunk-RXFPB32E.js} +8 -6
- package/dist/{chunk-Q7NNUHQV.js → chunk-SEDI5K5B.js} +16 -16
- package/dist/{chunk-WV6TDAPN.js → chunk-SELG4SUR.js} +7 -7
- package/dist/{chunk-3WBALRQH.js → chunk-SER7RRAE.js} +27 -832
- package/dist/{chunk-K2HL3GBL.js → chunk-T4TY5GG3.js} +165 -15
- package/dist/chunk-T7QQBNLH.js +691 -0
- package/dist/{chunk-6OII3LOK.js → chunk-TLTGZTXI.js} +3 -3
- package/dist/chunk-TZ6UVP2H.js +637 -0
- package/dist/{chunk-3JLFK5MW.js → chunk-TZHN5ITX.js} +13 -41
- package/dist/{chunk-VANN3GDP.js → chunk-U3TPUXOQ.js} +399 -234
- package/dist/{chunk-VHMX7SXF.js → chunk-UA3W4FGC.js} +6 -6
- package/dist/{chunk-3O2ZAUGQ.js → chunk-UA6W4XFJ.js} +2 -2
- package/dist/chunk-UWD3JD5X.js +709 -0
- package/dist/chunk-V4ZKOKRB.js +13433 -0
- package/dist/{chunk-NC4KV7EL.js → chunk-VCRVEDUC.js} +5 -5
- package/dist/{chunk-4DU2TVI4.js → chunk-VMATUZB6.js} +12 -10
- package/dist/{chunk-J2FYEQ5L.js → chunk-VTYHHQ57.js} +2 -2
- package/dist/chunk-WB7POC6M.js +891 -0
- package/dist/{chunk-3HQVBIKD.js → chunk-WBVKKTUT.js} +2 -2
- package/dist/{chunk-EHOSNVVM.js → chunk-WLHX3MM5.js} +6 -2
- package/dist/{chunk-24T2YZ7A.js → chunk-WN552PKN.js} +553 -298
- package/dist/{chunk-4U4TKZFR.js → chunk-WT5TRMO4.js} +51 -26
- package/dist/{chunk-XWMSPJYN.js → chunk-WURGVOZJ.js} +56 -12
- package/dist/{chunk-7WUZEB2M.js → chunk-XR3XJN2M.js} +2 -2
- package/dist/chunk-XW2UZICE.js +372 -0
- package/dist/{chunk-2AKYFREM.js → chunk-XZ6UFQ52.js} +11 -11
- package/dist/chunk-Y3JU5RPK.js +8 -0
- package/dist/chunk-YKRJTYNP.js +1143 -0
- package/dist/{chunk-PWWSIB2A.js → chunk-ZGIGW4ZG.js} +5 -5
- package/dist/cli/index.js +34 -36
- package/dist/{clio-QQCMTUZE.js → clio-L2P7S2R2.js} +9 -9
- package/dist/{code-nav-GUPM6766.js → code-nav-B5LNX4KU.js} +25 -25
- package/dist/{components-TNIKXCBH.js → components-63MMQKUT.js} +6 -6
- package/dist/{config-IIM7YOD3.js → config-YXARKGTX.js} +70 -67
- package/dist/{configure-4ZM5HWJX.js → configure-LMVQJ46J.js} +47 -35
- package/dist/{context-OL5P3HEP.js → context-7HJEWTTP.js} +87 -44
- package/dist/{context-44BZLJ3J.js → context-XSZKKFBW.js} +14 -14
- package/dist/{context-AIDVQKMW.js → context-YG2LZDYZ.js} +60 -58
- package/dist/{context-clear-OQV76MYP.js → context-clear-AC5NXHM2.js} +57 -55
- package/dist/{context-index-HP2JFUWA.js → context-index-KKTPRV5G.js} +3 -3
- package/dist/{context-map-INTXD54D.js → context-map-T7ROR5D5.js} +4 -4
- package/dist/{context-working-set-ZUW3EGLS.js → context-working-set-F4Q4J3NS.js} +12 -10
- package/dist/{detail-UXPWRANG.js → detail-H73BEF2N.js} +58 -56
- package/dist/{dispatch-runner-P3ZW6G77.js → dispatch-runner-3RY5FSJC.js} +74 -72
- package/dist/{doctor-JJVGPZWT.js → doctor-EQYJOGUG.js} +44 -30
- package/dist/{eval-V2RTN3UH.js → eval-4P7O6CCE.js} +109 -46
- package/dist/{evidence-35PYWGSO.js → evidence-D6GUSYJW.js} +57 -55
- package/dist/{evidence-CIGGKI6J.js → evidence-O76QF7TZ.js} +62 -59
- package/dist/{evolve-33SM3NJP.js → evolve-H47BCETS.js} +58 -56
- package/dist/{extensions-YVRHX6ZI.js → extensions-NNL3ZOCU.js} +98 -20
- package/dist/{fleet-LFO7SIPC.js → fleet-KMNS6NOM.js} +106 -99
- package/dist/{fleet-commands-RLK72GU3.js → fleet-commands-DOWSYCBX.js} +14 -14
- package/dist/{fleet-decisions-3SBSCTCW.js → fleet-decisions-S3PTZV2D.js} +9 -9
- package/dist/{fleet-graph-JZIBCGMW.js → fleet-graph-F2DE2TME.js} +26 -24
- package/dist/{fleet-inspect-2L5YGGZJ.js → fleet-inspect-EN2Q6IVB.js} +60 -57
- package/dist/{fleet-preflight-QRSHIIDE.js → fleet-preflight-FRLETDD3.js} +3 -3
- package/dist/{fleet-validate-LIAVKDUU.js → fleet-validate-B2XDLS57.js} +28 -29
- package/dist/{fleet-verify-JIK3OQZR.js → fleet-verify-4JKUWGJ7.js} +57 -55
- package/dist/{fleet-view-IWHYGQKK.js → fleet-view-BHJFW26B.js} +60 -57
- package/dist/{init-NJEDOTQW.js → init-XAT5N5YM.js} +79 -74
- package/dist/interop-FVECHFKG.js +246 -0
- package/dist/{inventory-74UL7UHU.js → inventory-7KFQGLCV.js} +60 -57
- package/dist/library-NY2XOT75.js +492 -0
- package/dist/library-QAPAO23R.js +306 -0
- package/dist/library-import-5Y6MAS3R.js +183 -0
- package/dist/library-inventory-JT6HWITQ.js +56 -0
- package/dist/library-validation-EQUH25DC.js +42 -0
- package/dist/{memory-I76I5VUH.js → memory-DYVTTCP6.js} +58 -56
- package/dist/{models-D4YDIQZQ.js → models-MASFJ6Y2.js} +48 -36
- package/dist/{monitor-NKVD55HX.js → monitor-YMP4NXJJ.js} +64 -61
- package/dist/{orchestrator-I6OATVPK.js → orchestrator-AFQRRTEI.js} +3685 -1841
- package/dist/{panes-7BTYH3XQ.js → panes-D3Y2KFG5.js} +4 -4
- package/dist/{panes-WPOMEMRH.js → panes-NICTHQCV.js} +7 -7
- package/dist/{paths-J3KN7UAO.js → paths-PSFAUIGO.js} +5 -5
- package/dist/{preload-EJAWJEIO.js → preload-5Q7VXRFJ.js} +57 -55
- package/dist/{reset-4XMQKDNZ.js → reset-7NKZK7JN.js} +9 -9
- package/dist/{resources-TVYVXK3Q.js → resources-NILSIZAT.js} +94 -38
- package/dist/{run-OWQNNSJU.js → run-BPZGEBZV.js} +121 -105
- package/dist/{share-NPZZMUXG.js → share-EZ6ERBMH.js} +31 -28
- package/dist/skills-BTVVNYVM.js +100 -0
- package/dist/{skills-eval-J5TCKSJA.js → skills-eval-UY34MNK7.js} +110 -72
- package/dist/{skills-inventory-7II4DM57.js → skills-inventory-JDHSIA7I.js} +30 -25
- package/dist/{slash-commands-MDSDSWYF.js → slash-commands-K4FNQ2AT.js} +49 -46
- package/dist/{steer-S7D7IKPU.js → steer-2B3EQGFH.js} +4 -4
- package/dist/{support-5VAEC32W.js → support-L2SOL3IE.js} +7 -7
- package/dist/{targets-KILZEOCE.js → targets-44VKGFLN.js} +64 -58
- package/dist/{tasks-R6P6OV22.js → tasks-3KODKFU7.js} +12 -12
- package/dist/{terminal-lease-LZCG2KN3.js → terminal-lease-LXA7MMPO.js} +32 -19
- package/dist/{tools-6OCQ6SVB.js → tools-3UB7TEVR.js} +7 -7
- package/dist/{trace-JHLXWUMN.js → trace-TAMIU4OJ.js} +5 -4
- package/dist/{tui-primitives-RCY2HN7G.js → tui-primitives-A6MUW32V.js} +3 -2
- package/dist/{uninstall-FXYMFFRT.js → uninstall-QYVRPEM4.js} +9 -9
- package/dist/{upgrade-D2OZH6IQ.js → upgrade-7PMKM2JH.js} +15 -16
- package/dist/{usage-PIASNUS4.js → usage-6EQV7EQK.js} +70 -67
- package/dist/{verifiers-LTHUY2PX.js → verifiers-JLITWSHU.js} +15 -15
- package/dist/{verify-HYF7KBVE.js → verify-T7NAEVIG.js} +13 -13
- package/dist/{web-fetch-MQN4FH3X.js → web-fetch-W4TNW4Q7.js} +4 -4
- package/dist/{wiki-generate-RK7JQ5NP.js → wiki-generate-T2TJQJUA.js} +81 -76
- package/dist/{with-panes-OFTNAR4Y.js → with-panes-CHFC7HGI.js} +4 -4
- package/dist/worker/entry.js +283 -76
- package/docs/README.md +43 -0
- package/docs/architecture/architecture.md +8 -7
- package/docs/architecture/artifact-versions.md +3 -3
- package/docs/architecture/context-engine.md +35 -1
- package/docs/architecture/library.md +32 -0
- package/docs/architecture/middleware-and-components.md +1 -1
- package/docs/architecture/model-catalog.md +21 -1
- package/docs/architecture/pi-boundary.md +18 -0
- package/docs/architecture/prompt-envelope-and-tools.md +5 -5
- package/docs/architecture/safety-model.md +21 -2
- package/docs/architecture/session-lifecycle.md +12 -1
- package/docs/architecture/tui-design.md +108 -9
- package/docs/architecture/worker-context.md +106 -0
- package/docs/guide/authoring-plugins.md +160 -0
- package/docs/guide/built-in-agents.md +5 -5
- package/docs/guide/commands-and-modes.md +161 -56
- package/docs/guide/configuration-and-targets.md +1 -1
- package/docs/guide/configuration-reference.md +27 -34
- package/docs/guide/environment-variables.md +2 -2
- package/docs/guide/exit-codes-and-output.md +1 -1
- package/docs/guide/extensions-and-sharing.md +93 -53
- package/docs/guide/fleet-dispatch.md +31 -4
- package/docs/guide/glossary.md +1 -1
- package/docs/guide/harness-extensions.md +291 -0
- package/docs/guide/installation-and-lifecycle.md +9 -9
- package/docs/guide/interop.md +243 -0
- package/docs/guide/panes-and-files.md +3 -3
- package/docs/guide/plugins.md +80 -0
- package/docs/guide/resource-library.md +111 -45
- package/docs/guide/skills-marketplace.md +35 -72
- package/docs/guide/tool-usage.md +19 -7
- package/docs/guide/troubleshooting.md +1 -1
- package/docs/process/development-pipeline.md +14 -14
- package/docs/process/documentation-coverage.md +28 -1
- package/docs/process/documentation-guide.md +15 -7
- package/docs/process/eval-runner.md +8 -3
- package/docs/process/performance-methodology.md +1 -1
- package/docs/process/release-cut-checklist.md +4 -0
- package/docs/process/scientific-validation.md +23 -0
- package/evals/scalar-decision-machinery.ts +1 -1
- package/examples/extensions/README.md +67 -0
- package/examples/extensions/lab-status/clio-coder-extension.json +14 -0
- package/examples/extensions/lab-status/extension.mjs +68 -0
- package/examples/extensions/lab-status/jobs.synthetic.json +9 -0
- package/examples/extensions/measurements/clio-coder-extension.json +28 -0
- package/examples/extensions/measurements/summarize.cjs +23 -0
- package/library/README.md +109 -0
- package/library/_authoring/templates/agent/README.md +28 -0
- package/library/_authoring/templates/agent/agents/benchmark-scout.md +30 -0
- package/library/_authoring/templates/agent/plugin.json +23 -0
- package/library/_authoring/templates/fleet/README.md +29 -0
- package/library/_authoring/templates/fleet/fleets/pipeline-review.md +31 -0
- package/library/_authoring/templates/fleet/plugin.json +23 -0
- package/library/_authoring/templates/plugin/README.md +37 -0
- package/library/_authoring/templates/plugin/agents/data-curator.md +31 -0
- package/library/_authoring/templates/plugin/assets/curation-guide.md +22 -0
- package/library/_authoring/templates/plugin/plugin.json +42 -0
- package/library/_authoring/templates/plugin/prompts/inspect-dataset.md +15 -0
- package/library/_authoring/templates/plugin/skills/dataset-curation/SKILL.md +36 -0
- package/library/_authoring/templates/plugin/skills/dataset-curation/evals.md +17 -0
- package/library/_authoring/templates/prompt/README.md +28 -0
- package/library/_authoring/templates/prompt/plugin.json +23 -0
- package/library/_authoring/templates/prompt/prompts/paper-summary.md +26 -0
- package/library/_authoring/templates/skill/README.md +24 -0
- package/library/_authoring/templates/skill/SKILL.md +39 -0
- package/library/_authoring/templates/skill/evals.md +30 -0
- package/library/_authoring/templates/skill/plugin.json +23 -0
- package/library/agents/README.md +7 -0
- package/library/fleets/README.md +7 -0
- package/library/plugins/materio/README.md +137 -0
- package/library/plugins/materio/ai.iowarp.clio/agents/materio-lab-definer.md +208 -0
- package/library/plugins/materio/ai.iowarp.clio/agents/materio-literature-reviewer.md +308 -0
- package/library/plugins/materio/ai.iowarp.clio/agents/materio-research-explorer.md +249 -0
- package/library/plugins/materio/ai.iowarp.clio/agents/materio-task-executor.md +416 -0
- package/library/plugins/materio/ai.iowarp.clio/agents/materio-task-verifier.md +60 -0
- package/library/plugins/materio/ai.iowarp.clio/agents/materio-workflow-planner.md +238 -0
- package/library/plugins/materio/ai.iowarp.clio/fleets/materio-execute-task.md +50 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/add-task.md +66 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/archive-task.md +65 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/checkpoint.md +26 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/define-research-tasks.md +230 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/define-virtual-lab.md +181 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/execute-task.md +292 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/help.md +129 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/identify-research.md +206 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/literature-review.md +201 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/pause-research.md +12 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/progress.md +105 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/remove-task.md +63 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/resume-research.md +64 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/settings.md +16 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/status.md +92 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/upload-data.md +104 -0
- package/library/plugins/materio/ai.iowarp.clio/prompts/materio/wtfp.md +145 -0
- package/library/plugins/materio/ai.iowarp.clio/references/execution.md +56 -0
- package/library/plugins/materio/ai.iowarp.portability/provenance.json +9 -0
- package/library/plugins/materio/assets/actions/add-task.md +86 -0
- package/library/plugins/materio/assets/actions/archive-task.md +84 -0
- package/library/plugins/materio/assets/actions/checkpoint.md +47 -0
- package/library/plugins/materio/assets/actions/define-research-tasks.md +228 -0
- package/library/plugins/materio/assets/actions/define-virtual-lab.md +179 -0
- package/library/plugins/materio/assets/actions/execute-task.md +290 -0
- package/library/plugins/materio/assets/actions/help.md +140 -0
- package/library/plugins/materio/assets/actions/identify-research.md +204 -0
- package/library/plugins/materio/assets/actions/literature-review.md +199 -0
- package/library/plugins/materio/assets/actions/pause-research.md +34 -0
- package/library/plugins/materio/assets/actions/progress.md +125 -0
- package/library/plugins/materio/assets/actions/remove-task.md +82 -0
- package/library/plugins/materio/assets/actions/resume-research.md +84 -0
- package/library/plugins/materio/assets/actions/settings.md +38 -0
- package/library/plugins/materio/assets/actions/status.md +112 -0
- package/library/plugins/materio/assets/actions/upload-data.md +123 -0
- package/library/plugins/materio/assets/actions/wtfp.md +179 -0
- package/library/plugins/materio/assets/references/research-domains.md +134 -0
- package/library/plugins/materio/assets/references/research-policy.md +77 -0
- package/library/plugins/materio/assets/references/traditional-workflows.md +146 -0
- package/library/plugins/materio/assets/scripts/check_physics.py +271 -0
- package/library/plugins/materio/assets/scripts/check_scripts.py +248 -0
- package/library/plugins/materio/assets/scripts/project_plugin.py +165 -0
- package/library/plugins/materio/assets/scripts/research_state.py +400 -0
- package/library/plugins/materio/assets/scripts/verify_citations.py +616 -0
- package/library/plugins/materio/assets/templates/RESEARCH.md +39 -0
- package/library/plugins/materio/assets/templates/VIRTUAL-LAB.md +120 -0
- package/library/plugins/materio/assets/templates/WORKFLOW.md +42 -0
- package/library/plugins/materio/assets/templates/config.json +5 -0
- package/library/plugins/materio/evals/scripts.yaml +29 -0
- package/library/plugins/materio/plugin.json +530 -0
- package/library/plugins/materio/skills/materio-lab-definer/SKILL.md +74 -0
- package/library/plugins/materio/skills/materio-literature-reviewer/SKILL.md +64 -0
- package/library/plugins/materio/skills/materio-research-explorer/SKILL.md +74 -0
- package/library/plugins/materio/skills/materio-task-executor/SKILL.md +214 -0
- package/library/plugins/materio/skills/materio-task-verifier/SKILL.md +46 -0
- package/library/plugins/materio/skills/materio-workflow-planner/SKILL.md +79 -0
- package/library/plugins/materio/tests/test_check_physics.py +139 -0
- package/library/plugins/materio/tests/test_check_scripts.py +140 -0
- package/library/plugins/materio/tests/test_research_state.py +291 -0
- package/library/plugins/materio/tests/test_verify_citations.py +337 -0
- package/library/prompts/README.md +7 -0
- package/library/registry.yaml +921 -0
- package/library/skills/README.md +120 -0
- package/{skills → library/skills}/coding/ast-grep/SKILL.md +1 -1
- package/{skills → library/skills}/coding/ast-grep/evals.md +1 -1
- package/library/skills/coding/ast-grep/plugin.json +23 -0
- package/{skills → library/skills}/coding/coding-standards/SKILL.md +1 -1
- package/{skills → library/skills}/coding/coding-standards/evals.md +1 -1
- package/library/skills/coding/coding-standards/plugin.json +23 -0
- package/{skills → library/skills}/coding/prototype/SKILL.md +1 -1
- package/{skills → library/skills}/coding/prototype/evals.md +1 -1
- package/library/skills/coding/prototype/plugin.json +23 -0
- package/{skills → library/skills}/coding/tdd/SKILL.md +1 -1
- package/{skills → library/skills}/coding/tdd/evals.md +1 -1
- package/library/skills/coding/tdd/plugin.json +23 -0
- package/{skills → library/skills}/context/context-handoff/SKILL.md +1 -1
- package/{skills → library/skills}/context/context-handoff/evals.md +1 -1
- package/library/skills/context/context-handoff/plugin.json +23 -0
- package/{skills → library/skills}/context/context-prime/SKILL.md +1 -1
- package/{skills → library/skills}/context/context-prime/evals.md +1 -1
- package/library/skills/context/context-prime/plugin.json +23 -0
- package/{skills → library/skills}/git/branch-closeout/SKILL.md +1 -1
- package/library/skills/git/branch-closeout/plugin.json +23 -0
- package/{skills → library/skills}/git/file-ticket/SKILL.md +1 -1
- package/library/skills/git/file-ticket/plugin.json +23 -0
- package/{skills → library/skills}/git/fix-issue/SKILL.md +1 -1
- package/library/skills/git/fix-issue/plugin.json +23 -0
- package/{skills → library/skills}/git/resolve-merge-conflicts/SKILL.md +1 -1
- package/{skills → library/skills}/git/resolve-merge-conflicts/evals.md +1 -1
- package/library/skills/git/resolve-merge-conflicts/plugin.json +23 -0
- package/{skills → library/skills}/git/ship/SKILL.md +1 -1
- package/library/skills/git/ship/plugin.json +23 -0
- package/{skills → library/skills}/git/worktree-create/SKILL.md +1 -1
- package/library/skills/git/worktree-create/plugin.json +23 -0
- package/{skills → library/skills}/git/worktree-merge/SKILL.md +1 -1
- package/library/skills/git/worktree-merge/plugin.json +23 -0
- package/{skills → library/skills}/meta/clio-coder-dev/SKILL.md +1 -1
- package/{skills → library/skills}/meta/clio-coder-dev/evals.md +1 -1
- package/library/skills/meta/clio-coder-dev/plugin.json +23 -0
- package/{skills → library/skills}/meta/clio-coder-test/SKILL.md +1 -1
- package/{skills → library/skills}/meta/clio-coder-test/evals.md +1 -1
- package/library/skills/meta/clio-coder-test/plugin.json +23 -0
- package/{skills → library/skills}/meta/credentials/SKILL.md +1 -1
- package/{skills → library/skills}/meta/credentials/evals.md +1 -1
- package/library/skills/meta/credentials/plugin.json +23 -0
- package/library/skills/meta/find-skills/SKILL.md +85 -0
- package/library/skills/meta/find-skills/evals.md +65 -0
- package/library/skills/meta/find-skills/plugin.json +23 -0
- package/{skills → library/skills}/meta/herdr/SKILL.md +1 -1
- package/{skills → library/skills}/meta/herdr/evals.md +1 -1
- package/library/skills/meta/herdr/plugin.json +23 -0
- package/{skills → library/skills}/meta/skill-craft/SKILL.md +23 -9
- package/{skills → library/skills}/meta/skill-craft/evals.md +11 -3
- package/library/skills/meta/skill-craft/plugin.json +23 -0
- package/{skills → library/skills}/planning/archify/SKILL.md +13 -13
- package/library/skills/planning/archify/plugin.json +23 -0
- package/{skills → library/skills}/planning/architecture/SKILL.md +1 -1
- package/{skills → library/skills}/planning/architecture/evals.md +1 -1
- package/library/skills/planning/architecture/plugin.json +23 -0
- package/{skills → library/skills}/planning/backlog/SKILL.md +1 -1
- package/{skills → library/skills}/planning/backlog/evals.md +1 -1
- package/library/skills/planning/backlog/plugin.json +23 -0
- package/{skills → library/skills}/planning/prd/SKILL.md +1 -1
- package/{skills → library/skills}/planning/prd/evals.md +1 -1
- package/library/skills/planning/prd/plugin.json +23 -0
- package/{skills → library/skills}/planning/product-intent/SKILL.md +1 -1
- package/{skills → library/skills}/planning/product-intent/evals.md +1 -1
- package/library/skills/planning/product-intent/plugin.json +23 -0
- package/{skills → library/skills}/planning/tech-spec/SKILL.md +1 -1
- package/{skills → library/skills}/planning/tech-spec/evals.md +1 -1
- package/library/skills/planning/tech-spec/plugin.json +23 -0
- package/{skills → library/skills}/registry.yaml +7 -7
- package/{skills → library/skills}/remote.yaml +1 -1
- package/{skills → library/skills}/research/arxiv-literature/SKILL.md +1 -1
- package/{skills → library/skills}/research/arxiv-literature/evals.md +1 -1
- package/library/skills/research/arxiv-literature/plugin.json +23 -0
- package/{skills → library/skills}/research/experiment-protocol/SKILL.md +1 -1
- package/{skills → library/skills}/research/experiment-protocol/evals.md +1 -1
- package/library/skills/research/experiment-protocol/plugin.json +23 -0
- package/{skills → library/skills}/research/scientific-debugging/SKILL.md +1 -1
- package/{skills → library/skills}/research/scientific-debugging/evals.md +1 -1
- package/library/skills/research/scientific-debugging/plugin.json +23 -0
- package/{skills → library/skills}/research/scientific-modernization/SKILL.md +1 -1
- package/{skills → library/skills}/research/scientific-modernization/evals.md +1 -1
- package/library/skills/research/scientific-modernization/plugin.json +23 -0
- package/{skills → library/skills}/skill-marketplace.json +37 -37
- package/{skills → library/skills}/workflow/cut-it/SKILL.md +1 -1
- package/{skills → library/skills}/workflow/cut-it/evals.md +1 -1
- package/library/skills/workflow/cut-it/plugin.json +23 -0
- package/{skills → library/skills}/workflow/design-council/SKILL.md +1 -1
- package/{skills → library/skills}/workflow/design-council/evals.md +1 -1
- package/library/skills/workflow/design-council/plugin.json +23 -0
- package/{skills → library/skills}/workflow/grill-me/SKILL.md +1 -1
- package/{skills → library/skills}/workflow/grill-me/evals.md +1 -1
- package/library/skills/workflow/grill-me/plugin.json +23 -0
- package/{skills → library/skills}/workflow/workflow-distiller/SKILL.md +14 -11
- package/{skills → library/skills}/workflow/workflow-distiller/evals.md +14 -6
- package/library/skills/workflow/workflow-distiller/plugin.json +23 -0
- package/package.json +12 -5
- package/src/cli/agents.ts +1 -1
- package/src/cli/config-inspect.ts +1 -1
- package/src/cli/configure.ts +2 -2
- package/src/cli/eval.ts +40 -6
- package/src/cli/extensions.ts +74 -8
- package/src/cli/fleet-preflight.ts +2 -0
- package/src/cli/fleet.ts +2 -0
- package/src/cli/index.ts +1 -3
- package/src/cli/interop-inspect.ts +61 -33
- package/src/cli/interop.ts +79 -9
- package/src/cli/library-import.ts +139 -0
- package/src/cli/library.ts +418 -120
- package/src/cli/run.ts +26 -9
- package/src/cli/skills-eval.ts +43 -6
- package/src/cli/skills-inventory.ts +6 -2
- package/src/cli/skills.ts +44 -491
- package/src/core/bus-events.ts +5 -0
- package/src/core/defaults.ts +1 -1
- package/src/core/recent-models.ts +2 -2
- package/src/core/session-routing.ts +3 -3
- package/src/core/state-file-lock.ts +1 -1
- package/src/core/tool-names.ts +5 -0
- package/src/domains/agents/extension.ts +42 -6
- package/src/domains/agents/fleet-commands.ts +92 -1
- package/src/domains/agents/fleet-contract.ts +87 -19
- package/src/domains/agents/recipe.ts +5 -4
- package/src/domains/agents/registry.ts +80 -24
- package/src/domains/config/keybindings.ts +155 -95
- package/src/domains/context/worker/contract.ts +91 -0
- package/src/domains/context/worker/pressure.ts +120 -0
- package/src/domains/context/worker/recall.ts +62 -0
- package/src/domains/context/worker/select.ts +164 -0
- package/src/domains/context/worker/snapshot.ts +35 -0
- package/src/domains/context/worker/store.ts +16 -0
- package/src/domains/context/working-set/replay/synthetic.ts +2 -1
- package/src/domains/dispatch/active-route-planner.ts +2 -0
- package/src/domains/dispatch/backoff.ts +1 -0
- package/src/domains/dispatch/code-step.ts +12 -2
- package/src/domains/dispatch/contract.ts +3 -0
- package/src/domains/dispatch/execution-plan.ts +2 -0
- package/src/domains/dispatch/extension.ts +109 -27
- package/src/domains/dispatch/fleet-plan.ts +10 -0
- package/src/domains/dispatch/fleet-run.ts +1 -0
- package/src/domains/dispatch/orphan-recovery.ts +1 -0
- package/src/domains/dispatch/receipt-integrity.ts +4 -0
- package/src/domains/dispatch/state.ts +1 -0
- package/src/domains/dispatch/types.ts +5 -0
- package/src/domains/dispatch/validation.ts +12 -0
- package/src/domains/dispatch/workspace-checkpoint.ts +1 -1
- package/src/domains/evidence/failure-attribution.ts +1 -0
- package/src/domains/evidence/trust-status.ts +22 -3
- package/src/domains/extensions/command-schema.ts +145 -0
- package/src/domains/extensions/command-tools.ts +15 -0
- package/src/domains/extensions/compatibility.ts +7 -0
- package/src/domains/extensions/contract.ts +0 -4
- package/src/domains/extensions/discovery.ts +69 -205
- package/src/domains/extensions/extension.ts +0 -4
- package/src/domains/extensions/index.ts +1 -5
- package/src/domains/extensions/manager.ts +1 -6
- package/src/domains/extensions/operator-commands.ts +29 -0
- package/src/domains/extensions/operator-runtime.ts +483 -0
- package/src/domains/extensions/public-api.ts +53 -0
- package/src/domains/extensions/runtime-child.mjs +114 -0
- package/src/domains/extensions/runtime-process.ts +306 -0
- package/src/domains/extensions/runtime-schema.ts +146 -0
- package/src/domains/extensions/{resources.ts → snapshot-access.ts} +1 -17
- package/src/domains/extensions/snapshot.ts +4 -32
- package/src/domains/extensions/state.ts +5 -83
- package/src/domains/extensions/types.ts +33 -34
- package/src/domains/interop/adopt.ts +546 -0
- package/src/domains/interop/detect.ts +50 -12
- package/src/domains/interop/foreign.ts +554 -0
- package/src/domains/interop/import.ts +277 -0
- package/src/domains/interop/index.ts +24 -0
- package/src/domains/interop/install.ts +6 -0
- package/src/domains/interop/inventory.ts +351 -0
- package/src/domains/interop/projection.ts +360 -0
- package/src/domains/interop/registry.ts +106 -3
- package/src/domains/interop/types.ts +51 -0
- package/src/domains/lifecycle/migrations/index.ts +0 -2
- package/src/domains/lifecycle/naming-resources.ts +1 -1
- package/src/domains/middleware/marketplace-offer.ts +1 -1
- package/src/domains/mux/contract.ts +1 -1
- package/src/domains/plugins/catalog.ts +204 -0
- package/src/domains/plugins/contract.ts +24 -0
- package/src/domains/plugins/discovery.ts +316 -0
- package/src/domains/plugins/extension.ts +40 -0
- package/src/domains/plugins/index.ts +77 -0
- package/src/domains/plugins/integrity.ts +6 -0
- package/src/domains/plugins/manifest.ts +3 -0
- package/src/domains/plugins/resources.ts +102 -0
- package/src/domains/plugins/state.ts +753 -0
- package/src/domains/plugins/types.ts +217 -0
- package/src/domains/prompts/extension.ts +9 -2
- package/src/domains/prompts/fragments/operating/skills.md +10 -10
- package/src/domains/resources/common-loader.ts +9 -6
- package/src/domains/resources/index.ts +67 -0
- package/src/domains/resources/library-actions.ts +836 -0
- package/src/domains/resources/library-evals.ts +38 -0
- package/src/domains/resources/library-inventory.ts +1048 -0
- package/src/domains/resources/library-types.ts +50 -0
- package/src/domains/resources/library-validation.ts +634 -0
- package/src/domains/resources/library.ts +437 -156
- package/src/domains/resources/package-references.ts +66 -0
- package/src/domains/resources/prompts/loader.ts +75 -41
- package/src/domains/resources/skills/install.ts +2 -2
- package/src/domains/resources/skills/loader.ts +77 -22
- package/src/domains/resources/skills/marketplace.ts +48 -57
- package/src/domains/resources/skills/promotion.ts +2 -2
- package/src/domains/resources/skills/provenance-pin.ts +17 -4
- package/src/domains/safety/action-classifier.ts +2 -2
- package/src/domains/safety/default-path-policy.ts +3 -1
- package/src/domains/safety/policy-engine.ts +1 -1
- package/src/domains/safety/protected-artifacts.ts +21 -5
- package/src/domains/safety/skill-authority.ts +5 -2
- package/src/domains/share/archive.ts +1 -1
- package/src/engine/apis/openai-completions.ts +52 -2
- package/src/engine/notices/pi-tui-LICENSE +21 -0
- package/src/engine/tui.ts +3 -0
- package/src/engine/worker-runtime.ts +58 -14
- package/src/engine/worker-tools.ts +5 -0
- package/src/entry/orchestrator.ts +26 -5
- package/src/entry/plugin-reload.ts +18 -0
- package/src/interactive/application-controller.ts +67 -21
- package/src/interactive/chat-loop.ts +32 -5
- package/src/interactive/chat-panel.ts +5 -1
- package/src/interactive/clio-editor.ts +53 -21
- package/src/interactive/command-output.ts +56 -1
- package/src/interactive/editor-submit.ts +65 -28
- package/src/interactive/fleet-run-preview.ts +2 -0
- package/src/interactive/follow-up-queue-panel.ts +3 -3
- package/src/interactive/footer/dashboard.ts +4 -1
- package/src/interactive/footer/notifications.ts +2 -2
- package/src/interactive/footer/widgets.ts +2 -2
- package/src/interactive/interactive-application.ts +209 -21
- package/src/interactive/interactive-input-runtime.ts +254 -7
- package/src/interactive/interactive-presentation.ts +41 -12
- package/src/interactive/interactive-slash-runtime.ts +37 -8
- package/src/interactive/keybinding-manager.ts +156 -79
- package/src/interactive/keyboard-owner.ts +37 -0
- package/src/interactive/leader-key.ts +49 -102
- package/src/interactive/leader-menu.ts +45 -0
- package/src/interactive/overlay-ask-user-lifecycle.ts +9 -1
- package/src/interactive/overlay-frame.ts +15 -0
- package/src/interactive/overlay-key-routing.ts +46 -47
- package/src/interactive/overlay-lifecycle.ts +30 -15
- package/src/interactive/overlay-resource-openers.ts +56 -46
- package/src/interactive/overlays/ask-user.ts +630 -556
- package/src/interactive/overlays/extension-panel.ts +70 -0
- package/src/interactive/overlays/extensions.ts +28 -5
- package/src/interactive/overlays/fleet-run-approval.ts +7 -3
- package/src/interactive/overlays/help-reference.ts +89 -40
- package/src/interactive/overlays/interop.ts +122 -3
- package/src/interactive/overlays/keybinding-detail.ts +2 -2
- package/src/interactive/overlays/library-lifecycle.ts +90 -0
- package/src/interactive/overlays/library-model.ts +574 -0
- package/src/interactive/overlays/library-review.ts +557 -0
- package/src/interactive/overlays/library-tabs.ts +3 -15
- package/src/interactive/overlays/library.ts +602 -0
- package/src/interactive/overlays/list-overlay.ts +218 -39
- package/src/interactive/overlays/model-selector.ts +28 -25
- package/src/interactive/overlays/session-selector.ts +9 -3
- package/src/interactive/overlays/settings.ts +25 -18
- package/src/interactive/overlays/tree-selector.ts +16 -11
- package/src/interactive/permission-hint.ts +13 -0
- package/src/interactive/permission-overlay.ts +77 -28
- package/src/interactive/prompt-source-label.ts +21 -0
- package/src/interactive/renderers/reference-card.ts +35 -0
- package/src/interactive/renderers/worker-entry.ts +35 -3
- package/src/interactive/slash-autocomplete.ts +99 -1
- package/src/interactive/slash-commands.ts +390 -67
- package/src/interactive/slash-spec.ts +0 -1
- package/src/interactive/terminal-lease.ts +44 -12
- package/src/interactive/turn-queues.ts +8 -7
- package/src/interactive/turn-runtime.ts +1 -1
- package/src/interactive/view/view-overlay.ts +19 -14
- package/src/interactive/welcome-dashboard.ts +525 -408
- package/src/tools/bootstrap.ts +8 -0
- package/src/tools/builtin-tool-catalog.ts +7 -2
- package/src/tools/context/index.ts +58 -5
- package/src/tools/context/library.ts +465 -0
- package/src/tools/context/surface.ts +20 -6
- package/src/tools/core-bootstrap.ts +3 -0
- package/src/tools/dispatch-admission.ts +24 -1
- package/src/tools/dispatch-arguments.ts +8 -0
- package/src/tools/dispatch-plan.ts +32 -0
- package/src/tools/dispatch-schema.ts +31 -1
- package/src/tools/dispatch-types.ts +3 -0
- package/src/tools/dispatch.ts +1 -1
- package/src/tools/harness-extensions.ts +169 -0
- package/src/tools/observation.ts +4 -0
- package/src/tools/policy.ts +7 -1
- package/src/tools/registry.ts +19 -1
- package/src/tools/worker-evidence.ts +5 -0
- package/src/worker/context-seed.ts +192 -0
- package/src/worker/entry.ts +1 -0
- package/src/worker/spec-contract.ts +8 -1
- package/dist/chunk-3UW3KU4A.js +0 -21
- package/dist/chunk-536HXRFE.js +0 -1257
- package/dist/chunk-B3MOMLJ4.js +0 -433
- package/dist/chunk-CXQ37WJH.js +0 -45
- package/dist/chunk-KTFSFCVN.js +0 -46
- package/dist/chunk-QCOV5DFY.js +0 -911
- package/dist/chunk-QRFXEO6Y.js +0 -17
- package/dist/chunk-VAHLPXPY.js +0 -399
- package/dist/interop-RVCAYECG.js +0 -115
- package/dist/library-CTKZA7K3.js +0 -226
- package/dist/skills-OXFEAWMT.js +0 -510
- package/skills/README.md +0 -418
- package/skills/meta/find-skills/SKILL.md +0 -78
- package/skills/meta/find-skills/evals.md +0 -47
- package/src/domains/extensions/resource-path.ts +0 -27
- package/src/domains/lifecycle/migrations/2026-09-01-extension-install-digests.ts +0 -27
- package/src/interactive/overlays/agents.ts +0 -70
- package/src/interactive/overlays/library-install-confirm.ts +0 -152
- package/src/interactive/overlays/prompts.ts +0 -89
- package/src/interactive/overlays/skills-hub.ts +0 -615
- /package/{skills → library/skills}/coding/ast-grep/references/rule_reference.md +0 -0
- /package/{skills → library/skills}/coding/prototype/references/LOGIC.md +0 -0
- /package/{skills → library/skills}/coding/prototype/references/UI.md +0 -0
- /package/{skills → library/skills}/coding/tdd/references/mocking.md +0 -0
- /package/{skills → library/skills}/coding/tdd/references/tests.md +0 -0
- /package/{skills → library/skills}/context/context-handoff/scripts/new-handoff.sh +0 -0
- /package/{skills → library/skills}/git/branch-closeout/evals.md +0 -0
- /package/{skills → library/skills}/git/branch-closeout/references/closeout-checklist.md +0 -0
- /package/{skills → library/skills}/git/file-ticket/assets/issue-template.md +0 -0
- /package/{skills → library/skills}/git/file-ticket/evals.md +0 -0
- /package/{skills → library/skills}/git/file-ticket/references/issue-discovery.md +0 -0
- /package/{skills → library/skills}/git/fix-issue/evals.md +0 -0
- /package/{skills → library/skills}/git/fix-issue/references/diagnosis-and-rca.md +0 -0
- /package/{skills → library/skills}/git/resolve-merge-conflicts/references/conflict-matrix.md +0 -0
- /package/{skills → library/skills}/git/ship/assets/pr-template.md +0 -0
- /package/{skills → library/skills}/git/ship/evals.md +0 -0
- /package/{skills → library/skills}/git/ship/references/remote-and-branch-policy.md +0 -0
- /package/{skills → library/skills}/git/worktree-create/evals.md +0 -0
- /package/{skills → library/skills}/git/worktree-create/references/worktree-setup.md +0 -0
- /package/{skills → library/skills}/git/worktree-merge/evals.md +0 -0
- /package/{skills → library/skills}/git/worktree-merge/references/merge-strategies.md +0 -0
- /package/{skills → library/skills}/meta/clio-coder-test/references/harness.md +0 -0
- /package/{skills → library/skills}/meta/clio-coder-test/references/test-map.md +0 -0
- /package/{skills → library/skills}/planning/archify/evals.md +0 -0
package/dist/worker/entry.js
CHANGED
|
@@ -13,21 +13,25 @@ import {
|
|
|
13
13
|
lockedSynthesisRepromptMessages,
|
|
14
14
|
patchWorkerRequestPayload,
|
|
15
15
|
registerCoreTools,
|
|
16
|
+
registerHarnessExtensionTools,
|
|
16
17
|
resolveAgentTools,
|
|
17
18
|
resolveDeliveryTools,
|
|
18
19
|
sanitizeLockedSynthesisMessage,
|
|
19
20
|
workerLoopBlockBudget
|
|
20
|
-
} from "../chunk-
|
|
21
|
-
import "../chunk-JABWPKFY.js";
|
|
21
|
+
} from "../chunk-CE64C5K5.js";
|
|
22
22
|
import {
|
|
23
23
|
createMiddlewareContractFromSnapshot,
|
|
24
24
|
createMiddlewareToolChoiceControl,
|
|
25
25
|
shouldRequestStalledTurnContinuation
|
|
26
|
-
} from "../chunk-
|
|
27
|
-
import "../chunk-
|
|
28
|
-
import
|
|
29
|
-
|
|
30
|
-
|
|
26
|
+
} from "../chunk-MBJO5VNZ.js";
|
|
27
|
+
import "../chunk-JABWPKFY.js";
|
|
28
|
+
import {
|
|
29
|
+
readLayeredSettings
|
|
30
|
+
} from "../chunk-4MFBBY2Z.js";
|
|
31
|
+
import "../chunk-CPXGJI2A.js";
|
|
32
|
+
import "../chunk-MZHXENL7.js";
|
|
33
|
+
import "../chunk-ZGIGW4ZG.js";
|
|
34
|
+
import "../chunk-HRAKUPIH.js";
|
|
31
35
|
import "../chunk-XCUDZQLX.js";
|
|
32
36
|
import "../chunk-K2BLQC5E.js";
|
|
33
37
|
import {
|
|
@@ -46,29 +50,28 @@ import {
|
|
|
46
50
|
startAntigravityWorkerRun,
|
|
47
51
|
startClaudeCodeWorkerRun,
|
|
48
52
|
validateRehydratedWorkerRuntime
|
|
49
|
-
} from "../chunk-
|
|
50
|
-
import
|
|
53
|
+
} from "../chunk-NO7J45X6.js";
|
|
54
|
+
import {
|
|
55
|
+
contextHash,
|
|
56
|
+
messageToolCalls,
|
|
57
|
+
seededWorkerMessages
|
|
58
|
+
} from "../chunk-T4TY5GG3.js";
|
|
51
59
|
import "../chunk-YPRSNUTC.js";
|
|
52
60
|
import {
|
|
53
61
|
describeCallTarget
|
|
54
62
|
} from "../chunk-2GPGAE5W.js";
|
|
63
|
+
import "../chunk-OH3YYA3B.js";
|
|
64
|
+
import "../chunk-24S3DN22.js";
|
|
55
65
|
import "../chunk-SL2RDHKO.js";
|
|
56
66
|
import "../chunk-YGDMBK7O.js";
|
|
57
67
|
import "../chunk-V552WL53.js";
|
|
58
|
-
import "../chunk-
|
|
68
|
+
import "../chunk-IZYTT3CD.js";
|
|
59
69
|
import "../chunk-KECNXMDE.js";
|
|
60
70
|
import "../chunk-WXA2CFJO.js";
|
|
61
|
-
import "../chunk-
|
|
62
|
-
import "../chunk-
|
|
63
|
-
import {
|
|
64
|
-
RESULT_CONTRACT_REPAIR_LIMIT,
|
|
65
|
-
parseWorkerResultContract,
|
|
66
|
-
resultContractRepairMessages,
|
|
67
|
-
validateResultContract
|
|
68
|
-
} from "../chunk-OQM5IVJY.js";
|
|
71
|
+
import "../chunk-GEVQNST4.js";
|
|
72
|
+
import "../chunk-3LXJOICS.js";
|
|
69
73
|
import "../chunk-L4N3DWNW.js";
|
|
70
|
-
import "../chunk-
|
|
71
|
-
import "../chunk-GH5ZR6JP.js";
|
|
74
|
+
import "../chunk-BAU36233.js";
|
|
72
75
|
import {
|
|
73
76
|
UNKNOWN_RESOURCE,
|
|
74
77
|
WORKER_PROTOCOL_VERSION,
|
|
@@ -84,6 +87,9 @@ import {
|
|
|
84
87
|
withinFrameBudget,
|
|
85
88
|
workerSpecDigest
|
|
86
89
|
} from "../chunk-VQD7NH7Z.js";
|
|
90
|
+
import {
|
|
91
|
+
deleteInjectedCompileCacheFrom
|
|
92
|
+
} from "../chunk-CKK25WN3.js";
|
|
87
93
|
import "../chunk-O3VV6IVK.js";
|
|
88
94
|
import {
|
|
89
95
|
agentSkillToolPolicy
|
|
@@ -95,65 +101,91 @@ import {
|
|
|
95
101
|
createLoopState,
|
|
96
102
|
isSubset,
|
|
97
103
|
observe
|
|
98
|
-
} from "../chunk-
|
|
104
|
+
} from "../chunk-BQQ5MXUC.js";
|
|
99
105
|
import {
|
|
100
106
|
createSafetyPolicyEngine
|
|
101
|
-
} from "../chunk-
|
|
102
|
-
import "../chunk-
|
|
107
|
+
} from "../chunk-DLIYANB7.js";
|
|
108
|
+
import "../chunk-24TOGHPO.js";
|
|
103
109
|
import {
|
|
104
110
|
FileKnowledgeBase,
|
|
105
111
|
applyModelCapabilityPatch,
|
|
112
|
+
estimateInputTokensFromContext,
|
|
106
113
|
loadPluginRuntimes,
|
|
107
114
|
registerClioApiProviders,
|
|
108
115
|
resolveModelRuntimeCapabilitiesForModel,
|
|
109
116
|
resolveProviderKnowledgeBaseRoots,
|
|
117
|
+
resolveReservedOutputTokens,
|
|
110
118
|
setGlobalDefaultMaxOutputTokens,
|
|
111
119
|
setProtectedModelsProvider,
|
|
112
120
|
setResidencyNoticeSink
|
|
113
|
-
} from "../chunk-
|
|
121
|
+
} from "../chunk-WT5TRMO4.js";
|
|
114
122
|
import "../chunk-MCJKEGHO.js";
|
|
115
|
-
import "../chunk-77CZRFTE.js";
|
|
116
123
|
import {
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
import "../chunk-KQ6IDQIB.js";
|
|
123
|
-
import "../chunk-PZN2LQY6.js";
|
|
124
|
-
import "../chunk-R2P2U3ZS.js";
|
|
125
|
-
import "../chunk-NTTS3O53.js";
|
|
126
|
-
import "../chunk-M4KFUXS7.js";
|
|
127
|
-
import "../chunk-J2FYEQ5L.js";
|
|
124
|
+
estimateAgentContextBreakdown,
|
|
125
|
+
estimateAgentMessageTokens
|
|
126
|
+
} from "../chunk-77CZRFTE.js";
|
|
127
|
+
import "../chunk-BO4XV5VX.js";
|
|
128
|
+
import "../chunk-VTYHHQ57.js";
|
|
128
129
|
import {
|
|
129
130
|
DEFAULT_AUTONOMY_LEVEL
|
|
130
131
|
} from "../chunk-EM2WNQS2.js";
|
|
131
|
-
import {
|
|
132
|
-
readSettings,
|
|
133
|
-
validateSettingsFile
|
|
134
|
-
} from "../chunk-WNGF5AJX.js";
|
|
135
|
-
import "../chunk-DVNAPPXU.js";
|
|
136
|
-
import "../chunk-5CY4Q6QI.js";
|
|
137
132
|
import "../chunk-FQOOGXBH.js";
|
|
138
133
|
import "../chunk-UHW5V7HC.js";
|
|
139
134
|
import "../chunk-B6UM3OZC.js";
|
|
140
135
|
import "../chunk-MYI32N4R.js";
|
|
141
|
-
import {
|
|
142
|
-
ToolNames
|
|
143
|
-
} from "../chunk-EHOSNVVM.js";
|
|
144
136
|
import "../chunk-KMF54VH3.js";
|
|
145
137
|
import "../chunk-5A6XR3RJ.js";
|
|
146
138
|
import "../chunk-EFSEIZE6.js";
|
|
147
139
|
import "../chunk-B5ZTR6KZ.js";
|
|
148
|
-
import "../chunk-
|
|
140
|
+
import "../chunk-6CB2IL4N.js";
|
|
149
141
|
import "../chunk-3A3CUMKA.js";
|
|
142
|
+
import {
|
|
143
|
+
registerBuiltinRuntimes
|
|
144
|
+
} from "../chunk-SELG4SUR.js";
|
|
145
|
+
import "../chunk-KS7ETA3P.js";
|
|
146
|
+
import "../chunk-6TAATXXH.js";
|
|
147
|
+
import "../chunk-VNBICSS2.js";
|
|
148
|
+
import {
|
|
149
|
+
getRuntimeRegistry
|
|
150
|
+
} from "../chunk-SRCEQKQS.js";
|
|
151
|
+
import "../chunk-TN5FW4XY.js";
|
|
152
|
+
import {
|
|
153
|
+
engineStreamSimple,
|
|
154
|
+
registerFauxFromEnv
|
|
155
|
+
} from "../chunk-5CMARGPF.js";
|
|
156
|
+
import "../chunk-DXVMLM3Z.js";
|
|
157
|
+
import "../chunk-SER7RRAE.js";
|
|
158
|
+
import {
|
|
159
|
+
RESULT_CONTRACT_REPAIR_LIMIT,
|
|
160
|
+
parseWorkerResultContract,
|
|
161
|
+
resultContractRepairMessages,
|
|
162
|
+
validateResultContract
|
|
163
|
+
} from "../chunk-34XHRVKG.js";
|
|
164
|
+
import "../chunk-XW2UZICE.js";
|
|
165
|
+
import {
|
|
166
|
+
readSettings
|
|
167
|
+
} from "../chunk-4QKAITQT.js";
|
|
168
|
+
import "../chunk-DVNAPPXU.js";
|
|
169
|
+
import "../chunk-5EQO5NWP.js";
|
|
170
|
+
import {
|
|
171
|
+
classify
|
|
172
|
+
} from "../chunk-HOX4YZ2K.js";
|
|
173
|
+
import {
|
|
174
|
+
protectedArtifactMutationBlockReason
|
|
175
|
+
} from "../chunk-2O2LVQQK.js";
|
|
176
|
+
import "../chunk-KQ6IDQIB.js";
|
|
177
|
+
import "../chunk-GH5ZR6JP.js";
|
|
178
|
+
import "../chunk-R2P2U3ZS.js";
|
|
179
|
+
import "../chunk-NTTS3O53.js";
|
|
180
|
+
import "../chunk-M4KFUXS7.js";
|
|
181
|
+
import {
|
|
182
|
+
ToolNames
|
|
183
|
+
} from "../chunk-WLHX3MM5.js";
|
|
184
|
+
import "../chunk-GD55RTIW.js";
|
|
150
185
|
import {
|
|
151
186
|
readClioVersion
|
|
152
187
|
} from "../chunk-E3LEPLQ2.js";
|
|
153
|
-
import
|
|
154
|
-
registerBuiltinRuntimes
|
|
155
|
-
} from "../chunk-WV6TDAPN.js";
|
|
156
|
-
import "../chunk-3BJGMT2D.js";
|
|
188
|
+
import "../chunk-3XE4NRLF.js";
|
|
157
189
|
import "../chunk-U2MSJ57E.js";
|
|
158
190
|
import {
|
|
159
191
|
configureGuardrails,
|
|
@@ -170,25 +202,15 @@ import "../chunk-6EXUUOSN.js";
|
|
|
170
202
|
import {
|
|
171
203
|
AI_AGENT_NAME
|
|
172
204
|
} from "../chunk-ZTNFYMIO.js";
|
|
173
|
-
import "../chunk-
|
|
174
|
-
import "../chunk-HXHFDHB6.js";
|
|
175
|
-
import "../chunk-VNBICSS2.js";
|
|
176
|
-
import "../chunk-2QPI3TR3.js";
|
|
205
|
+
import "../chunk-DVJL77SO.js";
|
|
177
206
|
import "../chunk-TK2BMCBZ.js";
|
|
178
207
|
import "../chunk-B5GGDIHT.js";
|
|
179
|
-
import "../chunk-ZZFWWYLX.js";
|
|
180
|
-
import {
|
|
181
|
-
getRuntimeRegistry
|
|
182
|
-
} from "../chunk-SRCEQKQS.js";
|
|
183
|
-
import "../chunk-TN5FW4XY.js";
|
|
184
208
|
import {
|
|
185
|
-
|
|
186
|
-
} from "../chunk-
|
|
187
|
-
import "../chunk-DXVMLM3Z.js";
|
|
209
|
+
safeResourceWrite
|
|
210
|
+
} from "../chunk-ZZFWWYLX.js";
|
|
188
211
|
import {
|
|
189
|
-
|
|
190
|
-
} from "../chunk-
|
|
191
|
-
import "../chunk-CTTI7G3T.js";
|
|
212
|
+
clioStateDir
|
|
213
|
+
} from "../chunk-CTTI7G3T.js";
|
|
192
214
|
import {
|
|
193
215
|
init_esm_shims
|
|
194
216
|
} from "../chunk-ECBHH7LU.js";
|
|
@@ -198,6 +220,151 @@ init_esm_shims();
|
|
|
198
220
|
|
|
199
221
|
// src/engine/worker-runtime.ts
|
|
200
222
|
init_esm_shims();
|
|
223
|
+
|
|
224
|
+
// src/domains/context/worker/pressure.ts
|
|
225
|
+
init_esm_shims();
|
|
226
|
+
var WorkerContextExhaustedError = class extends Error {
|
|
227
|
+
};
|
|
228
|
+
function createWorkerContextGuard(archive) {
|
|
229
|
+
const evicted = /* @__PURE__ */ new Map();
|
|
230
|
+
let calls = 0;
|
|
231
|
+
let firstInputLength = 0;
|
|
232
|
+
let lastRequestTokens = 0;
|
|
233
|
+
let anchorKey = "";
|
|
234
|
+
let anchorUsage = 0;
|
|
235
|
+
let anchorFootprint = 0;
|
|
236
|
+
return (input) => {
|
|
237
|
+
const ceiling = Math.min(
|
|
238
|
+
Math.floor(input.contextWindow * (input.threshold ?? 0.8)),
|
|
239
|
+
input.contextWindow - input.outputReserve
|
|
240
|
+
);
|
|
241
|
+
const key = (message) => contextHash(message);
|
|
242
|
+
const messages = input.messages.map((message) => evicted.get(key(message)) ?? message);
|
|
243
|
+
const breakdown = estimateAgentContextBreakdown({ systemPrompt: input.systemPrompt, tools: input.tools, messages });
|
|
244
|
+
let structural = Object.values(breakdown).reduce((sum, value) => sum + value, 0);
|
|
245
|
+
if (calls === 0) firstInputLength = input.messages.length;
|
|
246
|
+
else {
|
|
247
|
+
for (let index = messages.length - 1; index >= firstInputLength; index--) {
|
|
248
|
+
const message = messages[index];
|
|
249
|
+
if (message?.role !== "assistant" || !message.usage || message.stopReason === "error" || message.stopReason === "aborted")
|
|
250
|
+
continue;
|
|
251
|
+
const usage = message.usage;
|
|
252
|
+
const actual = usage.input + usage.output + usage.cacheRead + usage.cacheWrite;
|
|
253
|
+
const nextKey = key(message);
|
|
254
|
+
if (nextKey !== anchorKey) {
|
|
255
|
+
anchorKey = nextKey;
|
|
256
|
+
anchorUsage = Number.isFinite(actual) && actual > 0 ? actual : 0;
|
|
257
|
+
anchorFootprint = lastRequestTokens + estimateAgentMessageTokens(message);
|
|
258
|
+
}
|
|
259
|
+
break;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
const count = () => Math.max(structural, anchorUsage > 0 ? anchorUsage + structural - anchorFootprint : 0);
|
|
263
|
+
const accepted = () => {
|
|
264
|
+
calls++;
|
|
265
|
+
lastRequestTokens = structural;
|
|
266
|
+
return messages;
|
|
267
|
+
};
|
|
268
|
+
const replace = (index, original, projected) => {
|
|
269
|
+
const saved = estimateAgentMessageTokens(original) - estimateAgentMessageTokens(projected);
|
|
270
|
+
if (saved <= 0) return;
|
|
271
|
+
evicted.set(key(original), projected);
|
|
272
|
+
messages[index] = projected;
|
|
273
|
+
structural -= saved;
|
|
274
|
+
};
|
|
275
|
+
if (count() <= ceiling) return accepted();
|
|
276
|
+
if (calls === 0)
|
|
277
|
+
throw new WorkerContextExhaustedError(
|
|
278
|
+
"worker context: initial request leaves insufficient context headroom; use a smaller splice"
|
|
279
|
+
);
|
|
280
|
+
if (input.autoEvict === false)
|
|
281
|
+
throw new WorkerContextExhaustedError("worker context: context budget exhausted with automatic eviction disabled");
|
|
282
|
+
const assistantIndices = input.messages.flatMap((message, index) => message.role === "assistant" ? [index] : []);
|
|
283
|
+
const cutoff = assistantIndices[Math.max(0, assistantIndices.length - 2)] ?? 0;
|
|
284
|
+
const toolCalls = new Map(input.messages.flatMap(messageToolCalls).map((call) => [call.id, call]));
|
|
285
|
+
for (let index = 0; index < cutoff && count() > ceiling; index++) {
|
|
286
|
+
const message = input.messages[index];
|
|
287
|
+
if (!message || evicted.has(key(message))) continue;
|
|
288
|
+
if (message.role === "assistant") {
|
|
289
|
+
const content = message.content.filter((block) => block.type !== "thinking");
|
|
290
|
+
if (content.length === 0 || content.length === message.content.length) continue;
|
|
291
|
+
const projected = { ...message, content };
|
|
292
|
+
replace(index, message, projected);
|
|
293
|
+
} else if (message.role === "toolResult" && !message.isError) {
|
|
294
|
+
const name = toolCalls.get(message.toolCallId)?.name;
|
|
295
|
+
if (!name || !["read", "grep", "find", "ls", "code_nav", "web_fetch"].includes(name)) continue;
|
|
296
|
+
if (JSON.stringify(message.content).length < 1e3) continue;
|
|
297
|
+
const ref = key(message);
|
|
298
|
+
const file = archive(ref, structuredClone(message));
|
|
299
|
+
const projected = {
|
|
300
|
+
...message,
|
|
301
|
+
content: [
|
|
302
|
+
{
|
|
303
|
+
type: "text",
|
|
304
|
+
text: `[Worker context observation worker:${ref} evicted. Recover with context(scope="recall", ref="worker:${ref}"). Exact historical result: ${file}. Read that file if needed; reread the source for current contents.]`
|
|
305
|
+
}
|
|
306
|
+
]
|
|
307
|
+
};
|
|
308
|
+
replace(index, message, projected);
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
if (count() > ceiling)
|
|
312
|
+
throw new WorkerContextExhaustedError(
|
|
313
|
+
"worker context: protected task context exceeds available headroom after reversible eviction"
|
|
314
|
+
);
|
|
315
|
+
return accepted();
|
|
316
|
+
};
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
// src/domains/context/worker/recall.ts
|
|
320
|
+
init_esm_shims();
|
|
321
|
+
import { readFileSync } from "node:fs";
|
|
322
|
+
import { join } from "node:path";
|
|
323
|
+
function createWorkerObservationStore() {
|
|
324
|
+
const records = /* @__PURE__ */ new Map();
|
|
325
|
+
return {
|
|
326
|
+
archive(ref, message) {
|
|
327
|
+
if (contextHash(message) !== ref) throw new Error("worker context: observation digest mismatch");
|
|
328
|
+
const file = join(clioStateDir(), "context-observations", `${ref}.json`);
|
|
329
|
+
safeResourceWrite(file, `${JSON.stringify(message)}
|
|
330
|
+
`, { mode: 384 });
|
|
331
|
+
records.set(`worker:${ref}`, { file, label: message.role === "toolResult" ? message.toolName : message.role });
|
|
332
|
+
return file;
|
|
333
|
+
},
|
|
334
|
+
recall(args) {
|
|
335
|
+
if (args.ref !== void 0) {
|
|
336
|
+
const ref = typeof args.ref === "string" ? args.ref.trim() : "";
|
|
337
|
+
const record = records.get(ref);
|
|
338
|
+
if (!record) return { error: "ref is not an evicted observation from this worker run" };
|
|
339
|
+
try {
|
|
340
|
+
const body = readFileSync(record.file, "utf8");
|
|
341
|
+
if (`worker:${contextHash(JSON.parse(body))}` !== ref) return { error: "observation digest mismatch" };
|
|
342
|
+
return { body: `Historical observation ${ref}; this is not a new source read.
|
|
343
|
+
${body}`, total: 1, shown: 1 };
|
|
344
|
+
} catch {
|
|
345
|
+
return { error: "persisted worker observation is unavailable or malformed" };
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
const query = typeof args.query === "string" ? args.query.trim().toLowerCase() : "";
|
|
349
|
+
const limit = typeof args.limit === "number" && Number.isSafeInteger(args.limit) ? Math.max(1, Math.min(12, args.limit)) : 8;
|
|
350
|
+
const offset = typeof args.offset === "number" && Number.isSafeInteger(args.offset) ? Math.max(0, args.offset) : 0;
|
|
351
|
+
const matches = [...records].map(([ref, item]) => `${ref} ${item.label}`).filter((line) => line.toLowerCase().includes(query));
|
|
352
|
+
const page = matches.slice(offset, offset + limit);
|
|
353
|
+
const nextOffset = offset + page.length < matches.length ? offset + page.length : void 0;
|
|
354
|
+
return {
|
|
355
|
+
body: [
|
|
356
|
+
...page,
|
|
357
|
+
nextOffset === void 0 ? "End of this worker's evicted observations." : `More observations: offset=${nextOffset}.`
|
|
358
|
+
].join("\n"),
|
|
359
|
+
total: matches.length,
|
|
360
|
+
shown: page.length,
|
|
361
|
+
...nextOffset === void 0 ? {} : { nextOffset }
|
|
362
|
+
};
|
|
363
|
+
}
|
|
364
|
+
};
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
// src/engine/worker-runtime.ts
|
|
201
368
|
import path from "node:path";
|
|
202
369
|
|
|
203
370
|
// src/engine/claude/sdk-runtime.ts
|
|
@@ -286,7 +453,7 @@ function fallbackRejection(policy) {
|
|
|
286
453
|
hints: []
|
|
287
454
|
};
|
|
288
455
|
}
|
|
289
|
-
function createWorkerToolRegistry(middlewareSnapshot, safety = createWorkerSafety(), skillLoaderOptions, hookRegistrations, autonomy, onMiddlewareEffects, agentLedger) {
|
|
456
|
+
function createWorkerToolRegistry(middlewareSnapshot, safety = createWorkerSafety(), skillLoaderOptions, hookRegistrations, autonomy, onMiddlewareEffects, agentLedger, workerRecall) {
|
|
290
457
|
const middleware = createMiddlewareContractFromSnapshot(middlewareSnapshot ?? { version: 1, rules: [] });
|
|
291
458
|
for (const registration2 of hookRegistrations ?? []) {
|
|
292
459
|
middleware.registerHook(registration2);
|
|
@@ -299,6 +466,7 @@ function createWorkerToolRegistry(middlewareSnapshot, safety = createWorkerSafet
|
|
|
299
466
|
});
|
|
300
467
|
const registration = registerCoreTools(registry, {
|
|
301
468
|
includeLedgerTools: true,
|
|
469
|
+
...workerRecall ? { workerRecall } : {},
|
|
302
470
|
...agentLedger ? { agentLedger } : {},
|
|
303
471
|
// A worker cannot install a skill or reach the operator who could, so
|
|
304
472
|
// its skill listing carries installed (or bound) skills only; the
|
|
@@ -311,6 +479,7 @@ function createWorkerToolRegistry(middlewareSnapshot, safety = createWorkerSafet
|
|
|
311
479
|
})
|
|
312
480
|
});
|
|
313
481
|
assertRegisteredBuiltinTools(registry, registration, false);
|
|
482
|
+
registerHarnessExtensionTools(registry);
|
|
314
483
|
return registry;
|
|
315
484
|
}
|
|
316
485
|
function attestedToolSignature(input) {
|
|
@@ -1001,6 +1170,8 @@ function resolveWorkerRuntimeBudget(input) {
|
|
|
1001
1170
|
}
|
|
1002
1171
|
function startWorkerRun(input, emit) {
|
|
1003
1172
|
assertResponseSchemaRuntime(input);
|
|
1173
|
+
if (input.contextSeed && input.runtime.kind !== "http")
|
|
1174
|
+
throw new Error("worker context: history seeds require a native Pi runtime");
|
|
1004
1175
|
if (input.resultContract !== void 0) parseWorkerResultContract(input.resultContract, "WorkerSpec.resultContract");
|
|
1005
1176
|
if (input.runtime.id === "claude-sdk") {
|
|
1006
1177
|
return startClaudeSdkWorkerRun(input, emit);
|
|
@@ -1012,7 +1183,7 @@ function startWorkerRun(input, emit) {
|
|
|
1012
1183
|
return startAntigravityWorkerRun(input, emit);
|
|
1013
1184
|
}
|
|
1014
1185
|
registerClioApiProviders();
|
|
1015
|
-
const workerSettings =
|
|
1186
|
+
const workerSettings = readLayeredSettings(input.cwd ?? process.cwd()).settings;
|
|
1016
1187
|
setGlobalDefaultMaxOutputTokens(workerSettings.chat.maxOutputTokens);
|
|
1017
1188
|
configureGuardrails(guardrailValuesFromSettings(workerSettings));
|
|
1018
1189
|
const fauxModel = registerFauxFromEnv();
|
|
@@ -1073,6 +1244,7 @@ function startWorkerRun(input, emit) {
|
|
|
1073
1244
|
}
|
|
1074
1245
|
} : {}
|
|
1075
1246
|
});
|
|
1247
|
+
const observations = createWorkerObservationStore();
|
|
1076
1248
|
const registry = createWorkerToolRegistry(
|
|
1077
1249
|
input.middlewareSnapshot,
|
|
1078
1250
|
safety,
|
|
@@ -1098,7 +1270,8 @@ function startWorkerRun(input, emit) {
|
|
|
1098
1270
|
],
|
|
1099
1271
|
input.autonomy,
|
|
1100
1272
|
(effects) => middlewareToolChoice.apply(effects),
|
|
1101
|
-
input.agentLedger
|
|
1273
|
+
input.agentLedger,
|
|
1274
|
+
observations.recall
|
|
1102
1275
|
);
|
|
1103
1276
|
const contractCwd = input.cwd ?? process.cwd();
|
|
1104
1277
|
let resultContractRepairsQueued = 0;
|
|
@@ -1181,13 +1354,46 @@ function startWorkerRun(input, emit) {
|
|
|
1181
1354
|
model,
|
|
1182
1355
|
input.runtimeResolution?.effectiveThinkingLevel ?? input.thinkingLevel
|
|
1183
1356
|
);
|
|
1357
|
+
const inheritedMessages = seededWorkerMessages(input.contextSeed);
|
|
1358
|
+
const inheritedCount = inheritedMessages.length;
|
|
1359
|
+
const contextGuard = createWorkerContextGuard(observations.archive);
|
|
1184
1360
|
const options = {
|
|
1361
|
+
streamFn: (currentModel, currentContext, streamOptions) => {
|
|
1362
|
+
const window = input.runtimeResolution?.capabilities.contextWindow ?? currentModel.contextWindow;
|
|
1363
|
+
let messages;
|
|
1364
|
+
try {
|
|
1365
|
+
messages = contextGuard({
|
|
1366
|
+
messages: currentContext.messages,
|
|
1367
|
+
systemPrompt: currentContext.systemPrompt ?? "",
|
|
1368
|
+
tools: currentContext.tools ?? [],
|
|
1369
|
+
contextWindow: window,
|
|
1370
|
+
threshold: workerSettings.context.compaction.threshold,
|
|
1371
|
+
autoEvict: workerSettings.context.compaction.auto && workerSettings.context.workingSet.enabled,
|
|
1372
|
+
outputReserve: resolveReservedOutputTokens(currentModel.maxTokens, {
|
|
1373
|
+
api: currentModel.api,
|
|
1374
|
+
contextWindow: window,
|
|
1375
|
+
inputTokens: estimateInputTokensFromContext(currentContext)
|
|
1376
|
+
})
|
|
1377
|
+
});
|
|
1378
|
+
} catch (error) {
|
|
1379
|
+
if (error instanceof WorkerContextExhaustedError) {
|
|
1380
|
+
workerBoundFailure = error.message;
|
|
1381
|
+
emit({ type: "clio_coder_run_outcome", payload: { outcomeCode: "worker_context_exhausted" } });
|
|
1382
|
+
}
|
|
1383
|
+
throw error;
|
|
1384
|
+
}
|
|
1385
|
+
return engineStreamSimple(
|
|
1386
|
+
currentModel,
|
|
1387
|
+
{ ...currentContext, messages },
|
|
1388
|
+
streamOptions
|
|
1389
|
+
);
|
|
1390
|
+
},
|
|
1185
1391
|
initialState: {
|
|
1186
1392
|
systemPrompt: input.systemPrompt,
|
|
1187
1393
|
model,
|
|
1188
1394
|
thinkingLevel: effectiveThinkingLevel,
|
|
1189
1395
|
tools,
|
|
1190
|
-
messages:
|
|
1396
|
+
messages: inheritedMessages
|
|
1191
1397
|
},
|
|
1192
1398
|
onPayload: async (payload, currentModel) => {
|
|
1193
1399
|
const middlewareChoice = middlewareToolChoice.current();
|
|
@@ -1459,12 +1665,12 @@ function startWorkerRun(input, emit) {
|
|
|
1459
1665
|
await agent.waitForIdle();
|
|
1460
1666
|
unsubscribe();
|
|
1461
1667
|
if (workerBoundFailure !== null) {
|
|
1462
|
-
return { messages: agent.state.messages, exitCode: 1 };
|
|
1668
|
+
return { messages: agent.state.messages.slice(inheritedCount), exitCode: 1 };
|
|
1463
1669
|
}
|
|
1464
1670
|
if (permissionFailure) {
|
|
1465
|
-
return { messages: agent.state.messages, exitCode: WORKER_EXIT_PERMISSION_REQUIRED };
|
|
1671
|
+
return { messages: agent.state.messages.slice(inheritedCount), exitCode: WORKER_EXIT_PERMISSION_REQUIRED };
|
|
1466
1672
|
}
|
|
1467
|
-
const messages = agent.state.messages;
|
|
1673
|
+
const messages = agent.state.messages.slice(inheritedCount);
|
|
1468
1674
|
const errorMessage = getTerminalAgentError(messages);
|
|
1469
1675
|
if (errorMessage !== null) {
|
|
1470
1676
|
if (errorMessage.length > 0) {
|
|
@@ -1477,16 +1683,16 @@ function startWorkerRun(input, emit) {
|
|
|
1477
1683
|
} catch (err) {
|
|
1478
1684
|
unsubscribe();
|
|
1479
1685
|
if (workerBoundFailure !== null) {
|
|
1480
|
-
return { messages: agent.state.messages, exitCode: 1 };
|
|
1686
|
+
return { messages: agent.state.messages.slice(inheritedCount), exitCode: 1 };
|
|
1481
1687
|
}
|
|
1482
1688
|
if (permissionFailure) {
|
|
1483
|
-
return { messages: agent.state.messages, exitCode: WORKER_EXIT_PERMISSION_REQUIRED };
|
|
1689
|
+
return { messages: agent.state.messages.slice(inheritedCount), exitCode: WORKER_EXIT_PERMISSION_REQUIRED };
|
|
1484
1690
|
}
|
|
1485
1691
|
const msg = err instanceof Error ? err.message : String(err);
|
|
1486
|
-
emit({ type: "agent_end", messages: agent.state.messages });
|
|
1692
|
+
emit({ type: "agent_end", messages: agent.state.messages.slice(inheritedCount) });
|
|
1487
1693
|
process.stderr.write(`[worker] agent error: ${msg}
|
|
1488
1694
|
`);
|
|
1489
|
-
return { messages: agent.state.messages, exitCode: 1 };
|
|
1695
|
+
return { messages: agent.state.messages.slice(inheritedCount), exitCode: 1 };
|
|
1490
1696
|
} finally {
|
|
1491
1697
|
clearActiveEscalation();
|
|
1492
1698
|
unsubscribePermission();
|
|
@@ -1985,6 +2191,7 @@ async function main() {
|
|
|
1985
2191
|
demux.onLedgerDelta((entries) => ledgerPort.acceptDelta(entries));
|
|
1986
2192
|
const input = {
|
|
1987
2193
|
systemPrompt: spec.systemPrompt,
|
|
2194
|
+
...spec.contextSeed ? { contextSeed: spec.contextSeed } : {},
|
|
1988
2195
|
dynamicPromptMessages: spec.dynamicPromptMessages ?? [],
|
|
1989
2196
|
agentId: spec.agentId,
|
|
1990
2197
|
task: spec.task,
|
package/docs/README.md
CHANGED
|
@@ -64,6 +64,9 @@ interactive session. `clio-coder doctor` is a read-only installation check;
|
|
|
64
64
|
| Skills discovery, marketplace safety, installation, and publishing | [Skills Marketplace](guide/skills-marketplace.md) |
|
|
65
65
|
| Agents, prompts, extensions, and portable share archives | [Extensions and Sharing](guide/extensions-and-sharing.md) |
|
|
66
66
|
| Private resource catalogs and synchronization | [Resource Library](guide/resource-library.md) |
|
|
67
|
+
| Portable domain bundles, library pins, and lifecycle | [Plugins](guide/plugins.md) |
|
|
68
|
+
| Package manifests and component references | [Authoring Plugins](guide/authoring-plugins.md) |
|
|
69
|
+
| Executable harness capabilities | [Harness Extensions](guide/harness-extensions.md) |
|
|
67
70
|
| TUI layout, responsive behavior, colors, and interaction rules | [TUI Design](architecture/tui-design.md) |
|
|
68
71
|
| Terminal panes beside a session and the files pane: install, keys, settings, doctor, troubleshooting | [Panes and the Files Pane](guide/panes-and-files.md) |
|
|
69
72
|
|
|
@@ -92,6 +95,7 @@ validation, reference data, or human scientific judgment.
|
|
|
92
95
|
| An executable multi-node walkthrough with a reviewer gate | [Fleet Demo Runbook](process/fleet-demo-runbook.md) |
|
|
93
96
|
| Capacity leases, heartbeats, locks, and node drain control | [Capacity and Scheduling](architecture/capacity-and-scheduling.md) |
|
|
94
97
|
| Worker process protocol, watchdogs, steering, and exit mapping | [Worker Dispatch Mechanics](architecture/worker-dispatch-mechanics.md) |
|
|
98
|
+
| Worker context inheritance, fork, and splice modes | [Worker Context](architecture/worker-context.md) |
|
|
95
99
|
| Typed dispatch intent and compatibility boundaries | [Dispatch Typed Intent](architecture/dispatch-typed-intent.md) |
|
|
96
100
|
| Why dispatch remains one domain and where its seams actually are | [Dispatch Architecture Rationale](architecture/dispatch-architecture-rationale.md) |
|
|
97
101
|
|
|
@@ -103,6 +107,7 @@ validation, reference data, or human scientific judgment.
|
|
|
103
107
|
| Prompt-envelope reuse, provider tool delivery, and bounded results | [Prompt Envelope and Tools](architecture/prompt-envelope-and-tools.md) |
|
|
104
108
|
| All built-in worker tools, arguments, outputs, and error examples | [Tool Usage](guide/tool-usage.md) |
|
|
105
109
|
| Implementing a runtime or inference-server adapter | [Provider Adapter Cookbook](architecture/provider-adapter-cookbook.md) |
|
|
110
|
+
| External coding agent discovery, inspection, and safe resource adoption | [Coding Agent Interoperability](guide/interop.md) |
|
|
106
111
|
| Middleware hooks, effects, budgets, and component snapshots | [Middleware and Components](architecture/middleware-and-components.md) |
|
|
107
112
|
| Process exit codes, stdout/stderr rules, JSONL, and `--help` contracts | [Exit Codes and Output](guide/exit-codes-and-output.md) |
|
|
108
113
|
| Environment overrides, directory controls, and debug toggles | [Environment Variables](guide/environment-variables.md) |
|
|
@@ -126,6 +131,7 @@ repository.
|
|
|
126
131
|
| Topic | Guide |
|
|
127
132
|
| --- | --- |
|
|
128
133
|
| Source layout, compile-time boundaries, domain loading, and runtime flow | [Architecture](architecture/architecture.md) |
|
|
134
|
+
| Package kinds, catalog resolution, integrity, and trust | [Library Architecture](architecture/library.md) |
|
|
129
135
|
| Pi framework boundary and Clio-owned policy | [Pi Boundary](architecture/pi-boundary.md) |
|
|
130
136
|
| Documentation style and source-alignment workflow | [Documentation Guide](process/documentation-guide.md) |
|
|
131
137
|
| Source-to-guide ownership map | [Documentation Coverage](process/documentation-coverage.md) |
|
|
@@ -172,6 +178,43 @@ local dogfooding instructions do not collide with public documentation. If the
|
|
|
172
178
|
file exists in your checkout, read it before making changes; if it does not,
|
|
173
179
|
the architecture guide and `CONTRIBUTING.md` are the public starting points.
|
|
174
180
|
|
|
181
|
+
## Where Clio finds these docs when it is running in someone else's project
|
|
182
|
+
|
|
183
|
+
Clio's documentation ships with Clio, not with your workspace. Everything below
|
|
184
|
+
resolves from the installed package root (`resolvePackageRoot()`,
|
|
185
|
+
`src/core/package-root.ts`), never from the directory you launched in.
|
|
186
|
+
|
|
187
|
+
**What is indexed.** Every `.md` file under `<package-root>/docs/`, excluding
|
|
188
|
+
`docs/html/`, plus root `README.md`, `CHANGELOG.md` and `CLIO-CODER.md` when each
|
|
189
|
+
of those exists. The npm package ships `docs/**/*.md`, `README.md` and
|
|
190
|
+
`CHANGELOG.md`; it does not ship `docs/html/` or a root `CLIO-CODER.md`, so in an
|
|
191
|
+
npm install the blueprints are absent and the handbook is indexed only when you
|
|
192
|
+
are running from a source checkout. The index is deterministic and needs no
|
|
193
|
+
network or embedding service (`src/tools/context/docs-engine.ts`).
|
|
194
|
+
|
|
195
|
+
**Searching and then reading.** `context(scope="docs", query="…")` returns
|
|
196
|
+
section headings with citations such as `docs/architecture/safety-model.md`.
|
|
197
|
+
Citations are **package-relative**, and this is the step that matters when the
|
|
198
|
+
workspace is someone else's repository: reading `docs/architecture/safety-model.md`
|
|
199
|
+
as a plain relative path reads *that project's* `docs/`, if it has one. Clio's
|
|
200
|
+
own system prompt names the installed documentation directory as
|
|
201
|
+
`{CLIO_DOCS_PATH}`, substituted as `join(packageRoot, "docs")`
|
|
202
|
+
(`src/domains/prompts/compiler.ts`). Resolve the citation against the **package
|
|
203
|
+
root**, which is that directory's parent. So when the prompt names `/pkg/docs`:
|
|
204
|
+
|
|
205
|
+
- `docs/guide/foo.md` → `/pkg/docs/guide/foo.md`
|
|
206
|
+
- `CHANGELOG.md` → `/pkg/CHANGELOG.md`, not `/pkg/docs/CHANGELOG.md`
|
|
207
|
+
|
|
208
|
+
Do not duplicate the `docs/` segment, and do not resolve a citation against the
|
|
209
|
+
workspace. Omitting `query` lists the corpus instead of searching it.
|
|
210
|
+
|
|
211
|
+
**The blueprint viewer.** `clio-coder docs` serves `docs/html/` from the package
|
|
212
|
+
root on `127.0.0.1:<port>`. It does not look at your current directory and does
|
|
213
|
+
not check whether you are in a Git checkout: the only question is whether the
|
|
214
|
+
installed package has those files. When it does not, the command prints the
|
|
215
|
+
packaged Markdown path and a link to the blueprints on GitHub instead of starting
|
|
216
|
+
a server.
|
|
217
|
+
|
|
175
218
|
## Interactive blueprints
|
|
176
219
|
|
|
177
220
|
Every Markdown page has a dedicated visual blueprint under `docs/html/`, and
|
|
@@ -26,14 +26,14 @@ src/
|
|
|
26
26
|
|
|
27
27
|
Feature-domain directories include the following. Not every row is a loaded
|
|
28
28
|
`DomainModule`: the orchestrator currently loads config, extensions, interop,
|
|
29
|
-
resources, share, context, providers, toolchain, safety, prompts,
|
|
30
|
-
middleware, session, observability, scheduling, dispatch, and
|
|
31
|
-
mux when the pane tier is active. The other rows are libraries
|
|
32
|
-
feature areas.
|
|
29
|
+
plugins, resources, share, context, providers, toolchain, safety, prompts,
|
|
30
|
+
agents, middleware, session, observability, scheduling, dispatch, and
|
|
31
|
+
lifecycle, plus mux when the pane tier is active. The other rows are libraries
|
|
32
|
+
or CLI-owned feature areas.
|
|
33
33
|
|
|
34
34
|
| Domain | Primary source | Public surface |
|
|
35
35
|
| --- | --- | --- |
|
|
36
|
-
| agents | `src/domains/agents/**` | Built-in, user, and project agent recipes. |
|
|
36
|
+
| agents | `src/domains/agents/**` | Built-in, plugin, user, and project agent recipes. |
|
|
37
37
|
| components | `src/domains/components/**` | Component snapshots, diffs, and classification. |
|
|
38
38
|
| config | `src/domains/config/**`, `src/core/config.ts` | `settings.yaml`, keybindings, hot reload. |
|
|
39
39
|
| context | `src/domains/context/**` | Layered `CLIO-CODER.md` and subtree `CLIO-CODER.override.md` guidance, codewiki indexer, repository context. |
|
|
@@ -47,9 +47,10 @@ feature areas.
|
|
|
47
47
|
| memory | `src/domains/memory/**` | Approved long-term memory, proactive task intervention. |
|
|
48
48
|
| middleware | `src/domains/middleware/**` | Declarative and programmatic lifecycle hooks and budgets. |
|
|
49
49
|
| observability | `src/domains/observability/**` | SQLite trace store, metrics projections, live telemetry. |
|
|
50
|
+
| plugins | `src/domains/plugins/**` | Plugin discovery, catalog, and lifecycle. |
|
|
50
51
|
| prompts | `src/domains/prompts/**` | Prompt fragments, system prompt envelope, template hashing. |
|
|
51
52
|
| providers | `src/domains/providers/**` | Target-first runtime registry, model probing, credentials. |
|
|
52
|
-
| resources | `src/domains/resources/**` |
|
|
53
|
+
| resources | `src/domains/resources/**` | Package library, skills loader, prompts loader. |
|
|
53
54
|
| safety | `src/domains/safety/**` | 10-step policy engine, path policy, zero-access rails, audit. |
|
|
54
55
|
| scheduling | `src/domains/scheduling/**` | Budget ceilings, node cluster states, batch capacity checks. |
|
|
55
56
|
| session | `src/domains/session/**` | Append-only JSONL transcripts, tree navigation, compaction. |
|
|
@@ -84,7 +85,7 @@ decision.
|
|
|
84
85
|
|
|
85
86
|
Clio maintains an explicit distinction between persisted user settings (`settings.yaml`) and session-local routing state (`src/core/session-routing.ts`).
|
|
86
87
|
|
|
87
|
-
1. **Decoupled Overlays**: Turn-level selections (such as active target, model override, thinking level, and scoped models cycled via
|
|
88
|
+
1. **Decoupled Overlays**: Turn-level selections (such as active target, model override, thinking level, and scoped models cycled via explicit model-cycle keys) apply dynamically through `applySessionRouting` without mutating `settings.yaml`.
|
|
88
89
|
2. **Lifecycle Flow**:
|
|
89
90
|
- `seedSessionRouting`: Seeds runtime fields from configuration at startup.
|
|
90
91
|
- `applyRoutingPatch`: Applies surgical routing mutations (such as changing active model or target in the TUI).
|