@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
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
# Action: execute-task
|
|
2
|
+
|
|
3
|
+
This guide is linked from an installed portable skill. Action requests use the
|
|
4
|
+
actual installed skill names; this standard package registers no slash commands.
|
|
5
|
+
The interactive assistant applies a role inline or assigns its skill to a generic
|
|
6
|
+
worker if the host supports delegation. No named worker registration is presumed.
|
|
7
|
+
If a native peer package supplies command or agent bindings, follow its binding
|
|
8
|
+
section below while preserving the same researcher gates and return checkpoints.
|
|
9
|
+
|
|
10
|
+
This guide is linked from an installed portable skill. Determine the package root
|
|
11
|
+
from that skill's directory. Before executing a shell example, bind PACKAGE_ROOT
|
|
12
|
+
to that actual root in the same command. Treat $ARGUMENTS as validated user input;
|
|
13
|
+
these are examples to fill with actual paths, not automatic host substitutions.
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
Use the host's file reading/editing and local command execution capabilities. Read
|
|
18
|
+
assets/references/research-policy.md, resolved from this package. If this task
|
|
19
|
+
needs researcher answers, the interactive assistant asks them through the host's
|
|
20
|
+
conversation facility before gated writes. Workers return questions with their
|
|
21
|
+
checkpoint kind. Use the named role's portable skill for the scientific work;
|
|
22
|
+
if the host does not support delegation, the interactive assistant performs that
|
|
23
|
+
role with the same input/output and decision boundaries. Do not invent worker,
|
|
24
|
+
search, fleet, or interactive capabilities. Inspect actual files before completion.
|
|
25
|
+
Use package scripts by resolving their links from the installed skill directory.
|
|
26
|
+
For an optional commit, set CHANGED_FILES to only the named files actually changed
|
|
27
|
+
and read back during this action. The research-state helper rejects directory staging.
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
Use the assigned role skill with complete research context and exact permitted outputs. Return structured checkpoints and inspect actual files after writing.
|
|
31
|
+
|
|
32
|
+
<execution_context>
|
|
33
|
+
@.research/WORKFLOW.md
|
|
34
|
+
@.research/RESEARCH.md
|
|
35
|
+
@.research/LITERATURE.md
|
|
36
|
+
@.research/STATE.md
|
|
37
|
+
@.research/config.json
|
|
38
|
+
</execution_context>
|
|
39
|
+
|
|
40
|
+
<objective>
|
|
41
|
+
Execute a specific research task (or the full workflow sequentially) by applying the task-executor skill with the task's type and context. Verifies outputs on disk, runs advisory guardrails, updates task status, and creates outputs in .research/tasks/task-NN/.
|
|
42
|
+
|
|
43
|
+
**Orchestrator role:** Resolve target task, check dependencies, gate-confirm assumptions, apply the materio-task-executor skill with full task context, verify outputs exist, run guardrails and surface findings, update WORKFLOW.md and STATE.md, checkpoint, record.
|
|
44
|
+
|
|
45
|
+
**Why subagent:** Each task type (literature, computational, data-analysis, experimental-protocol) requires different reasoning depth. Fresh context per task = focused execution. The executor never asks the researcher anything; checkpoints come back here.
|
|
46
|
+
</objective>
|
|
47
|
+
|
|
48
|
+
<context>
|
|
49
|
+
Target: $ARGUMENTS (task number, or "all")
|
|
50
|
+
</context>
|
|
51
|
+
|
|
52
|
+
<process>
|
|
53
|
+
|
|
54
|
+
Worker write scope: the selected .research/tasks/task-NN/; include .research/LITERATURE.md only for an approved literature update.
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
An optional native fleet may require an existing Git worktree to enforce its
|
|
58
|
+
write boundary. Clio's v4 fleet does. If absent, keep the boundary and use direct
|
|
59
|
+
role execution with the selected task output grant followed by a separate read-only
|
|
60
|
+
review. Never initialize git to enable the fleet. If the host lacks worker
|
|
61
|
+
delegation, perform labeled artifact readback in the main conversation and disclose
|
|
62
|
+
that no independent worker review occurred.
|
|
63
|
+
|
|
64
|
+
## 1. Inspect Supplied Materials First
|
|
65
|
+
|
|
66
|
+
Use ls on `.research/data/` and read `.research/DATA-INDEX.md` before other
|
|
67
|
+
research inputs. For literature tasks, inspect these registered materials before
|
|
68
|
+
fetching anything. When general search is unavailable: build literature work from
|
|
69
|
+
supplied materials plus specific researcher-provided URLs. Request URLs with the
|
|
70
|
+
task confirmation if more coverage is needed. Honor web_search false by staying
|
|
71
|
+
with supplied materials and record coverage in Sources Reviewed in each summary
|
|
72
|
+
and any LITERATURE.md update.
|
|
73
|
+
|
|
74
|
+
### Validate Environment
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
test -f .research/WORKFLOW.md || echo "ERROR: No WORKFLOW.md. Run define-research-tasks using the materio-workflow-planner skill first."
|
|
78
|
+
cat .research/WORKFLOW.md
|
|
79
|
+
cat .research/STATE.md 2>/dev/null
|
|
80
|
+
cat .research/DATA-INDEX.md 2>/dev/null
|
|
81
|
+
python3 "${PACKAGE_ROOT}/assets/scripts/research_state.py" config
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
## 2. Resolve Target Task
|
|
85
|
+
|
|
86
|
+
**If $ARGUMENTS is empty:** Run `python3 "${PACKAGE_ROOT}/assets/scripts/research_state.py" next-task`.
|
|
87
|
+
Use its actual dependency-ready pending/in-progress task ID in workflow order.
|
|
88
|
+
If id is null, show the blocked dependencies or that no pending task is ready;
|
|
89
|
+
do not invent a task number. Preserve the task confirmation and assumption gate.
|
|
90
|
+
|
|
91
|
+
**If $ARGUMENTS = "all":** Resolve the next eligible task with the same next-task helper after each completed task; preserve all interview/checkpoint gates.
|
|
92
|
+
|
|
93
|
+
**If $ARGUMENTS = number:** Find that specific task. Verify status and dependencies.
|
|
94
|
+
|
|
95
|
+
Always derive the two-digit form and the output directory:
|
|
96
|
+
```bash
|
|
97
|
+
# Bind N to the validated decimal task number in this call.
|
|
98
|
+
NN=$(printf '%02d' "$((10#$N))"); OUT=".research/tasks/task-$NN"; echo "$OUT"
|
|
99
|
+
# Validate the actual active workflow IDs before creating their directories.
|
|
100
|
+
python3 "${PACKAGE_ROOT}/assets/scripts/research_state.py" task-dirs
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**Dependency check:** If the target task has `Dependencies: Task XX`, verify Task XX is `☑ complete`. If not:
|
|
104
|
+
- Warn the user: "Task [N] depends on Task [XX] which is not complete."
|
|
105
|
+
- Ask via the host conversation facility: proceed anyway, or execute Task XX first?
|
|
106
|
+
|
|
107
|
+
## 3. Show Task Summary
|
|
108
|
+
|
|
109
|
+
Display the target task entry from WORKFLOW.md:
|
|
110
|
+
```
|
|
111
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
112
|
+
Task [NN]: [name]
|
|
113
|
+
Type: [literature | computational | experimental | data-analysis | analytical | writing]
|
|
114
|
+
Inputs: [what's needed]
|
|
115
|
+
Outputs: [what this produces]
|
|
116
|
+
Assumptions: [list]
|
|
117
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## 4. Gate Check; Confirm Before Executing
|
|
121
|
+
|
|
122
|
+
Use the host conversation facility:
|
|
123
|
+
- header: "Execute Task [NN]: [name]"
|
|
124
|
+
- question: "Ready to execute this task?\n\n**Assumptions being made:**\n[list assumptions, marking any planner defaults not yet confirmed]\n\n**Expected output:**\n[expected outputs]\n\nAny assumptions wrong or missing data?"
|
|
125
|
+
- options: "Proceed" | "Update assumptions first" | "I need to upload data first; Run upload-data using the materio-research-explorer skill" | "Skip this task"
|
|
126
|
+
|
|
127
|
+
If assumptions are updated, write them back to the task entry in WORKFLOW.md before applying the role.
|
|
128
|
+
|
|
129
|
+
## 5. Handle Task Type Routing
|
|
130
|
+
|
|
131
|
+
**If type = `writing`:**
|
|
132
|
+
- Tell user: "This task involves writing. Use `Run wtfp using the materio-research-explorer skill` to bridge into wtf-p for paper writing."
|
|
133
|
+
- Exit gracefully.
|
|
134
|
+
|
|
135
|
+
**If type = `experimental`:** protocol-generation mode → protocol document + data recording template + checklist
|
|
136
|
+
|
|
137
|
+
**If type = `literature`:** supplied-corpus and provided-URL review mode → summary + BibTeX + LITERATURE.md updates; supplied materials first, provided-URL fetching only if allowed
|
|
138
|
+
|
|
139
|
+
**If type = `computational`:** script-generation mode → input files + submission script + analysis script + README
|
|
140
|
+
|
|
141
|
+
**If type = `data-analysis`:** check for registered data in DATA-INDEX.md and `.research/data/`; if none, stop and offer `Run upload-data using the materio-research-explorer skill` → analysis code + results summary + figure descriptions
|
|
142
|
+
|
|
143
|
+
**If type = `analytical`:** theoretical mode → derivation, validation, optional implementation
|
|
144
|
+
|
|
145
|
+
## 6. apply the materio-task-executor skill
|
|
146
|
+
|
|
147
|
+
```
|
|
148
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
149
|
+
Materio ► EXECUTING TASK [NN]
|
|
150
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
Apply the materio-task-executor role skill using the assignment and full context; delegate if supported. The prompt carries:
|
|
154
|
+
- `<task>`; full task entry from WORKFLOW.md (with any updated assumptions)
|
|
155
|
+
- `<research>`; full RESEARCH.md
|
|
156
|
+
- `<literature>`; relevant LITERATURE.md sections
|
|
157
|
+
- `<virtual_lab>`; the relevant equipment and software rows from VIRTUAL-LAB.md, if it exists
|
|
158
|
+
- `<prior_outputs>`; outputs from dependency tasks (paths and SUMMARY.md contents)
|
|
159
|
+
- `<data_files>`; DATA-INDEX.md entries and paths under `.research/data/`
|
|
160
|
+
- `<web_allowed>`; true only when config permits URL fetching and the host URL-fetch capability is available
|
|
161
|
+
- `<provided_urls>`; the researcher's specific URLs, or none
|
|
162
|
+
- `<output_dir>`; `.research/tasks/task-[NN]/`
|
|
163
|
+
|
|
164
|
+
## 7. Handle Executor Return
|
|
165
|
+
|
|
166
|
+
**`task_complete:`:**
|
|
167
|
+
|
|
168
|
+
1. Use ls and read on every reported output and task-NN-SUMMARY.md. Verify outputs on disk. Self-report is not completion:
|
|
169
|
+
```bash
|
|
170
|
+
ls -la .research/tasks/task-[NN]/
|
|
171
|
+
test -s .research/tasks/task-[NN]/task-[NN]-SUMMARY.md && echo "SUMMARY OK" || echo "ERROR: no summary"
|
|
172
|
+
```
|
|
173
|
+
Every file the executor listed under Outputs must exist and be non-empty. If any is missing, apply the role again naming the missing file; do not mark the task complete.
|
|
174
|
+
|
|
175
|
+
1b. Apply the materio-task-verifier skill to the approved task,
|
|
176
|
+
assumptions, dependency context, actual output inventory and summary. Use a
|
|
177
|
+
separate read-only worker with no write grant when available; otherwise perform
|
|
178
|
+
labeled main-conversation readback and disclose that independent worker review
|
|
179
|
+
was unavailable. Resolve every returned researcher checkpoint. Read/ls findings
|
|
180
|
+
are artifact inspection, not command-backed scientific validation. Preserve
|
|
181
|
+
host grounding diagnostics; a rejected receipt remains incomplete and cannot
|
|
182
|
+
be promoted to completion. Advisory commands have separate evidence.
|
|
183
|
+
|
|
184
|
+
2. Advisory guardrails. Run what applies, read the findings and exit status, and surface them; nothing here deletes or rewrites on its own. Record a skipped check if a script or python3 is missing.
|
|
185
|
+
Use bash to collect only existing files and keep stderr visible. The scripts
|
|
186
|
+
accept files, not directory arguments; never mistake a skipped file for a
|
|
187
|
+
successful scan. All findings remain advisory. Run these shell blocks only
|
|
188
|
+
after deriving OUT as the selected task directory:
|
|
189
|
+
```bash
|
|
190
|
+
if command -v python3 >/dev/null 2>&1; then
|
|
191
|
+
shopt -s nullglob globstar
|
|
192
|
+
physics_files=("$OUT"/**/*.md)
|
|
193
|
+
citation_files=("$OUT"/**/*.bib "$OUT"/**/*summary*.md "$OUT"/**/*SUMMARY*.md)
|
|
194
|
+
script_files=("$OUT"/**/*.py "$OUT"/**/*.sh)
|
|
195
|
+
citation_flags=()
|
|
196
|
+
[ "$(python3 "${PACKAGE_ROOT}/assets/scripts/research_state.py" config --key web_search)" = true ] || citation_flags=(--offline)
|
|
197
|
+
if ((${#physics_files[@]})); then
|
|
198
|
+
if python3 "${PACKAGE_ROOT}/assets/scripts/check_physics.py" "${physics_files[@]}"; then echo "CHECK EXIT: 0"; else echo "CHECK EXIT: $? (findings or incomplete coverage)"; fi
|
|
199
|
+
else echo "CHECK SKIPPED: no applicable files"; fi
|
|
200
|
+
if ((${#citation_files[@]})); then
|
|
201
|
+
if python3 "${PACKAGE_ROOT}/assets/scripts/verify_citations.py" "${citation_flags[@]}" "${citation_files[@]}"; then echo "CHECK EXIT: 0"; else echo "CHECK EXIT: $? (findings or incomplete coverage)"; fi
|
|
202
|
+
else echo "CHECK SKIPPED: no applicable files"; fi
|
|
203
|
+
if ((${#script_files[@]})); then
|
|
204
|
+
if python3 "${PACKAGE_ROOT}/assets/scripts/check_scripts.py" "${script_files[@]}"; then echo "CHECK EXIT: 0"; else echo "CHECK EXIT: $? (findings or incomplete coverage)"; fi
|
|
205
|
+
else echo "CHECK SKIPPED: no applicable files"; fi
|
|
206
|
+
fi
|
|
207
|
+
```
|
|
208
|
+
Include any other actual reference-list files in citation_files after reading
|
|
209
|
+
them. If a literature task updated `.research/LITERATURE.md`, read it back and
|
|
210
|
+
include it in citation_files too. A nonzero checker exit records findings;
|
|
211
|
+
it never authorizes deletion, edits or an automatic task rejection.
|
|
212
|
+
If any finding is **IMPOSSIBLE** (physics), **NOT_FOUND** / **MISMATCH** (citations), or **WILL NOT RUN** (scripts): show the findings to the researcher and ask via the host conversation facility:
|
|
213
|
+
- header: "Guardrail Findings; Task [NN]"
|
|
214
|
+
- question: "[N] findings:\n\n1. [file:line] [finding] → [suggested fix or closest Crossref match]\n2. ...\n\nHow should I handle them?"
|
|
215
|
+
- options: "Fix them; resume the executor" | "They're fine; note and continue" | "I'll decide per finding"
|
|
216
|
+
Apply the task-executor skill again with the accepted fixes when asked, then read all changed files back and rerun the applicable advisory checks before completing. Warnings (IMPLAUSIBLE, UNVERIFIABLE, SUSPECT) are listed in the completion output and noted in the task SUMMARY, not gated.
|
|
217
|
+
|
|
218
|
+
3. After the researcher has resolved every gated finding and the outputs have been read back, mark task as `☑ complete` in WORKFLOW.md. Update STATE.md: current task = next pending, last completed = [NN].
|
|
219
|
+
|
|
220
|
+
4. Checkpoint if `auto_checkpoint` is true (default):
|
|
221
|
+
```bash
|
|
222
|
+
if [ "$(python3 "${PACKAGE_ROOT}/assets/scripts/research_state.py" config --key auto_checkpoint)" = true ]; then
|
|
223
|
+
python3 "${PACKAGE_ROOT}/assets/scripts/research_state.py" checkpoint save after-task-NN
|
|
224
|
+
fi
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
5. Optional git record:
|
|
228
|
+
```bash
|
|
229
|
+
python3 "${PACKAGE_ROOT}/assets/scripts/research_state.py" record --message "research(task-[NN]): [task name]; complete" --files "${CHANGED_FILES[@]}"
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
**`needs_input: checkpoint:decision`, `needs_input: checkpoint:human-action`, or `needs_input: checkpoint:human-verify`:**
|
|
233
|
+
- Present what's needed (data, decision, domain knowledge) via the host conversation facility
|
|
234
|
+
- Apply the task-executor skill again with a `<resume>` block containing the answer (or continue with the full context plus `<resume>`)
|
|
235
|
+
|
|
236
|
+
**`task_blocked:`:**
|
|
237
|
+
- Show blocker clearly
|
|
238
|
+
- Offer via the host conversation facility: upload missing data, revise assumptions, execute the blocking task first, or skip this task
|
|
239
|
+
|
|
240
|
+
**If $ARGUMENTS = "all":** After each task completes, loop to the next pending task. Stop the loop at any needs_input: checkpoint or task_blocked: return and at the first `writing` task.
|
|
241
|
+
|
|
242
|
+
</process>
|
|
243
|
+
|
|
244
|
+
<offer_next>
|
|
245
|
+
|
|
246
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
247
|
+
Materio ► TASK [NN] COMPLETE ✓
|
|
248
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
249
|
+
|
|
250
|
+
Task: [NN]; [name]
|
|
251
|
+
Status: [N]/[total] tasks complete
|
|
252
|
+
|
|
253
|
+
Evidence ladder (report each rung with its actual value; never promote a rung):
|
|
254
|
+
Artifacts inspected: [N] files under .research/tasks/task-[NN]/ read back; verifier
|
|
255
|
+
receipt [task_complete | task_blocked | checkpoint] (read/ls only)
|
|
256
|
+
Prepared, not executed: [list scripts, input decks, submission files, proposed experiments]
|
|
257
|
+
Executed computation: [none | the exact commands the researcher or orchestrator actually
|
|
258
|
+
ran in this session, with exit status and output paths]
|
|
259
|
+
Advisory checks: physics [exit N | skipped], citations [exit N | skipped, offline?],
|
|
260
|
+
scripts [exit N | skipped]; [N] findings resolved, [N] warnings noted
|
|
261
|
+
Scientific validation: not performed by this workflow; the researcher owns physical,
|
|
262
|
+
statistical and experimental validation of these outputs
|
|
263
|
+
|
|
264
|
+
───────────────────────────────────────────
|
|
265
|
+
|
|
266
|
+
## ▶ Next Up
|
|
267
|
+
|
|
268
|
+
**Execute the next dependency-ready task**
|
|
269
|
+
`Run execute-task using the materio-task-executor skill `
|
|
270
|
+
|
|
271
|
+
**Or check progress**
|
|
272
|
+
`Run progress using the materio-research-explorer skill`
|
|
273
|
+
|
|
274
|
+
<sub>Each dispatch starts with fresh worker context.</sub>
|
|
275
|
+
|
|
276
|
+
───────────────────────────────────────────
|
|
277
|
+
|
|
278
|
+
</offer_next>
|
|
279
|
+
|
|
280
|
+
<success_criteria>
|
|
281
|
+
- [ ] Target task resolved (from argument or next pending); at least two-digit directory used
|
|
282
|
+
- [ ] Dependency check completed
|
|
283
|
+
- [ ] Gate confirmation always shown with assumptions listed
|
|
284
|
+
- [ ] Task type correctly routed; web availability passed explicitly
|
|
285
|
+
- [ ] Outputs read back on disk with ls and test -s before marking complete
|
|
286
|
+
- [ ] Completion output states the evidence ladder honestly: inspected, prepared, executed, advisory, validation not performed
|
|
287
|
+
- [ ] Guardrail findings surfaced to the researcher; nothing auto-removed
|
|
288
|
+
- [ ] WORKFLOW.md and STATE.md updated
|
|
289
|
+
- [ ] Checkpoint saved if auto_checkpoint; commit only if commit_research is true
|
|
290
|
+
</success_criteria>
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# Action: help
|
|
2
|
+
|
|
3
|
+
This guide is linked from an installed portable skill. Action requests use the
|
|
4
|
+
actual installed skill names; this standard package registers no slash commands.
|
|
5
|
+
The interactive assistant applies a role inline or assigns its skill to a generic
|
|
6
|
+
worker if the host supports delegation. No named worker registration is presumed.
|
|
7
|
+
If a native peer package supplies command or agent bindings, follow its binding
|
|
8
|
+
section below while preserving the same researcher gates and return checkpoints.
|
|
9
|
+
|
|
10
|
+
This guide is linked from an installed portable skill. Determine the package root
|
|
11
|
+
from that skill's directory. Before executing a shell example, bind PACKAGE_ROOT
|
|
12
|
+
to that actual root in the same command. Treat $ARGUMENTS as validated user input;
|
|
13
|
+
these are examples to fill with actual paths, not automatic host substitutions.
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<objective>
|
|
18
|
+
Display the Materio action reference with the actual skill invocation vocabulary. No tools needed.
|
|
19
|
+
</objective>
|
|
20
|
+
|
|
21
|
+
<process>
|
|
22
|
+
|
|
23
|
+
Display the following:
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
27
|
+
Materio; materials research system
|
|
28
|
+
Plan and automate your research with your coding agent
|
|
29
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
30
|
+
|
|
31
|
+
CORE RESEARCH LOOP
|
|
32
|
+
─────────────────────────────────────────
|
|
33
|
+
1. Run identify-research using the materio-research-explorer skill
|
|
34
|
+
Guided interview → select domain, sub-field,
|
|
35
|
+
scope, and confirm a research prompt
|
|
36
|
+
|
|
37
|
+
2. Run literature-review using the materio-literature-reviewer skill
|
|
38
|
+
Review literature, identify gaps, refine keywords
|
|
39
|
+
(loops back to identify-research if needed)
|
|
40
|
+
|
|
41
|
+
3. Run define-virtual-lab using the materio-lab-definer skill
|
|
42
|
+
Map available resources: experimental equipment,
|
|
43
|
+
HPC systems, software licenses, collaborations
|
|
44
|
+
Questions are targeted to your research domain
|
|
45
|
+
|
|
46
|
+
4. Run define-research-tasks using the materio-workflow-planner skill
|
|
47
|
+
Choose from traditional research workflows or
|
|
48
|
+
build from scratch; interview per task for assumptions
|
|
49
|
+
(resource-aware: flags tasks requiring unavailable equipment)
|
|
50
|
+
|
|
51
|
+
5. Run execute-task using the materio-task-executor skill [N | all]
|
|
52
|
+
Execute a specific task or the full workflow
|
|
53
|
+
Types: literature, experimental, computational,
|
|
54
|
+
data-analysis, analytical, writing
|
|
55
|
+
|
|
56
|
+
6. Run wtfp using the materio-research-explorer skill
|
|
57
|
+
Bridge to wtf-p; translate research into a paper
|
|
58
|
+
project with include/exclude control
|
|
59
|
+
|
|
60
|
+
TASK MANAGEMENT
|
|
61
|
+
─────────────────────────────────────────
|
|
62
|
+
Run add-task using the materio-research-explorer skill Add a task to the workflow
|
|
63
|
+
Run remove-task using the materio-research-explorer skill [N] Remove a task permanently
|
|
64
|
+
Run archive-task using the materio-research-explorer skill [N] Archive (preserve but deactivate)
|
|
65
|
+
|
|
66
|
+
DATA
|
|
67
|
+
─────────────────────────────────────────
|
|
68
|
+
Run upload-data using the materio-research-explorer skill [file] Register data files, papers,
|
|
69
|
+
and datasets for task use
|
|
70
|
+
|
|
71
|
+
PROGRESS & CONTROL
|
|
72
|
+
─────────────────────────────────────────
|
|
73
|
+
Run status using the materio-research-explorer skill Full project dashboard
|
|
74
|
+
Run progress using the materio-research-explorer skill Statusline + smart routing
|
|
75
|
+
Run pause-research using the materio-research-explorer skill Pause + auto-checkpoint
|
|
76
|
+
Run resume-research using the materio-research-explorer skill Resume from paused state
|
|
77
|
+
Run checkpoint using the materio-research-explorer skill save [label] Save state snapshot
|
|
78
|
+
Run checkpoint using the materio-research-explorer skill restore [name] Restore snapshot
|
|
79
|
+
Run checkpoint using the materio-research-explorer skill list List snapshots
|
|
80
|
+
|
|
81
|
+
META
|
|
82
|
+
─────────────────────────────────────────
|
|
83
|
+
Run help using the materio-research-explorer skill This help
|
|
84
|
+
Run settings using the materio-research-explorer skill View/edit project config
|
|
85
|
+
|
|
86
|
+
PROJECT STATE (.research/)
|
|
87
|
+
─────────────────────────────────────────
|
|
88
|
+
RESEARCH.md Research identity, prompt, scope
|
|
89
|
+
LITERATURE.md Review results, gaps, keywords
|
|
90
|
+
VIRTUAL-LAB.md Equipment, HPC, software, gaps
|
|
91
|
+
WORKFLOW.md Tasks with status and assumptions
|
|
92
|
+
STATE.md Current position, phase, decisions
|
|
93
|
+
DATA-INDEX.md Registered data files
|
|
94
|
+
config.json Settings (web_search, commit_research…)
|
|
95
|
+
data/ Uploaded datasets and papers
|
|
96
|
+
tasks/ Task-by-task outputs (task-NN/)
|
|
97
|
+
checkpoints/ State snapshot archives
|
|
98
|
+
handoff/ Paste-ready blocks for wtf-p 0.6
|
|
99
|
+
|
|
100
|
+
TASK TYPES
|
|
101
|
+
─────────────────────────────────────────
|
|
102
|
+
literature → Read supplied papers and provided URLs, synthesize
|
|
103
|
+
experimental → Generate protocol + data templates
|
|
104
|
+
computational → Generate simulation/analysis scripts
|
|
105
|
+
data-analysis → Analyze uploaded data, produce figures
|
|
106
|
+
analytical → Mathematical modeling, derivations
|
|
107
|
+
writing → Bridge to Run wtfp using the materio-research-explorer skill
|
|
108
|
+
|
|
109
|
+
GUARDRAILS (after each task, advisory)
|
|
110
|
+
─────────────────────────────────────────
|
|
111
|
+
check_physics impossible values (T < 0 K, ρ ≤ 0…)
|
|
112
|
+
verify_citations Crossref check on quoted titles/DOIs
|
|
113
|
+
check_scripts syntax + hallucinated imports
|
|
114
|
+
Findings are shown to you; nothing is auto-removed.
|
|
115
|
+
|
|
116
|
+
INTEGRATION WITH WTF-P
|
|
117
|
+
─────────────────────────────────────────
|
|
118
|
+
Run wtfp using the materio-research-explorer skill prepares reviewed import briefs.
|
|
119
|
+
0.6+: writes .research/handoff/ blocks you paste into
|
|
120
|
+
wtf-p action new-paper → map-project → create-outline
|
|
121
|
+
Existing paper state: inspect/reuse/repair first.
|
|
122
|
+
The bridge never writes paper state. Reuse answers already
|
|
123
|
+
answered during research planning.
|
|
124
|
+
|
|
125
|
+
TIPS
|
|
126
|
+
─────────────────────────────────────────
|
|
127
|
+
• Each dispatch receives fresh worker context
|
|
128
|
+
• Interviews happen in the command; agents only
|
|
129
|
+
synthesize and write, and report back checkpoints
|
|
130
|
+
• Run upload-data using the materio-research-explorer skill papers BEFORE literature-review:
|
|
131
|
+
supplied papers first, provided URLs second
|
|
132
|
+
• Materio never initializes git. Set commit_research=true in
|
|
133
|
+
Run settings using the materio-research-explorer skill if you want optional named-file commits. Checkpoints use archives.
|
|
134
|
+
• Run checkpoint using the materio-research-explorer skill save before long tasks
|
|
135
|
+
• Run literature-review using the materio-literature-reviewer skill can loop back to
|
|
136
|
+
identify-research if your prompt needs revision
|
|
137
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
</process>
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
# Action: identify-research
|
|
2
|
+
|
|
3
|
+
This guide is linked from an installed portable skill. Action requests use the
|
|
4
|
+
actual installed skill names; this standard package registers no slash commands.
|
|
5
|
+
The interactive assistant applies a role inline or assigns its skill to a generic
|
|
6
|
+
worker if the host supports delegation. No named worker registration is presumed.
|
|
7
|
+
If a native peer package supplies command or agent bindings, follow its binding
|
|
8
|
+
section below while preserving the same researcher gates and return checkpoints.
|
|
9
|
+
|
|
10
|
+
This guide is linked from an installed portable skill. Determine the package root
|
|
11
|
+
from that skill's directory. Before executing a shell example, bind PACKAGE_ROOT
|
|
12
|
+
to that actual root in the same command. Treat $ARGUMENTS as validated user input;
|
|
13
|
+
these are examples to fill with actual paths, not automatic host substitutions.
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
Use the host's file reading/editing and local command execution capabilities. Read
|
|
18
|
+
assets/references/research-policy.md, resolved from this package. If this task
|
|
19
|
+
needs researcher answers, the interactive assistant asks them through the host's
|
|
20
|
+
conversation facility before gated writes. Workers return questions with their
|
|
21
|
+
checkpoint kind. Use the named role's portable skill for the scientific work;
|
|
22
|
+
if the host does not support delegation, the interactive assistant performs that
|
|
23
|
+
role with the same input/output and decision boundaries. Do not invent worker,
|
|
24
|
+
search, fleet, or interactive capabilities. Inspect actual files before completion.
|
|
25
|
+
Use package scripts by resolving their links from the installed skill directory.
|
|
26
|
+
For an optional commit, set CHANGED_FILES to only the named files actually changed
|
|
27
|
+
and read back during this action. The research-state helper rejects directory staging.
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
Use the assigned role skill with complete research context and exact permitted outputs. Return structured checkpoints and inspect actual files after writing.
|
|
31
|
+
|
|
32
|
+
<execution_context>
|
|
33
|
+
@${PACKAGE_ROOT}/assets/templates/RESEARCH.md
|
|
34
|
+
@${PACKAGE_ROOT}/assets/templates/config.json
|
|
35
|
+
@${PACKAGE_ROOT}/assets/references/research-domains.md
|
|
36
|
+
</execution_context>
|
|
37
|
+
|
|
38
|
+
<objective>
|
|
39
|
+
Initialize a new material science research project through a deep guided interview. Creates `.research/` and populates RESEARCH.md with domain, sub-field, scope, researcher profile, and a confirmed research prompt.
|
|
40
|
+
|
|
41
|
+
**Orchestrator role:** Check preconditions, detect existing research context, run the whole researcher interview (foundation, profile, and Socratic drilling), apply the materio-research-explorer skill for synthesis, present its candidate prompts, collect the choice, apply the role again to write the files, verify, record.
|
|
42
|
+
|
|
43
|
+
**Why the interview lives here:** These worker roles return questions to the orchestrator (worker roles cannot interview the researcher). The orchestrator owns every question. The agent gets a fresh context window for the reasoning that benefits from it: turning the transcript into sharp, calibrated candidate prompts.
|
|
44
|
+
</objective>
|
|
45
|
+
|
|
46
|
+
<context>
|
|
47
|
+
No arguments. Runs in current directory.
|
|
48
|
+
</context>
|
|
49
|
+
|
|
50
|
+
<process>
|
|
51
|
+
|
|
52
|
+
Worker write scope: .research/RESEARCH.md and .research/STATE.md, only after selection.
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
## 1. Validate Environment
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
[ -f .research/RESEARCH.md ] && echo "WARN: Research already initialized. Use Run progress using the materio-research-explorer skill to see current state, or continue to refine."
|
|
59
|
+
python3 "${PACKAGE_ROOT}/assets/scripts/research_state.py" config
|
|
60
|
+
# Read-only before researcher selection; initialize at the approved write step.
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Materio never runs `git init`. Version control of `.research/` is the researcher's choice, controlled by `commit_research` in `.research/config.json` (default false).
|
|
64
|
+
|
|
65
|
+
## 2. Detect Existing Context
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
find . -name "*.pdf" -o -name "*.csv" -o -name "*.bib" -o -name "*.txt" 2>/dev/null | grep -v ".research" | grep -v ".claude" | grep -v ".git" | head -10
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
If data files found: ask via the host conversation facility whether to base the research framing on existing files, and suggest `Run upload-data using the materio-research-explorer skill` afterwards so the literature review can read them.
|
|
72
|
+
|
|
73
|
+
## 3. Gather Research Foundation (Batched)
|
|
74
|
+
|
|
75
|
+
Use the host conversation facility; collect core framing in one turn:
|
|
76
|
+
- header: "Research Exploration; Material Science"
|
|
77
|
+
- question: "Let's explore your research direction.\n\n1. **Domain**: Which area of material science? (e.g., Structural, Energy, Biomaterials, Computational, Nanomaterials, Functional, Polymers, Characterization)\n2. **Driving question**: What phenomenon, material, or problem interests you? (free-form, even vague is fine)\n3. **Motivation**: Fundamental understanding, application/device, optimization, or review/synthesis?\n4. **Resources available**: Experimental lab, computational cluster, literature only, or combination?"
|
|
78
|
+
- options: "Provided details" | "I'm not sure yet; help me explore" | "I have a specific topic already"
|
|
79
|
+
|
|
80
|
+
**If "I'm not sure yet":** Ask about domain first, then walk through sub-fields in that domain using research-domains.md as reference, one the host conversation facility per level, before continuing.
|
|
81
|
+
|
|
82
|
+
**If "I have a specific topic already":** Capture it verbatim, then go to Step 4 and run only Round 3 of Step 5.
|
|
83
|
+
|
|
84
|
+
## 4. Gather Researcher Profile
|
|
85
|
+
|
|
86
|
+
Use the host conversation facility:
|
|
87
|
+
- header: "Researcher Context"
|
|
88
|
+
- question: "Help me understand your context:\n1. **Career stage**: Undergrad / Grad student / Postdoc / PI / Industry researcher\n2. **Timeline**: How long for this research? (months)\n3. **Prior work**: Have you already read papers in this area? Any specific authors or groups you follow?\n4. **Constraints**: Any materials, methods, or approaches you CANNOT use?"
|
|
89
|
+
- options: "Provided details" | "Skip; use reasonable defaults"
|
|
90
|
+
|
|
91
|
+
## 5. Socratic Drilling (as needed)
|
|
92
|
+
|
|
93
|
+
Narrow in up to three rounds. Skip any round whose answers the transcript already contains. Use the domain's sub-fields, key phenomena, and common methods from research-domains.md to make the examples concrete for this researcher.
|
|
94
|
+
|
|
95
|
+
**Round 1; Narrow the sub-field:**
|
|
96
|
+
- header: "Narrowing Your Research Focus"
|
|
97
|
+
- question: "You mentioned [topic]. Let's narrow it down:\n\n1. What specific aspect? (e.g., for batteries: anode material? electrolyte? capacity fade mechanism? cycling stability?)\n2. What material system specifically? (e.g., Li-S, Na-ion, solid-state with sulfide electrolyte)\n3. What scale? (atomic/nano/micro/device level)"
|
|
98
|
+
- options: "Provided details" | "Help me choose; show sub-fields"
|
|
99
|
+
|
|
100
|
+
**Round 2; Identify the gap:**
|
|
101
|
+
- header: "Finding the Angle"
|
|
102
|
+
- question: "For [narrowed topic]:\n1. What do you think is currently UNKNOWN or UNSOLVED?\n2. What would change if you answered your question? (better battery? new understanding? design rule?)\n3. What's your hypothesis or intuition about the answer?"
|
|
103
|
+
- options: "Provided details" | "I don't know yet; the literature review should tell me"
|
|
104
|
+
|
|
105
|
+
**Round 3; Scope confirmation:**
|
|
106
|
+
- header: "Scoping the Research"
|
|
107
|
+
- question: "Final scoping:\n1. What methods will you use? (synthesis, characterization, simulation; be specific)\n2. What will you NOT study? (even if related and interesting)\n3. What's the minimum result that would make this a successful research project?"
|
|
108
|
+
- options: "Provided details" | "Let the candidates propose scope"
|
|
109
|
+
|
|
110
|
+
Assemble every answer from Steps 2 through 5, verbatim, into the `<researcher_input>` transcript.
|
|
111
|
+
|
|
112
|
+
## 6. Apply the materio-research-explorer skill
|
|
113
|
+
|
|
114
|
+
```
|
|
115
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
116
|
+
Materio ► EXPLORING RESEARCH SPACE
|
|
117
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Apply the materio-research-explorer role skill using the assignment and full context; delegate if supported. The prompt carries the full inlined context:
|
|
121
|
+
- `<researcher_input>`; the complete interview transcript from Steps 2–5
|
|
122
|
+
- `<domains_ref>`; the relevant section of research-domains.md
|
|
123
|
+
- `<research_path>`; `.research/RESEARCH.md`
|
|
124
|
+
|
|
125
|
+
Before selection, request candidates only and authorize no writes; omit
|
|
126
|
+
any write authorization and state explicitly that this is the no-write candidate phase.
|
|
127
|
+
On selection, authorize exactly `.research/RESEARCH.md` and `.research/STATE.md`.
|
|
128
|
+
Include all three original candidates, the verbatim selection, scope corrections,
|
|
129
|
+
and the complete RESEARCH template in the writing dispatch.
|
|
130
|
+
|
|
131
|
+
## 7. Present Candidates and Collect the Choice
|
|
132
|
+
|
|
133
|
+
**`candidates_ready:`:**
|
|
134
|
+
|
|
135
|
+
Use the host conversation facility, one turn:
|
|
136
|
+
- header: "Your Research Prompts"
|
|
137
|
+
- question: "Based on our conversation, here are 3 research prompts:\n\n**A (Focused):** [prompt A]\n In: [scope] · Out: [scope] · Keywords: [list]\n\n**B (Standard):** [prompt B]\n In / Out / Keywords\n\n**C (Ambitious):** [prompt C]\n In / Out / Keywords\n\nRecommended: [X] because [reason].\n\nWhich fits your goals? If you pick one, also say whether its scope and keywords need any correction."
|
|
138
|
+
- options: "Prompt A" | "Prompt B" | "Prompt C" | "Combine or edit; I'll describe"
|
|
139
|
+
|
|
140
|
+
Apply the research-explorer skill again with a `<selection>` block containing the choice and any corrections. Apply the materio-research-explorer skill with the full `<researcher_input>` transcript plus `<selection>`.
|
|
141
|
+
|
|
142
|
+
**`needs_input: checkpoint:decision`, `needs_input: checkpoint:human-action`, or `needs_input: checkpoint:human-verify`:** Ask the batched questions it lists via the host conversation facility, append the answers to the transcript, and apply the role again.
|
|
143
|
+
|
|
144
|
+
**`exploration_inconclusive:`:** Show what's missing and what it suggested. Offer to re-run with more guidance.
|
|
145
|
+
|
|
146
|
+
After the researcher selects a candidate and confirms scope, run
|
|
147
|
+
`python3 "${PACKAGE_ROOT}/assets/scripts/research_state.py" init` before the writing dispatch.
|
|
148
|
+
|
|
149
|
+
## 8. Verify and Record
|
|
150
|
+
|
|
151
|
+
**`research_identified:`:**
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
test -s .research/RESEARCH.md && test -s .research/STATE.md && echo "OK: files on disk" || echo "ERROR: agent reported files it did not write"
|
|
155
|
+
grep -n "Selected Prompt" -A 2 .research/RESEARCH.md
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
If either file is missing, do not report success; apply the role again and tell it exactly which file is absent.
|
|
159
|
+
|
|
160
|
+
Optional git record, only if the researcher enabled it:
|
|
161
|
+
```bash
|
|
162
|
+
python3 "${PACKAGE_ROOT}/assets/scripts/research_state.py" record --message "research: initialize; [research prompt one-liner]" --files "${CHANGED_FILES[@]}"
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
</process>
|
|
166
|
+
|
|
167
|
+
<offer_next>
|
|
168
|
+
|
|
169
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
170
|
+
Materio ► RESEARCH IDENTIFIED ✓
|
|
171
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
172
|
+
|
|
173
|
+
Prompt: [selected research prompt]
|
|
174
|
+
Domain: [field + sub-field]
|
|
175
|
+
Profile: .research/RESEARCH.md
|
|
176
|
+
|
|
177
|
+
───────────────────────────────────────────
|
|
178
|
+
|
|
179
|
+
## ▶ Next Up
|
|
180
|
+
|
|
181
|
+
**Register the papers you already have, then review the literature**
|
|
182
|
+
|
|
183
|
+
`Run upload-data using the materio-research-explorer skill` (optional, but the review is only as good as its corpus)
|
|
184
|
+
`Run literature-review using the materio-literature-reviewer skill`
|
|
185
|
+
|
|
186
|
+
<sub>Each dispatch starts with fresh worker context.</sub>
|
|
187
|
+
|
|
188
|
+
───────────────────────────────────────────
|
|
189
|
+
|
|
190
|
+
**Also available:**
|
|
191
|
+
- `Run define-research-tasks using the materio-workflow-planner skill`; skip literature review if already done
|
|
192
|
+
|
|
193
|
+
</offer_next>
|
|
194
|
+
|
|
195
|
+
<success_criteria>
|
|
196
|
+
- [ ] Every question to the researcher was asked by this command, not by the agent
|
|
197
|
+
- [ ] Domain and sub-field clearly identified
|
|
198
|
+
- [ ] Research prompt is a single answerable question
|
|
199
|
+
- [ ] Scope (in/out) explicitly defined
|
|
200
|
+
- [ ] Researcher profile captured (career stage, resources, timeline)
|
|
201
|
+
- [ ] Three candidate prompts presented before final selection
|
|
202
|
+
- [ ] RESEARCH.md and STATE.md verified on disk with test -s
|
|
203
|
+
- [ ] config.json created from template; no git init; commit only if commit_research is true
|
|
204
|
+
</success_criteria>
|