@iowarp/clio-coder 0.4.5 → 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 +74 -0
- package/CONTRIBUTING.md +116 -38
- package/NOTICE +24 -0
- package/README.md +341 -682
- package/dist/{acp-H3CU2HBQ.js → acp-W3Y3TRHD.js} +12 -12
- package/dist/{agents-IXQQZ7BD.js → agents-J4ICNLQ3.js} +57 -56
- 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-R7KYF7N3.js → auth-X2UJUMOC.js} +25 -25
- package/dist/{builtins-CRFDQUVP.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-SE4ZKILO.js → chunk-3XE4NRLF.js} +30 -9
- package/dist/{chunk-YYB3MC65.js → chunk-4MFBBY2Z.js} +3 -3
- package/dist/{chunk-5VTJP36Q.js → chunk-4N2RZ4TO.js} +2 -2
- package/dist/{chunk-FKIOX6DS.js → chunk-4QKAITQT.js} +10 -5
- package/dist/chunk-4UHVS5T7.js +207 -0
- package/dist/{chunk-VLPTKCKT.js → chunk-5AJPUR72.js} +6 -6
- package/dist/{chunk-5CY4Q6QI.js → chunk-5EQO5NWP.js} +105 -3
- package/dist/{chunk-RXIOCVBZ.js → chunk-65BGHOUR.js} +8 -5
- package/dist/{chunk-T53XI6I7.js → chunk-6CA2BHOR.js} +2 -2
- package/dist/{chunk-HL26ADLH.js → chunk-6CB2IL4N.js} +2 -1
- package/dist/{chunk-HR3HPQ76.js → chunk-6LRLOJHQ.js} +3 -3
- package/dist/{chunk-HXHFDHB6.js → chunk-6TAATXXH.js} +6 -6
- package/dist/{chunk-WFKDPU7U.js → chunk-6YHPAAZR.js} +3 -3
- package/dist/{chunk-ZMZQEBKI.js → chunk-7EEGBKV4.js} +11 -11
- package/dist/{chunk-BS4GAMUB.js → chunk-A67NR5AT.js} +2 -2
- package/dist/{chunk-WJIMKGD6.js → chunk-BAU36233.js} +8 -8
- package/dist/{chunk-MDU3C27C.js → chunk-BO4XV5VX.js} +8 -8
- package/dist/{chunk-KF6GFW6O.js → chunk-BQQ5MXUC.js} +11 -11
- package/dist/{chunk-K6RDB7IA.js → chunk-C3G5PNUO.js} +23 -23
- package/dist/{chunk-SRZOW5L2.js → chunk-C6GEXX4L.js} +1 -1
- package/dist/{chunk-U2JOLB7O.js → chunk-CE64C5K5.js} +227 -72
- package/dist/chunk-CP3HIR5H.js +2119 -0
- package/dist/{chunk-BBV5TKE6.js → chunk-CPXGJI2A.js} +2 -2
- package/dist/{chunk-5DDOTTG4.js → chunk-CULVKYTK.js} +5 -5
- package/dist/{chunk-F34AR6O3.js → chunk-D2T66PDV.js} +6 -6
- package/dist/{chunk-NF3BK5WR.js → chunk-DACXIVVF.js} +5 -5
- package/dist/{chunk-4SVIVOMC.js → chunk-DLIYANB7.js} +20 -15
- package/dist/{chunk-E3BQTQUP.js → chunk-DO7M3LSX.js} +9 -9
- package/dist/{chunk-2QPI3TR3.js → chunk-DVJL77SO.js} +2 -2
- package/dist/chunk-EM2WNQS2.js +93 -0
- package/dist/{chunk-ODUTYZIU.js → chunk-EUEXGXXR.js} +5 -5
- package/dist/{chunk-UL36QJX6.js → chunk-EUZRMP4Y.js} +18 -16
- package/dist/{chunk-R6MAYTMS.js → chunk-G4LGUTOE.js} +4 -4
- package/dist/{chunk-CBSKDFWL.js → chunk-GEVQNST4.js} +2 -2
- package/dist/{chunk-XXBQKW32.js → chunk-GFQ7P2UF.js} +7 -7
- package/dist/{chunk-SBZX6ARC.js → chunk-GI5RRMAH.js} +14 -14
- package/dist/{chunk-KDWLXVMN.js → chunk-GVZFCJHE.js} +343 -113
- package/dist/{chunk-633EXGZA.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-KYKNBD4Y.js → chunk-IJMW64DX.js} +978 -258
- package/dist/{chunk-DIMRLNIC.js → chunk-IMOD2YPV.js} +16 -9
- package/dist/{chunk-6CDNRHWH.js → chunk-IQCNVLO6.js} +28 -8
- package/dist/{chunk-UTUNT5QL.js → chunk-ISNCCX42.js} +9 -9
- package/dist/{chunk-RLTT5GVY.js → chunk-IZYTT3CD.js} +9 -5
- package/dist/{chunk-5ZMXGW7P.js → chunk-KAFMW7WM.js} +4 -85
- package/dist/chunk-KKEYGFX4.js +915 -0
- package/dist/{chunk-HHVJNVUJ.js → chunk-KS7ETA3P.js} +2 -2
- package/dist/{chunk-UXAC2FX4.js → chunk-L3Z5ANCV.js} +7 -7
- package/dist/{chunk-EHCPSZJF.js → chunk-LBFQMYS3.js} +2 -2
- package/dist/{chunk-QEQISF75.js → chunk-LK2FN5JY.js} +1 -1
- package/dist/{chunk-URBGEOH3.js → chunk-M6Z2V6YU.js} +5 -5
- package/dist/{chunk-DRD2A54W.js → chunk-MBJO5VNZ.js} +18 -18
- package/dist/chunk-MNQN3X6Y.js +595 -0
- package/dist/{chunk-GXCCHKN6.js → chunk-MZHXENL7.js} +7 -7
- package/dist/chunk-MZNWZUJM.js +1801 -0
- package/dist/{chunk-7YJWEF2L.js → chunk-N37QC5FV.js} +5 -5
- package/dist/{chunk-WLMSOT73.js → chunk-NCCQ6DVS.js} +7 -7
- package/dist/{chunk-TZ7MFRG4.js → chunk-NO7J45X6.js} +170 -53
- package/dist/chunk-OH3YYA3B.js +15 -0
- package/dist/{chunk-22PQ4TX4.js → chunk-P4DL2LM5.js} +16 -77
- package/dist/{chunk-R6MICQYU.js → chunk-PFLOULP3.js} +4 -4
- package/dist/{chunk-MC3JSVR6.js → chunk-QJMRYTCX.js} +7 -7
- package/dist/{chunk-ILJ7DWGE.js → chunk-QKWL7SYE.js} +12 -12
- package/dist/chunk-R2CT5YDO.js +66 -0
- package/dist/chunk-RFCKPS2V.js +26 -0
- package/dist/{chunk-ONRTXOZY.js → chunk-RTLNFZMD.js} +12 -4
- package/dist/{chunk-U7H5WRG5.js → chunk-RXFPB32E.js} +8 -6
- package/dist/{chunk-S32UQ5GL.js → chunk-SEDI5K5B.js} +18 -18
- package/dist/{chunk-ICO4TQ2F.js → chunk-SELG4SUR.js} +41 -25
- package/dist/{chunk-YEJIG7LN.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-HGSLRG33.js → chunk-TLTGZTXI.js} +3 -3
- package/dist/chunk-TZ6UVP2H.js +637 -0
- package/dist/{chunk-EWD5P3GK.js → chunk-TZHN5ITX.js} +13 -41
- package/dist/{chunk-7TKWWPD7.js → chunk-U3TPUXOQ.js} +398 -253
- package/dist/{chunk-GNQRWTMY.js → chunk-UA3W4FGC.js} +6 -6
- package/dist/{chunk-O2RQ7LCK.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-I7VLWRK2.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-GVYWZNRK.js → chunk-WBVKKTUT.js} +2 -2
- package/dist/{chunk-EHOSNVVM.js → chunk-WLHX3MM5.js} +6 -2
- package/dist/{chunk-SDWNDICN.js → chunk-WN552PKN.js} +573 -316
- package/dist/{chunk-TEG3RYVZ.js → chunk-WT5TRMO4.js} +51 -26
- package/dist/{chunk-NY6IWDVU.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-FSTIBAGM.js → chunk-XZ6UFQ52.js} +11 -11
- package/dist/chunk-Y3JU5RPK.js +8 -0
- package/dist/chunk-YKRJTYNP.js +1143 -0
- package/dist/{chunk-7HBHHVCK.js → chunk-YPRSNUTC.js} +2 -2
- package/dist/{chunk-PWWSIB2A.js → chunk-ZGIGW4ZG.js} +5 -5
- package/dist/cli/index.js +34 -36
- package/dist/{clio-5I2IBFYL.js → clio-L2P7S2R2.js} +9 -9
- package/dist/{code-nav-YXIAEZVS.js → code-nav-B5LNX4KU.js} +25 -25
- package/dist/{components-TNIKXCBH.js → components-63MMQKUT.js} +6 -6
- package/dist/{config-Y2JDJ3JJ.js → config-YXARKGTX.js} +81 -77
- package/dist/configure-LMVQJ46J.js +85 -0
- package/dist/{context-QQ53HSGJ.js → context-7HJEWTTP.js} +92 -48
- package/dist/{context-S2EEC3EJ.js → context-XSZKKFBW.js} +14 -14
- package/dist/{context-P5YSEO55.js → context-YG2LZDYZ.js} +67 -64
- package/dist/{context-clear-TMEQCOTH.js → context-clear-AC5NXHM2.js} +64 -61
- 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-CNLSQN5K.js → context-working-set-F4Q4J3NS.js} +15 -12
- package/dist/{detail-5572VLBO.js → detail-H73BEF2N.js} +65 -62
- package/dist/{dispatch-runner-FRHD6P2O.js → dispatch-runner-3RY5FSJC.js} +83 -80
- package/dist/{doctor-N3LCM2LG.js → doctor-EQYJOGUG.js} +47 -32
- package/dist/{eval-BUU3ZOUZ.js → eval-4P7O6CCE.js} +114 -50
- package/dist/{evidence-DTGEN456.js → evidence-D6GUSYJW.js} +64 -61
- package/dist/{evidence-SQ5DNFEN.js → evidence-O76QF7TZ.js} +69 -65
- package/dist/{evolve-IJNUFZDS.js → evolve-H47BCETS.js} +65 -62
- package/dist/{extensions-YVRHX6ZI.js → extensions-NNL3ZOCU.js} +98 -20
- package/dist/{fleet-ZNNVSYFO.js → fleet-KMNS6NOM.js} +115 -107
- package/dist/{fleet-commands-5YE7NPJL.js → fleet-commands-DOWSYCBX.js} +15 -15
- package/dist/{fleet-decisions-3SBSCTCW.js → fleet-decisions-S3PTZV2D.js} +9 -9
- package/dist/{fleet-graph-6HHPWF5T.js → fleet-graph-F2DE2TME.js} +26 -24
- package/dist/{fleet-inspect-JEYMGCGC.js → fleet-inspect-EN2Q6IVB.js} +67 -63
- package/dist/{fleet-preflight-QRSHIIDE.js → fleet-preflight-FRLETDD3.js} +3 -3
- package/dist/{fleet-validate-4PM4GDDL.js → fleet-validate-B2XDLS57.js} +28 -29
- package/dist/{fleet-verify-NJDTHTO3.js → fleet-verify-4JKUWGJ7.js} +64 -61
- package/dist/{fleet-view-UP2BWQQY.js → fleet-view-BHJFW26B.js} +67 -63
- package/dist/{init-S3GZQ5ZF.js → init-XAT5N5YM.js} +86 -80
- package/dist/interop-FVECHFKG.js +246 -0
- package/dist/{inventory-K2OZ36YJ.js → inventory-7KFQGLCV.js} +67 -63
- 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-OQOXQGYD.js → memory-DYVTTCP6.js} +65 -62
- package/dist/{models-3IK2Y5WE.js → models-MASFJ6Y2.js} +51 -38
- package/dist/{monitor-FTJLTKCQ.js → monitor-YMP4NXJJ.js} +73 -69
- package/dist/{orchestrator-N47O7SFD.js → orchestrator-AFQRRTEI.js} +4255 -2845
- 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-65U34NG6.js → preload-5Q7VXRFJ.js} +64 -61
- package/dist/{reset-MUVQDLNL.js → reset-7NKZK7JN.js} +11 -9
- package/dist/{resources-LM76COAO.js → resources-NILSIZAT.js} +94 -38
- package/dist/{run-3VFZQ33N.js → run-BPZGEBZV.js} +131 -114
- package/dist/{share-4JUB4BL7.js → share-EZ6ERBMH.js} +31 -28
- package/dist/skills-BTVVNYVM.js +100 -0
- package/dist/{skills-eval-G6T57L7M.js → skills-eval-UY34MNK7.js} +117 -78
- package/dist/{skills-inventory-WLM46PJH.js → skills-inventory-JDHSIA7I.js} +30 -25
- package/dist/{slash-commands-GBARG3Y7.js → slash-commands-K4FNQ2AT.js} +53 -49
- package/dist/{steer-S7D7IKPU.js → steer-2B3EQGFH.js} +4 -4
- package/dist/{support-5VAEC32W.js → support-L2SOL3IE.js} +7 -7
- package/dist/{targets-N5REUETU.js → targets-44VKGFLN.js} +69 -47
- package/dist/{tasks-6BVY5YZF.js → tasks-3KODKFU7.js} +14 -14
- package/dist/{terminal-lease-57UEOJKS.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-4HD5HAIV.js → upgrade-7PMKM2JH.js} +17 -18
- package/dist/{usage-4GWM2WWP.js → usage-6EQV7EQK.js} +77 -73
- package/dist/{verifiers-GSKWKWVG.js → verifiers-JLITWSHU.js} +16 -16
- package/dist/{verify-3AS3ULCY.js → verify-T7NAEVIG.js} +13 -13
- package/dist/{web-fetch-MQN4FH3X.js → web-fetch-W4TNW4Q7.js} +4 -4
- package/dist/{wiki-generate-7BV7XWIY.js → wiki-generate-T2TJQJUA.js} +90 -84
- package/dist/{with-panes-OFTNAR4Y.js → with-panes-CHFC7HGI.js} +4 -4
- package/dist/worker/entry.js +297 -88
- 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 +36 -2
- 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 +153 -39
- 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 +186 -80
- package/docs/guide/configuration-and-targets.md +123 -28
- package/docs/guide/configuration-reference.md +36 -38
- 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 +32 -10
- package/docs/guide/glossary.md +2 -2
- package/docs/guide/harness-extensions.md +291 -0
- package/docs/guide/installation-and-lifecycle.md +53 -20
- 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 +15 -15
- package/docs/process/documentation-coverage.md +29 -2
- 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 +22 -6
- 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/ask.ts +10 -10
- package/src/cli/config-inspect.ts +1 -1
- package/src/cli/configure-editor.ts +51 -0
- package/src/cli/configure-interop.ts +1 -1
- package/src/cli/configure-oauth.ts +1 -1
- package/src/cli/configure-onboarding.ts +232 -96
- package/src/cli/configure-prompts.ts +76 -0
- package/src/cli/configure-quick.ts +274 -0
- package/src/cli/configure-target.ts +14 -2
- package/src/cli/configure.ts +415 -176
- 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/oauth-manual-input.ts +1 -1
- package/src/cli/reset.ts +2 -0
- package/src/cli/run.ts +26 -9
- package/src/cli/select.ts +35 -4
- 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/cli/upgrade.ts +2 -2
- package/src/core/bus-events.ts +5 -0
- package/src/core/config.ts +6 -1
- package/src/core/defaults.ts +34 -12
- package/src/{interactive → core}/external-editor.ts +4 -4
- 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/classify.ts +1 -1
- package/src/domains/config/keybindings.ts +156 -124
- 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/providers/probe/fingerprint.ts +13 -6
- package/src/domains/providers/probe/reasoning.ts +2 -0
- package/src/domains/providers/runtimes/common/probe-helpers.ts +23 -7
- package/src/domains/providers/runtimes/protocol/anthropic-compat.ts +7 -2
- package/src/domains/providers/runtimes/protocol/openai-compat.ts +10 -4
- 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 +68 -52
- package/src/interactive/chat-loop.ts +32 -5
- package/src/interactive/chat-panel.ts +168 -638
- package/src/interactive/chat-renderer.ts +13 -30
- package/src/interactive/clio-editor.ts +53 -21
- package/src/interactive/command-output.ts +56 -1
- package/src/interactive/dispatch-board.ts +1 -3
- package/src/interactive/editor-submit.ts +73 -59
- 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 +12 -4
- package/src/interactive/footer/notifications.ts +2 -2
- package/src/interactive/footer/widgets.ts +52 -93
- package/src/interactive/interactive-application.ts +225 -63
- package/src/interactive/interactive-event-projection.ts +2 -44
- package/src/interactive/interactive-input-runtime.ts +257 -35
- package/src/interactive/interactive-presentation.ts +71 -21
- package/src/interactive/interactive-slash-runtime.ts +40 -48
- package/src/interactive/keybinding-manager.ts +156 -79
- package/src/interactive/keyboard-owner.ts +37 -0
- package/src/interactive/layout.ts +29 -4
- 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-general-openers.ts +2 -0
- package/src/interactive/overlay-key-routing.ts +46 -47
- package/src/interactive/overlay-lifecycle.ts +31 -15
- package/src/interactive/overlay-resource-openers.ts +56 -46
- package/src/interactive/overlay-session-lifecycle.ts +1 -1
- 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 +34 -26
- 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/preview.ts +16 -0
- package/src/interactive/renderers/reference-card.ts +35 -0
- package/src/interactive/renderers/tool-execution.ts +67 -160
- package/src/interactive/renderers/worker-entry.ts +90 -42
- package/src/interactive/slash-autocomplete.ts +100 -7
- package/src/interactive/slash-commands.ts +396 -105
- package/src/interactive/slash-spec.ts +0 -1
- package/src/interactive/status/controller.ts +0 -5
- package/src/interactive/status/state-machine.ts +44 -26
- package/src/interactive/status/types.ts +3 -0
- package/src/interactive/status/verbs.ts +13 -12
- package/src/interactive/terminal-lease.ts +44 -12
- package/src/interactive/transcript-detail.ts +50 -112
- package/src/interactive/turn-queues.ts +8 -7
- package/src/interactive/turn-runtime.ts +1 -1
- package/src/interactive/view/artifacts.ts +4 -0
- package/src/interactive/view/view-overlay.ts +58 -43
- 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/presentation.ts +1 -1
- package/src/tools/registry.ts +20 -2
- package/src/tools/verify/numeric.ts +4 -4
- 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-6SYEGZI3.js +0 -433
- package/dist/chunk-CXQ37WJH.js +0 -45
- package/dist/chunk-EQEJJ53P.js +0 -399
- package/dist/chunk-KTFSFCVN.js +0 -46
- package/dist/chunk-QRFXEO6Y.js +0 -17
- package/dist/chunk-T7FDXNRU.js +0 -1257
- package/dist/chunk-U7VQ4NI4.js +0 -911
- package/dist/configure-SML6UBZ5.js +0 -55
- package/dist/interop-YOTGXFJM.js +0 -115
- package/dist/library-GJI6W6OK.js +0 -226
- package/dist/skills-S36AAJHU.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,52 +50,28 @@ import {
|
|
|
46
50
|
startAntigravityWorkerRun,
|
|
47
51
|
startClaudeCodeWorkerRun,
|
|
48
52
|
validateRehydratedWorkerRuntime
|
|
49
|
-
} from "../chunk-
|
|
53
|
+
} from "../chunk-NO7J45X6.js";
|
|
50
54
|
import {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
observe
|
|
57
|
-
} from "../chunk-KF6GFW6O.js";
|
|
58
|
-
import "../chunk-K2HL3GBL.js";
|
|
59
|
-
import "../chunk-7HBHHVCK.js";
|
|
55
|
+
contextHash,
|
|
56
|
+
messageToolCalls,
|
|
57
|
+
seededWorkerMessages
|
|
58
|
+
} from "../chunk-T4TY5GG3.js";
|
|
59
|
+
import "../chunk-YPRSNUTC.js";
|
|
60
60
|
import {
|
|
61
61
|
describeCallTarget
|
|
62
62
|
} from "../chunk-2GPGAE5W.js";
|
|
63
|
+
import "../chunk-OH3YYA3B.js";
|
|
64
|
+
import "../chunk-24S3DN22.js";
|
|
63
65
|
import "../chunk-SL2RDHKO.js";
|
|
64
66
|
import "../chunk-YGDMBK7O.js";
|
|
65
67
|
import "../chunk-V552WL53.js";
|
|
66
|
-
import "../chunk-
|
|
68
|
+
import "../chunk-IZYTT3CD.js";
|
|
67
69
|
import "../chunk-KECNXMDE.js";
|
|
68
|
-
import {
|
|
69
|
-
createSafetyPolicyEngine
|
|
70
|
-
} from "../chunk-4SVIVOMC.js";
|
|
71
|
-
import "../chunk-NTK3WTHM.js";
|
|
72
70
|
import "../chunk-WXA2CFJO.js";
|
|
73
|
-
import "../chunk-
|
|
74
|
-
import "../chunk-
|
|
75
|
-
import {
|
|
76
|
-
RESULT_CONTRACT_REPAIR_LIMIT,
|
|
77
|
-
parseWorkerResultContract,
|
|
78
|
-
resultContractRepairMessages,
|
|
79
|
-
validateResultContract
|
|
80
|
-
} from "../chunk-OQM5IVJY.js";
|
|
81
|
-
import {
|
|
82
|
-
classify
|
|
83
|
-
} from "../chunk-LUL5Z66S.js";
|
|
84
|
-
import {
|
|
85
|
-
protectedArtifactMutationBlockReason
|
|
86
|
-
} from "../chunk-M6TAYK66.js";
|
|
87
|
-
import "../chunk-KQ6IDQIB.js";
|
|
71
|
+
import "../chunk-GEVQNST4.js";
|
|
72
|
+
import "../chunk-3LXJOICS.js";
|
|
88
73
|
import "../chunk-L4N3DWNW.js";
|
|
89
|
-
import "../chunk-
|
|
90
|
-
import "../chunk-MDU3C27C.js";
|
|
91
|
-
import "../chunk-R2P2U3ZS.js";
|
|
92
|
-
import "../chunk-NTTS3O53.js";
|
|
93
|
-
import "../chunk-M4KFUXS7.js";
|
|
94
|
-
import "../chunk-GH5ZR6JP.js";
|
|
74
|
+
import "../chunk-BAU36233.js";
|
|
95
75
|
import {
|
|
96
76
|
UNKNOWN_RESOURCE,
|
|
97
77
|
WORKER_PROTOCOL_VERSION,
|
|
@@ -107,51 +87,105 @@ import {
|
|
|
107
87
|
withinFrameBudget,
|
|
108
88
|
workerSpecDigest
|
|
109
89
|
} from "../chunk-VQD7NH7Z.js";
|
|
90
|
+
import {
|
|
91
|
+
deleteInjectedCompileCacheFrom
|
|
92
|
+
} from "../chunk-CKK25WN3.js";
|
|
110
93
|
import "../chunk-O3VV6IVK.js";
|
|
111
94
|
import {
|
|
112
|
-
DEFAULT_AUTONOMY_LEVEL,
|
|
113
95
|
agentSkillToolPolicy
|
|
114
|
-
} from "../chunk-
|
|
115
|
-
import "../chunk-B6UM3OZC.js";
|
|
116
|
-
import "../chunk-MYI32N4R.js";
|
|
96
|
+
} from "../chunk-KAFMW7WM.js";
|
|
117
97
|
import {
|
|
118
|
-
|
|
119
|
-
|
|
98
|
+
CONFIRMED_SCOPE,
|
|
99
|
+
READONLY_SCOPE,
|
|
100
|
+
WORKSPACE_SCOPE,
|
|
101
|
+
createLoopState,
|
|
102
|
+
isSubset,
|
|
103
|
+
observe
|
|
104
|
+
} from "../chunk-BQQ5MXUC.js";
|
|
105
|
+
import {
|
|
106
|
+
createSafetyPolicyEngine
|
|
107
|
+
} from "../chunk-DLIYANB7.js";
|
|
108
|
+
import "../chunk-24TOGHPO.js";
|
|
120
109
|
import {
|
|
121
110
|
FileKnowledgeBase,
|
|
122
111
|
applyModelCapabilityPatch,
|
|
112
|
+
estimateInputTokensFromContext,
|
|
123
113
|
loadPluginRuntimes,
|
|
124
114
|
registerClioApiProviders,
|
|
125
115
|
resolveModelRuntimeCapabilitiesForModel,
|
|
126
116
|
resolveProviderKnowledgeBaseRoots,
|
|
117
|
+
resolveReservedOutputTokens,
|
|
127
118
|
setGlobalDefaultMaxOutputTokens,
|
|
128
119
|
setProtectedModelsProvider,
|
|
129
120
|
setResidencyNoticeSink
|
|
130
|
-
} from "../chunk-
|
|
121
|
+
} from "../chunk-WT5TRMO4.js";
|
|
131
122
|
import "../chunk-MCJKEGHO.js";
|
|
132
|
-
import "../chunk-77CZRFTE.js";
|
|
133
|
-
import "../chunk-J2FYEQ5L.js";
|
|
134
123
|
import {
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
} from "../chunk-
|
|
138
|
-
import "../chunk-
|
|
139
|
-
import "../chunk-
|
|
124
|
+
estimateAgentContextBreakdown,
|
|
125
|
+
estimateAgentMessageTokens
|
|
126
|
+
} from "../chunk-77CZRFTE.js";
|
|
127
|
+
import "../chunk-BO4XV5VX.js";
|
|
128
|
+
import "../chunk-VTYHHQ57.js";
|
|
129
|
+
import {
|
|
130
|
+
DEFAULT_AUTONOMY_LEVEL
|
|
131
|
+
} from "../chunk-EM2WNQS2.js";
|
|
140
132
|
import "../chunk-FQOOGXBH.js";
|
|
141
133
|
import "../chunk-UHW5V7HC.js";
|
|
134
|
+
import "../chunk-B6UM3OZC.js";
|
|
135
|
+
import "../chunk-MYI32N4R.js";
|
|
142
136
|
import "../chunk-KMF54VH3.js";
|
|
143
137
|
import "../chunk-5A6XR3RJ.js";
|
|
144
138
|
import "../chunk-EFSEIZE6.js";
|
|
145
139
|
import "../chunk-B5ZTR6KZ.js";
|
|
146
|
-
import "../chunk-
|
|
140
|
+
import "../chunk-6CB2IL4N.js";
|
|
147
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";
|
|
148
185
|
import {
|
|
149
186
|
readClioVersion
|
|
150
187
|
} from "../chunk-E3LEPLQ2.js";
|
|
151
|
-
import
|
|
152
|
-
registerBuiltinRuntimes
|
|
153
|
-
} from "../chunk-ICO4TQ2F.js";
|
|
154
|
-
import "../chunk-SE4ZKILO.js";
|
|
188
|
+
import "../chunk-3XE4NRLF.js";
|
|
155
189
|
import "../chunk-U2MSJ57E.js";
|
|
156
190
|
import {
|
|
157
191
|
configureGuardrails,
|
|
@@ -168,25 +202,15 @@ import "../chunk-6EXUUOSN.js";
|
|
|
168
202
|
import {
|
|
169
203
|
AI_AGENT_NAME
|
|
170
204
|
} from "../chunk-ZTNFYMIO.js";
|
|
171
|
-
import "../chunk-
|
|
172
|
-
import "../chunk-HXHFDHB6.js";
|
|
173
|
-
import "../chunk-VNBICSS2.js";
|
|
174
|
-
import "../chunk-2QPI3TR3.js";
|
|
205
|
+
import "../chunk-DVJL77SO.js";
|
|
175
206
|
import "../chunk-TK2BMCBZ.js";
|
|
176
207
|
import "../chunk-B5GGDIHT.js";
|
|
177
|
-
import "../chunk-ZZFWWYLX.js";
|
|
178
208
|
import {
|
|
179
|
-
|
|
180
|
-
} from "../chunk-
|
|
181
|
-
import "../chunk-TN5FW4XY.js";
|
|
209
|
+
safeResourceWrite
|
|
210
|
+
} from "../chunk-ZZFWWYLX.js";
|
|
182
211
|
import {
|
|
183
|
-
|
|
184
|
-
} from "../chunk-
|
|
185
|
-
import "../chunk-DXVMLM3Z.js";
|
|
186
|
-
import {
|
|
187
|
-
deleteInjectedCompileCacheFrom
|
|
188
|
-
} from "../chunk-CKK25WN3.js";
|
|
189
|
-
import "../chunk-CTTI7G3T.js";
|
|
212
|
+
clioStateDir
|
|
213
|
+
} from "../chunk-CTTI7G3T.js";
|
|
190
214
|
import {
|
|
191
215
|
init_esm_shims
|
|
192
216
|
} from "../chunk-ECBHH7LU.js";
|
|
@@ -196,6 +220,151 @@ init_esm_shims();
|
|
|
196
220
|
|
|
197
221
|
// src/engine/worker-runtime.ts
|
|
198
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
|
|
199
368
|
import path from "node:path";
|
|
200
369
|
|
|
201
370
|
// src/engine/claude/sdk-runtime.ts
|
|
@@ -284,7 +453,7 @@ function fallbackRejection(policy) {
|
|
|
284
453
|
hints: []
|
|
285
454
|
};
|
|
286
455
|
}
|
|
287
|
-
function createWorkerToolRegistry(middlewareSnapshot, safety = createWorkerSafety(), skillLoaderOptions, hookRegistrations, autonomy, onMiddlewareEffects, agentLedger) {
|
|
456
|
+
function createWorkerToolRegistry(middlewareSnapshot, safety = createWorkerSafety(), skillLoaderOptions, hookRegistrations, autonomy, onMiddlewareEffects, agentLedger, workerRecall) {
|
|
288
457
|
const middleware = createMiddlewareContractFromSnapshot(middlewareSnapshot ?? { version: 1, rules: [] });
|
|
289
458
|
for (const registration2 of hookRegistrations ?? []) {
|
|
290
459
|
middleware.registerHook(registration2);
|
|
@@ -297,6 +466,7 @@ function createWorkerToolRegistry(middlewareSnapshot, safety = createWorkerSafet
|
|
|
297
466
|
});
|
|
298
467
|
const registration = registerCoreTools(registry, {
|
|
299
468
|
includeLedgerTools: true,
|
|
469
|
+
...workerRecall ? { workerRecall } : {},
|
|
300
470
|
...agentLedger ? { agentLedger } : {},
|
|
301
471
|
// A worker cannot install a skill or reach the operator who could, so
|
|
302
472
|
// its skill listing carries installed (or bound) skills only; the
|
|
@@ -309,6 +479,7 @@ function createWorkerToolRegistry(middlewareSnapshot, safety = createWorkerSafet
|
|
|
309
479
|
})
|
|
310
480
|
});
|
|
311
481
|
assertRegisteredBuiltinTools(registry, registration, false);
|
|
482
|
+
registerHarnessExtensionTools(registry);
|
|
312
483
|
return registry;
|
|
313
484
|
}
|
|
314
485
|
function attestedToolSignature(input) {
|
|
@@ -999,6 +1170,8 @@ function resolveWorkerRuntimeBudget(input) {
|
|
|
999
1170
|
}
|
|
1000
1171
|
function startWorkerRun(input, emit) {
|
|
1001
1172
|
assertResponseSchemaRuntime(input);
|
|
1173
|
+
if (input.contextSeed && input.runtime.kind !== "http")
|
|
1174
|
+
throw new Error("worker context: history seeds require a native Pi runtime");
|
|
1002
1175
|
if (input.resultContract !== void 0) parseWorkerResultContract(input.resultContract, "WorkerSpec.resultContract");
|
|
1003
1176
|
if (input.runtime.id === "claude-sdk") {
|
|
1004
1177
|
return startClaudeSdkWorkerRun(input, emit);
|
|
@@ -1010,7 +1183,7 @@ function startWorkerRun(input, emit) {
|
|
|
1010
1183
|
return startAntigravityWorkerRun(input, emit);
|
|
1011
1184
|
}
|
|
1012
1185
|
registerClioApiProviders();
|
|
1013
|
-
const workerSettings =
|
|
1186
|
+
const workerSettings = readLayeredSettings(input.cwd ?? process.cwd()).settings;
|
|
1014
1187
|
setGlobalDefaultMaxOutputTokens(workerSettings.chat.maxOutputTokens);
|
|
1015
1188
|
configureGuardrails(guardrailValuesFromSettings(workerSettings));
|
|
1016
1189
|
const fauxModel = registerFauxFromEnv();
|
|
@@ -1071,6 +1244,7 @@ function startWorkerRun(input, emit) {
|
|
|
1071
1244
|
}
|
|
1072
1245
|
} : {}
|
|
1073
1246
|
});
|
|
1247
|
+
const observations = createWorkerObservationStore();
|
|
1074
1248
|
const registry = createWorkerToolRegistry(
|
|
1075
1249
|
input.middlewareSnapshot,
|
|
1076
1250
|
safety,
|
|
@@ -1096,7 +1270,8 @@ function startWorkerRun(input, emit) {
|
|
|
1096
1270
|
],
|
|
1097
1271
|
input.autonomy,
|
|
1098
1272
|
(effects) => middlewareToolChoice.apply(effects),
|
|
1099
|
-
input.agentLedger
|
|
1273
|
+
input.agentLedger,
|
|
1274
|
+
observations.recall
|
|
1100
1275
|
);
|
|
1101
1276
|
const contractCwd = input.cwd ?? process.cwd();
|
|
1102
1277
|
let resultContractRepairsQueued = 0;
|
|
@@ -1179,13 +1354,46 @@ function startWorkerRun(input, emit) {
|
|
|
1179
1354
|
model,
|
|
1180
1355
|
input.runtimeResolution?.effectiveThinkingLevel ?? input.thinkingLevel
|
|
1181
1356
|
);
|
|
1357
|
+
const inheritedMessages = seededWorkerMessages(input.contextSeed);
|
|
1358
|
+
const inheritedCount = inheritedMessages.length;
|
|
1359
|
+
const contextGuard = createWorkerContextGuard(observations.archive);
|
|
1182
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
|
+
},
|
|
1183
1391
|
initialState: {
|
|
1184
1392
|
systemPrompt: input.systemPrompt,
|
|
1185
1393
|
model,
|
|
1186
1394
|
thinkingLevel: effectiveThinkingLevel,
|
|
1187
1395
|
tools,
|
|
1188
|
-
messages:
|
|
1396
|
+
messages: inheritedMessages
|
|
1189
1397
|
},
|
|
1190
1398
|
onPayload: async (payload, currentModel) => {
|
|
1191
1399
|
const middlewareChoice = middlewareToolChoice.current();
|
|
@@ -1457,12 +1665,12 @@ function startWorkerRun(input, emit) {
|
|
|
1457
1665
|
await agent.waitForIdle();
|
|
1458
1666
|
unsubscribe();
|
|
1459
1667
|
if (workerBoundFailure !== null) {
|
|
1460
|
-
return { messages: agent.state.messages, exitCode: 1 };
|
|
1668
|
+
return { messages: agent.state.messages.slice(inheritedCount), exitCode: 1 };
|
|
1461
1669
|
}
|
|
1462
1670
|
if (permissionFailure) {
|
|
1463
|
-
return { messages: agent.state.messages, exitCode: WORKER_EXIT_PERMISSION_REQUIRED };
|
|
1671
|
+
return { messages: agent.state.messages.slice(inheritedCount), exitCode: WORKER_EXIT_PERMISSION_REQUIRED };
|
|
1464
1672
|
}
|
|
1465
|
-
const messages = agent.state.messages;
|
|
1673
|
+
const messages = agent.state.messages.slice(inheritedCount);
|
|
1466
1674
|
const errorMessage = getTerminalAgentError(messages);
|
|
1467
1675
|
if (errorMessage !== null) {
|
|
1468
1676
|
if (errorMessage.length > 0) {
|
|
@@ -1475,16 +1683,16 @@ function startWorkerRun(input, emit) {
|
|
|
1475
1683
|
} catch (err) {
|
|
1476
1684
|
unsubscribe();
|
|
1477
1685
|
if (workerBoundFailure !== null) {
|
|
1478
|
-
return { messages: agent.state.messages, exitCode: 1 };
|
|
1686
|
+
return { messages: agent.state.messages.slice(inheritedCount), exitCode: 1 };
|
|
1479
1687
|
}
|
|
1480
1688
|
if (permissionFailure) {
|
|
1481
|
-
return { messages: agent.state.messages, exitCode: WORKER_EXIT_PERMISSION_REQUIRED };
|
|
1689
|
+
return { messages: agent.state.messages.slice(inheritedCount), exitCode: WORKER_EXIT_PERMISSION_REQUIRED };
|
|
1482
1690
|
}
|
|
1483
1691
|
const msg = err instanceof Error ? err.message : String(err);
|
|
1484
|
-
emit({ type: "agent_end", messages: agent.state.messages });
|
|
1692
|
+
emit({ type: "agent_end", messages: agent.state.messages.slice(inheritedCount) });
|
|
1485
1693
|
process.stderr.write(`[worker] agent error: ${msg}
|
|
1486
1694
|
`);
|
|
1487
|
-
return { messages: agent.state.messages, exitCode: 1 };
|
|
1695
|
+
return { messages: agent.state.messages.slice(inheritedCount), exitCode: 1 };
|
|
1488
1696
|
} finally {
|
|
1489
1697
|
clearActiveEscalation();
|
|
1490
1698
|
unsubscribePermission();
|
|
@@ -1983,6 +2191,7 @@ async function main() {
|
|
|
1983
2191
|
demux.onLedgerDelta((entries) => ledgerPort.acceptDelta(entries));
|
|
1984
2192
|
const input = {
|
|
1985
2193
|
systemPrompt: spec.systemPrompt,
|
|
2194
|
+
...spec.contextSeed ? { contextSeed: spec.contextSeed } : {},
|
|
1986
2195
|
dynamicPromptMessages: spec.dynamicPromptMessages ?? [],
|
|
1987
2196
|
agentId: spec.agentId,
|
|
1988
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).
|