agentworkshop 0.8.7 → 0.8.8
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/.AgentWorkShop/prompts/host-tools.en.json +302 -302
- package/.AgentWorkShop/prompts/host-tools.json +4109 -4080
- package/.AgentWorkShop/prompts/lead-supervise.md +6 -0
- package/.AgentWorkShop/prompts/mode-goal.md +3 -3
- package/.output/.AgentWorkShop/aml-python/__pycache__/aml_eval.cpython-312.pyc +0 -0
- package/.output/.AgentWorkShop/aml-python/__pycache__/amlkit.cpython-312.pyc +0 -0
- package/.output/.AgentWorkShop/aml-python/__pycache__/train-example.cpython-312.pyc +0 -0
- package/.output/.AgentWorkShop/aml-python/__pycache__/train-hybrid-example.cpython-312.pyc +0 -0
- package/.output/.AgentWorkShop/aml-python/train-example.py +92 -92
- package/.output/.AgentWorkShop/prompts/host-tools.en.json +302 -302
- package/.output/.AgentWorkShop/prompts/host-tools.json +4109 -4080
- package/.output/.AgentWorkShop/prompts/lead-supervise.md +6 -0
- package/.output/.AgentWorkShop/prompts/mode-goal.md +3 -3
- package/.output/.AgentWorkShop/schema.json +171 -152
- package/.output/nitro.json +1 -1
- package/.output/public/_nuxt/11Nifltq2.js +16 -0
- package/.output/public/_nuxt/26OL4Ao82.js +1 -0
- package/.output/public/_nuxt/B37d6f-P2.js +1 -0
- package/.output/public/_nuxt/B8vwpJxO.js +1 -0
- package/.output/public/_nuxt/BEbg8OxK2.js +1 -0
- package/.output/public/_nuxt/BFUO7wT0.js +1 -0
- package/.output/public/_nuxt/BPUQZ9Lq2.js +8 -0
- package/.output/public/_nuxt/BVg2R2VB2.js +1 -0
- package/.output/public/_nuxt/BaYDgyaR.js +3 -0
- package/.output/public/_nuxt/BclHgAY62.js +1 -0
- package/.output/public/_nuxt/BfvuWqSa.js +1 -0
- package/.output/public/_nuxt/BkEokGX5.js +1 -0
- package/.output/public/_nuxt/BkZomIrQ.js +1 -0
- package/.output/public/_nuxt/BtZKe9ZV2.js +1 -0
- package/.output/public/_nuxt/BwOko01T.js +47 -0
- package/.output/public/_nuxt/BwQJEuBn.js +21 -0
- package/.output/public/_nuxt/C-wrWG5m.js +1 -0
- package/.output/public/_nuxt/C0I4h6do.js +1 -0
- package/.output/public/_nuxt/C0wjQa6_.js +1 -0
- package/.output/public/_nuxt/C5x3IQz42.js +1 -0
- package/.output/public/_nuxt/C7BcCB7C2.js +1 -0
- package/.output/public/_nuxt/CBkXv24C2.js +1 -0
- package/.output/public/_nuxt/CBpkE3Aa.js +1 -0
- package/.output/public/_nuxt/CEOSV8kw.js +1 -0
- package/.output/public/_nuxt/CHpYSwnV.js +1 -0
- package/.output/public/_nuxt/CZgxZE_w2.js +1 -0
- package/.output/public/_nuxt/Cdi9qfTr.js +20 -0
- package/.output/public/_nuxt/CfE35xQa2.js +1 -0
- package/.output/public/_nuxt/Cgym6fLd2.js +1 -0
- package/.output/public/_nuxt/CjdxNYpU2.js +1 -0
- package/.output/public/_nuxt/CjhzuymI.js +2 -0
- package/.output/public/_nuxt/CmuGMxDP.js +1 -0
- package/.output/public/_nuxt/CoAJnzi9.js +1 -0
- package/.output/public/_nuxt/CuHnwZbm.js +1 -0
- package/.output/public/_nuxt/CwHhmA3N.js +1 -0
- package/.output/public/_nuxt/D1Ljnzu-.js +1 -0
- package/.output/public/_nuxt/D8AvmPUH.js +1 -0
- package/.output/public/_nuxt/D9saExk92.js +1 -0
- package/.output/public/_nuxt/DDLi49qE.js +1 -0
- package/.output/public/_nuxt/DNlwacP72.js +1 -0
- package/.output/public/_nuxt/DPIImHuY2.js +1 -0
- package/.output/public/_nuxt/DW6X-3XT.js +1 -0
- package/.output/public/_nuxt/DZc-zU-H2.js +1 -0
- package/.output/public/_nuxt/DZqVVvR0.js +1 -0
- package/.output/public/_nuxt/Df35i2Tg2.js +1 -0
- package/.output/public/_nuxt/DuUc4bbY2.js +1 -0
- package/.output/public/_nuxt/DvGgUSuN2.js +2 -0
- package/.output/public/_nuxt/DvfiRGS-.js +1 -0
- package/.output/public/_nuxt/DzPypczG.js +1 -0
- package/.output/public/_nuxt/FQK98hkN2.js +1 -0
- package/.output/public/_nuxt/Lq_0yoit2.js +1 -0
- package/.output/public/_nuxt/MJD65-MH2.js +1 -0
- package/.output/public/_nuxt/OmpTerminalPanel.ComMDrA8.css +1 -0
- package/.output/public/_nuxt/PluginSlot.CGH0vb95.css +1 -0
- package/.output/public/_nuxt/TownView.B_8ctigh.css +1 -0
- package/.output/public/_nuxt/WZrTmJqL.js +1 -0
- package/.output/public/_nuxt/_id_.BQRWK7J2.css +1 -0
- package/.output/public/_nuxt/_wsId_.CQMH8t8j.css +1 -0
- package/.output/public/_nuxt/agents.D-JPovTZ.css +1 -0
- package/.output/public/_nuxt/aml.PalMp-5n.css +1 -0
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/1231252d-2864-43c0-83b2-4e70d3b86dea.json +1 -0
- package/.output/public/_nuxt/byZYInPk2.js +1 -0
- package/.output/public/_nuxt/dHwWyr6b.js +1 -0
- package/.output/public/_nuxt/default.BEXGWZFQ.css +1 -0
- package/.output/public/_nuxt/gfKPQ5o72.js +2 -0
- package/.output/public/_nuxt/logs.DlG85QRw.css +1 -0
- package/.output/public/_nuxt/monitor.D3yEqqrv.css +1 -0
- package/.output/public/_nuxt/ontology.CkuUThtY.css +1 -0
- package/.output/public/_nuxt/operations.-l6u44Ar.css +1 -0
- package/.output/public/_nuxt/pages.Cdpm_B-G.css +1 -0
- package/.output/public/_nuxt/permissions.DxuOOIqQ.css +1 -0
- package/.output/public/_nuxt/rDvMijKA.js +9 -0
- package/.output/public/_nuxt/schedules.BXNJ9q_I.css +1 -0
- package/.output/public/_nuxt/teams.CLQaXno5.css +1 -0
- package/.output/public/_nuxt/tokens.BDSUWF-L.css +1 -0
- package/.output/public/_nuxt/tools.BwXFAb-X.css +1 -0
- package/.output/public/_nuxt/workshop.BBiFhXuM.css +1 -0
- package/.output/public/favicon.svg +14 -14
- package/.output/public/robots.txt +3 -3
- package/.output/server/chunks/_/LeftOutlined.mjs.map +1 -1
- package/.output/server/chunks/_/RightOutlined.mjs.map +1 -1
- package/.output/server/chunks/_/SearchOutlined.mjs +13 -13
- package/.output/server/chunks/_/SearchOutlined.mjs.map +1 -1
- package/.output/server/chunks/_/access.mjs +4 -2
- package/.output/server/chunks/_/access.mjs.map +1 -1
- package/.output/server/chunks/_/catalog-view.mjs +1 -1
- package/.output/server/chunks/_/character-asset.repo.mjs +1 -1
- package/.output/server/chunks/_/data-export.mjs +12 -12
- package/.output/server/chunks/_/data-export.mjs.map +1 -1
- package/.output/server/chunks/_/data-query.mjs +3 -3
- package/.output/server/chunks/_/eda-run.repo.mjs +5 -3
- package/.output/server/chunks/_/eda-run.repo.mjs.map +1 -1
- package/.output/server/chunks/_/error-500.mjs.map +1 -1
- package/.output/server/chunks/_/features.mjs +8 -6
- package/.output/server/chunks/_/features.mjs.map +1 -1
- package/.output/server/chunks/_/golden.mjs +3 -3
- package/.output/server/chunks/_/host-bindings.mjs +4 -2
- package/.output/server/chunks/_/host-bindings.mjs.map +1 -1
- package/.output/server/chunks/_/index.mjs +4 -2
- package/.output/server/chunks/_/index.mjs.map +1 -1
- package/.output/server/chunks/_/line-scope.mjs +1 -1
- package/.output/server/chunks/_/mes-console.mjs +1 -1
- package/.output/server/chunks/_/mes-secrets.repo.mjs +4 -2
- package/.output/server/chunks/_/mes-secrets.repo.mjs.map +1 -1
- package/.output/server/chunks/_/nitro.mjs +6569 -4139
- package/.output/server/chunks/_/nitro.mjs.map +1 -1
- package/.output/server/chunks/_/ocap.mjs +1 -1
- package/.output/server/chunks/_/rest-auth.mjs +1 -1
- package/.output/server/chunks/_/scene-layout.repo.mjs +1 -1
- package/.output/server/chunks/_/spc.mjs +4 -2
- package/.output/server/chunks/_/spc.mjs.map +1 -1
- package/.output/server/chunks/_/user.schema.mjs +1 -1
- package/.output/server/chunks/build/AuthGate-nF1evO4v.mjs +716 -0
- package/.output/server/chunks/build/AuthGate-nF1evO4v.mjs.map +1 -0
- package/.output/server/chunks/build/FormItemContext-BlyzocS0.mjs +72 -0
- package/.output/server/chunks/build/FormItemContext-BlyzocS0.mjs.map +1 -0
- package/.output/server/chunks/build/OmpTerminalPanel-BhvhQ1gG.mjs +942 -0
- package/.output/server/chunks/build/OmpTerminalPanel-BhvhQ1gG.mjs.map +1 -0
- package/.output/server/chunks/build/PluginSlot-BUKXwV2X.mjs +141 -0
- package/.output/server/chunks/build/PluginSlot-BUKXwV2X.mjs.map +1 -0
- package/.output/server/chunks/build/TownView-BqdMFqei.mjs +6496 -0
- package/.output/server/chunks/build/TownView-BqdMFqei.mjs.map +1 -0
- package/.output/server/chunks/build/_id_-CsCtnbwe.mjs +394 -0
- package/.output/server/chunks/build/_id_-CsCtnbwe.mjs.map +1 -0
- package/.output/server/chunks/build/_id_-P1W47Gqq.mjs +2047 -0
- package/.output/server/chunks/build/_id_-P1W47Gqq.mjs.map +1 -0
- package/.output/server/chunks/build/_wsId_-DpOErFj6.mjs +14591 -0
- package/.output/server/chunks/build/_wsId_-DpOErFj6.mjs.map +1 -0
- package/.output/server/chunks/build/agents-D7CdEUTv.mjs +1080 -0
- package/.output/server/chunks/build/agents-D7CdEUTv.mjs.map +1 -0
- package/.output/server/chunks/build/alert-D0ivtTGy.mjs +263 -0
- package/.output/server/chunks/build/alert-D0ivtTGy.mjs.map +1 -0
- package/.output/server/chunks/build/aml-DRAFRcGU.mjs +816 -0
- package/.output/server/chunks/build/aml-DRAFRcGU.mjs.map +1 -0
- package/.output/server/chunks/build/analysis-J9axLuRt.mjs +535 -0
- package/.output/server/chunks/build/analysis-J9axLuRt.mjs.map +1 -0
- package/.output/server/chunks/build/api-B4Om0mEc.mjs +55 -0
- package/.output/server/chunks/build/api-B4Om0mEc.mjs.map +1 -0
- package/.output/server/chunks/build/api-BEW_ebY_.mjs +66 -0
- package/.output/server/chunks/build/api-BEW_ebY_.mjs.map +1 -0
- package/.output/server/chunks/build/api-BsAgXWxi.mjs +74 -0
- package/.output/server/chunks/build/api-BsAgXWxi.mjs.map +1 -0
- package/.output/server/chunks/build/api-error-BwAQLw44.mjs +47 -0
- package/.output/server/chunks/build/api-error-BwAQLw44.mjs.map +1 -0
- package/.output/server/chunks/build/apiClient-BvXtNzC8.mjs +81 -0
- package/.output/server/chunks/build/apiClient-BvXtNzC8.mjs.map +1 -0
- package/.output/server/chunks/build/board-CJUc032b.mjs +191 -0
- package/.output/server/chunks/build/board-CJUc032b.mjs.map +1 -0
- package/.output/server/chunks/build/builtin-catalog-edpDcgfL.mjs.map +1 -0
- package/.output/server/chunks/build/card-Cqk0Ur-L.mjs +953 -0
- package/.output/server/chunks/build/card-Cqk0Ur-L.mjs.map +1 -0
- package/.output/server/chunks/build/channel-templates-ggsBacZF.mjs +944 -0
- package/.output/server/chunks/build/channel-templates-ggsBacZF.mjs.map +1 -0
- package/.output/server/chunks/build/chart-pipeline-BpoWYMK_.mjs.map +1 -0
- package/.output/server/chunks/build/chart-trend-BWeZh5Lv.mjs.map +1 -0
- package/.output/server/chunks/build/checkbox-CrT4cnfu.mjs +439 -0
- package/.output/server/chunks/build/checkbox-CrT4cnfu.mjs.map +1 -0
- package/.output/server/chunks/build/client-only-qNA2OVV_.mjs +43 -0
- package/.output/server/chunks/build/client-only-qNA2OVV_.mjs.map +1 -0
- package/.output/server/chunks/build/constants-HPHJvjne.mjs +144 -0
- package/.output/server/chunks/build/constants-HPHJvjne.mjs.map +1 -0
- package/.output/server/chunks/build/core-CgTOPS4t.mjs +294 -0
- package/.output/server/chunks/build/core-CgTOPS4t.mjs.map +1 -0
- package/.output/server/chunks/build/daq-B_dRMDw4.mjs +1268 -0
- package/.output/server/chunks/build/daq-B_dRMDw4.mjs.map +1 -0
- package/.output/server/chunks/build/data-D8uX1dnm.mjs +483 -0
- package/.output/server/chunks/build/data-D8uX1dnm.mjs.map +1 -0
- package/.output/server/chunks/build/dcw-D_HD_H_2.mjs +507 -0
- package/.output/server/chunks/build/dcw-D_HD_H_2.mjs.map +1 -0
- package/.output/server/chunks/build/dcw-driver-badge-Df5wL_ZA.mjs.map +1 -0
- package/.output/server/chunks/build/default-CNWS6NUw.mjs +2355 -0
- package/.output/server/chunks/build/default-CNWS6NUw.mjs.map +1 -0
- package/.output/server/chunks/build/descriptions-BNlfKG9y.mjs +406 -0
- package/.output/server/chunks/build/descriptions-BNlfKG9y.mjs.map +1 -0
- package/.output/server/chunks/build/drawer-Caji0PLs.mjs +834 -0
- package/.output/server/chunks/build/drawer-Caji0PLs.mjs.map +1 -0
- package/.output/server/chunks/build/dropdown-BNwTVGde.mjs +14 -0
- package/.output/server/chunks/build/dropdown-BNwTVGde.mjs.map +1 -0
- package/.output/server/chunks/build/dropdown-Cd-xPhR6.mjs +540 -0
- package/.output/server/chunks/build/dropdown-Cd-xPhR6.mjs.map +1 -0
- package/.output/server/chunks/build/es-Bxu10NJ2.mjs +45 -0
- package/.output/server/chunks/build/es-Bxu10NJ2.mjs.map +1 -0
- package/.output/server/chunks/build/firstNotUndefined-8H5_qHUu.mjs +2448 -0
- package/.output/server/chunks/build/firstNotUndefined-8H5_qHUu.mjs.map +1 -0
- package/.output/server/chunks/build/form-D_UpWPN4.mjs +4712 -0
- package/.output/server/chunks/build/form-D_UpWPN4.mjs.map +1 -0
- package/.output/server/chunks/build/hasIn-DBdElbjM.mjs +553 -0
- package/.output/server/chunks/build/hasIn-DBdElbjM.mjs.map +1 -0
- package/.output/server/chunks/build/hitl-Bd30yr1J.mjs +132 -0
- package/.output/server/chunks/build/hitl-Bd30yr1J.mjs.map +1 -0
- package/.output/server/chunks/build/input-GtPuSEgt.mjs +2181 -0
- package/.output/server/chunks/build/input-GtPuSEgt.mjs.map +1 -0
- package/.output/server/chunks/build/input-number-BNlNDK7H.mjs +1120 -0
- package/.output/server/chunks/build/input-number-BNlNDK7H.mjs.map +1 -0
- package/.output/server/chunks/build/interval-DvHBIIZh.mjs +9 -0
- package/.output/server/chunks/build/interval-DvHBIIZh.mjs.map +1 -0
- package/.output/server/chunks/build/isNumeric-CP7q_yhz.mjs +7 -0
- package/.output/server/chunks/build/isNumeric-CP7q_yhz.mjs.map +1 -0
- package/.output/server/chunks/build/logs-BnYSMRXM.mjs +494 -0
- package/.output/server/chunks/build/logs-BnYSMRXM.mjs.map +1 -0
- package/.output/server/chunks/build/menu-BXt-X0dt.mjs +1952 -0
- package/.output/server/chunks/build/menu-BXt-X0dt.mjs.map +1 -0
- package/.output/server/chunks/build/monitor-Cq6hRFeQ.mjs +2255 -0
- package/.output/server/chunks/build/monitor-Cq6hRFeQ.mjs.map +1 -0
- package/.output/server/chunks/build/narrow-fetch-CcG-BPxc.mjs.map +1 -0
- package/.output/server/chunks/build/ontology-ohICfVVb.mjs +1408 -0
- package/.output/server/chunks/build/ontology-ohICfVVb.mjs.map +1 -0
- package/.output/server/chunks/build/operations-4zOVhW7o.mjs +313 -0
- package/.output/server/chunks/build/operations-4zOVhW7o.mjs.map +1 -0
- package/.output/server/chunks/build/optimizer-BlWTsM-W.mjs +204 -0
- package/.output/server/chunks/build/optimizer-BlWTsM-W.mjs.map +1 -0
- package/.output/server/chunks/build/pages-DEv4ProW.mjs +544 -0
- package/.output/server/chunks/build/pages-DEv4ProW.mjs.map +1 -0
- package/.output/server/chunks/build/pagination-DTAconUo.mjs +1346 -0
- package/.output/server/chunks/build/pagination-DTAconUo.mjs.map +1 -0
- package/.output/server/chunks/build/permissions-DgXQZSyx.mjs +639 -0
- package/.output/server/chunks/build/permissions-DgXQZSyx.mjs.map +1 -0
- package/.output/server/chunks/build/pipeline-CkavMBhk.mjs +214 -0
- package/.output/server/chunks/build/pipeline-CkavMBhk.mjs.map +1 -0
- package/.output/server/chunks/build/plugins-LRjaSEZy.mjs +274 -0
- package/.output/server/chunks/build/plugins-LRjaSEZy.mjs.map +1 -0
- package/.output/server/chunks/build/popconfirm-DxYPGRgS.mjs +340 -0
- package/.output/server/chunks/build/popconfirm-DxYPGRgS.mjs.map +1 -0
- package/.output/server/chunks/build/responsiveObserve-DM3hpzhU.mjs +78 -0
- package/.output/server/chunks/build/responsiveObserve-DM3hpzhU.mjs.map +1 -0
- package/.output/server/chunks/build/schedules-Hz2DJUE2.mjs +7174 -0
- package/.output/server/chunks/build/schedules-Hz2DJUE2.mjs.map +1 -0
- package/.output/server/chunks/build/segmented-D3HWtHPw.mjs +341 -0
- package/.output/server/chunks/build/segmented-D3HWtHPw.mjs.map +1 -0
- package/.output/server/chunks/build/select-B3Dsb9yq.mjs +3923 -0
- package/.output/server/chunks/build/select-B3Dsb9yq.mjs.map +1 -0
- package/.output/server/chunks/build/settings-DXLJPq7d.mjs +1016 -0
- package/.output/server/chunks/build/settings-DXLJPq7d.mjs.map +1 -0
- package/.output/server/chunks/build/space-Dwu2Skt8.mjs +110 -0
- package/.output/server/chunks/build/space-Dwu2Skt8.mjs.map +1 -0
- package/.output/server/chunks/build/spin-C2cuvGth.mjs +357 -0
- package/.output/server/chunks/build/spin-C2cuvGth.mjs.map +1 -0
- package/.output/server/chunks/build/studio-hSqH9TYS.mjs +338 -0
- package/.output/server/chunks/build/studio-hSqH9TYS.mjs.map +1 -0
- package/.output/server/chunks/build/switch-CyR-H6Fb.mjs +377 -0
- package/.output/server/chunks/build/switch-CyR-H6Fb.mjs.map +1 -0
- package/.output/server/chunks/build/table-CmVD-cA9.mjs +7546 -0
- package/.output/server/chunks/build/table-CmVD-cA9.mjs.map +1 -0
- package/.output/server/chunks/build/tabs-Vg0e7cZE.mjs +1924 -0
- package/.output/server/chunks/build/tabs-Vg0e7cZE.mjs.map +1 -0
- package/.output/server/chunks/build/tag-y0sn-xv9.mjs +1156 -0
- package/.output/server/chunks/build/tag-y0sn-xv9.mjs.map +1 -0
- package/.output/server/chunks/build/teams-BbwYJyzv.mjs +1205 -0
- package/.output/server/chunks/build/teams-BbwYJyzv.mjs.map +1 -0
- package/.output/server/chunks/build/tokens-GYaGJ35Z.mjs +1064 -0
- package/.output/server/chunks/build/tokens-GYaGJ35Z.mjs.map +1 -0
- package/.output/server/chunks/build/tools-CnYi9cou.mjs +489 -0
- package/.output/server/chunks/build/tools-CnYi9cou.mjs.map +1 -0
- package/.output/server/chunks/build/tooltip-C2n2nNiQ.mjs +920 -0
- package/.output/server/chunks/build/tooltip-C2n2nNiQ.mjs.map +1 -0
- package/.output/server/chunks/build/town-BV-hbwb5.mjs +77 -0
- package/.output/server/chunks/build/town-BV-hbwb5.mjs.map +1 -0
- package/.output/server/chunks/build/town-CcoQKjMj.mjs +135 -0
- package/.output/server/chunks/build/town-CcoQKjMj.mjs.map +1 -0
- package/.output/server/chunks/build/types-D6J7slEa.mjs +5565 -0
- package/.output/server/chunks/build/types-D6J7slEa.mjs.map +1 -0
- package/.output/server/chunks/build/types-DWqIeMRP.mjs +78 -0
- package/.output/server/chunks/build/types-DWqIeMRP.mjs.map +1 -0
- package/.output/server/chunks/build/useAgentHarnessOptions-Dq0l0Z6d.mjs +126 -0
- package/.output/server/chunks/build/useAgentHarnessOptions-Dq0l0Z6d.mjs.map +1 -0
- package/.output/server/chunks/build/useAgentTemplateActions-BFOHb5-L.mjs +79 -0
- package/.output/server/chunks/build/useAgentTemplateActions-BFOHb5-L.mjs.map +1 -0
- package/.output/server/chunks/build/useAgentTemplateDialogState-CZzpu5og.mjs +69 -0
- package/.output/server/chunks/build/useAgentTemplateDialogState-CZzpu5og.mjs.map +1 -0
- package/.output/server/chunks/build/useAgentTemplateForm-CuJPOPcK.mjs +119 -0
- package/.output/server/chunks/build/useAgentTemplateForm-CuJPOPcK.mjs.map +1 -0
- package/.output/server/chunks/build/useAgentTemplatesCatalog-B2bIhZLA.mjs +135 -0
- package/.output/server/chunks/build/useAgentTemplatesCatalog-B2bIhZLA.mjs.map +1 -0
- package/.output/server/chunks/build/useAmlDatasets-DeoE1idn.mjs +94 -0
- package/.output/server/chunks/build/useAmlDatasets-DeoE1idn.mjs.map +1 -0
- package/.output/server/chunks/build/useAmlEntities-BJhvdqHJ.mjs +88 -0
- package/.output/server/chunks/build/useAmlEntities-BJhvdqHJ.mjs.map +1 -0
- package/.output/server/chunks/build/useAmlEnv-CDIZ6xTe.mjs +196 -0
- package/.output/server/chunks/build/useAmlEnv-CDIZ6xTe.mjs.map +1 -0
- package/.output/server/chunks/build/useAmlExperiments-Dloi834i.mjs +91 -0
- package/.output/server/chunks/build/useAmlExperiments-Dloi834i.mjs.map +1 -0
- package/.output/server/chunks/build/useAmlFormat-C2sl3MGB.mjs +84 -0
- package/.output/server/chunks/build/useAmlFormat-C2sl3MGB.mjs.map +1 -0
- package/.output/server/chunks/build/useAmlJobs-BF9LpwXz.mjs +269 -0
- package/.output/server/chunks/build/useAmlJobs-BF9LpwXz.mjs.map +1 -0
- package/.output/server/chunks/build/useAmlModels-_bweOr3R.mjs +95 -0
- package/.output/server/chunks/build/useAmlModels-_bweOr3R.mjs.map +1 -0
- package/.output/server/chunks/build/useAmlNotes-DQj980iX.mjs +88 -0
- package/.output/server/chunks/build/useAmlNotes-DQj980iX.mjs.map +1 -0
- package/.output/server/chunks/build/useAmlPredict-DHNgDSJn.mjs +132 -0
- package/.output/server/chunks/build/useAmlPredict-DHNgDSJn.mjs.map +1 -0
- package/.output/server/chunks/build/useAnalysisFeed-BrEGV_9x.mjs +131 -0
- package/.output/server/chunks/build/useAnalysisFeed-BrEGV_9x.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqAddNode-D_Rkju0f.mjs +144 -0
- package/.output/server/chunks/build/useDaqAddNode-D_Rkju0f.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqDetailBinding-DCWaLKXT.mjs +72 -0
- package/.output/server/chunks/build/useDaqDetailBinding-DCWaLKXT.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqDetailFrames-BOIcOJRB.mjs +81 -0
- package/.output/server/chunks/build/useDaqDetailFrames-BOIcOJRB.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqDetailHistory-D6WulPVs.mjs +178 -0
- package/.output/server/chunks/build/useDaqDetailHistory-D6WulPVs.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqDetailNode-BGMRUIXN.mjs +101 -0
- package/.output/server/chunks/build/useDaqDetailNode-BGMRUIXN.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqDetailParams-Cm9a9r5G.mjs +161 -0
- package/.output/server/chunks/build/useDaqDetailParams-Cm9a9r5G.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqFilters-zAAVlzJQ.mjs +224 -0
- package/.output/server/chunks/build/useDaqFilters-zAAVlzJQ.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqNodeWindow-1DWj2H5G.mjs +92 -0
- package/.output/server/chunks/build/useDaqNodeWindow-1DWj2H5G.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqOptimizations-BE_9Z2s_.mjs +138 -0
- package/.output/server/chunks/build/useDaqOptimizations-BE_9Z2s_.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqStream-B9ZBVQrI.mjs +395 -0
- package/.output/server/chunks/build/useDaqStream-B9ZBVQrI.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqTemplates-CK37sMfi.mjs +189 -0
- package/.output/server/chunks/build/useDaqTemplates-CK37sMfi.mjs.map +1 -0
- package/.output/server/chunks/build/useDashboardCharts-D45083s_.mjs +356 -0
- package/.output/server/chunks/build/useDashboardCharts-D45083s_.mjs.map +1 -0
- package/.output/server/chunks/build/useDashboardData-Cw8lrPo5.mjs +155 -0
- package/.output/server/chunks/build/useDashboardData-Cw8lrPo5.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwAddNode-KnocMk1m.mjs +221 -0
- package/.output/server/chunks/build/useDcwAddNode-KnocMk1m.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwCards-C53IiOcg.mjs +69 -0
- package/.output/server/chunks/build/useDcwCards-C53IiOcg.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwDetailScope-D6qXrfZu.mjs +186 -0
- package/.output/server/chunks/build/useDcwDetailScope-D6qXrfZu.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwDetailTemplates-DPOXu1o_.mjs +150 -0
- package/.output/server/chunks/build/useDcwDetailTemplates-DPOXu1o_.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwFilter-DNQ6Ivwd.mjs +73 -0
- package/.output/server/chunks/build/useDcwFilter-DNQ6Ivwd.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwLedger-BhbUBCbi.mjs +81 -0
- package/.output/server/chunks/build/useDcwLedger-BhbUBCbi.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwLineMutations-KA7VnggO.mjs +139 -0
- package/.output/server/chunks/build/useDcwLineMutations-KA7VnggO.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwLineRun-3zx_UCxi.mjs +106 -0
- package/.output/server/chunks/build/useDcwLineRun-3zx_UCxi.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwParamApprovals-DzyY6Tmi.mjs +123 -0
- package/.output/server/chunks/build/useDcwParamApprovals-DzyY6Tmi.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwProducts-B05ymt3k.mjs +95 -0
- package/.output/server/chunks/build/useDcwProducts-B05ymt3k.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwQuery-vWpgpSmJ.mjs +100 -0
- package/.output/server/chunks/build/useDcwQuery-vWpgpSmJ.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwQuickActions-DUkLy34S.mjs +90 -0
- package/.output/server/chunks/build/useDcwQuickActions-DUkLy34S.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwRecipes-BAb4Yg3d.mjs +260 -0
- package/.output/server/chunks/build/useDcwRecipes-BAb4Yg3d.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwStream-RN3U_Jsh.mjs +455 -0
- package/.output/server/chunks/build/useDcwStream-RN3U_Jsh.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwTemplates-D2aoejps.mjs +93 -0
- package/.output/server/chunks/build/useDcwTemplates-D2aoejps.mjs.map +1 -0
- package/.output/server/chunks/build/useDcwWrites-7w8txksD.mjs +142 -0
- package/.output/server/chunks/build/useDcwWrites-7w8txksD.mjs.map +1 -0
- package/.output/server/chunks/build/useDeviceTwins-BqwVJaZg.mjs +128 -0
- package/.output/server/chunks/build/useDeviceTwins-BqwVJaZg.mjs.map +1 -0
- package/.output/server/chunks/build/useExpConfirmations-BM626N4p.mjs +109 -0
- package/.output/server/chunks/build/useExpConfirmations-BM626N4p.mjs.map +1 -0
- package/.output/server/chunks/build/useLocalTime-uVSM44Um.mjs +55 -0
- package/.output/server/chunks/build/useLocalTime-uVSM44Um.mjs.map +1 -0
- package/.output/server/chunks/build/useLogsFormat-B-o4MHy7.mjs +79 -0
- package/.output/server/chunks/build/useLogsFormat-B-o4MHy7.mjs.map +1 -0
- package/.output/server/chunks/build/useLogsManual-D0dvgCsP.mjs +91 -0
- package/.output/server/chunks/build/useLogsManual-D0dvgCsP.mjs.map +1 -0
- package/.output/server/chunks/build/useLogsQuery-D7hrJ3yn.mjs +152 -0
- package/.output/server/chunks/build/useLogsQuery-D7hrJ3yn.mjs.map +1 -0
- package/.output/server/chunks/build/useLogsScope-DEUyq-My.mjs +85 -0
- package/.output/server/chunks/build/useLogsScope-DEUyq-My.mjs.map +1 -0
- package/.output/server/chunks/build/useMonitorColumns-vVnt3r5Q.mjs +219 -0
- package/.output/server/chunks/build/useMonitorColumns-vVnt3r5Q.mjs.map +1 -0
- package/.output/server/chunks/build/useMonitorData-DIkiLr_h.mjs +137 -0
- package/.output/server/chunks/build/useMonitorData-DIkiLr_h.mjs.map +1 -0
- package/.output/server/chunks/build/useMonitorFormat-CyURtH8N.mjs +93 -0
- package/.output/server/chunks/build/useMonitorFormat-CyURtH8N.mjs.map +1 -0
- package/.output/server/chunks/build/useMonitorTerminal-Dj4QwRNW.mjs +73 -0
- package/.output/server/chunks/build/useMonitorTerminal-Dj4QwRNW.mjs.map +1 -0
- package/.output/server/chunks/build/useOperationsFeed-Ci4mZAn_.mjs +197 -0
- package/.output/server/chunks/build/useOperationsFeed-Ci4mZAn_.mjs.map +1 -0
- package/.output/server/chunks/build/useOpsLog-C-M6Eace.mjs +149 -0
- package/.output/server/chunks/build/useOpsLog-C-M6Eace.mjs.map +1 -0
- package/.output/server/chunks/build/useRecipeDispatchApprovals-BYtiqfeb.mjs +158 -0
- package/.output/server/chunks/build/useRecipeDispatchApprovals-BYtiqfeb.mjs.map +1 -0
- package/.output/server/chunks/build/useResponsive-BKDMGTHs.mjs.map +1 -0
- package/.output/server/chunks/build/useTeamActions-BDjU06LP.mjs +81 -0
- package/.output/server/chunks/build/useTeamActions-BDjU06LP.mjs.map +1 -0
- package/.output/server/chunks/build/useTeamAddMemberDialog-J3oFn3FI.mjs +86 -0
- package/.output/server/chunks/build/useTeamAddMemberDialog-J3oFn3FI.mjs.map +1 -0
- package/.output/server/chunks/build/useTeamCreateDialog-fbn4ixYu.mjs +99 -0
- package/.output/server/chunks/build/useTeamCreateDialog-fbn4ixYu.mjs.map +1 -0
- package/.output/server/chunks/build/useTeamDeployDialog-BNezMD2k.mjs +82 -0
- package/.output/server/chunks/build/useTeamDeployDialog-BNezMD2k.mjs.map +1 -0
- package/.output/server/chunks/build/useTeamDialogState-CFRUQxAf.mjs +84 -0
- package/.output/server/chunks/build/useTeamDialogState-CFRUQxAf.mjs.map +1 -0
- package/.output/server/chunks/build/useTeamPluginDialog-BZznrOVe.mjs +105 -0
- package/.output/server/chunks/build/useTeamPluginDialog-BZznrOVe.mjs.map +1 -0
- package/.output/server/chunks/build/useTeamsCatalog-DuZFP3oG.mjs +125 -0
- package/.output/server/chunks/build/useTeamsCatalog-DuZFP3oG.mjs.map +1 -0
- package/.output/server/chunks/build/useTokenClipboard-CwQpoFeP.mjs +74 -0
- package/.output/server/chunks/build/useTokenClipboard-CwQpoFeP.mjs.map +1 -0
- package/.output/server/chunks/build/useTokenCreate-Ctl0YGhL.mjs +117 -0
- package/.output/server/chunks/build/useTokenCreate-Ctl0YGhL.mjs.map +1 -0
- package/.output/server/chunks/build/useTokenRename-Cm3ypSfN.mjs +89 -0
- package/.output/server/chunks/build/useTokenRename-Cm3ypSfN.mjs.map +1 -0
- package/.output/server/chunks/build/useTokenReveal-CeoWL5Mt.mjs +120 -0
- package/.output/server/chunks/build/useTokenReveal-CeoWL5Mt.mjs.map +1 -0
- package/.output/server/chunks/build/useTokensList-CNIzON3u.mjs +94 -0
- package/.output/server/chunks/build/useTokensList-CNIzON3u.mjs.map +1 -0
- package/.output/server/chunks/build/useTownBus-D9SoIsAN.mjs.map +1 -0
- package/.output/server/chunks/build/useWorkbenchAuth-CY-bVFMu.mjs +143 -0
- package/.output/server/chunks/build/useWorkbenchAuth-CY-bVFMu.mjs.map +1 -0
- package/.output/server/chunks/build/useWorkbenchWorkspaces-DhZQFss9.mjs +140 -0
- package/.output/server/chunks/build/useWorkbenchWorkspaces-DhZQFss9.mjs.map +1 -0
- package/.output/server/chunks/build/useWorkshopApi-BxHn-4iR.mjs +127 -0
- package/.output/server/chunks/build/useWorkshopApi-BxHn-4iR.mjs.map +1 -0
- package/.output/server/chunks/build/useWorkshopWs-YQ5URrbt.mjs +1659 -0
- package/.output/server/chunks/build/useWorkshopWs-YQ5URrbt.mjs.map +1 -0
- package/.output/server/chunks/build/useWorkspaceAuth-Dlvj9csD.mjs +62 -0
- package/.output/server/chunks/build/useWorkspaceAuth-Dlvj9csD.mjs.map +1 -0
- package/.output/server/chunks/build/useWorkspaceChannels-CPFepxTN.mjs +94 -0
- package/.output/server/chunks/build/useWorkspaceChannels-CPFepxTN.mjs.map +1 -0
- package/.output/server/chunks/build/useWorkspacePanels-CTwREmq0.mjs +80 -0
- package/.output/server/chunks/build/useWorkspacePanels-CTwREmq0.mjs.map +1 -0
- package/.output/server/chunks/build/useWorkspaceShell-BCypjjjE.mjs +170 -0
- package/.output/server/chunks/build/useWorkspaceShell-BCypjjjE.mjs.map +1 -0
- package/.output/server/chunks/build/users-DjiVC_tS.mjs +571 -0
- package/.output/server/chunks/build/users-DjiVC_tS.mjs.map +1 -0
- package/.output/server/chunks/build/workshop-1gKeDASV.mjs +548 -0
- package/.output/server/chunks/build/workshop-1gKeDASV.mjs.map +1 -0
- package/.output/server/chunks/build/workspaces-CmW0cpOt.mjs.map +1 -0
- package/.output/server/chunks/routes/api/health.get.mjs +3 -1
- package/.output/server/chunks/routes/api/health.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/mcp/workshop.mjs +4 -2
- package/.output/server/chunks/routes/api/mcp/workshop.mjs.map +1 -1
- package/.output/server/chunks/routes/api/metrics.mjs +3 -1
- package/.output/server/chunks/routes/api/metrics.mjs.map +1 -1
- package/.output/server/chunks/routes/api/plugins/_name/_...path_.mjs +3 -1
- package/.output/server/chunks/routes/api/plugins/_name/_...path_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/plugins/client/_name_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/plugins/client/_name_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/plugins/i18n.get.mjs +3 -1
- package/.output/server/chunks/routes/api/plugins/i18n.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/plugins/manifest.get.mjs +3 -1
- package/.output/server/chunks/routes/api/plugins/manifest.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/backup/list.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/backup/list.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/backup/run.post.mjs +5 -3
- package/.output/server/chunks/routes/api/system/backup/run.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/config-groups/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/system/config-groups/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/config-groups/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/system/config-groups/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/config.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/config.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/system/index.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/system/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/monitor/terminal/ws.mjs +3 -1
- package/.output/server/chunks/routes/api/system/monitor/terminal/ws.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/monitor/terminate.post.mjs +3 -1
- package/.output/server/chunks/routes/api/system/monitor/terminate.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/monitor.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/monitor.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/settings/events.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/settings/events.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/settings/reset.post.mjs +3 -1
- package/.output/server/chunks/routes/api/system/settings/reset.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/timezone.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/timezone.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/users/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/users/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id_.put.mjs +3 -1
- package/.output/server/chunks/routes/api/users/_id_.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/change-password.post.mjs +3 -1
- package/.output/server/chunks/routes/api/users/change-password.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/users/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/users/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/login.post.mjs +5 -4
- package/.output/server/chunks/routes/api/users/login.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/logout.post.mjs +3 -1
- package/.output/server/chunks/routes/api/users/logout.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/me.get.mjs +3 -1
- package/.output/server/chunks/routes/api/users/me.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/register.post.mjs +3 -1
- package/.output/server/chunks/routes/api/users/register.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/setup-status.get.mjs +3 -1
- package/.output/server/chunks/routes/api/users/setup-status.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/tokens/_id/token.get.mjs +3 -1
- package/.output/server/chunks/routes/api/users/tokens/_id/token.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/tokens/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/users/tokens/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/tokens/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/users/tokens/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/_...path_.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/_...path_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/a2a/_agentId/index.get.mjs +12 -2
- package/.output/server/chunks/routes/api/workshop/a2a/_agentId/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/a2a/_agentId/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/a2a/_agentId/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/a2a/send.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/a2a/send.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/approvals/_id/decide.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/approvals/_id/decide.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/grant.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/grant.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/revoke.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/revoke.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/index.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/agent-tools/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/invoke.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/invoke.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/list.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/list.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agents/subscribe.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agents/subscribe.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id/preview.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id/preview.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/entities/prune.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/entities/prune.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/env/recheck.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/env/recheck.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/env/uv.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/env/uv.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/env/venv.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/env/venv.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index2.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index3.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index3.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index4.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index5.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index6.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index7.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/cancel.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/cancel.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/logs.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/logs.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/retry.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/retry.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id/predict.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id/predict.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id/promote.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id/promote.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id/train.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id/train.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/twin/providers.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/twin/providers.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/approvals/_id/decide.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/approvals/_id/decide.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/character/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/assets/character/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/devices/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/assets/devices/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/assets/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/index.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/assets/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/assets/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs +6 -3
- package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/audit.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/audit.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/caller.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/caller.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +5 -3
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/from-channel.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/from-channel.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/activate.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/activate.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/memories/_memoryId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/memories/_memoryId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/memories/search.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/memories/search.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/model.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/model.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/position.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/position.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/range.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/range.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/rotate-token.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/rotate-token.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/stop.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/stop.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/messages/_messageId/read.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/messages/_messageId/read.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/permissions.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/permissions.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/events.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/events.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/execution-mode.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/execution-mode.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index3.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index3.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index4.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index4.post.mjs +6 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index4.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index5.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index6.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index7.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/line.put.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/line.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/_userId/approve.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/_userId/approve.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/_userId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/_userId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/join.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/join.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/leave.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/leave.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/memories/_memoryId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/memories/_memoryId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/queue.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/queue.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/terminals.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/terminals.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/tools/reset.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/tools/reset.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.patch.mjs +21 -4
- package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/index.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/index.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/index.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels.post.mjs +10 -8
- package/.output/server/chunks/routes/api/workshop/channels.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/bind.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/bind.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/bindings.put.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/bindings.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/frames/content.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/frames/content.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/frames.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/frames.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/ingest.post.mjs +15 -3
- package/.output/server/chunks/routes/api/workshop/daq/_id/ingest.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/test.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/test.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/alarms/_id/ack.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/alarms/_id/ack.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/alarms.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/alarms.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/controller.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/controller.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/export/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/export/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/export-file.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/export-file.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/index2.post.mjs +6 -4
- package/.output/server/chunks/routes/api/workshop/daq/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/query.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/query.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/storage/retention.put.mjs +68 -0
- package/.output/server/chunks/routes/api/workshop/daq/storage/retention.put.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/daq/storage/rollup.post.mjs +45 -0
- package/.output/server/chunks/routes/api/workshop/daq/storage/rollup.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/daq/storage.get.mjs +36 -0
- package/.output/server/chunks/routes/api/workshop/daq/storage.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs +6 -4
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs +6 -4
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/bindings.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id/bindings.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs +5 -3
- package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index5.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index5.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index6.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index7.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/mes-artifacts/file.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/mes-artifacts/file.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/mes-hook-test.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/mes-hook-test.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/mes-test-read.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/mes-test-read.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/judge.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/judge.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/rollback.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/rollback.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/series.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/series.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id_.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/read.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/read.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/write.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/write.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/revert.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/revert.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/versions.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/versions.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id_.delete.mjs +17 -3
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/index.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/index.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id/control.post.mjs +6 -3
- package/.output/server/chunks/routes/api/workshop/device-twins/_id/control.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id/telemetry.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/device-twins/_id/telemetry.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs +6 -3
- package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id_.patch.mjs +6 -3
- package/.output/server/chunks/routes/api/workshop/device-twins/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/commonality.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/eda/commonality.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/features/jobs.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/features/jobs.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/features/run.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/features/run.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/deviation.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/deviation.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/single.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/single.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index2.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index3.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index3.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index4.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index4.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index4.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index5.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index5.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index5.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index6.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index6.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index6.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index7.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index7.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index7.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index8.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index8.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index8.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index8.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/ocap/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/ocap/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/ocap/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/ocap/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/runs/_id/labels.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/runs/_id/labels.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/runs.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/runs.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id/recompute.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id/recompute.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/vm/predict.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/eda/vm/predict.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/exp/confirmations/_id/decide.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/exp/confirmations/_id/decide.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/exp/index.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/exp/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/fs/dirs.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/fs/dirs.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index10.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index10.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index10.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index10.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index11.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index11.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index12.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index12.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index13.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index13.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index14.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index14.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index15.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index15.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index16.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index16.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index2.post.mjs +24 -9
- package/.output/server/chunks/routes/api/workshop/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index3.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index3.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index4.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index4.post.mjs +231 -5
- package/.output/server/chunks/routes/api/workshop/index4.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index5.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index5.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index5.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index6.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index6.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index6.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index7.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index7.post.mjs +6 -2
- package/.output/server/chunks/routes/api/workshop/index7.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index8.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index8.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index8.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index8.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index9.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index9.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index9.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index9.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mailbox/all.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mailbox/all.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mailbox.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mailbox.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/memories/maintenance.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/memories/maintenance.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/datasets.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/mes/datasets.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mes/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/index.put.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mes/index.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/points.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mes/points.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/preview.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mes/preview.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/secrets/_ref_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mes/secrets/_ref_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/notifications/read.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/notifications/read.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/autofix.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/autofix.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/compile.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/compile.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/evidence.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/evidence.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/publish.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/publish.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval-decision.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval-decision.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/transition.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/transition.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/subgraph.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/subgraph.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/validate.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/validate.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId_.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/export/_ontologyId_.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/export/_ontologyId_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/index.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/index.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/scene.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/scene.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/traces/_ontologyId_.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/traces/_ontologyId_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId/compare.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId/compare.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId_.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/bindings/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/optimization/bindings/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/capabilities.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/capabilities.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/index.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/index.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/index.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/index2.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/index2.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/profiles/_id/publish.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/profiles/_id/publish.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/crosscheck.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/crosscheck.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/dispatch.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/dispatch.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/solve.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/solve.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/plugins/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/plugins/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/datasets.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/process-model/datasets.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/eligibility.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/process-model/eligibility.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/experiments.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/process-model/experiments.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/index.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/process-model/index.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/specs/_id/publish.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/process-model/specs/_id/publish.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/train.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/process-model/train.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/runtime.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/runtime.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id/run.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id/run.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id/runs.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id/runs.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/complete.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/complete.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/dispatch.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/dispatch.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/reassign.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/reassign.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/reopen.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/reopen.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/report.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/report.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/retry.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/retry.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/supersede.post.mjs +43 -0
- package/.output/server/chunks/routes/api/workshop/tasks/_id/supersede.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/tasks/_id/update.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/update.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/deploy.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/teams/_id/deploy.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index2.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/teams/_id/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/members/_agentId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/members/_agentId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tools/_name_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tools/_name_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tools/sync.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/tools/sync.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/users/me.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/users/me.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/users/register.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/users/register.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +5 -3
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channels/_channelId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channels/_channelId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channels/_channelId_.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channels/_channelId_.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/index.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/index.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/renderer.mjs +2 -2
- package/.output/server/chunks/routes/renderer.mjs.map +1 -1
- package/.output/server/chunks/virtual/entry.mjs +377 -377
- package/.output/server/chunks/virtual/entry.mjs.map +1 -1
- package/.output/server/chunks/virtual/precomputed.mjs +1 -1
- package/.output/server/chunks/virtual/precomputed.mjs.map +1 -1
- package/.output/server/index.mjs +4 -2
- package/.output/server/index.mjs.map +1 -1
- package/.output/server/node_modules/pg/esm/index.mjs +20 -0
- package/.output/server/node_modules/pg/lib/client.js +828 -0
- package/.output/server/node_modules/pg/lib/connection-parameters.js +184 -0
- package/.output/server/node_modules/pg/lib/connection.js +243 -0
- package/.output/server/node_modules/pg/lib/crypto/cert-signatures.js +122 -0
- package/.output/server/node_modules/pg/lib/crypto/sasl.js +262 -0
- package/.output/server/node_modules/pg/lib/crypto/utils.js +89 -0
- package/.output/server/node_modules/pg/lib/defaults.js +94 -0
- package/.output/server/node_modules/pg/lib/index.js +73 -0
- package/.output/server/node_modules/pg/lib/native/client.js +420 -0
- package/.output/server/node_modules/pg/lib/native/index.js +2 -0
- package/.output/server/node_modules/pg/lib/native/query.js +165 -0
- package/.output/server/node_modules/pg/lib/query.js +259 -0
- package/.output/server/node_modules/pg/lib/result.js +109 -0
- package/.output/server/node_modules/pg/lib/stream.js +83 -0
- package/.output/server/node_modules/pg/lib/type-overrides.js +35 -0
- package/.output/server/node_modules/pg/lib/utils.js +207 -0
- package/.output/server/node_modules/pg/package.json +76 -0
- package/.output/server/node_modules/pg-cloudflare/dist/empty.js +6 -0
- package/.output/server/node_modules/pg-cloudflare/package.json +39 -0
- package/.output/server/node_modules/pg-connection-string/index.js +237 -0
- package/.output/server/node_modules/pg-connection-string/package.json +52 -0
- package/.output/server/node_modules/pg-int8/index.js +100 -0
- package/.output/server/node_modules/pg-int8/package.json +24 -0
- package/.output/server/node_modules/pg-pool/index.js +517 -0
- package/.output/server/node_modules/pg-pool/package.json +51 -0
- package/.output/server/node_modules/pg-protocol/dist/buffer-reader.js +55 -0
- package/.output/server/node_modules/pg-protocol/dist/buffer-writer.js +104 -0
- package/.output/server/node_modules/pg-protocol/dist/index.js +15 -0
- package/.output/server/node_modules/pg-protocol/dist/messages.js +160 -0
- package/.output/server/node_modules/pg-protocol/dist/parser.js +325 -0
- package/.output/server/node_modules/pg-protocol/dist/serializer.js +196 -0
- package/.output/server/node_modules/pg-protocol/package.json +44 -0
- package/.output/server/node_modules/pg-types/index.js +47 -0
- package/.output/server/node_modules/pg-types/lib/arrayParser.js +11 -0
- package/.output/server/node_modules/pg-types/lib/binaryParsers.js +257 -0
- package/.output/server/node_modules/pg-types/lib/builtins.js +73 -0
- package/.output/server/node_modules/pg-types/lib/textParsers.js +215 -0
- package/.output/server/node_modules/pg-types/package.json +42 -0
- package/.output/server/node_modules/pgpass/lib/helper.js +233 -0
- package/.output/server/node_modules/pgpass/lib/index.js +23 -0
- package/.output/server/node_modules/pgpass/package.json +41 -0
- package/.output/server/node_modules/postgres-array/index.js +97 -0
- package/.output/server/node_modules/postgres-array/package.json +35 -0
- package/.output/server/node_modules/postgres-bytea/index.js +33 -0
- package/.output/server/node_modules/postgres-bytea/package.json +34 -0
- package/.output/server/node_modules/postgres-date/index.js +116 -0
- package/.output/server/node_modules/postgres-date/package.json +33 -0
- package/.output/server/node_modules/postgres-interval/index.js +126 -0
- package/.output/server/node_modules/postgres-interval/package.json +35 -0
- package/.output/server/node_modules/split2/index.js +141 -0
- package/.output/server/node_modules/split2/package.json +39 -0
- package/.output/server/node_modules/xtend/mutable.js +17 -0
- package/.output/server/node_modules/xtend/package.json +55 -0
- package/.output/server/package.json +15 -1
- package/README-zh.md +255 -993
- package/README.md +254 -1028
- package/app/.mimosa/hook-state/sess_05189059-e42d-4188-8911-4f7baabe009b.json +1 -0
- package/app/.mimosa/hook-state/sess_05189059-e42d-4188-8911-4f7baabe009b.mtg0vz68-49792-75b0709555.baseline/1459e6269990a5d229b9228c8b2f62ffaa7d350068380ae8b875fee0db45cca6.source +180 -0
- package/app/.mimosa/hook-state/sess_05189059-e42d-4188-8911-4f7baabe009b.mtg0vz68-49792-75b0709555.baseline/c2991e909c70c5c12b90a407c7adcf63384c51668a2b334e6e047fa675c268fe.source +305 -0
- package/app/.mimosa/hook-state/sess_05189059-e42d-4188-8911-4f7baabe009b.mtg0vz68-49792-75b0709555.baseline/e09129039d1e27e3fac24becc9bdafd2d1a7c8049bff24173df007be865f0165.source +264 -0
- package/app/.mimosa/hook-status/sess_05189059-e42d-4188-8911-4f7baabe009b-28ef7c75ea.json +14 -0
- package/app/components/AwLogo.vue +75 -75
- package/app/components/aml/AmlDatasetFormModal.vue +279 -279
- package/app/components/aml/AmlDatasetTable.vue +319 -319
- package/app/components/aml/AmlExperimentsTable.vue +142 -142
- package/app/components/aml/AmlInfraBanner.vue +23 -23
- package/app/components/aml/AmlJobsTable.vue +248 -248
- package/app/components/aml/AmlOverviewBar.vue +62 -62
- package/app/components/aml/AmlPageHeader.vue +47 -47
- package/app/components/aml/AmlPredictConsole.vue +201 -201
- package/app/components/app-header/HitlBell.vue +423 -423
- package/app/components/daq/DaqAddNodeModal.vue +209 -209
- package/app/components/daq/DaqAlarmBar.vue +46 -46
- package/app/components/daq/DaqControlCard.vue +159 -159
- package/app/components/daq/DaqInfraBanner.vue +31 -31
- package/app/components/daq/DaqLineBanner.vue +47 -47
- package/app/components/daq/DaqNodePanel.vue +396 -396
- package/app/components/daq/DaqOptPanel.vue +197 -197
- package/app/components/daq/DaqTemplateModal.vue +246 -246
- package/app/components/dashboard/DashboardGaugeBand.vue +78 -78
- package/app/components/dashboard/DashboardHero.vue +209 -209
- package/app/components/dashboard/DashboardLineStatePanel.vue +78 -78
- package/app/components/dashboard/DashboardNodeStatePanel.vue +46 -46
- package/app/components/dashboard/DashboardPipelinePanel.vue +46 -46
- package/app/components/dashboard/DashboardTrendPanel.vue +83 -83
- package/app/components/dashboard/DashboardWritePanel.vue +52 -52
- package/app/components/dcw/DcwCreateLineModal.vue +105 -105
- package/app/components/dcw/DcwDeleteLineModal.vue +73 -73
- package/app/components/dcw/DcwDetailTemplateModal.vue +238 -238
- package/app/components/dcw/DcwLedgerCard.vue +160 -160
- package/app/components/dcw/DcwMesArtifacts.vue +140 -140
- package/app/components/dcw/DcwProductCreateModal.vue +113 -113
- package/app/components/dcw/DcwRecipeDispatchHistoryModal.vue +244 -244
- package/app/components/dcw/DcwRecipeEditModal.vue +399 -399
- package/app/components/dcw/DcwRecipeHistoryModal.vue +165 -165
- package/app/components/dcw/DcwRunDataModal.vue +191 -191
- package/app/components/dcw/DcwTemplateModal.vue +227 -227
- package/app/components/dcw/DcwWriteHistoryCard.vue +96 -96
- package/app/components/dcw/ExpConfirmCard.vue +103 -103
- package/app/components/dcw/RecipeDispatchApprovalCard.vue +330 -330
- package/app/components/logs/LogsPageHead.vue +122 -122
- package/app/components/monitor/MonitorAgentTable.vue +143 -143
- package/app/components/monitor/MonitorChannelTable.vue +80 -80
- package/app/components/monitor/MonitorLoginGate.vue +24 -24
- package/app/components/monitor/MonitorPageHead.vue +92 -92
- package/app/components/monitor/MonitorProcessTable.vue +159 -159
- package/app/components/ontology/OntologyGraph.vue +356 -356
- package/app/components/operations/OperationsFilterCard.vue +164 -164
- package/app/components/operations/OperationsPageHead.vue +47 -47
- package/app/components/tokens/TokenCreateModal.vue +42 -42
- package/app/components/tokens/TokenOnceModal.vue +164 -164
- package/app/components/tokens/TokenRenameModal.vue +40 -40
- package/app/components/tokens/TokensPageHead.vue +76 -76
- package/app/components/workshop/A2aRpcDebugger.vue +237 -237
- package/app/components/workshop/AgentInspectorDrawer.vue +424 -424
- package/app/components/workshop/AgentLanesView.vue +278 -278
- package/app/components/workshop/ArtifactCard.vue +120 -120
- package/app/components/workshop/AssetLibrary.vue +452 -452
- package/app/components/workshop/ChatMemberPanel.vue +556 -556
- package/app/components/workshop/CommandPalette.vue +270 -270
- package/app/components/workshop/Composer.vue +540 -540
- package/app/components/workshop/DaqTemplateIcon.vue +33 -33
- package/app/components/workshop/DeviceTwinPanel.vue +167 -167
- package/app/components/workshop/FileSelectorModal.vue +188 -188
- package/app/components/workshop/InspectorPanel.vue +301 -301
- package/app/components/workshop/PluginSlot.vue +120 -120
- package/app/components/workshop/TranscriptTimeline.vue +223 -223
- package/app/components/workshop/agents/AgentTemplateEditModal.vue +139 -139
- package/app/components/workshop/blocks/ClusterArtifact.vue +61 -61
- package/app/components/workshop/blocks/ClusterError.vue +85 -85
- package/app/components/workshop/blocks/ClusterLife.vue +87 -87
- package/app/components/workshop/blocks/ClusterMember.vue +95 -95
- package/app/components/workshop/blocks/ClusterMemory.vue +84 -84
- package/app/components/workshop/blocks/ClusterOther.vue +67 -67
- package/app/components/workshop/blocks/ClusterStatus.vue +149 -149
- package/app/components/workshop/blocks/ClusterTool.vue +176 -176
- package/app/components/workshop/blocks/EventBlockAvatar.vue +114 -114
- package/app/components/workshop/blocks/EventBlockHead.vue +232 -232
- package/app/components/workshop/composer/ComposerToolbar.vue +278 -278
- package/app/components/workshop/composer/MentionMenu.vue +135 -135
- package/app/components/workshop/composer/ReplyChip.vue +65 -65
- package/app/components/workshop/composer/StatusChip.vue +171 -171
- package/app/components/workshop/console/Dock.vue +71 -71
- package/app/components/workshop/console/LeftPane.vue +84 -84
- package/app/components/workshop/device-twin/DeviceTwinCard.vue +265 -265
- package/app/components/workshop/device-twin/DeviceTwinDcwSection.vue +203 -203
- package/app/components/workshop/lanes/AddMemberModal.vue +270 -270
- package/app/components/workshop/lanes/EditMemberModal.vue +106 -106
- package/app/components/workshop/lanes/LanesToolbar.vue +97 -97
- package/app/components/workshop/session-list/MountChannelModal.vue +124 -124
- package/app/components/workshop/session-list/SaveTemplateModal.vue +93 -93
- package/app/components/workshop/task-board/Card.vue +172 -172
- package/app/components/workshop/task-board/Column.vue +151 -151
- package/app/components/workshop/task-board/List.vue +157 -157
- package/app/components/workshop/task-board/StatusMenu.vue +88 -88
- package/app/components/workshop/teams/TeamAddMemberModal.vue +53 -53
- package/app/components/workshop/teams/TeamCreateModal.vue +94 -94
- package/app/components/workshop/teams/TeamDeployModal.vue +40 -40
- package/app/components/workshop/teams/TeamPluginModal.vue +119 -119
- package/app/components/workshop/terminal/OmpTerminalPanel.vue +270 -270
- package/app/components/workshop/terminal/TerminalHitlCard.vue +170 -170
- package/app/components/workshop/town/TownScene.ts +466 -466
- package/app/components/workshop/town/TownView.vue +561 -561
- package/app/components/workshop/town/components/AutoModeConfirmModal.vue +94 -94
- package/app/components/workshop/town/components/TownAgentBindings.vue +417 -417
- package/app/components/workshop/town/components/TownAgentInspector.vue +554 -554
- package/app/components/workshop/town/components/TownAlarmList.vue +147 -147
- package/app/components/workshop/town/components/TownBoundaryPanel.vue +350 -350
- package/app/components/workshop/town/components/TownCalloutLayer.vue +147 -147
- package/app/components/workshop/town/components/TownChannelDock.vue +116 -116
- package/app/components/workshop/town/components/TownControlDock.vue +405 -405
- package/app/components/workshop/town/components/TownDaqNodeInspector.vue +345 -345
- package/app/components/workshop/town/components/TownDaqTree.vue +366 -366
- package/app/components/workshop/town/components/TownDcwBindSection.vue +473 -473
- package/app/components/workshop/town/components/TownDcwNodeInspector.vue +185 -185
- package/app/components/workshop/town/components/TownDcwTree.vue +280 -280
- package/app/components/workshop/town/components/TownDeviceBindings.vue +394 -394
- package/app/components/workshop/town/components/TownDeviceTransform.vue +248 -248
- package/app/components/workshop/town/components/TownEventList.vue +120 -120
- package/app/components/workshop/town/components/TownHealthBody.vue +100 -100
- package/app/components/workshop/town/components/TownKpiStrip.vue +207 -207
- package/app/components/workshop/town/components/TownLeftRail.vue +308 -308
- package/app/components/workshop/town/components/TownLoadingMask.vue +61 -61
- package/app/components/workshop/town/components/TownNavMap.vue +154 -154
- package/app/components/workshop/town/components/TownRightRail.vue +543 -543
- package/app/components/workshop/town/components/TownStage.vue +281 -281
- package/app/components/workshop/town/components/TownStageTop.vue +238 -238
- package/app/components/workshop/town/components/TownStatusBar.vue +108 -108
- package/app/components/workshop/town/components/TownTopNav.vue +367 -367
- package/app/components/workshop/town/components/TownTrendDock.vue +178 -178
- package/app/components/workshop/town/scene/town-scene-agents.ts +254 -254
- package/app/components/workshop/town/scene/town-scene-behavior.ts +194 -194
- package/app/components/workshop/town/scene/town-scene-bubbles.ts +96 -96
- package/app/components/workshop/town/scene/town-scene-core.ts +158 -158
- package/app/components/workshop/town/scene/town-scene-models.ts +109 -109
- package/app/components/workshop/town/scene/town-scene-visuals.ts +279 -279
- package/app/components/workshop/town/scene/town-scene3d-agents.ts +308 -308
- package/app/components/workshop/town/scene/town-scene3d-blocks.ts +297 -297
- package/app/components/workshop/town/scene/town-scene3d-bubbles.ts +281 -281
- package/app/components/workshop/town/scene/town-scene3d-camera.ts +282 -282
- package/app/components/workshop/town/scene/town-scene3d-devices.ts +433 -433
- package/app/components/workshop/town/scene/town-scene3d-editing.ts +490 -490
- package/app/components/workshop/town/scene/town-scene3d-events.ts +173 -173
- package/app/components/workshop/town/scene/town-scene3d-factory.ts +412 -412
- package/app/components/workshop/town/scene/town-scene3d-hud.ts +110 -110
- package/app/components/workshop/town/scene/town-scene3d-lifecycle.ts +144 -144
- package/app/components/workshop/town/scene/town-scene3d-links.ts +141 -141
- package/app/components/workshop/town/scene/town-scene3d-loop.ts +286 -286
- package/app/components/workshop/town/scene/town-scene3d-models.ts +154 -154
- package/app/components/workshop/town/scene/town-scene3d-nodes.ts +562 -562
- package/app/components/workshop/town/scene/town-scene3d-ranges.ts +273 -273
- package/app/components/workshop/town/scene/town-scene3d-renderer.ts +320 -320
- package/app/components/workshop/town/scene/town-scene3d-selection.ts +257 -257
- package/app/components/workshop/town/scene/town-scene3d-types.ts +264 -264
- package/app/components/workshop/transcript/TranscriptBlockList.vue +68 -68
- package/app/components/workshop/transcript/TranscriptEarlierPager.vue +81 -81
- package/app/components/workshop/transcript/TranscriptFilterBar.vue +126 -126
- package/app/components/workshop/workbench/CreateWorkspaceModal.vue +36 -36
- package/app/components/workshop/workbench/WorkspaceEmpty.vue +56 -56
- package/app/composables/useResponsive.ts +88 -88
- package/app/composables/workshop/device-twin-types.ts +29 -29
- package/app/composables/workshop/event-blocks/attention.ts +58 -58
- package/app/composables/workshop/event-blocks/classify.ts +44 -44
- package/app/composables/workshop/event-blocks/clusterer.ts +231 -231
- package/app/composables/workshop/event-blocks/fold-stream.ts +45 -45
- package/app/composables/workshop/event-blocks/markdown.ts +81 -81
- package/app/composables/workshop/event-blocks/mentions.ts +49 -49
- package/app/composables/workshop/event-blocks/text-utils.ts +100 -100
- package/app/composables/workshop/event-blocks/types.ts +40 -40
- package/app/composables/workshop/town/town-relay-props.ts +231 -231
- package/app/composables/workshop/town/town-view-types.ts +145 -145
- package/app/composables/workshop/town/useTownAgentBindings.ts +183 -183
- package/app/composables/workshop/town/useTownAgentChat.ts +203 -203
- package/app/composables/workshop/town/useTownAlarms.ts +36 -36
- package/app/composables/workshop/town/useTownCallouts.ts +174 -174
- package/app/composables/workshop/town/useTownChannels.ts +220 -220
- package/app/composables/workshop/town/useTownHealth.ts +66 -66
- package/app/composables/workshop/town/useTownHudTickers.ts +77 -77
- package/app/composables/workshop/town/useTownLayout.ts +277 -277
- package/app/composables/workshop/town/useTownNavMap.ts +301 -301
- package/app/composables/workshop/town/useTownNodeBindings.ts +345 -345
- package/app/composables/workshop/town/useTownPanelDrag.ts +91 -91
- package/app/composables/workshop/town/useTownRailData.ts +421 -421
- package/app/composables/workshop/town/useTownSceneControl.ts +92 -92
- package/app/composables/workshop/town/useTownSceneInput.ts +275 -275
- package/app/composables/workshop/town/useTownSceneRuntime.ts +390 -390
- package/app/composables/workshop/town/useTownSheets.ts +41 -41
- package/app/composables/workshop/town/useTownTrends.ts +93 -93
- package/app/composables/workshop/useChannelList.ts +88 -88
- package/app/composables/workshop/useChannelTerminals.ts +65 -65
- package/app/composables/workshop/useComposerMentions.ts +130 -130
- package/app/composables/workshop/useDcwStream.ts +377 -377
- package/app/composables/workshop/useDeviceTwinDcwWrite.ts +77 -77
- package/app/composables/workshop/useDeviceTwinPanel.ts +56 -56
- package/app/composables/workshop/useEscClose.ts +44 -44
- package/app/composables/workshop/useEventBlockView.ts +159 -159
- package/app/composables/workshop/useEventBlocks.ts +33 -33
- package/app/composables/workshop/useHitlAnswer.ts +184 -184
- package/app/composables/workshop/useLaneWidths.ts +27 -27
- package/app/composables/workshop/useOmpTerminalSession.ts +424 -424
- package/app/composables/workshop/useOpsLog.ts +191 -191
- package/app/composables/workshop/usePluginAdmin.ts +152 -152
- package/app/composables/workshop/usePluginPanels.ts +72 -72
- package/app/composables/workshop/useRuntimeConfigDraft.ts +118 -118
- package/app/composables/workshop/useSettingsGroups.ts +243 -243
- package/app/composables/workshop/useTaskBoardColumns.ts +47 -47
- package/app/composables/workshop/useTerminalRenderer.ts +308 -308
- package/app/composables/workshop/useTranscriptEnterStage.ts +48 -48
- package/app/composables/workshop/useTranscriptHistory.ts +52 -52
- package/app/composables/workshop/useTranscriptScroll.ts +113 -113
- package/app/composables/workshop/useVisibleInterval.ts +42 -42
- package/app/composables/workshop/useWorkshopWs.ts +265 -265
- package/app/config/index.ts +1 -1
- package/app/config/schema.ts +15 -1
- package/app/middleware/locale-cookie.global.ts +22 -22
- package/app/pages/aml/api.ts +6 -6
- package/app/pages/aml/composables/useAmlDatasets.ts +38 -38
- package/app/pages/aml/composables/useAmlEntities.ts +57 -57
- package/app/pages/aml/composables/useAmlEnv.ts +191 -191
- package/app/pages/aml/composables/useAmlExperiments.ts +45 -45
- package/app/pages/aml/composables/useAmlFormat.ts +44 -44
- package/app/pages/aml/composables/useAmlJobs.ts +131 -131
- package/app/pages/aml/composables/useAmlModels.ts +56 -56
- package/app/pages/aml/composables/useAmlNotes.ts +47 -47
- package/app/pages/aml/composables/useAmlPredict.ts +93 -93
- package/app/pages/aml/constants.ts +63 -63
- package/app/pages/aml/index.vue +236 -236
- package/app/pages/composables/useDashboardCharts.ts +192 -192
- package/app/pages/composables/useDashboardData.ts +144 -144
- package/app/pages/daq/composables/useDaqAddNode.ts +126 -126
- package/app/pages/daq/composables/useDaqDetailBinding.ts +29 -29
- package/app/pages/daq/composables/useDaqDetailFrames.ts +42 -42
- package/app/pages/daq/composables/useDaqDetailNode.ts +53 -53
- package/app/pages/daq/composables/useDaqDetailParams.ts +138 -138
- package/app/pages/daq/composables/useDaqFilters.ts +187 -187
- package/app/pages/daq/composables/useDaqNodeWindow.ts +86 -86
- package/app/pages/daq/composables/useDaqOptimizations.ts +99 -99
- package/app/pages/daq/composables/useDaqTemplates.ts +152 -152
- package/app/pages/daq/index.vue +260 -260
- package/app/pages/dcw/composables/useDcwCards.ts +27 -27
- package/app/pages/dcw/composables/useDcwDetailScope.ts +145 -145
- package/app/pages/dcw/composables/useDcwDetailTemplates.ts +94 -94
- package/app/pages/dcw/composables/useDcwFilter.ts +29 -29
- package/app/pages/dcw/composables/useDcwLedger.ts +34 -34
- package/app/pages/dcw/composables/useDcwLineMutations.ts +115 -115
- package/app/pages/dcw/composables/useDcwLineRun.ts +60 -60
- package/app/pages/dcw/composables/useDcwProducts.ts +54 -54
- package/app/pages/dcw/composables/useDcwQuery.ts +68 -68
- package/app/pages/dcw/composables/useDcwQuickActions.ts +47 -47
- package/app/pages/dcw/composables/useDcwRecipes.ts +256 -256
- package/app/pages/dcw/composables/useDcwTemplates.ts +50 -50
- package/app/pages/dcw/index.vue +195 -195
- package/app/pages/dcw/types.ts +9 -9
- package/app/pages/index.vue +126 -126
- package/app/pages/logs/composables/useLogsFormat.ts +43 -43
- package/app/pages/logs/composables/useLogsManual.ts +71 -71
- package/app/pages/logs/composables/useLogsScope.ts +39 -39
- package/app/pages/monitor/types.ts +61 -61
- package/app/pages/operations.vue +61 -61
- package/app/pages/permissions/index.vue +369 -369
- package/app/pages/tokens/composables/useTokenClipboard.ts +33 -33
- package/app/pages/tokens/composables/useTokenCreate.ts +93 -93
- package/app/pages/tokens/composables/useTokenRename.ts +54 -54
- package/app/pages/tokens/composables/useTokenReveal.ts +84 -84
- package/app/pages/tokens/composables/useTokensList.ts +60 -60
- package/app/pages/tokens.vue +111 -111
- package/app/pages/tools/index.vue +98 -98
- package/app/pages/workshop/agents.vue +130 -130
- package/app/pages/workshop/composables/useAgentHarnessOptions.ts +59 -59
- package/app/pages/workshop/composables/useAgentTemplateActions.ts +42 -42
- package/app/pages/workshop/composables/useAgentTemplateDialogState.ts +24 -24
- package/app/pages/workshop/composables/useAgentTemplateForm.ts +88 -88
- package/app/pages/workshop/composables/useAgentTemplatesCatalog.ts +92 -92
- package/app/pages/workshop/composables/useTeamActions.ts +44 -44
- package/app/pages/workshop/composables/useTeamAddMemberDialog.ts +49 -49
- package/app/pages/workshop/composables/useTeamCreateDialog.ts +67 -67
- package/app/pages/workshop/composables/useTeamDeployDialog.ts +49 -49
- package/app/pages/workshop/composables/useTeamDialogState.ts +46 -46
- package/app/pages/workshop/composables/useTeamPluginDialog.ts +72 -72
- package/app/pages/workshop/composables/useTeamsCatalog.ts +100 -100
- package/app/pages/workshop/composables/useWorkbenchWorkspaces.ts +123 -123
- package/app/pages/workshop/composables/useWorkspaceAuth.ts +31 -31
- package/app/pages/workshop/composables/useWorkspaceChannels.ts +62 -62
- package/app/pages/workshop/composables/useWorkspaceShell.ts +136 -136
- package/app/pages/workshop/schedules.vue +553 -553
- package/app/pages/workshop/w/[wsId].vue +221 -221
- package/app/plugins/aw-plugins.client.ts +213 -213
- package/app/plugins/esc-close.client.ts +31 -31
- package/app/stores/workshop/hitl.ts +183 -183
- package/app/stores/workshop/narrow-fetch.ts +23 -23
- package/app/utils/api-error.ts +75 -75
- package/app/utils/builtin-catalog.ts +104 -104
- package/app/utils/chart-trend.ts +97 -97
- package/app/utils/dcw-driver-badge.ts +16 -16
- package/app/utils/dcw-recipe-form.ts +26 -26
- package/cli/commands/tui.mjs +28 -28
- package/cli/commands/update.mjs +124 -124
- package/cli/core/child-lifecycle.mjs +136 -136
- package/cli/core/meta.mjs +38 -38
- package/cli/core/post-build.mjs +96 -96
- package/config.yml +212 -193
- package/docker-compose.yml +69 -63
- package/docs/cli.en.md +447 -447
- package/docs/cli.md +412 -412
- package/docs/mcp.en.md +27 -27
- package/docs/multi-harness-architecture.md +248 -248
- package/docs/plugins.en.md +641 -641
- package/docs/plugins.md +630 -630
- package/docs/sdk.en.md +964 -964
- package/docs/sdk.md +900 -900
- package/docs/tui.md +43 -43
- package/i18n/dicts/_en.json +1551 -1551
- package/i18n/dicts/_en2.json +300 -300
- package/i18n/dicts/_en4.json +114 -114
- package/i18n/dicts/agentLanesView.json +61 -61
- package/i18n/dicts/appHeader.json +17 -17
- package/i18n/dicts/channelSessionList.json +51 -51
- package/i18n/dicts/chat.json +79 -79
- package/i18n/dicts/clusterTool.json +4 -4
- package/i18n/dicts/composer.json +38 -38
- package/i18n/dicts/ctpl.json +37 -37
- package/i18n/dicts/dcwDetail.json +219 -219
- package/i18n/dicts/lineOps.json +14 -14
- package/i18n/dicts/multiChannelView.json +13 -13
- package/i18n/dicts/notifications.json +13 -13
- package/i18n/dicts/taskInspectorDrawer.json +25 -25
- package/i18n/dicts/teamPlugins.json +10 -10
- package/i18n/dicts/townView.json +211 -211
- package/i18n/locales/en.ts +3371 -3371
- package/i18n/locales/zh-CN.ts +3370 -3370
- package/mcp/aw-mcp-server.mjs +1 -1
- package/mcp/discovery.mjs +227 -227
- package/package.json +189 -189
- package/public/favicon.svg +14 -14
- package/public/robots.txt +3 -3
- package/scripts/_audit/_live-mqtt-e2e-20261028.mjs +219 -219
- package/scripts/_audit/audit-harness-adapters.md +664 -664
- package/scripts/_audit/aw-mcp-live-e2e.mjs +293 -293
- package/scripts/_audit/bump-version.mjs +51 -51
- package/scripts/_audit/detached-instance.mjs +112 -112
- package/scripts/_audit/detached-start.mjs +103 -103
- package/scripts/_audit/eda-ui-fix-acceptance.mjs +212 -212
- package/scripts/_audit/guard-upstream-liveness.mjs +104 -104
- package/scripts/_audit/http-api-authz-audit.md +657 -657
- package/scripts/_audit/kb-team-mock-e2e.mjs +146 -146
- package/scripts/_audit/kb-team-omp-e2e.mjs +229 -229
- package/scripts/_audit/kill-acceptance-strays.mjs +47 -0
- package/scripts/_audit/prompt-injection-probe.mts +76 -76
- package/scripts/_audit/proto-doc-broker-20261031.mjs +11 -0
- package/scripts/_audit/proto-doc-device-20261031.mjs +53 -0
- package/scripts/_audit/proto-doc-mqtt-20261031.mjs +32 -0
- package/scripts/_audit/run-full-acceptance-20261030.sh +82 -0
- package/scripts/_audit/run.mjs +21 -21
- package/scripts/_audit/runtime-audit.md +716 -716
- package/scripts/_audit/skills-guided-e2e.mjs +316 -316
- package/scripts/_audit/stability-soak.mjs +252 -252
- package/scripts/_audit/stubs/nuxt-imports.mjs +67 -67
- package/scripts/_audit/ts-register-hook.mjs +12 -12
- package/scripts/_audit/ts-resolve-hook.mjs +96 -96
- package/scripts/_aw0746-stage12.mjs +94 -94
- package/scripts/_aw0746-stage34.mjs +136 -136
- package/scripts/_aw0746-stage6b-train-sweep.mjs +145 -145
- package/scripts/_aw0746-stage6c-jobsmoke.mjs +69 -69
- package/scripts/_dbg-configroot-audit.mjs +86 -86
- package/scripts/_dbg-daq-intervals-func.mjs +115 -115
- package/scripts/_dbg-perms-e2e.mjs +142 -142
- package/scripts/_dbg-protocol-matrix.mjs +462 -462
- package/scripts/_dbg-render-regression.mjs +193 -193
- package/scripts/_dbg-schedule-e2e.mjs +262 -262
- package/scripts/_e2e-ui-functional.mjs +371 -371
- package/scripts/_lib-aml-python-run.mjs +17 -17
- package/scripts/_plc-sim-detached.cjs +22 -22
- package/scripts/_provision-injection-line.mjs +39 -39
- package/scripts/_run-matrix.ps1 +53 -53
- package/scripts/_sweep-button-contrast.mjs +87 -87
- package/scripts/acceptance-aml-hybrid-e2e.ts +396 -396
- package/scripts/acceptance-aml-hybrid-live.mjs +93 -93
- package/scripts/acceptance-aml-model-identity.ts +137 -137
- package/scripts/agent-daq-isolation-e2e.mjs +91 -91
- package/scripts/api-contract-smoke.mjs +126 -126
- package/scripts/api-live-e2e.mjs +91 -32
- package/scripts/ask-hitl-e2e.mjs +96 -96
- package/scripts/aw-expose.mjs +159 -159
- package/scripts/channel-interaction-smoke.mjs +80 -80
- package/scripts/data-studio-ui-e2e.mjs +163 -163
- package/scripts/demo-group-chat-all-real.ts +279 -279
- package/scripts/dev-modbus-simulator.mjs +55 -55
- package/scripts/docs-shots.mjs +36 -36
- package/scripts/e2e-agentteam-chat.mjs +473 -473
- package/scripts/e2e-agentteam-goal-closure.mjs +496 -0
- package/scripts/e2e-agentteam-real-triage.mjs +421 -421
- package/scripts/e2e-aml-decoupled.mjs +162 -162
- package/scripts/e2e-analysis-ledger.mjs +202 -202
- package/scripts/e2e-aw-tui-global.mjs +277 -277
- package/scripts/e2e-binding-modes-real.mjs +442 -442
- package/scripts/e2e-business-loop-real.mjs +391 -391
- package/scripts/e2e-closedloop/cleanup.mjs +27 -27
- package/scripts/e2e-closedloop/lib.mjs +109 -109
- package/scripts/e2e-closedloop/main.mjs +59 -59
- package/scripts/e2e-closedloop/scenarios-accounts.mjs +210 -210
- package/scripts/e2e-closedloop/scenarios-authz.mjs +196 -196
- package/scripts/e2e-closedloop/scenarios-daq-dcw.mjs +222 -222
- package/scripts/e2e-closedloop/scenarios-plugins.mjs +169 -169
- package/scripts/e2e-closedloop/state.mjs +10 -10
- package/scripts/e2e-config-groups.mjs +238 -238
- package/scripts/e2e-core-bridges-matrix.mjs +303 -303
- package/scripts/e2e-crash-cycle.mjs +108 -108
- package/scripts/e2e-dcw-halfopen-resilience.mjs +140 -0
- package/scripts/e2e-error-handling.mjs +190 -190
- package/scripts/e2e-full-closedloop.mjs +16 -16
- package/scripts/e2e-golive-matrix.mjs +515 -515
- package/scripts/e2e-hil-multi-user.mjs +307 -307
- package/scripts/e2e-hil-restart.mjs +339 -339
- package/scripts/e2e-idd-results-ui.mjs +182 -175
- package/scripts/e2e-line-governance.mjs +352 -352
- package/scripts/e2e-mes-mirror-real.mjs +427 -418
- package/scripts/e2e-model-loop-live.mjs +90 -54
- package/scripts/e2e-multiexpert-remediation-real.mjs +453 -453
- package/scripts/e2e-node-binding-3mode-real.mjs +792 -792
- package/scripts/e2e-node-binding-authz.mjs +372 -372
- package/scripts/e2e-ontology.mjs +393 -393
- package/scripts/e2e-paper-paired-route.mjs +791 -0
- package/scripts/e2e-physical-effect-real.mjs +572 -570
- package/scripts/e2e-plc-plugin-closedloop.mjs +549 -549
- package/scripts/e2e-real-channel-mission.mjs +543 -0
- package/scripts/e2e-security-b0.mjs +280 -0
- package/scripts/e2e-security-b1.mjs +165 -0
- package/scripts/e2e-security-b2b5.mjs +280 -0
- package/scripts/full-stack-shots.mjs +145 -145
- package/scripts/full-tool-injection-harness-e2e.mjs +214 -214
- package/scripts/hitl-reject-e2e.mjs +131 -131
- package/scripts/line-log-smoke.mjs +260 -260
- package/scripts/live-aml-mockomp.mjs +304 -304
- package/scripts/live-aml-optloop-resume.mjs +322 -322
- package/scripts/live-aml-optloop.mjs +588 -588
- package/scripts/live-aml-stage9.mjs +169 -169
- package/scripts/live-aml-two-goals.mjs +315 -315
- package/scripts/live-demo-seed.mjs +157 -157
- package/scripts/live-optloop-two-modes.mjs +857 -857
- package/scripts/mes-agent-integration-e2e.mjs +361 -361
- package/scripts/onboarding/preflight.mjs +231 -0
- package/scripts/onboarding/provision-line.mjs +11 -1
- package/scripts/onboarding/verify-mirror.mjs +145 -0
- package/scripts/ops-plugins-e2e.mjs +85 -85
- package/scripts/scenario-suite-setup.mjs +337 -337
- package/scripts/scenario-suite-stability.mjs +144 -144
- package/scripts/security-acceptance.mjs +218 -218
- package/scripts/start.mjs +279 -250
- package/scripts/team-coordination-e2e.mjs +96 -96
- package/scripts/test-agentteam-workflow.ts +472 -472
- package/scripts/test-aw-skills.mjs +102 -102
- package/scripts/test-daq-frame-race.mjs +358 -358
- package/scripts/test-data-root.mjs +208 -208
- package/scripts/test-events-index.mjs +176 -176
- package/scripts/test-group-chat-unit/lib.ts +186 -186
- package/scripts/test-group-chat-unit/main.ts +45 -45
- package/scripts/test-group-chat-unit.ts +35 -35
- package/scripts/test-hitl-decision.ts +526 -526
- package/scripts/test-hitl-registry.ts +112 -112
- package/scripts/test-log-flooding.mjs +160 -160
- package/scripts/test-lru.mjs +101 -101
- package/scripts/test-plugin-hardening.mjs +90 -90
- package/scripts/test-plugin-lifecycle.mjs +173 -173
- package/scripts/test-rollback-index.mjs +137 -137
- package/scripts/test-schedule-runtime.ts +309 -309
- package/scripts/test-sdk-surface.mjs +158 -158
- package/scripts/test-serial-bridge.mjs +418 -418
- package/scripts/test-tui-commands.mjs +148 -148
- package/scripts/test-tui-reducers.mjs +72 -72
- package/scripts/three-system-e2e/lib.mjs +79 -79
- package/scripts/three-system-e2e/main.mjs +40 -40
- package/scripts/three-system-e2e/phases/phase-0-user-token.mjs +42 -42
- package/scripts/three-system-e2e/phases/phase-0a2-line-autoselect.mjs +35 -35
- package/scripts/three-system-e2e/phases/phase-0b-fixture-grants.mjs +39 -39
- package/scripts/three-system-e2e/phases/phase-0c-plugin-outbound-auth.mjs +95 -95
- package/scripts/three-system-e2e/phases/stage-1-health.mjs +47 -47
- package/scripts/three-system-e2e/phases/stage-2-5-team-plugins.mjs +84 -84
- package/scripts/three-system-e2e/phases/stage-2-teams-tools-hitl.mjs +184 -184
- package/scripts/three-system-e2e/phases/stage-3-diag.mjs +73 -73
- package/scripts/three-system-e2e/phases/stage-4-plugin-toggle.mjs +53 -53
- package/scripts/three-system-e2e/state.mjs +87 -87
- package/scripts/three-system-e2e.mjs +40 -40
- package/scripts/tool-face-batch-identity-e2e.mjs +222 -222
- package/scripts/tsconfig.json +14 -14
- package/scripts/tui-smoke.mjs +100 -100
- package/scripts/typecheck.mjs +75 -75
- package/scripts/ui/md-lint.mjs +80 -80
- package/scripts/ui/readme-assets.mjs +30 -30
- package/scripts/ui/readme-shots.mjs +42 -42
- package/scripts/ui/record-demo.mjs +557 -557
- package/scripts/ui/record.mjs +225 -225
- package/scripts/ui/seed-admin.mjs +68 -68
- package/scripts/ui/seed-demo.mjs +83 -83
- package/scripts/ui/seed-industrial-demo.mjs +171 -171
- package/scripts/ui/shot-hero.mjs +25 -25
- package/scripts/ui/shots.mjs +75 -75
- package/scripts/ui/verify-nav.mjs +51 -51
- package/scripts/ui/verify-responsive.mjs +285 -285
- package/sdk/client.d.mts +110 -110
- package/sdk/context.mjs +34 -1
- package/sdk/examples/line-sentinel/index.mjs +105 -105
- package/sdk/examples/ops-notifier/index.mjs +34 -34
- package/sdk/examples/sample-insight/index.mjs +39 -39
- package/server/.mimosa/hook-state/sess_869e5bfd-07f4-4b6e-a991-6221fcf6b7d2.json +1 -0
- package/server/.mimosa/hook-state/sess_869e5bfd-07f4-4b6e-a991-6221fcf6b7d2.mvhn1irp-99488-e3fdc1cbfc.baseline/942d2679b87b96c612b4f2a425c3ccc5b6f3234f0cf589a8441602f866fbe277.source +41 -0
- package/server/.mimosa/hook-state/sess_869e5bfd-07f4-4b6e-a991-6221fcf6b7d2.mvhn1irp-99488-e3fdc1cbfc.baseline/dd617a82339d2c61e49e28e416aabeb2fc100fb3cb1beca18d02dfb833214af6.source +51 -0
- package/server/.mimosa/hook-status/sess_869e5bfd-07f4-4b6e-a991-6221fcf6b7d2-e67b6b91bf.json +14 -0
- package/server/api/plugins/client/[name].get.ts +18 -18
- package/server/api/plugins/i18n.get.ts +12 -12
- package/server/api/plugins/manifest.get.ts +10 -10
- package/server/api/system/backup/list.get.ts +32 -32
- package/server/api/system/backup/run.post.ts +21 -21
- package/server/api/system/config-groups/[id].delete.ts +21 -21
- package/server/api/system/config-groups/[id].patch.ts +26 -26
- package/server/api/system/config-groups/index.get.ts +21 -21
- package/server/api/system/config-groups/index.post.ts +33 -33
- package/server/api/system/timezone.get.ts +20 -20
- package/server/api/users/login.post.ts +3 -2
- package/server/api/users/register.post.ts +22 -21
- package/server/api/users/tokens/[id]/token.get.ts +11 -11
- package/server/api/workshop/[...path].ts +13 -13
- package/server/api/workshop/a2a/[agentId]/card/index.get.ts +86 -75
- package/server/api/workshop/agent-tools/approvals/index.get.ts +45 -45
- package/server/api/workshop/agent-tools/bindings/[id].delete.ts +26 -26
- package/server/api/workshop/agent-tools/bindings/grant.post.ts +45 -45
- package/server/api/workshop/agent-tools/bindings/index.get.ts +41 -41
- package/server/api/workshop/agent-tools/bindings/revoke.post.ts +42 -42
- package/server/api/workshop/aml/datasets/[id]/preview.get.ts +68 -68
- package/server/api/workshop/aml/datasets/[id].delete.ts +39 -39
- package/server/api/workshop/aml/datasets/[id].get.ts +53 -53
- package/server/api/workshop/aml/datasets/[id].patch.ts +30 -30
- package/server/api/workshop/aml/datasets/index.get.ts +20 -20
- package/server/api/workshop/aml/datasets/index.post.ts +27 -27
- package/server/api/workshop/aml/entities/index.get.ts +13 -13
- package/server/api/workshop/aml/entities/prune.post.ts +28 -28
- package/server/api/workshop/aml/env/index.get.ts +13 -13
- package/server/api/workshop/aml/env/recheck.post.ts +14 -14
- package/server/api/workshop/aml/env/uv.post.ts +21 -21
- package/server/api/workshop/aml/env/venv.post.ts +24 -24
- package/server/api/workshop/aml/experiments/index.get.ts +35 -35
- package/server/api/workshop/aml/index.get.ts +37 -37
- package/server/api/workshop/aml/jobs/[id]/cancel.post.ts +21 -21
- package/server/api/workshop/aml/jobs/[id]/logs.get.ts +23 -23
- package/server/api/workshop/aml/jobs/[id]/retry.post.ts +20 -20
- package/server/api/workshop/aml/jobs/[id].delete.ts +44 -44
- package/server/api/workshop/aml/jobs/[id].get.ts +23 -23
- package/server/api/workshop/aml/jobs/index.get.ts +26 -26
- package/server/api/workshop/aml/models/[id]/predict.post.ts +24 -24
- package/server/api/workshop/aml/models/[id]/promote.post.ts +30 -30
- package/server/api/workshop/aml/models/index.get.ts +48 -48
- package/server/api/workshop/aml/training-plans/[id]/train.post.ts +18 -18
- package/server/api/workshop/aml/training-plans/[id].delete.ts +18 -18
- package/server/api/workshop/aml/training-plans/[id].patch.ts +30 -30
- package/server/api/workshop/aml/training-plans/index.get.ts +9 -9
- package/server/api/workshop/aml/training-plans/index.post.ts +43 -43
- package/server/api/workshop/analysis/index.post.ts +71 -54
- package/server/api/workshop/approvals/[id]/decide.post.ts +30 -30
- package/server/api/workshop/approvals/index.get.ts +22 -22
- package/server/api/workshop/assets/devices/index.post.ts +55 -53
- package/server/api/workshop/audit.get.ts +43 -43
- package/server/api/workshop/channels/[id]/chat/messages/[messageId]/read.post.ts +22 -22
- package/server/api/workshop/channels/[id]/chat/messages/index.get.ts +29 -29
- package/server/api/workshop/channels/[id]/chat/messages/index.post.ts +51 -51
- package/server/api/workshop/channels/[id]/chat/permissions.get.ts +35 -35
- package/server/api/workshop/channels/[id]/index.patch.ts +64 -64
- package/server/api/workshop/channels/[id]/members/[userId]/approve.post.ts +20 -20
- package/server/api/workshop/channels/[id]/members/[userId].delete.ts +21 -21
- package/server/api/workshop/channels/[id]/members/index.get.ts +23 -23
- package/server/api/workshop/channels/[id]/members/leave.post.ts +20 -20
- package/server/api/workshop/channels/[id]/tasks/index.post.ts +2 -0
- package/server/api/workshop/channels/[id]/twin-profile.get.ts +45 -45
- package/server/api/workshop/channels/[id]/twin-profile.patch.ts +91 -72
- package/server/api/workshop/daq/[id]/ingest.post.ts +25 -1
- package/server/api/workshop/daq/[id]/test.post.ts +1 -1
- package/server/api/workshop/daq/index.post.ts +45 -1
- package/server/api/workshop/daq/storage/retention.put.ts +66 -0
- package/server/api/workshop/daq/storage/rollup.post.ts +28 -0
- package/server/api/workshop/daq/storage.get.ts +17 -0
- package/server/api/workshop/daq/templates/[key].delete.ts +2 -2
- package/server/api/workshop/daq/templates/[key].patch.ts +19 -19
- package/server/api/workshop/daq/templates/index.post.ts +18 -18
- package/server/api/workshop/dcw/[id]/write.post.ts +31 -30
- package/server/api/workshop/dcw/[id].delete.ts +41 -41
- package/server/api/workshop/dcw/mes-test-read.post.ts +24 -24
- package/server/api/workshop/dcw/params/[id]/write.post.ts +21 -21
- package/server/api/workshop/dcw/params/[id].delete.ts +19 -19
- package/server/api/workshop/dcw/params/[id].patch.ts +23 -23
- package/server/api/workshop/dcw/params/index.get.ts +27 -27
- package/server/api/workshop/dcw/params/index.post.ts +25 -25
- package/server/api/workshop/dcw/recipes/[id].delete.ts +21 -2
- package/server/api/workshop/dcw/templates/[key].delete.ts +14 -14
- package/server/api/workshop/dcw/templates/[key].patch.ts +16 -16
- package/server/api/workshop/dcw/templates/index.post.ts +15 -15
- package/server/api/workshop/device-twins/[id]/control.post.ts +23 -21
- package/server/api/workshop/device-twins/[id].delete.ts +27 -25
- package/server/api/workshop/device-twins/[id].patch.ts +31 -29
- package/server/api/workshop/eda/runs/[id]/labels.patch.ts +25 -25
- package/server/api/workshop/eda/templates/[id].delete.ts +14 -14
- package/server/api/workshop/eda/templates/[id].get.ts +15 -15
- package/server/api/workshop/eda/templates/[id].patch.ts +20 -20
- package/server/api/workshop/eda/templates/index.get.ts +11 -11
- package/server/api/workshop/eda/templates/index.post.ts +20 -20
- package/server/api/workshop/exp/confirmations/[id]/decide.post.ts +41 -41
- package/server/api/workshop/exp/confirmations/index.get.ts +25 -25
- package/server/api/workshop/harnesses/[id]/providers.get.ts +16 -16
- package/server/api/workshop/hitl/respond.post.ts +94 -94
- package/server/api/workshop/notifications/index.get.ts +60 -60
- package/server/api/workshop/notifications/read.post.ts +31 -31
- package/server/api/workshop/ontology/drafts/[draftId]/subgraph.ts +24 -24
- package/server/api/workshop/ops-logs/index.post.ts +92 -87
- package/server/api/workshop/plugins/[name]/disable.post.ts +21 -21
- package/server/api/workshop/plugins/[name]/enable.post.ts +21 -21
- package/server/api/workshop/plugins/[name]/index.get.ts +14 -14
- package/server/api/workshop/schedules/[id]/run.post.ts +15 -15
- package/server/api/workshop/schedules/[id]/runs.get.ts +15 -15
- package/server/api/workshop/schedules/[id].delete.ts +14 -14
- package/server/api/workshop/schedules/[id].get.ts +13 -13
- package/server/api/workshop/schedules/[id].patch.ts +29 -29
- package/server/api/workshop/schedules/index.get.ts +12 -12
- package/server/api/workshop/schedules/index.post.ts +32 -32
- package/server/api/workshop/tasks/[id]/reassign.post.ts +32 -32
- package/server/api/workshop/tasks/[id]/supersede.post.ts +28 -0
- package/server/api/workshop/tasks/[id]/update.post.ts +35 -35
- package/server/api/workshop/teams/[id]/plugins/index.get.ts +36 -36
- package/server/api/workshop/teams/[id]/plugins/index.put.ts +42 -42
- package/server/api/workshop/ws/audience.ts +56 -56
- package/server/api/workshop/ws/db-buffer.ts +68 -68
- package/server/api/workshop/ws/event-mapping.ts +47 -47
- package/server/api/workshop/ws/handlers.ts +132 -132
- package/server/api/workshop/ws/hub.ts +134 -134
- package/server/api/workshop/ws/index.ts +23 -23
- package/server/api/workshop/ws/notification-uplink.ts +77 -77
- package/server/api/workshop/ws/shared.ts +94 -94
- package/server/api/workshop/ws/streams.ts +146 -146
- package/server/middleware/00-security-headers.ts +45 -38
- package/server/middleware/01-rate-guard.ts +129 -101
- package/server/plugins/00-daq-credentials.ts +33 -0
- package/server/plugins/01-instance-guard.ts +118 -82
- package/server/plugins/aml-twin-worker.ts +32 -32
- package/server/plugins/backup.ts +268 -257
- package/server/plugins/daq.ts +40 -1
- package/server/plugins/dev-stability-guard.ts +46 -46
- package/server/plugins/error-ledger.ts +21 -21
- package/server/plugins-builtin/diag-bridge/host/constants.mjs +25 -25
- package/server/plugins-builtin/diag-bridge/host/exports.mjs +104 -104
- package/server/plugins-builtin/diag-bridge/host/index.mjs +15 -15
- package/server/plugins-builtin/diag-bridge/host/intents.mjs +62 -62
- package/server/plugins-builtin/diag-bridge/host/snapshot.mjs +93 -93
- package/server/plugins-builtin/diag-bridge/index.mjs +9 -9
- package/server/plugins-builtin/serial-bridge/client.mjs +211 -211
- package/server/plugins-builtin/serial-bridge/drivers.mjs +409 -409
- package/server/plugins-builtin/serial-bridge/i18n.json +62 -62
- package/server/plugins-builtin/serial-bridge/index.mjs +247 -247
- package/server/plugins-builtin/serial-bridge/lib.mjs +208 -208
- package/server/plugins-builtin/serial-bridge/rtu.mjs +168 -168
- package/server/repositories/user.repository.ts +520 -507
- package/server/schemas/user.schema.ts +74 -74
- package/server/services/system-config/contracts.ts +29 -29
- package/server/services/system-config/dispose.ts +19 -19
- package/server/services/system-config/facade.ts +26 -26
- package/server/services/system-config/groups.ts +108 -108
- package/server/services/system-config/index.ts +21 -21
- package/server/services/system-config/init.ts +26 -26
- package/server/services/system-config/mutate.ts +110 -103
- package/server/services/system-config/plugins.ts +104 -104
- package/server/services/system-config/secrets.ts +50 -0
- package/server/services/system-config/snapshot.ts +70 -59
- package/server/services/system-config/state.ts +79 -79
- package/server/services/system-config/types.ts +58 -58
- package/server/services/user.service.ts +277 -258
- package/server/services/workshop/.mimosa/hook-state/sess_fed429fb-c8b7-4a50-bbd6-45afc580893f.json +1 -0
- package/server/services/workshop/.mimosa/hook-status/sess_fed429fb-c8b7-4a50-bbd6-45afc580893f-e6b75bbfe6.json +14 -0
- package/server/services/workshop/agents/adapters/line-spawn.ts +148 -144
- package/server/services/workshop/agents/adapters/omp-rpc-client/api.ts +111 -111
- package/server/services/workshop/agents/adapters/omp-rpc-client/contracts.ts +22 -22
- package/server/services/workshop/agents/adapters/omp-rpc-client/facade.ts +7 -7
- package/server/services/workshop/agents/adapters/omp-rpc-client/helpers.ts +38 -38
- package/server/services/workshop/agents/adapters/omp-rpc-client/index.ts +25 -25
- package/server/services/workshop/agents/adapters/omp-rpc-client/start.ts +74 -70
- package/server/services/workshop/agents/adapters/omp-rpc-client/state.ts +65 -65
- package/server/services/workshop/agents/adapters/omp-rpc-client/stdout.ts +92 -92
- package/server/services/workshop/agents/adapters/omp-rpc-client/usage.ts +47 -47
- package/server/services/workshop/agents/agent-badge.ts +38 -38
- package/server/services/workshop/agents/agent-dto.ts +54 -54
- package/server/services/workshop/agents/agent-interface.ts +2 -0
- package/server/services/workshop/agents/base-agent.ts +3 -3
- package/server/services/workshop/agents/binding-authz.ts +66 -66
- package/server/services/workshop/agents/binding-mode.ts +51 -51
- package/server/services/workshop/agents/codex-agent/client.ts +170 -170
- package/server/services/workshop/agents/codex-agent/core.ts +119 -119
- package/server/services/workshop/agents/codex-agent/facade.ts +8 -8
- package/server/services/workshop/agents/codex-agent/helpers.ts +13 -13
- package/server/services/workshop/agents/codex-agent/hitl.ts +138 -138
- package/server/services/workshop/agents/codex-agent/index.ts +14 -14
- package/server/services/workshop/agents/codex-agent/turn.ts +367 -367
- package/server/services/workshop/agents/codex-agent/types.ts +42 -42
- package/server/services/workshop/agents/governance-harness-audit.ts +216 -0
- package/server/services/workshop/agents/harness-process.ts +3 -3
- package/server/services/workshop/agents/harness-spawn-policy.ts +114 -114
- package/server/services/workshop/agents/harness-terminal/api.ts +197 -197
- package/server/services/workshop/agents/harness-terminal/index.ts +17 -17
- package/server/services/workshop/agents/harness-terminal/io.ts +120 -120
- package/server/services/workshop/agents/harness-terminal/park.ts +55 -55
- package/server/services/workshop/agents/harness-terminal/sanitize.ts +98 -98
- package/server/services/workshop/agents/harness-terminal/session.ts +124 -124
- package/server/services/workshop/agents/harness-terminal/shared.ts +74 -74
- package/server/services/workshop/agents/hitl-capabilities.ts +312 -312
- package/server/services/workshop/agents/hitl-decision/answers.ts +32 -32
- package/server/services/workshop/agents/hitl-decision/decide.ts +268 -268
- package/server/services/workshop/agents/hitl-decision/payload.ts +45 -45
- package/server/services/workshop/agents/hitl-decision/shared.ts +108 -108
- package/server/services/workshop/agents/hitl-decision/visibility.ts +94 -94
- package/server/services/workshop/agents/host-tool-bridge/catalog.ts +1 -0
- package/server/services/workshop/agents/host-tool-bridge/dispatch.ts +428 -410
- package/server/services/workshop/agents/host-tool-bridge/tools/messaging.ts +46 -13
- package/server/services/workshop/agents/host-tool-bridge/tools/progress.ts +126 -84
- package/server/services/workshop/agents/host-tool-bridge/tools/tasks.ts +52 -14
- package/server/services/workshop/agents/host-tool-bridge/tools/team-delegation.ts +129 -109
- package/server/services/workshop/agents/host-tool-bridge/tools/team.ts +70 -70
- package/server/services/workshop/agents/host-tool-bridge/types.ts +1 -1
- package/server/services/workshop/agents/industrial/aml-activity.ts +131 -131
- package/server/services/workshop/agents/industrial/aml-job-tools.ts +6 -4
- package/server/services/workshop/agents/industrial/audit-query.ts +66 -66
- package/server/services/workshop/agents/industrial/bench-approval-only.ts +117 -0
- package/server/services/workshop/agents/industrial/daq-tools.ts +79 -20
- package/server/services/workshop/agents/industrial/dcw-tools.ts +3 -0
- package/server/services/workshop/agents/industrial/exp-tools.ts +104 -104
- package/server/services/workshop/agents/industrial/fallback-hints.ts +31 -0
- package/server/services/workshop/agents/industrial/manual-approval.ts +2 -2
- package/server/services/workshop/agents/industrial/ops-tools.ts +64 -21
- package/server/services/workshop/agents/industrial/param-tools.ts +69 -69
- package/server/services/workshop/agents/industrial/recipe-propose-tools.ts +4 -3
- package/server/services/workshop/agents/mock-agent.ts +4 -0
- package/server/services/workshop/agents/node-bindings.repo.ts +210 -210
- package/server/services/workshop/agents/node-delegation.ts +204 -204
- package/server/services/workshop/agents/omp-agent/agentteam-audit.ts +147 -0
- package/server/services/workshop/agents/omp-agent/client.ts +1 -1
- package/server/services/workshop/agents/omp-agent/core.ts +146 -146
- package/server/services/workshop/agents/omp-agent/event-mapping.ts +21 -0
- package/server/services/workshop/agents/omp-agent/facade.ts +8 -8
- package/server/services/workshop/agents/omp-agent/helpers.ts +37 -37
- package/server/services/workshop/agents/omp-agent/index.ts +16 -16
- package/server/services/workshop/agents/omp-agent/tools-steer.ts +100 -6
- package/server/services/workshop/agents/omp-agent/types.ts +45 -45
- package/server/services/workshop/agents/opencode-agent/core.ts +77 -77
- package/server/services/workshop/agents/opencode-agent/facade.ts +8 -8
- package/server/services/workshop/agents/opencode-agent/helpers.ts +29 -29
- package/server/services/workshop/agents/opencode-agent/hitl.ts +113 -113
- package/server/services/workshop/agents/opencode-agent/index.ts +16 -16
- package/server/services/workshop/agents/opencode-agent/lifecycle.ts +44 -44
- package/server/services/workshop/agents/opencode-agent/server.ts +244 -244
- package/server/services/workshop/agents/opencode-agent/turn.ts +278 -278
- package/server/services/workshop/agents/opencode-agent/types.ts +54 -54
- package/server/services/workshop/agents/tool-classes.ts +56 -44
- package/server/services/workshop/aml/clean.ts +120 -120
- package/server/services/workshop/aml/dataset-builder.ts +4 -0
- package/server/services/workshop/aml/entity.ts +367 -367
- package/server/services/workshop/aml/env-lease.ts +178 -148
- package/server/services/workshop/aml/job-orchestrator/broadcast.ts +37 -37
- package/server/services/workshop/aml/job-orchestrator/control.ts +94 -94
- package/server/services/workshop/aml/job-orchestrator/failure.ts +96 -96
- package/server/services/workshop/aml/job-orchestrator/index.ts +22 -22
- package/server/services/workshop/aml/job-orchestrator/process.ts +101 -101
- package/server/services/workshop/aml/job-orchestrator/shared.ts +53 -53
- package/server/services/workshop/aml/job-orchestrator/status.ts +20 -20
- package/server/services/workshop/aml/job-orchestrator/tick.ts +37 -37
- package/server/services/workshop/aml/model-registry.ts +16 -2
- package/server/services/workshop/aml/python/__pycache__/aml_eval.cpython-312.pyc +0 -0
- package/server/services/workshop/aml/python/__pycache__/amlkit.cpython-312.pyc +0 -0
- package/server/services/workshop/aml/python/__pycache__/train-example.cpython-312.pyc +0 -0
- package/server/services/workshop/aml/python/__pycache__/train-hybrid-example.cpython-312.pyc +0 -0
- package/server/services/workshop/aml/python/train-example.py +92 -92
- package/server/services/workshop/aml/runtime.ts +137 -137
- package/server/services/workshop/aml/stats.ts +140 -140
- package/server/services/workshop/aml/twin/calibration-worker.ts +150 -150
- package/server/services/workshop/aml/twin/model-backed-provider.ts +332 -332
- package/server/services/workshop/aml/twin/physics-spec-draft.ts +185 -185
- package/server/services/workshop/aml/twin/prompt-composer.ts +143 -143
- package/server/services/workshop/aml/twin/training-plans.ts +260 -260
- package/server/services/workshop/aml/twin/write-guard.ts +19 -19
- package/server/services/workshop/assets/character-asset.repo.ts +1 -1
- package/server/services/workshop/assets/device-twin.repo.ts +1 -1
- package/server/services/workshop/bench-mode.ts +22 -0
- package/server/services/workshop/daq/alarm-notify.ts +122 -102
- package/server/services/workshop/daq/daq-controller/contracts.ts +39 -39
- package/server/services/workshop/daq/daq-controller/crud.ts +210 -210
- package/server/services/workshop/daq/daq-controller/driver-probe.ts +68 -67
- package/server/services/workshop/daq/daq-controller/facade.ts +28 -28
- package/server/services/workshop/daq/daq-controller/frames.ts +138 -137
- package/server/services/workshop/daq/daq-controller/helpers.ts +52 -52
- package/server/services/workshop/daq/daq-controller/index.ts +22 -22
- package/server/services/workshop/daq/daq-controller/sweep-alarms.ts +214 -186
- package/server/services/workshop/daq/daq-controller/types.ts +5 -0
- package/server/services/workshop/daq/daq-node.ts +7 -0
- package/server/services/workshop/daq/daq-templates.ts +235 -225
- package/server/services/workshop/daq/drivers/mock.ts +130 -130
- package/server/services/workshop/daq/drivers/modbus-rtu.ts +67 -67
- package/server/services/workshop/daq/drivers/modbus-tcp.ts +321 -310
- package/server/services/workshop/daq/drivers/opcua.ts +227 -227
- package/server/services/workshop/daq/drivers/s7-stub.ts +29 -29
- package/server/services/workshop/daq/field-group.ts +266 -0
- package/server/services/workshop/daq/host-bindings.ts +71 -71
- package/server/services/workshop/daq/host-ports.ts +65 -65
- package/server/services/workshop/daq/infra-credentials.ts +201 -0
- package/server/services/workshop/daq/infra.ts +250 -229
- package/server/services/workshop/daq/ingest-policy.ts +80 -66
- package/server/services/workshop/daq/objectstore/index.ts +88 -88
- package/server/services/workshop/daq/storage/index.ts +157 -4
- package/server/services/workshop/daq/storage/retention.ts +142 -0
- package/server/services/workshop/daq/storage/sqlite.adapter.ts +16 -3
- package/server/services/workshop/daq/storage/timescale-rollup.ts +600 -0
- package/server/services/workshop/daq/storage/timescale.adapter.ts +46 -13
- package/server/services/workshop/daq/storage/tsdb-port.ts +120 -0
- package/server/services/workshop/db/aml-team-seeds.ts +118 -118
- package/server/services/workshop/db/backup-registry.ts +33 -33
- package/server/services/workshop/db/channel-member.repo.ts +122 -122
- package/server/services/workshop/db/channel.repo.ts +203 -203
- package/server/services/workshop/db/chat-message.repo.ts +261 -233
- package/server/services/workshop/db/database/index.ts +18 -18
- package/server/services/workshop/db/database/json.ts +14 -14
- package/server/services/workshop/db/database/open.ts +6 -0
- package/server/services/workshop/db/database/rows.ts +2 -0
- package/server/services/workshop/db/database/schema.ts +8 -0
- package/server/services/workshop/db/database/seed-data.ts +60 -60
- package/server/services/workshop/db/database/seed.ts +6 -6
- package/server/services/workshop/db/hitl-request.repo.ts +221 -221
- package/server/services/workshop/db/notification.repo.ts +199 -199
- package/server/services/workshop/db/readonly.ts +30 -30
- package/server/services/workshop/db/scheduled-task.repo.ts +235 -235
- package/server/services/workshop/db/schema.sql +7 -0
- package/server/services/workshop/db/task.repo.ts +8 -3
- package/server/services/workshop/db/transaction.ts +72 -72
- package/server/services/workshop/dcw/dcw-controller/actuation.ts +7 -0
- package/server/services/workshop/dcw/dcw-controller/contracts.ts +16 -16
- package/server/services/workshop/dcw/dcw-controller/control.ts +78 -78
- package/server/services/workshop/dcw/dcw-controller/crud.ts +5 -0
- package/server/services/workshop/dcw/dcw-controller/facade.ts +19 -19
- package/server/services/workshop/dcw/dcw-controller/helpers.ts +62 -61
- package/server/services/workshop/dcw/dcw-controller/index.ts +22 -22
- package/server/services/workshop/dcw/dcw-controller/params.ts +97 -97
- package/server/services/workshop/dcw/dcw-controller/products.ts +103 -103
- package/server/services/workshop/dcw/dcw-controller/recipes.ts +14 -8
- package/server/services/workshop/dcw/dcw-controller/state.ts +88 -71
- package/server/services/workshop/dcw/dcw-controller/write-audit.ts +1 -1
- package/server/services/workshop/dcw/dcw-controller/write.ts +225 -224
- package/server/services/workshop/dcw/dcw-templates.ts +136 -136
- package/server/services/workshop/dcw/drivers/mqtt.ts +4 -3
- package/server/services/workshop/dcw/mqtt-payload.ts +64 -0
- package/server/services/workshop/dcw/param-conversion.ts +78 -78
- package/server/services/workshop/dcw/param-map.repo.ts +349 -349
- package/server/services/workshop/dcw/plugin-bridge.ts +45 -45
- package/server/services/workshop/dcw/recipe-rollback-manager/contracts.ts +26 -26
- package/server/services/workshop/dcw/recipe-rollback-manager/facade.ts +13 -13
- package/server/services/workshop/dcw/recipe-rollback-manager/helpers.ts +30 -30
- package/server/services/workshop/dcw/recipe-rollback-manager/index.ts +17 -17
- package/server/services/workshop/dcw/recipe-rollback-manager/internal.ts +33 -33
- package/server/services/workshop/dcw/recipe-rollback-manager/judge.ts +52 -52
- package/server/services/workshop/dcw/recipe-rollback-manager/lock.ts +138 -137
- package/server/services/workshop/dcw/recipe-rollback-manager/state.ts +21 -21
- package/server/services/workshop/dcw/recipe-rollback-manager/types.ts +3 -3
- package/server/services/workshop/dcw/recipe-rollback-manager/views.ts +214 -214
- package/server/services/workshop/eda/data-export.ts +275 -274
- package/server/services/workshop/eda/template-repo.ts +101 -101
- package/server/services/workshop/exp/exp-collector.ts +275 -275
- package/server/services/workshop/exp/exp-state.repo.ts +339 -339
- package/server/services/workshop/json-store.mjs +143 -137
- package/server/services/workshop/line-scope.ts +80 -80
- package/server/services/workshop/mes/mes-controller.ts +1164 -1164
- package/server/services/workshop/mes/mes-hook.ts +594 -567
- package/server/services/workshop/net/ssrf.ts +83 -74
- package/server/services/workshop/ontology/subgraph.core.ts +300 -300
- package/server/services/workshop/ontology/subgraph.service.ts +113 -113
- package/server/services/workshop/ops/error-ledger.ts +209 -209
- package/server/services/workshop/optimization/profile-adopt.service.ts +28 -2
- package/server/services/workshop/optimization/python/.mimosa/hook-state/session_187ec97f45d4bd02369bbe94da527cf1.json +1 -0
- package/server/services/workshop/optimization/python/.mimosa/hook-state/session_187ec97f45d4bd02369bbe94da527cf1.mvjqkcs6-68688-fb7131a89c.baseline/190a6772a4e43801737b4ba6072eb9d53d3099b5d8a9e6f57bc5e8592a26a6c4.source +274 -0
- package/server/services/workshop/optimization/python/.mimosa/hook-status/session_187ec97f45d4bd02369bbe94da527cf1-01ed7f04fa.json +14 -0
- package/server/services/workshop/optimization/python/__pycache__/problems.cpython-312.pyc +0 -0
- package/server/services/workshop/plugins/host/api.mjs +90 -90
- package/server/services/workshop/plugins/host/config.mjs +135 -135
- package/server/services/workshop/plugins/host/index.mjs +23 -23
- package/server/services/workshop/plugins/host/init.mjs +128 -109
- package/server/services/workshop/plugins/host/reload.mjs +8 -1
- package/server/services/workshop/plugins/host/rollback.mjs +72 -72
- package/server/services/workshop/plugins/host/state.mjs +54 -54
- package/server/services/workshop/plugins/host/toggle.mjs +64 -64
- package/server/services/workshop/plugins/host.mjs +9 -9
- package/server/services/workshop/runtime/agent-runtime/facade.ts +7 -7
- package/server/services/workshop/runtime/agent-runtime/harness-failure.ts +58 -0
- package/server/services/workshop/runtime/agent-runtime/helpers.ts +18 -18
- package/server/services/workshop/runtime/agent-runtime/index.ts +19 -19
- package/server/services/workshop/runtime/agent-runtime/lifecycle.ts +137 -137
- package/server/services/workshop/runtime/agent-runtime/message.ts +37 -2
- package/server/services/workshop/runtime/agent-runtime/state.ts +12 -2
- package/server/services/workshop/runtime/agent-runtime/types.ts +2 -0
- package/server/services/workshop/runtime/channel-runtime.ts +80 -1
- package/server/services/workshop/runtime/chat-mention.ts +164 -164
- package/server/services/workshop/runtime/chat-projection.ts +246 -246
- package/server/services/workshop/runtime/embedding-provider.ts +100 -83
- package/server/services/workshop/runtime/execution-mode.ts +8 -0
- package/server/services/workshop/runtime/manager/admin-agents.ts +268 -268
- package/server/services/workshop/runtime/manager/admin-channel.ts +19 -14
- package/server/services/workshop/runtime/manager/bus.ts +182 -182
- package/server/services/workshop/runtime/manager/channel-template-constants.ts +20 -20
- package/server/services/workshop/runtime/manager/chat-reply.ts +181 -181
- package/server/services/workshop/runtime/manager/chat.ts +446 -386
- package/server/services/workshop/runtime/manager/contracts.ts +7 -0
- package/server/services/workshop/runtime/manager/facade.ts +24 -24
- package/server/services/workshop/runtime/manager/helpers.ts +122 -119
- package/server/services/workshop/runtime/manager/index.ts +42 -42
- package/server/services/workshop/runtime/manager/internal.ts +73 -73
- package/server/services/workshop/runtime/manager/notifications.ts +108 -108
- package/server/services/workshop/runtime/manager/runtime-observe.ts +1 -3
- package/server/services/workshop/runtime/manager/runtime-wiring.ts +18 -6
- package/server/services/workshop/runtime/manager/schedules.ts +7 -0
- package/server/services/workshop/runtime/manager/state.ts +14 -0
- package/server/services/workshop/runtime/manager/tasks.ts +34 -1
- package/server/services/workshop/runtime/manager/teams.ts +148 -148
- package/server/services/workshop/runtime/manager/workspace.ts +1 -0
- package/server/services/workshop/runtime/memory/contracts.ts +18 -18
- package/server/services/workshop/runtime/memory/facade.ts +10 -10
- package/server/services/workshop/runtime/memory/helpers.ts +196 -196
- package/server/services/workshop/runtime/memory/index.ts +27 -27
- package/server/services/workshop/runtime/memory/score.ts +33 -33
- package/server/services/workshop/runtime/memory/state.ts +40 -40
- package/server/services/workshop/runtime/monitor.ts +3 -3
- package/server/services/workshop/runtime/platform-notice.ts +113 -113
- package/server/services/workshop/runtime/schedule-runtime.ts +347 -347
- package/server/services/workshop/runtime/scheduler-loop/contracts.ts +29 -29
- package/server/services/workshop/runtime/scheduler-loop/facade.ts +7 -7
- package/server/services/workshop/runtime/scheduler-loop/helpers.ts +14 -14
- package/server/services/workshop/runtime/scheduler-loop/index.ts +16 -16
- package/server/services/workshop/runtime/scheduler-loop/rules.ts +17 -1
- package/server/services/workshop/runtime/scheduler-loop/tick.ts +31 -3
- package/server/services/workshop/runtime/task-engine/create.ts +15 -1
- package/server/services/workshop/runtime/task-engine/facade.ts +7 -7
- package/server/services/workshop/runtime/task-engine/helpers.ts +2 -0
- package/server/services/workshop/runtime/task-engine/index.ts +15 -15
- package/server/services/workshop/runtime/task-engine/lifecycle.ts +68 -9
- package/server/services/workshop/runtime/task-engine/types.ts +3 -3
- package/server/services/workshop/runtime/user-notification-hub.ts +192 -192
- package/server/services/workshop/settings.ts +35 -1
- package/server/services/workshop/types/task.ts +2 -0
- package/server/types/pg.d.ts +49 -49
- package/server/utils/approval-gate.ts +67 -67
- package/server/utils/asset-auth.ts +15 -0
- package/server/utils/mojibake-guard.ts +29 -29
- package/server/utils/request-ip.ts +29 -0
- package/server/utils/response.ts +3 -6
- package/server/utils/stability-severity.ts +77 -77
- package/shared/config/groups.mjs +241 -241
- package/shared/config/schema.json +171 -152
- package/shared/daq-protocol.ts +8 -0
- package/shared/dcw-protocol/catalog.ts +1 -0
- package/shared/dcw-protocol/closed-loop.ts +2 -0
- package/shared/lru.mjs +97 -97
- package/tui/README.md +74 -74
- package/tui/aw-tui.mjs +445 -445
- package/tui/commands/index.mjs +287 -287
- package/tui/components/chat-log.mjs +42 -42
- package/tui/components/monitor-pane.mjs +39 -39
- package/tui/components/root.mjs +53 -53
- package/tui/components/status-bar.mjs +33 -33
- package/tui/lib/api.mjs +82 -82
- package/tui/lib/pickers.mjs +121 -121
- package/tui/lib/reducers.mjs +218 -218
- package/tui/lib/state.mjs +86 -86
- package/tui/lib/virtual-terminal.mjs +48 -48
- package/tui/lib/ws.mjs +125 -125
- package/tui/theme.mjs +38 -38
- package/.output/public/_nuxt/9Kt-rxrm.js +0 -1
- package/.output/public/_nuxt/ATAvN55g.js +0 -1
- package/.output/public/_nuxt/B3GEA4IW.js +0 -1
- package/.output/public/_nuxt/B9qIhT7k2.js +0 -1
- package/.output/public/_nuxt/BBTI9r9T2.js +0 -1
- package/.output/public/_nuxt/BE9oKpOt.js +0 -1
- package/.output/public/_nuxt/BHOjkDAJ.js +0 -21
- package/.output/public/_nuxt/BTaGYNZF2.js +0 -1
- package/.output/public/_nuxt/BXUDD9fv.js +0 -1
- package/.output/public/_nuxt/BXbZ_hei.js +0 -1
- package/.output/public/_nuxt/BaGy_jAI2.js +0 -1
- package/.output/public/_nuxt/BdfAuX81.js +0 -1
- package/.output/public/_nuxt/BoXKUOiN2.js +0 -1
- package/.output/public/_nuxt/Buj_DMJ-.js +0 -1
- package/.output/public/_nuxt/Bv7dyPx4.js +0 -1
- package/.output/public/_nuxt/BvjY-Xks.js +0 -1
- package/.output/public/_nuxt/BxC9PAu-2.js +0 -1
- package/.output/public/_nuxt/Bzfzp9-f.js +0 -1
- package/.output/public/_nuxt/CT4bi_Y4.js +0 -1
- package/.output/public/_nuxt/CTGJHZ8X2.js +0 -1
- package/.output/public/_nuxt/CWcaJnFp.js +0 -1
- package/.output/public/_nuxt/CeCSjB9O2.js +0 -1
- package/.output/public/_nuxt/CnoJJb7B.js +0 -1
- package/.output/public/_nuxt/Crf8_Ad02.js +0 -1
- package/.output/public/_nuxt/CtMTOx_-2.js +0 -1
- package/.output/public/_nuxt/Cv9OcYm3.js +0 -1
- package/.output/public/_nuxt/CxIF09Zj2.js +0 -1
- package/.output/public/_nuxt/CxR0TyUA.js +0 -1
- package/.output/public/_nuxt/D9tNM-1a.js +0 -9
- package/.output/public/_nuxt/DL8QM0x5.js +0 -1
- package/.output/public/_nuxt/DO9Y3eoU.js +0 -20
- package/.output/public/_nuxt/DQLBGo6O.js +0 -1
- package/.output/public/_nuxt/DSqQKrMK2.js +0 -1
- package/.output/public/_nuxt/DXc4yISs.js +0 -47
- package/.output/public/_nuxt/DXmEuVFQ2.js +0 -1
- package/.output/public/_nuxt/DeXAMdSa2.js +0 -1
- package/.output/public/_nuxt/DjjOAXrj2.js +0 -1
- package/.output/public/_nuxt/DkRozlDP2.js +0 -1
- package/.output/public/_nuxt/DoprKJ5a2.js +0 -1
- package/.output/public/_nuxt/DvI5fMX12.js +0 -1
- package/.output/public/_nuxt/DzWyfYJ12.js +0 -2
- package/.output/public/_nuxt/EXs4hr_w2.js +0 -2
- package/.output/public/_nuxt/K5Xen0wZ2.js +0 -1
- package/.output/public/_nuxt/LS9Wa05P.js +0 -1
- package/.output/public/_nuxt/MmlCf-EZ.js +0 -1
- package/.output/public/_nuxt/OmpTerminalPanel.DMWgGwDs.css +0 -1
- package/.output/public/_nuxt/PluginSlot.BqBzLD4T.css +0 -1
- package/.output/public/_nuxt/TownView.DQaU1HuK.css +0 -1
- package/.output/public/_nuxt/TugRY_4O.js +0 -1
- package/.output/public/_nuxt/UgCvr7b2.js +0 -1
- package/.output/public/_nuxt/WCG1-KXf2.js +0 -16
- package/.output/public/_nuxt/WybiLTow2.js +0 -8
- package/.output/public/_nuxt/YWsTLN5m.js +0 -1
- package/.output/public/_nuxt/Zn0BZpf0.js +0 -3
- package/.output/public/_nuxt/ZzOyoXex2.js +0 -1
- package/.output/public/_nuxt/_id_.Be5JaH-P.css +0 -1
- package/.output/public/_nuxt/_wsId_.DSOfdfx2.css +0 -1
- package/.output/public/_nuxt/agents.CRomddYR.css +0 -1
- package/.output/public/_nuxt/aml.DgOMpDpv.css +0 -1
- package/.output/public/_nuxt/builds/meta/02ba4bc7-f353-4183-a619-716921b5f0dc.json +0 -1
- package/.output/public/_nuxt/default.CpAx70gC.css +0 -1
- package/.output/public/_nuxt/eNEgl-ZF.js +0 -1
- package/.output/public/_nuxt/fJv3DH8b.js +0 -1
- package/.output/public/_nuxt/hyLdZsOd2.js +0 -1
- package/.output/public/_nuxt/logs.6VGjPS34.css +0 -1
- package/.output/public/_nuxt/monitor.OoNTwfMJ.css +0 -1
- package/.output/public/_nuxt/o8sYG6xx2.js +0 -1
- package/.output/public/_nuxt/ontology.D4P756Tc.css +0 -1
- package/.output/public/_nuxt/operations.C48ggFa5.css +0 -1
- package/.output/public/_nuxt/pages.Dpa28tJW.css +0 -1
- package/.output/public/_nuxt/permissions.CrV-4t-6.css +0 -1
- package/.output/public/_nuxt/px0VQ09m.js +0 -2
- package/.output/public/_nuxt/schedules.DYWOjGHm.css +0 -1
- package/.output/public/_nuxt/teams.DEJoJ4QV.css +0 -1
- package/.output/public/_nuxt/tokens.DKZWCP5v.css +0 -1
- package/.output/public/_nuxt/tools.DP-nsTli.css +0 -1
- package/.output/public/_nuxt/workshop.PT1xhP8C.css +0 -1
- package/.output/server/chunks/_/AuthGate-G74Wr5IV.mjs +0 -716
- package/.output/server/chunks/_/AuthGate-G74Wr5IV.mjs.map +0 -1
- package/.output/server/chunks/_/FormItemContext-DmuQqaeJ.mjs +0 -72
- package/.output/server/chunks/_/FormItemContext-DmuQqaeJ.mjs.map +0 -1
- package/.output/server/chunks/_/OmpTerminalPanel-CVn7GF98.mjs +0 -942
- package/.output/server/chunks/_/OmpTerminalPanel-CVn7GF98.mjs.map +0 -1
- package/.output/server/chunks/_/PluginSlot-CZlGlRoR.mjs +0 -141
- package/.output/server/chunks/_/PluginSlot-CZlGlRoR.mjs.map +0 -1
- package/.output/server/chunks/_/TownView-CaxNtCrZ.mjs +0 -6496
- package/.output/server/chunks/_/TownView-CaxNtCrZ.mjs.map +0 -1
- package/.output/server/chunks/_/_id_-CvCH8aqA.mjs +0 -2045
- package/.output/server/chunks/_/_id_-CvCH8aqA.mjs.map +0 -1
- package/.output/server/chunks/_/_id_-X_k47fyM.mjs +0 -392
- package/.output/server/chunks/_/_id_-X_k47fyM.mjs.map +0 -1
- package/.output/server/chunks/_/_wsId_-CIXvt220.mjs +0 -14589
- package/.output/server/chunks/_/_wsId_-CIXvt220.mjs.map +0 -1
- package/.output/server/chunks/_/agents-Bipi0xxl.mjs +0 -1078
- package/.output/server/chunks/_/agents-Bipi0xxl.mjs.map +0 -1
- package/.output/server/chunks/_/alert-CNGhs--Y.mjs +0 -263
- package/.output/server/chunks/_/alert-CNGhs--Y.mjs.map +0 -1
- package/.output/server/chunks/_/aml-gCTIxLoE.mjs +0 -814
- package/.output/server/chunks/_/aml-gCTIxLoE.mjs.map +0 -1
- package/.output/server/chunks/_/analysis-BrSFajFi.mjs +0 -533
- package/.output/server/chunks/_/analysis-BrSFajFi.mjs.map +0 -1
- package/.output/server/chunks/_/api--f4L9O86.mjs +0 -64
- package/.output/server/chunks/_/api--f4L9O86.mjs.map +0 -1
- package/.output/server/chunks/_/api-CRGCw6io.mjs +0 -53
- package/.output/server/chunks/_/api-CRGCw6io.mjs.map +0 -1
- package/.output/server/chunks/_/api-DKutH26K.mjs +0 -72
- package/.output/server/chunks/_/api-DKutH26K.mjs.map +0 -1
- package/.output/server/chunks/_/api-error-BrL8jXVC.mjs +0 -47
- package/.output/server/chunks/_/api-error-BrL8jXVC.mjs.map +0 -1
- package/.output/server/chunks/_/apiClient-DrCvj3Zb.mjs +0 -81
- package/.output/server/chunks/_/apiClient-DrCvj3Zb.mjs.map +0 -1
- package/.output/server/chunks/_/board-DB55AvRS.mjs +0 -189
- package/.output/server/chunks/_/board-DB55AvRS.mjs.map +0 -1
- package/.output/server/chunks/_/builtin-catalog-edpDcgfL.mjs.map +0 -1
- package/.output/server/chunks/_/card-BECE6y_G.mjs +0 -953
- package/.output/server/chunks/_/card-BECE6y_G.mjs.map +0 -1
- package/.output/server/chunks/_/channel-templates-C0Njk-Ir.mjs +0 -942
- package/.output/server/chunks/_/channel-templates-C0Njk-Ir.mjs.map +0 -1
- package/.output/server/chunks/_/chart-pipeline-BpoWYMK_.mjs.map +0 -1
- package/.output/server/chunks/_/chart-trend-BWeZh5Lv.mjs.map +0 -1
- package/.output/server/chunks/_/checkbox-C6xY5uc6.mjs +0 -439
- package/.output/server/chunks/_/checkbox-C6xY5uc6.mjs.map +0 -1
- package/.output/server/chunks/_/client-only-DQ6Q0w4J.mjs +0 -43
- package/.output/server/chunks/_/client-only-DQ6Q0w4J.mjs.map +0 -1
- package/.output/server/chunks/_/constants-HPHJvjne.mjs +0 -142
- package/.output/server/chunks/_/constants-HPHJvjne.mjs.map +0 -1
- package/.output/server/chunks/_/core-CRlsQhzd.mjs +0 -294
- package/.output/server/chunks/_/core-CRlsQhzd.mjs.map +0 -1
- package/.output/server/chunks/_/daq-VLM0Ud2Y.mjs +0 -1266
- package/.output/server/chunks/_/daq-VLM0Ud2Y.mjs.map +0 -1
- package/.output/server/chunks/_/data-Bgx_w04W.mjs +0 -481
- package/.output/server/chunks/_/data-Bgx_w04W.mjs.map +0 -1
- package/.output/server/chunks/_/dcw-BstEJzQ4.mjs +0 -505
- package/.output/server/chunks/_/dcw-BstEJzQ4.mjs.map +0 -1
- package/.output/server/chunks/_/dcw-driver-badge-Df5wL_ZA.mjs.map +0 -1
- package/.output/server/chunks/_/default-Dmo-rt5V.mjs +0 -2353
- package/.output/server/chunks/_/default-Dmo-rt5V.mjs.map +0 -1
- package/.output/server/chunks/_/descriptions-B3uhDesi.mjs +0 -406
- package/.output/server/chunks/_/descriptions-B3uhDesi.mjs.map +0 -1
- package/.output/server/chunks/_/drawer-DwXxapMg.mjs +0 -834
- package/.output/server/chunks/_/drawer-DwXxapMg.mjs.map +0 -1
- package/.output/server/chunks/_/dropdown-DLrGy-Fs.mjs +0 -14
- package/.output/server/chunks/_/dropdown-DLrGy-Fs.mjs.map +0 -1
- package/.output/server/chunks/_/dropdown-nsGv8Gqx.mjs +0 -540
- package/.output/server/chunks/_/dropdown-nsGv8Gqx.mjs.map +0 -1
- package/.output/server/chunks/_/es-DXSEkmAm.mjs +0 -43
- package/.output/server/chunks/_/es-DXSEkmAm.mjs.map +0 -1
- package/.output/server/chunks/_/firstNotUndefined-laiThpLD.mjs +0 -2448
- package/.output/server/chunks/_/firstNotUndefined-laiThpLD.mjs.map +0 -1
- package/.output/server/chunks/_/form-Cw2Ex9w5.mjs +0 -4712
- package/.output/server/chunks/_/form-Cw2Ex9w5.mjs.map +0 -1
- package/.output/server/chunks/_/hasIn-RYRGomyg.mjs +0 -553
- package/.output/server/chunks/_/hasIn-RYRGomyg.mjs.map +0 -1
- package/.output/server/chunks/_/hitl-CQowkJ6s.mjs +0 -132
- package/.output/server/chunks/_/hitl-CQowkJ6s.mjs.map +0 -1
- package/.output/server/chunks/_/input-CJgB-RL6.mjs +0 -2181
- package/.output/server/chunks/_/input-CJgB-RL6.mjs.map +0 -1
- package/.output/server/chunks/_/input-number-CQKL42p_.mjs +0 -1120
- package/.output/server/chunks/_/input-number-CQKL42p_.mjs.map +0 -1
- package/.output/server/chunks/_/interval-CfceaI3F.mjs +0 -9
- package/.output/server/chunks/_/interval-CfceaI3F.mjs.map +0 -1
- package/.output/server/chunks/_/isNumeric-DQiJ-b15.mjs +0 -7
- package/.output/server/chunks/_/isNumeric-DQiJ-b15.mjs.map +0 -1
- package/.output/server/chunks/_/logs-Dt4ejjjU.mjs +0 -492
- package/.output/server/chunks/_/logs-Dt4ejjjU.mjs.map +0 -1
- package/.output/server/chunks/_/menu-xO8ocVtL.mjs +0 -1952
- package/.output/server/chunks/_/menu-xO8ocVtL.mjs.map +0 -1
- package/.output/server/chunks/_/monitor-vqmGVVN5.mjs +0 -2253
- package/.output/server/chunks/_/monitor-vqmGVVN5.mjs.map +0 -1
- package/.output/server/chunks/_/narrow-fetch-CcG-BPxc.mjs.map +0 -1
- package/.output/server/chunks/_/ontology-ih0HgPpL.mjs +0 -1406
- package/.output/server/chunks/_/ontology-ih0HgPpL.mjs.map +0 -1
- package/.output/server/chunks/_/operations-BHmdVOUk.mjs +0 -311
- package/.output/server/chunks/_/operations-BHmdVOUk.mjs.map +0 -1
- package/.output/server/chunks/_/optimizer-DyvIYE4A.mjs +0 -202
- package/.output/server/chunks/_/optimizer-DyvIYE4A.mjs.map +0 -1
- package/.output/server/chunks/_/pages-C2KTn0U1.mjs +0 -542
- package/.output/server/chunks/_/pages-C2KTn0U1.mjs.map +0 -1
- package/.output/server/chunks/_/pagination-BTzq7dD5.mjs +0 -1346
- package/.output/server/chunks/_/pagination-BTzq7dD5.mjs.map +0 -1
- package/.output/server/chunks/_/permissions-BbTI02WI.mjs +0 -637
- package/.output/server/chunks/_/permissions-BbTI02WI.mjs.map +0 -1
- package/.output/server/chunks/_/pipeline-BgNjQ4J3.mjs +0 -212
- package/.output/server/chunks/_/pipeline-BgNjQ4J3.mjs.map +0 -1
- package/.output/server/chunks/_/plugins-CplEv3mY.mjs +0 -272
- package/.output/server/chunks/_/plugins-CplEv3mY.mjs.map +0 -1
- package/.output/server/chunks/_/popconfirm-DuGF7ty-.mjs +0 -340
- package/.output/server/chunks/_/popconfirm-DuGF7ty-.mjs.map +0 -1
- package/.output/server/chunks/_/responsiveObserve-CzRpNXkr.mjs +0 -78
- package/.output/server/chunks/_/responsiveObserve-CzRpNXkr.mjs.map +0 -1
- package/.output/server/chunks/_/schedules-BN4t_4PG.mjs +0 -7172
- package/.output/server/chunks/_/schedules-BN4t_4PG.mjs.map +0 -1
- package/.output/server/chunks/_/segmented-29uEKZ3D.mjs +0 -341
- package/.output/server/chunks/_/segmented-29uEKZ3D.mjs.map +0 -1
- package/.output/server/chunks/_/select-CJb2XrQf.mjs +0 -3923
- package/.output/server/chunks/_/select-CJb2XrQf.mjs.map +0 -1
- package/.output/server/chunks/_/settings-BQaAoT4q.mjs +0 -1014
- package/.output/server/chunks/_/settings-BQaAoT4q.mjs.map +0 -1
- package/.output/server/chunks/_/space-BByD-mFE.mjs +0 -110
- package/.output/server/chunks/_/space-BByD-mFE.mjs.map +0 -1
- package/.output/server/chunks/_/spin-XhbgGeLP.mjs +0 -357
- package/.output/server/chunks/_/spin-XhbgGeLP.mjs.map +0 -1
- package/.output/server/chunks/_/studio-D5r5Rzaq.mjs +0 -336
- package/.output/server/chunks/_/studio-D5r5Rzaq.mjs.map +0 -1
- package/.output/server/chunks/_/switch-DWcwVFxW.mjs +0 -377
- package/.output/server/chunks/_/switch-DWcwVFxW.mjs.map +0 -1
- package/.output/server/chunks/_/table-Zhuo7Fq-.mjs +0 -7546
- package/.output/server/chunks/_/table-Zhuo7Fq-.mjs.map +0 -1
- package/.output/server/chunks/_/tabs-BCwBXjNt.mjs +0 -1924
- package/.output/server/chunks/_/tabs-BCwBXjNt.mjs.map +0 -1
- package/.output/server/chunks/_/tag-CRW-anwy.mjs +0 -1156
- package/.output/server/chunks/_/tag-CRW-anwy.mjs.map +0 -1
- package/.output/server/chunks/_/teams-BUtsNTet.mjs +0 -1203
- package/.output/server/chunks/_/teams-BUtsNTet.mjs.map +0 -1
- package/.output/server/chunks/_/tokens-o8lT3x-p.mjs +0 -1062
- package/.output/server/chunks/_/tokens-o8lT3x-p.mjs.map +0 -1
- package/.output/server/chunks/_/tools-DRb5HTtU.mjs +0 -487
- package/.output/server/chunks/_/tools-DRb5HTtU.mjs.map +0 -1
- package/.output/server/chunks/_/tooltip-GlMrUZzx.mjs +0 -920
- package/.output/server/chunks/_/tooltip-GlMrUZzx.mjs.map +0 -1
- package/.output/server/chunks/_/town-BPA3G6yX.mjs +0 -133
- package/.output/server/chunks/_/town-BPA3G6yX.mjs.map +0 -1
- package/.output/server/chunks/_/town-BV-hbwb5.mjs +0 -75
- package/.output/server/chunks/_/town-BV-hbwb5.mjs.map +0 -1
- package/.output/server/chunks/_/types-D6J7slEa.mjs +0 -5565
- package/.output/server/chunks/_/types-D6J7slEa.mjs.map +0 -1
- package/.output/server/chunks/_/types-DWqIeMRP.mjs +0 -76
- package/.output/server/chunks/_/types-DWqIeMRP.mjs.map +0 -1
- package/.output/server/chunks/_/useAgentHarnessOptions-dDHiEoK2.mjs +0 -124
- package/.output/server/chunks/_/useAgentHarnessOptions-dDHiEoK2.mjs.map +0 -1
- package/.output/server/chunks/_/useAgentTemplateActions-S3dtH5UW.mjs +0 -77
- package/.output/server/chunks/_/useAgentTemplateActions-S3dtH5UW.mjs.map +0 -1
- package/.output/server/chunks/_/useAgentTemplateDialogState-CZzpu5og.mjs +0 -67
- package/.output/server/chunks/_/useAgentTemplateDialogState-CZzpu5og.mjs.map +0 -1
- package/.output/server/chunks/_/useAgentTemplateForm-D8gneIvd.mjs +0 -117
- package/.output/server/chunks/_/useAgentTemplateForm-D8gneIvd.mjs.map +0 -1
- package/.output/server/chunks/_/useAgentTemplatesCatalog-DHUpubKM.mjs +0 -133
- package/.output/server/chunks/_/useAgentTemplatesCatalog-DHUpubKM.mjs.map +0 -1
- package/.output/server/chunks/_/useAmlDatasets-CDg3Qbpv.mjs +0 -92
- package/.output/server/chunks/_/useAmlDatasets-CDg3Qbpv.mjs.map +0 -1
- package/.output/server/chunks/_/useAmlEntities-Bcaput4Y.mjs +0 -86
- package/.output/server/chunks/_/useAmlEntities-Bcaput4Y.mjs.map +0 -1
- package/.output/server/chunks/_/useAmlEnv-Dga_Nq6z.mjs +0 -194
- package/.output/server/chunks/_/useAmlEnv-Dga_Nq6z.mjs.map +0 -1
- package/.output/server/chunks/_/useAmlExperiments-CFngqLM3.mjs +0 -89
- package/.output/server/chunks/_/useAmlExperiments-CFngqLM3.mjs.map +0 -1
- package/.output/server/chunks/_/useAmlFormat-C2sl3MGB.mjs +0 -82
- package/.output/server/chunks/_/useAmlFormat-C2sl3MGB.mjs.map +0 -1
- package/.output/server/chunks/_/useAmlJobs-C7onZkcR.mjs +0 -267
- package/.output/server/chunks/_/useAmlJobs-C7onZkcR.mjs.map +0 -1
- package/.output/server/chunks/_/useAmlModels-B2b3mx4d.mjs +0 -93
- package/.output/server/chunks/_/useAmlModels-B2b3mx4d.mjs.map +0 -1
- package/.output/server/chunks/_/useAmlNotes-6gZX7tbx.mjs +0 -86
- package/.output/server/chunks/_/useAmlNotes-6gZX7tbx.mjs.map +0 -1
- package/.output/server/chunks/_/useAmlPredict-DwOmM2ke.mjs +0 -130
- package/.output/server/chunks/_/useAmlPredict-DwOmM2ke.mjs.map +0 -1
- package/.output/server/chunks/_/useAnalysisFeed-CpPsKh_I.mjs +0 -129
- package/.output/server/chunks/_/useAnalysisFeed-CpPsKh_I.mjs.map +0 -1
- package/.output/server/chunks/_/useDaqAddNode-QtJja03_.mjs +0 -142
- package/.output/server/chunks/_/useDaqAddNode-QtJja03_.mjs.map +0 -1
- package/.output/server/chunks/_/useDaqDetailBinding-Dd5c4bep.mjs +0 -70
- package/.output/server/chunks/_/useDaqDetailBinding-Dd5c4bep.mjs.map +0 -1
- package/.output/server/chunks/_/useDaqDetailFrames-C2gvrOr6.mjs +0 -79
- package/.output/server/chunks/_/useDaqDetailFrames-C2gvrOr6.mjs.map +0 -1
- package/.output/server/chunks/_/useDaqDetailHistory-Bhht_iFw.mjs +0 -176
- package/.output/server/chunks/_/useDaqDetailHistory-Bhht_iFw.mjs.map +0 -1
- package/.output/server/chunks/_/useDaqDetailNode-BayXtr5W.mjs +0 -99
- package/.output/server/chunks/_/useDaqDetailNode-BayXtr5W.mjs.map +0 -1
- package/.output/server/chunks/_/useDaqDetailParams-D8d1l3_R.mjs +0 -159
- package/.output/server/chunks/_/useDaqDetailParams-D8d1l3_R.mjs.map +0 -1
- package/.output/server/chunks/_/useDaqFilters-TYucwywj.mjs +0 -222
- package/.output/server/chunks/_/useDaqFilters-TYucwywj.mjs.map +0 -1
- package/.output/server/chunks/_/useDaqNodeWindow-1DWj2H5G.mjs +0 -90
- package/.output/server/chunks/_/useDaqNodeWindow-1DWj2H5G.mjs.map +0 -1
- package/.output/server/chunks/_/useDaqOptimizations-o5hubsm8.mjs +0 -136
- package/.output/server/chunks/_/useDaqOptimizations-o5hubsm8.mjs.map +0 -1
- package/.output/server/chunks/_/useDaqStream-BCTOU87S.mjs +0 -395
- package/.output/server/chunks/_/useDaqStream-BCTOU87S.mjs.map +0 -1
- package/.output/server/chunks/_/useDaqTemplates-Fj64LHfn.mjs +0 -187
- package/.output/server/chunks/_/useDaqTemplates-Fj64LHfn.mjs.map +0 -1
- package/.output/server/chunks/_/useDashboardCharts-D45083s_.mjs +0 -354
- package/.output/server/chunks/_/useDashboardCharts-D45083s_.mjs.map +0 -1
- package/.output/server/chunks/_/useDashboardData-Cm_-daeI.mjs +0 -153
- package/.output/server/chunks/_/useDashboardData-Cm_-daeI.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwAddNode-DaqIQSXN.mjs +0 -219
- package/.output/server/chunks/_/useDcwAddNode-DaqIQSXN.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwCards-OhzgHbAI.mjs +0 -67
- package/.output/server/chunks/_/useDcwCards-OhzgHbAI.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwDetailScope-CaWcaiBg.mjs +0 -184
- package/.output/server/chunks/_/useDcwDetailScope-CaWcaiBg.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwDetailTemplates-CrOgqQMX.mjs +0 -148
- package/.output/server/chunks/_/useDcwDetailTemplates-CrOgqQMX.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwFilter-RH511Ra2.mjs +0 -71
- package/.output/server/chunks/_/useDcwFilter-RH511Ra2.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwLedger-Dg61GD1J.mjs +0 -79
- package/.output/server/chunks/_/useDcwLedger-Dg61GD1J.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwLineMutations-CiurWUFF.mjs +0 -137
- package/.output/server/chunks/_/useDcwLineMutations-CiurWUFF.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwLineRun-DTSemEZb.mjs +0 -104
- package/.output/server/chunks/_/useDcwLineRun-DTSemEZb.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwParamApprovals-DpnD-yw0.mjs +0 -121
- package/.output/server/chunks/_/useDcwParamApprovals-DpnD-yw0.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwProducts-CRAl59cn.mjs +0 -93
- package/.output/server/chunks/_/useDcwProducts-CRAl59cn.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwQuery-Cyh_iGa9.mjs +0 -98
- package/.output/server/chunks/_/useDcwQuery-Cyh_iGa9.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwQuickActions-BW5-5HFn.mjs +0 -88
- package/.output/server/chunks/_/useDcwQuickActions-BW5-5HFn.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwRecipes-Ct9bWJwP.mjs +0 -258
- package/.output/server/chunks/_/useDcwRecipes-Ct9bWJwP.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwStream-BerzMqxo.mjs +0 -455
- package/.output/server/chunks/_/useDcwStream-BerzMqxo.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwTemplates-PMVeSLNP.mjs +0 -91
- package/.output/server/chunks/_/useDcwTemplates-PMVeSLNP.mjs.map +0 -1
- package/.output/server/chunks/_/useDcwWrites-CND_sZdb.mjs +0 -140
- package/.output/server/chunks/_/useDcwWrites-CND_sZdb.mjs.map +0 -1
- package/.output/server/chunks/_/useDeviceTwins-FB6rTm-6.mjs +0 -128
- package/.output/server/chunks/_/useDeviceTwins-FB6rTm-6.mjs.map +0 -1
- package/.output/server/chunks/_/useExpConfirmations-b0bE75Yq.mjs +0 -107
- package/.output/server/chunks/_/useExpConfirmations-b0bE75Yq.mjs.map +0 -1
- package/.output/server/chunks/_/useLocalTime-BJ_4vg1E.mjs +0 -55
- package/.output/server/chunks/_/useLocalTime-BJ_4vg1E.mjs.map +0 -1
- package/.output/server/chunks/_/useLogsFormat-B-o4MHy7.mjs +0 -77
- package/.output/server/chunks/_/useLogsFormat-B-o4MHy7.mjs.map +0 -1
- package/.output/server/chunks/_/useLogsManual-Cxka55hz.mjs +0 -89
- package/.output/server/chunks/_/useLogsManual-Cxka55hz.mjs.map +0 -1
- package/.output/server/chunks/_/useLogsQuery-DxMHc7M4.mjs +0 -150
- package/.output/server/chunks/_/useLogsQuery-DxMHc7M4.mjs.map +0 -1
- package/.output/server/chunks/_/useLogsScope-HuOiW-OR.mjs +0 -83
- package/.output/server/chunks/_/useLogsScope-HuOiW-OR.mjs.map +0 -1
- package/.output/server/chunks/_/useMonitorColumns-vVnt3r5Q.mjs +0 -217
- package/.output/server/chunks/_/useMonitorColumns-vVnt3r5Q.mjs.map +0 -1
- package/.output/server/chunks/_/useMonitorData-Bf3w2khj.mjs +0 -135
- package/.output/server/chunks/_/useMonitorData-Bf3w2khj.mjs.map +0 -1
- package/.output/server/chunks/_/useMonitorFormat-DsiVqWoa.mjs +0 -91
- package/.output/server/chunks/_/useMonitorFormat-DsiVqWoa.mjs.map +0 -1
- package/.output/server/chunks/_/useMonitorTerminal-Dj4QwRNW.mjs +0 -71
- package/.output/server/chunks/_/useMonitorTerminal-Dj4QwRNW.mjs.map +0 -1
- package/.output/server/chunks/_/useOperationsFeed-Bg35fcgt.mjs +0 -195
- package/.output/server/chunks/_/useOperationsFeed-Bg35fcgt.mjs.map +0 -1
- package/.output/server/chunks/_/useOpsLog-BEzBrMf4.mjs +0 -149
- package/.output/server/chunks/_/useOpsLog-BEzBrMf4.mjs.map +0 -1
- package/.output/server/chunks/_/useRecipeDispatchApprovals-CZfcMRYk.mjs +0 -156
- package/.output/server/chunks/_/useRecipeDispatchApprovals-CZfcMRYk.mjs.map +0 -1
- package/.output/server/chunks/_/useResponsive-BKDMGTHs.mjs.map +0 -1
- package/.output/server/chunks/_/useTeamActions-CmiuiQiG.mjs +0 -79
- package/.output/server/chunks/_/useTeamActions-CmiuiQiG.mjs.map +0 -1
- package/.output/server/chunks/_/useTeamAddMemberDialog-CMpzf0jO.mjs +0 -84
- package/.output/server/chunks/_/useTeamAddMemberDialog-CMpzf0jO.mjs.map +0 -1
- package/.output/server/chunks/_/useTeamCreateDialog-BnvjXWso.mjs +0 -97
- package/.output/server/chunks/_/useTeamCreateDialog-BnvjXWso.mjs.map +0 -1
- package/.output/server/chunks/_/useTeamDeployDialog-C0FOUYep.mjs +0 -80
- package/.output/server/chunks/_/useTeamDeployDialog-C0FOUYep.mjs.map +0 -1
- package/.output/server/chunks/_/useTeamDialogState-CFRUQxAf.mjs +0 -82
- package/.output/server/chunks/_/useTeamDialogState-CFRUQxAf.mjs.map +0 -1
- package/.output/server/chunks/_/useTeamPluginDialog-Do-07a47.mjs +0 -103
- package/.output/server/chunks/_/useTeamPluginDialog-Do-07a47.mjs.map +0 -1
- package/.output/server/chunks/_/useTeamsCatalog-ClG_gBI8.mjs +0 -123
- package/.output/server/chunks/_/useTeamsCatalog-ClG_gBI8.mjs.map +0 -1
- package/.output/server/chunks/_/useTokenClipboard-CwQpoFeP.mjs +0 -72
- package/.output/server/chunks/_/useTokenClipboard-CwQpoFeP.mjs.map +0 -1
- package/.output/server/chunks/_/useTokenCreate-C4g5eKd3.mjs +0 -115
- package/.output/server/chunks/_/useTokenCreate-C4g5eKd3.mjs.map +0 -1
- package/.output/server/chunks/_/useTokenRename-ClWrxpNk.mjs +0 -87
- package/.output/server/chunks/_/useTokenRename-ClWrxpNk.mjs.map +0 -1
- package/.output/server/chunks/_/useTokenReveal-C8n1Vt9t.mjs +0 -118
- package/.output/server/chunks/_/useTokenReveal-C8n1Vt9t.mjs.map +0 -1
- package/.output/server/chunks/_/useTokensList-CgiH2W1C.mjs +0 -92
- package/.output/server/chunks/_/useTokensList-CgiH2W1C.mjs.map +0 -1
- package/.output/server/chunks/_/useTownBus-D9SoIsAN.mjs.map +0 -1
- package/.output/server/chunks/_/useWorkbenchAuth-DSstfK5Z.mjs +0 -141
- package/.output/server/chunks/_/useWorkbenchAuth-DSstfK5Z.mjs.map +0 -1
- package/.output/server/chunks/_/useWorkbenchWorkspaces-l_0SUOzn.mjs +0 -138
- package/.output/server/chunks/_/useWorkbenchWorkspaces-l_0SUOzn.mjs.map +0 -1
- package/.output/server/chunks/_/useWorkshopApi-Bqe2FlsB.mjs +0 -127
- package/.output/server/chunks/_/useWorkshopApi-Bqe2FlsB.mjs.map +0 -1
- package/.output/server/chunks/_/useWorkshopWs-DP4MbZsb.mjs +0 -1659
- package/.output/server/chunks/_/useWorkshopWs-DP4MbZsb.mjs.map +0 -1
- package/.output/server/chunks/_/useWorkspaceAuth-CzDigJGl.mjs +0 -60
- package/.output/server/chunks/_/useWorkspaceAuth-CzDigJGl.mjs.map +0 -1
- package/.output/server/chunks/_/useWorkspaceChannels-BLtsS6-m.mjs +0 -92
- package/.output/server/chunks/_/useWorkspaceChannels-BLtsS6-m.mjs.map +0 -1
- package/.output/server/chunks/_/useWorkspacePanels-CTwREmq0.mjs +0 -78
- package/.output/server/chunks/_/useWorkspacePanels-CTwREmq0.mjs.map +0 -1
- package/.output/server/chunks/_/useWorkspaceShell-rQHWNNWJ.mjs +0 -168
- package/.output/server/chunks/_/useWorkspaceShell-rQHWNNWJ.mjs.map +0 -1
- package/.output/server/chunks/_/users-BM1ZzxPp.mjs +0 -569
- package/.output/server/chunks/_/users-BM1ZzxPp.mjs.map +0 -1
- package/.output/server/chunks/_/workshop-CUXCV3RH.mjs +0 -546
- package/.output/server/chunks/_/workshop-CUXCV3RH.mjs.map +0 -1
- package/.output/server/chunks/_/workspaces-CmW0cpOt.mjs.map +0 -1
- /package/.output/public/_nuxt/{6P4ZAzxa.js → 6P4ZAzxa2.js} +0 -0
- /package/.output/public/_nuxt/{9j2J4k4w2.js → 9j2J4k4w.js} +0 -0
- /package/.output/public/_nuxt/{BvRk9kiK2.js → DgrK8UCQ.js} +0 -0
- /package/.output/public/_nuxt/{dVw8IHY6.js → dVw8IHY62.js} +0 -0
- /package/.output/public/_nuxt/{k9b520K-2.js → k9b520K-.js} +0 -0
- /package/.output/server/chunks/{_ → build}/builtin-catalog-edpDcgfL.mjs +0 -0
- /package/.output/server/chunks/{_ → build}/chart-pipeline-BpoWYMK_.mjs +0 -0
- /package/.output/server/chunks/{_ → build}/chart-trend-BWeZh5Lv.mjs +0 -0
- /package/.output/server/chunks/{_ → build}/dcw-driver-badge-Df5wL_ZA.mjs +0 -0
- /package/.output/server/chunks/{_ → build}/narrow-fetch-CcG-BPxc.mjs +0 -0
- /package/.output/server/chunks/{_ → build}/useResponsive-BKDMGTHs.mjs +0 -0
- /package/.output/server/chunks/{_ → build}/useTownBus-D9SoIsAN.mjs +0 -0
- /package/.output/server/chunks/{_ → build}/workspaces-CmW0cpOt.mjs +0 -0
package/README.md
CHANGED
|
@@ -1,1028 +1,254 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
|
|
3
|
-
<img src="https://raw.githubusercontent.com/kingdol666/AgentWorkShop/main/docs/readme-assets/hero.png" alt="AgentWorkShop — agent teams driving a real production line" width="100%" />
|
|
4
|
-
|
|
5
|
-
<br />
|
|
6
|
-
|
|
7
|
-
# AgentWorkShop
|
|
8
|
-
|
|
9
|
-
**Where AI agent teams meet the production line.**
|
|
10
|
-
|
|
11
|
-
[](https://github.com/kingdol666/AgentWorkShop)
|
|
12
|
-
[](https://github.com/kingdol666/AgentWorkShop)
|
|
13
|
-
[](https://github.com/kingdol666/AgentWorkShop/releases)
|
|
14
|
-
[](https://github.com/kingdol666/AgentWorkShop/stargazers)
|
|
15
|
-
[](https://github.com/kingdol666/AgentWorkShop/commits)
|
|
16
|
-
[](https://github.com/kingdol666/AgentWorkShop/issues)
|
|
17
|
-
[](./LICENSE)
|
|
18
|
-
|
|
19
|
-
[](https://nuxt.com)
|
|
20
|
-
[](https://vuejs.org)
|
|
21
|
-
[](https://www.typescriptlang.org)
|
|
22
|
-
[](https://nodejs.org)
|
|
23
|
-
[](https://nodejs.org/api/sqlite.html)
|
|
24
|
-
[](./docs/site/guide/daq-protocols.md)
|
|
25
|
-
[](./docs/plugins.md)
|
|
26
|
-
[](https://kingdol666.github.io/AgentWorkShop)
|
|
27
|
-
[
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
<
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
</
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
**
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
</
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
|
219
|
-
|
|
220
|
-
|
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
##
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
<br />
|
|
256
|
-
|
|
257
|
-
### FIG.05 — Dashboard
|
|
258
|
-
|
|
259
|
-
<img src="https://raw.githubusercontent.com/kingdol666/AgentWorkShop/main/docs/readme-assets/fig-05-dashboard.gif" alt="Runtime dashboard with KPI gauges and trends" width="92%" />
|
|
260
|
-
|
|
261
|
-
<sub><b>One screen for the whole workshop.</b> Channels, agents, tasks, DAQ throughput and alarms — read from the same
|
|
262
|
-
state the API serves, not a separate metrics store.</sub>
|
|
263
|
-
|
|
264
|
-
<br />
|
|
265
|
-
|
|
266
|
-
### FIG.06 — Responsive
|
|
267
|
-
|
|
268
|
-
<img src="https://raw.githubusercontent.com/kingdol666/AgentWorkShop/main/docs/readme-assets/fig-06-responsive.gif" alt="The same interface adapting from desktop to tablet to phone" width="92%" />
|
|
269
|
-
|
|
270
|
-
<sub><b>Desktop → tablet → phone.</b> The instrument rail collapses to an icon rail, then to an off-canvas drawer;
|
|
271
|
-
page headers stack, dense tables become scrollable ledgers with a pinned identity column.</sub>
|
|
272
|
-
|
|
273
|
-
</div>
|
|
274
|
-
|
|
275
|
-
<table>
|
|
276
|
-
<tr>
|
|
277
|
-
<td width="50%"><img src="https://raw.githubusercontent.com/kingdol666/AgentWorkShop/main/docs/readme-assets/shot-workshop.png" alt="Agent workshop" width="100%" /><br/><sub><b>Agent workshop.</b> Channel timeline, lanes, tasks, memory and HITL in one workbench.</sub></td>
|
|
278
|
-
<td width="50%"><img src="https://raw.githubusercontent.com/kingdol666/AgentWorkShop/main/docs/readme-assets/shot-monitor.png" alt="Runtime monitor" width="100%" /><br/><sub><b>Runtime monitor.</b> Every wired channel, member count, dependency cycle and owner.</sub></td>
|
|
279
|
-
</tr>
|
|
280
|
-
<tr>
|
|
281
|
-
<td><img src="https://raw.githubusercontent.com/kingdol666/AgentWorkShop/main/docs/readme-assets/shot-settings.png" alt="Settings" width="100%" /><br/><sub><b>Settings.</b> 128 keys across 19 groups, descriptor-driven — the same registry the CLI reads.</sub></td>
|
|
282
|
-
<td><img src="https://raw.githubusercontent.com/kingdol666/AgentWorkShop/main/docs/readme-assets/shot-plugins.png" alt="Plugins" width="100%" /><br/><sub><b>Plugins.</b> Three scopes, hot reload on edit, per-team switches.</sub></td>
|
|
283
|
-
</tr>
|
|
284
|
-
</table>
|
|
285
|
-
|
|
286
|
-
---
|
|
287
|
-
## Architecture
|
|
288
|
-
|
|
289
|
-
```mermaid
|
|
290
|
-
flowchart TB
|
|
291
|
-
subgraph FE["Frontend — Nuxt 4 / Vue 3"]
|
|
292
|
-
UI["Workshop UI · 3D Twin · Dashboards"]
|
|
293
|
-
WS["AEP client — seq resume"]
|
|
294
|
-
end
|
|
295
|
-
subgraph SRV["Server — Nitro / h3"]
|
|
296
|
-
REST["REST /api/workshop/**"]
|
|
297
|
-
HUB["WS Hub — AEP v1"]
|
|
298
|
-
A2A["A2A JSON-RPC"]
|
|
299
|
-
MCP["MCP Server"]
|
|
300
|
-
subgraph RT["Runtime"]
|
|
301
|
-
MGR["AgentChannelManager"]
|
|
302
|
-
SCH["SchedulerLoop — lead supervision"]
|
|
303
|
-
TE["TaskEngine — 7-state machine"]
|
|
304
|
-
AR["AgentRuntime × N"]
|
|
305
|
-
MEM["AgentMemory — FTS5 + vector"]
|
|
306
|
-
BUS["Event bus (ManagerBus) — per-channel seq + ring"]
|
|
307
|
-
end
|
|
308
|
-
subgraph IND["Industrial"]
|
|
309
|
-
DAQ["DAQ gateway — per-node edge runtimes"]
|
|
310
|
-
DCW["DCW gateway — write control"]
|
|
311
|
-
BR["Bus — inproc / MQTT"]
|
|
312
|
-
TSDB["TSDB — SQLite / Timescale"]
|
|
313
|
-
end
|
|
314
|
-
subgraph HB["Harness adapters — 14 engines"]
|
|
315
|
-
MOCK["mock · claude — in-process"]
|
|
316
|
-
OMP["omp — RPC subprocess"]
|
|
317
|
-
CDX["codex — app-server"]
|
|
318
|
-
DSH["dsh · qwen · hermes — ACP"]
|
|
319
|
-
OC["opencode — serve"]
|
|
320
|
-
FAM["gemini · copilot · cursor · crush · goose · pi — headless CLI"]
|
|
321
|
-
end
|
|
322
|
-
DB[("SQLite — channels · agents · tasks
|
|
323
|
-
messages · memories (FTS5) · events")]
|
|
324
|
-
end
|
|
325
|
-
UI <--> WS
|
|
326
|
-
WS --> BUS
|
|
327
|
-
REST & A2A & MCP --> MGR
|
|
328
|
-
MGR --> SCH & TE & AR
|
|
329
|
-
AR --> MEM
|
|
330
|
-
AR --> MOCK & OMP & CDX & DSH & OC & FAM
|
|
331
|
-
MGR & TE & MEM & BUS --> DB
|
|
332
|
-
DAQ <--> BR --> TSDB
|
|
333
|
-
DCW --> BR
|
|
334
|
-
DAQ & DCW --> BUS
|
|
335
|
-
```
|
|
336
|
-
|
|
337
|
-
**The agent × machine bridge** (the part worth reading the source for):
|
|
338
|
-
|
|
339
|
-
```
|
|
340
|
-
agent ──binds to──▶ node (daq: auto / dcw: manual)
|
|
341
|
-
│ │
|
|
342
|
-
│ my_industrial_nodes ◀── semantic card: meaning · unit · safe range · recipe window
|
|
343
|
-
│ daq_query ◀── TSDB history, stats + physical semantics
|
|
344
|
-
│ dcw_control ──▶ interlock (safe range ∩ recipe window)
|
|
345
|
-
│ ──▶ HITL approval (manual mode, 180 s timeout)
|
|
346
|
-
│ ──▶ PLC write → readback check → ACK + write history
|
|
347
|
-
◀── result text with numbers the agent can cite
|
|
348
|
-
```
|
|
349
|
-
|
|
350
|
-
---
|
|
351
|
-
|
|
352
|
-
## Quick start
|
|
353
|
-
|
|
354
|
-
### Prerequisites
|
|
355
|
-
|
|
356
|
-
```bash
|
|
357
|
-
node -v # ≥ 23.4.0 (needs built-in node:sqlite)
|
|
358
|
-
```
|
|
359
|
-
|
|
360
|
-
> Real-agent harnesses require their CLI on PATH — `omp`, `codex`, `dsh`, `opencode`, `gemini`, `qwen`, `copilot`, `cursor`, `crush`, `goose`, `pi` or `hermes` (any subset; each channel can mix harnesses). `mock` and `claude` (SDK) run in-process and need no PATH CLI. The dashboard "execution engines" panel shows per-engine readiness with a green/grey dot; entries for uninstalled engines link to their official install pages. Optional DAQ infrastructure (MQTT broker + TimescaleDB) auto-starts via Docker when reachable (`docker compose up -d`).
|
|
361
|
-
|
|
362
|
-
### Option A — install from npm (recommended)
|
|
363
|
-
|
|
364
|
-
```bash
|
|
365
|
-
npm install -g agentworkshop # → `aw` / `agentworkshop` on PATH
|
|
366
|
-
aw start # → http://localhost:3001
|
|
367
|
-
```
|
|
368
|
-
|
|
369
|
-
The published tarball ships a **prebuilt production bundle** (`.output/`), so an npm install boots straight away — no build step, no build tools. On first launch everything initializes into the config root **`~/.AgentWorkShop`**: the default `config.yml`, a generated `.env` holding a random session secret, `runtime-settings.json`, a docker-compose seed, `prompts/`, `commands/`, `plugins/` (seeded from the SDK examples, **disabled** by default) and an empty `data/` directory. All runtime data (SQLite, JSON repos, backups, logs) lives there too — config and data stay with the install, not the working directory.
|
|
370
|
-
|
|
371
|
-
Prefer a one-off run without installing globally?
|
|
372
|
-
|
|
373
|
-
```bash
|
|
374
|
-
npx agentworkshop start # no global npm install required
|
|
375
|
-
```
|
|
376
|
-
|
|
377
|
-
> `npx` still creates `~/.AgentWorkShop` — running without a global install is not the same as leaving no trace on disk.
|
|
378
|
-
|
|
379
|
-
### Option B — from source
|
|
380
|
-
|
|
381
|
-
```bash
|
|
382
|
-
git clone https://github.com/kingdol666/AgentWorkShop.git && cd AgentWorkShop
|
|
383
|
-
pnpm install
|
|
384
|
-
pnpm dev # → http://localhost:3000 (port from config.yml)
|
|
385
|
-
```
|
|
386
|
-
|
|
387
|
-
Production from source:
|
|
388
|
-
|
|
389
|
-
```bash
|
|
390
|
-
pnpm build # nuxt build → .output/
|
|
391
|
-
pnpm start # port from config.yml → server.prod.port
|
|
392
|
-
```
|
|
393
|
-
|
|
394
|
-
> In a source checkout the config root is the project's **`.AgentWorkShop/`** folder (runtime overrides, data, project-level commands), while `config.yml` / `.env` stay at the checkout root, version-controlled as the factory defaults.
|
|
395
|
-
|
|
396
|
-
### Updating
|
|
397
|
-
|
|
398
|
-
```bash
|
|
399
|
-
aw update # check + self-update the global install
|
|
400
|
-
aw update --check # only report; nothing is installed
|
|
401
|
-
npm install -g agentworkshop@latest # manual equivalent
|
|
402
|
-
```
|
|
403
|
-
|
|
404
|
-
Releases follow semver. `aw start` verifies the config root on every launch and migrates the legacy pre-`home` `data/` layout into it (newest file wins), so data survives upgrades. SQLite schema migrations run server-side at boot. Current version: **v0.8.7** — see [Releases](https://github.com/kingdol666/AgentWorkShop/releases).
|
|
405
|
-
|
|
406
|
-
### Your first agent × line session (~2 minutes)
|
|
407
|
-
|
|
408
|
-
1. **Sign in** — register in the sidebar (or `POST /api/users/register`).
|
|
409
|
-
2. **Build a line** — `Line Operations` → create a line, add DAQ nodes (e.g. `daq-temp-tc`) and control nodes (e.g. `dcw-temp-sp`), create a product + recipe, hit **Start**. Live values start flowing.
|
|
410
|
-
3. **Create a team** — `Agent Workshop` → pick a lead + workers, **deploy** into a channel.
|
|
411
|
-
4. **Bind nodes** — open the agent's detail panel → bind the DAQ node (*auto*) and the control node (*manual* = needs your approval).
|
|
412
|
-
5. **Submit the goal** — *"Analyze the last 5 minutes of melt temperature; if deviation from 182 °C exceeds 1 °C, correct the setpoint (wait for my approval)."*
|
|
413
|
-
6. **Approve** — the agent reads real history, computes the mean, requests the write → approve in the HITL panel → watch the setpoint change and the goal close with a numeric report.
|
|
414
|
-
|
|
415
|
-
---
|
|
416
|
-
|
|
417
|
-
## Configuration & CLI — config-driven by design
|
|
418
|
-
|
|
419
|
-
One runtime, one source of truth. **`config.yml`** declares defaults; **`runtime-settings.json`** inside the config root carries runtime overrides; environment variables and CLI flags sit on top. Every editable key is described once in `shared/config/schema.json` (type, range, enum, live-vs-restart) and surfaced through the same descriptors in **both the UI and the CLI**.
|
|
420
|
-
|
|
421
|
-
```
|
|
422
|
-
config.yml (defaults) < .AgentWorkShop/runtime-settings.json (runtime) < env vars / CLI flags
|
|
423
|
-
```
|
|
424
|
-
|
|
425
|
-
The config root is **`~/.AgentWorkShop`** for a global install (`npm i -g`) — wherever you run `aw` from — and **`<repo>/.AgentWorkShop`** in a source checkout (with `config.yml` / `.env` staying at the checkout root as version-controlled factory defaults). `AW_HOME` redirects it; `AW_MODE=home` forces the global shape.
|
|
426
|
-
|
|
427
|
-
### Live settings, persisted, hot-reloaded
|
|
428
|
-
|
|
429
|
-
- The **Settings → Runtime config** tab renders every editable key from the descriptors — change server ports, theme, API timeouts, locale or the approval gate, hit save.
|
|
430
|
-
- `live` keys apply instantly (theme, title, timeouts, approval gate, DAQ sampling cadences, TSDB query buckets…) over a server-sent event stream — no reload, no restart.
|
|
431
|
-
- `restart` keys (ports, hosts) persist to disk and take effect on the next launch of the matching mode (`aw dev` / `aw start`).
|
|
432
|
-
- One channel for every writer: the UI, the CLI and the server's file watcher all converge on the same settings file, so a change made anywhere shows up everywhere.
|
|
433
|
-
|
|
434
|
-
Example — retune the acquisition and query cadences live:
|
|
435
|
-
|
|
436
|
-
```bash
|
|
437
|
-
aw config set daq.sampling.defaultIntervalMs 2000 # new nodes sample every 2 s
|
|
438
|
-
aw config set daq.sampling.minIntervalMs 500 # per-node floor (create/patch clamp)
|
|
439
|
-
aw config set daq.query.defaultBucketMs 3000 # TSDB reads default to a 3 s bucket
|
|
440
|
-
aw config set daq.query.minBucketMs 500 # query floor (samples/line query/agent tool)
|
|
441
|
-
```
|
|
442
|
-
|
|
443
|
-
Agent tool descriptions are re-rendered with the current values on every injection, so an LLM always sees the floor and default that will actually apply to its `daq_query` calls.
|
|
444
|
-
|
|
445
|
-
### The `aw` CLI
|
|
446
|
-
|
|
447
|
-
| Command | What it does |
|
|
448
|
-
|---|---|
|
|
449
|
-
| `aw start · aw dev · aw build` | Production server / dev server / build — ports from the effective config; first `start` builds once |
|
|
450
|
-
| `aw stop` | Stop a running `aw` service instance via the single-instance lock |
|
|
451
|
-
| `aw config list · get · set · unset · reset` | Read & write runtime settings (validated against the schema, atomic writes) |
|
|
452
|
-
| `aw plugin list · create · enable · disable` | Manage plugins across all three scopes: inspect, scaffold (project scope; `--global` for user scope), enable/disable (state file, ~1 s hot reload on the running server) |
|
|
453
|
-
| `aw mcp` | Industrial MCP stdio server (38 tools over the platform REST: lines, recipes, DCW writes, parameter mapping, DAQ, channels, teams, model promotion, plugins) — auto-discovers the running instance; `--doctor` diagnoses discovery/health/auth, `--print-config` emits a ready-to-paste MCP client config |
|
|
454
|
-
| `aw home` | Inspect / initialize the config root `.AgentWorkShop` |
|
|
455
|
-
| `aw init <dir>` | Scaffold a runnable project (full config system + CLI included) |
|
|
456
|
-
| `aw register <path\|url\|npm:pkg>` | Register a new command — project-local or `--global` |
|
|
457
|
-
| `aw update` | Check npm for the latest release and self-update the global install |
|
|
458
|
-
| `aw doctor` | Environment + project health check (node, config, ports, keys) |
|
|
459
|
-
| `aw status` | Live overview: mode, config sources, running server, command table |
|
|
460
|
-
| `aw tui` | Terminal workbench: channel/agent management, task submission, live monitor pane, HITL answering (see [`docs/tui.md`](./docs/tui.md) · [`tui/README.md`](./tui/README.md)) |
|
|
461
|
-
| `aw version` | Print the CLI/package version (alias `v`) |
|
|
462
|
-
|
|
463
|
-
Global flags: `--help/-h` · `--version/-v` · `--json` (machine-readable) · `--root <dir>` · `--debug`.
|
|
464
|
-
|
|
465
|
-
Exit codes: **0** success · **1** runtime error · **2** usage error. With `--json`, failures come back as an envelope carrying `{ ok: false, error: 'unknown-command' \| 'no-project' \| 'usage' \| 'internal' \| … }`, so automation can branch without parsing stderr.
|
|
466
|
-
|
|
467
|
-
### Command registration
|
|
468
|
-
|
|
469
|
-
Commands are plain modules exporting `{ meta, run }`. Drop one into a scanned directory and it's live on the next invocation — no registry bookkeeping, convention over configuration:
|
|
470
|
-
|
|
471
|
-
| Scope (highest wins) | Directory |
|
|
472
|
-
|---|---|
|
|
473
|
-
| project | `<root>/.AgentWorkShop/commands/` |
|
|
474
|
-
| user | `~/.AgentWorkShop/commands/` |
|
|
475
|
-
| built-in | packaged with the CLI (`cli/commands/`) |
|
|
476
|
-
|
|
477
|
-
`aw register <file|url|npm:pkg>` copies a command into the right scope (`--global` for user scope); `aw help` lists everything that's registered.
|
|
478
|
-
|
|
479
|
-
```js
|
|
480
|
-
// ~/.AgentWorkShop/commands/hello.mjs
|
|
481
|
-
export const meta = { name: 'hello', group: 'Custom', summary: 'Say hi', usage: 'aw hello [--name <n>]' }
|
|
482
|
-
export async function run(argv, ctx) {
|
|
483
|
-
console.log(`Hi ${argv.flags.name ?? 'AW'} — mode: ${ctx.mode}`)
|
|
484
|
-
}
|
|
485
|
-
```
|
|
486
|
-
|
|
487
|
-
---
|
|
488
|
-
|
|
489
|
-
## The industrial stack in detail
|
|
490
|
-
|
|
491
|
-
### Data acquisition (DAQ)
|
|
492
|
-
|
|
493
|
-
- **Six protocol drivers**: Modbus TCP, Modbus RTU-over-TCP (serial gateway), OPC UA, MQTT, HTTP/REST, plus the **serial-bridge built-in plugin** (direct RS-232/485: Modbus RTU framing + ASCII line protocol, write side with same-address readback verification, serial enumeration/probe API and a frontend panel) — connection pools, classified error messages, per-driver connection tests; the driver registry accepts plugin-registered protocols of any kind (with self-describing metadata, the frontend forms render with zero changes).
|
|
494
|
-
- **Per-node edge runtimes**: independent sampling cadence, publish cadence, in-flight mutex per node — one slow driver never blocks its neighbors. Sampling and query defaults/floors are driven by the live `daq.sampling.*` / `daq.query.*` settings.
|
|
495
|
-
- **Pipeline**: driver → queue (in-process or MQTT, offline buffer on disconnect) → consumer with out-of-order defense → three-way fan-out: WS live push (gated), TSDB batch write, device-twin writeback.
|
|
496
|
-
- **Robustness**: TSDB single-in-flight writes with bounded retries, buffer backpressure with drop counters, real loss metrics exposed on `daq.controller` frames.
|
|
497
|
-
- **Alarms**: recipe-scoped monitoring windows with **2% hysteresis + 3-tick debounce**; alarm/offline transitions are instant (safety first).
|
|
498
|
-
- **Querying is batch-scoped by default**: `daq_query` resolves the node's **active run** and filters by that batch's `run_id` + `recipe_id`, so an agent reading evidence always sees *the recipe currently running* — never a mix of the previous batch. The effective scope (`run=<id> 配方「name」(recipe_id)`) is printed in the result header and restated per node at the end, and the same ids can be fed straight back into `daq_query` or `aml_dataset_build`; pass `scope: 'all'` (or an explicit `recipe_id` / `run_id` / `product_id`) for cross-recipe comparison and history review. Lines that are not running stay unfiltered, so historical data remains queryable.
|
|
499
|
-
|
|
500
|
-
### Write control (DCW)
|
|
501
|
-
|
|
502
|
-
- Engineering-unit writes: `linear` calibration (scale/offset) PLC↔physical, **readback verification** with deadband tolerance, ACK states and write history.
|
|
503
|
-
- **Interlock**: with a line running, the active recipe's parameter window *replaces* the node's global safe range for that node.
|
|
504
|
-
- **HITL**: `manual`-mode bindings suspend the write for user approval (deduped per agent+node; re-validation at approval time — permission is re-checked when you click approve).
|
|
505
|
-
|
|
506
|
-
### Channel execution modes (observe / manual / auto)
|
|
507
|
-
|
|
508
|
-
The channel-level execution mode is the tier selector for line work; it composes with the line `controlMode` master switch and the per-binding `mode` under **strictest-wins** semantics (any layer manual ⇒ approval required; observe strips the write surface outright):
|
|
509
|
-
|
|
510
|
-
- **Observe**: read-only analysis tier — write-family / governed-write / proposal / line start-stop tools are removed from the injection surface, and direct REST/MCP calls by name are rejected at the dispatch choke point (physically zero-write). Agents focus on data collection, ledger queries and analysis, and are told about the tier in their prompt. The observe surface includes the MES read family (`mes_catalog/mes_fetch/…`) for read-only MES analysis.
|
|
511
|
-
- **Manual**: every dispatch / recipe operation / rollback suspends for human approval; the agent must state its rationale (reason/hypothesis) and the approval card shows the "why" to a human; the approver's comment flows back to the agent verbatim.
|
|
512
|
-
- **Auto (default)**: the neutral tier — the channel adds no extra constraint; approval is decided by the line master switch and binding modes. Automatic execution remains bounded by the four-layer limits (range ∩ parameter ∩ product ∩ recipe) ∩ step caps ∩ run gate ∩ 60s write interval ∩ out-of-window auto-rollback, and governed writes must carry a `hypothesis` — the audit ledger `dcw.write.*` detail records `executionMode` and `hypothesis` so you can audit afterwards "which mode was this write in, and why was it made".
|
|
513
|
-
|
|
514
|
-
Switching: `PATCH /api/workshop/channels/:id/execution-mode` (owner-only). Tightening (auto→manual, any→observe) applies immediately; loosening (manual→auto, observe→anything) requires an explicit `confirm: true` or returns 400 `MODE_CONFIRM_REQUIRED`. Every switch is audited (`channel.execution_mode`) and recycles member runtimes (prompt hot-reload). UI entry: Channel instance settings → Execution mode (three-way choice + line-suppression hint + two-step confirmation). Existing channels default to auto (no extra channel-level tightening) — upgrades change no behavior.
|
|
515
|
-
|
|
516
|
-
### Recipe & batch
|
|
517
|
-
|
|
518
|
-
`Line → Product → Recipe → Run`. Starting a run applies recipe params node-by-node (each write verified), gates acquisition per line, and tags every sample with `line/product/recipe/run` — per-product data isolation with five-dimension queries (line × product × recipe × time × node).
|
|
519
|
-
|
|
520
|
-
### AML — auto-modeling lab
|
|
521
|
-
|
|
522
|
-
The modeling half of the loop: `/aml` builds **datasets** out of tagged telemetry, submits **training jobs** to a `uv`-managed Python runtime, ranks runs on a **leaderboard**, and promotes a model only when it clears the configured **gates** (NRMSE, rollout NRMSE, validation/test gap, minimum rows and runs). Promoted models are referenced by id, so an MPC or shadow-twin controller can consume a versioned artifact instead of a vague "latest".
|
|
523
|
-
|
|
524
|
-
- Agents do the same work through 14 tools (`aml_dataset_build`, `aml_job_submit`, `aml_job_status`, `aml_leaderboard`, `aml_model_promote`, `aml_model_find`, `aml_training_plan_*`, …) — submit a goal and let the team train and report.
|
|
525
|
-
- The Python runtime bootstraps itself with `uv` into an `./aml` asset root inside the config root; dataset/artifact/metadata paths, disk quota, job timeout, concurrency and retention are all **settings** (16 in the `aml` group), not constants.
|
|
526
|
-
- Governance defaults are conservative: cross-recipe datasets are refused unless explicitly allowed, and every job is attributed.
|
|
527
|
-
- **Hybrid twin × MPC core**: AML also owns the *hybrid twin* plane — `SceneContract` / `PhysicsModelManifest` / `TwinSnapshot` / `ObjectiveProfile` / `VirtualTrial` / `RecommendationCertificate` on top of a grey-box physics core with a bounded PyTorch residual, UQ/OOD screening and all-trajectory hard-constraint gates. Channels opt in through the `hybrid_twin` profile, which injects twelve profile agent tools (`twin_provider_catalog`, `twin_scene_discover/compile/freeze`, `twin_physics_spec_draft/validate/compile`, `twin_scene_read`, `twin_snapshot_create`, `twin_trial_run`, `mpc_optimize`, `twin_gate_evaluate`) plus the general `twin_calibration_request`; a trial is *virtual* by design (`candidateExecuted=false`) and a recommendation is only certified when gates and benefit pass. Server-side strategies are `safe_small_step` (insufficient data) and `precise_search` (model cleared gates). Plan + acceptance record: [`docs/aml-hybrid-twin-mpc-integration-plan.md`](./docs/aml-hybrid-twin-mpc-integration-plan.md), [`docs/aml-hybrid-twin-implementation-acceptance.md`](./docs/aml-hybrid-twin-implementation-acceptance.md).
|
|
528
|
-
- **Any-scene modeling loop**: the loop is not tied to a bundled scene. Bind nodes → `twin_scene_discover` infers control/state/disturbance/target/guard semantics with evidence → `twin_scene_compile` drafts a `SceneContract` → you confirm → `twin_scene_freeze` freezes it (immutable versions) → `twin_physics_spec_draft` proposes a skeleton PhysicsSpec (one first-order relaxation equation per state, τ/gain as calibratable prior-boxed parameters) that you refine → validate/compile (whitelisted AST, no arbitrary code) → `aml_job_submit { job_kind: 'hybrid_residual' }` runs without any code: the built-in reference trainer calibrates physics parameters (stage A), fits a 3-member bounded residual ensemble (stage B) and reports conformal q90 coverage (stage D) — the calibrated spec is written back and shared by evaluation, prediction and trials.
|
|
529
|
-
- **Model-backed twin & continuous calibration**: `twin_trial_run` / `mpc_optimize` accept a `model_id` — the rollout is then driven by the trained hybrid model (calibrated physics + residual-ensemble ONNX, `ModelBackedHybridProvider`) with UQ coverage and member disagreement coming from training artifacts, and a dataset whose line/product/recipe doesn't match the scene is rejected (`TWIN_MODEL_SCENE_MISMATCH`). Calibration requests are consumed by a 60 s worker that re-submits `hybrid_residual` retraining *candidates* automatically; promotion still goes through HITL + Twin Gate (`AML_TWIN_WORKER_DISABLED=1` turns the worker off).
|
|
530
|
-
- **Two-mode optimization loop**: `aw` ships two channel templates — `chtpl-aml-training-default` (modeling face: 22 tools, no plant writes, no MPC) and `chtpl-aml-optimization-default` (acting face: snapshot/trial/gate/MPC/Bayesian search plus `optimization_explore`, the governed micro-write that pairs every setpoint with its response read-back in an `optimization_explorations` ledger). The faces are mutually exclusive per channel; optimization channels instantiate either in **exploration** mode (governed small steps, no model required) or **aml** mode (`boundModelId` required — a gate-cleared model must be bound before the acting face unlocks).
|
|
531
|
-
- **Twin provider plugin SDK (hot-loaded)**: an industrial scene's physics core / scene packs / objectives / solvers register through `ctx.twin` into the **Twin Provider Registry** (`registerPhysicsProvider` / `registerScenePack` / `registerObjectiveProfile` / `registerTrainingAdapter` / `registerSolverAdapter`, plus `listProviders` / `getProviderHealth` / `resolveProvider` / `validateProvider` / `retireProvider` / `isRegistryAvailable`). Twin tools resolve providers via `SceneContract.physicsProfileId` (falling back to the bundled `twin-injection-default`), so **swapping scenes changes neither tools nor channels**; a hot reload stages a new **generation** and drains the old one while trials and MPC hold leases, so in-flight work is never invalidated and `retireProvider` only unloads at zero references. The bundled injection provider ships through that same external contract (`server/plugins-builtin/twin-injection-default/`), and plugins live in the usual scopes with no restart for disable/reload. Field tables and a runnable example: [`docs/plugins.md`](./docs/plugins.md) → "Hybrid-twin provider plugins"; SDK surface: [`docs/sdk.md`](./docs/sdk.md) §4.10.
|
|
532
|
-
|
|
533
|
-
### Ontology & the AI-first model loop (v0.8.0)
|
|
534
|
-
|
|
535
|
-
The third modeling layer — and the one that makes the loop *self-describing*.
|
|
536
|
-
|
|
537
|
-
- **Authoring surface.** `POST /api/workshop/ontology` opens a draft (optimistic-lock `rev`); the full document (entities, relations, rules, semantic bindings) is validated twice — schema/dimension checks plus **live binding checks against real DAQ/DCW/recipe objects**. Rules then walk a five-state lifecycle (`proposed → reviewed → validated → approved_for_control → deprecated`); control approval needs an approval-ledger entry (second person; single-admin deployments get an audited solo-operator exemption) and `publish` refuses hard rules that never reached it. Versions are immutable — publishing creates a new version, `GET /versions/{id}/compare` returns a four-part diff, and `/ontology` renders graph, compile artifacts, Rule Trace, bindings and version ledger across six tabs. Ten agent tools cover the same surface (`ontology_scene_inspect / node_neighbors / draft_create / draft_validate / draft_update / rule_explain / compile_preview / publish_propose / version_compare / draft_autofix`); four read-only ones are mirrored on the external MCP server. The `/ontology` graph tab renders an interactive node-edge view (self-drawn SVG, MV/CV/structural lanes) with a node drawer that loads direct and 2-hop neighbourhoods from the draft-scoped subgraph API.
|
|
538
|
-
- **Compilation with invariants.** Four artifacts per version — process-model delta (feature candidates, τ = D/v delay priors, monotonicity), ProblemIR delta, scene-contract patch, control-guard set — under **tighten-only** (rules narrow, never widen), PLC-layer separation (interlocks compile to `PLC_LAYER_REQUIRED` traces, not software guards), compile-time rejection of unsupported forms (nonlinear QP, linear coupling), and **hash-domain separation**: `ontologyRefs` are part of the profile content hash but never of the solver's `ProblemIR` hash, so ontology edits surface as `409 ONTOLOGY_PACK_DRIFTED` instead of a bogus IR change.
|
|
539
|
-
- **Runtime effect.** Exactly four things execute: dispatch-time **node-intent guards** (`evaluateOntologyGuardsForNodes` → `409 ONTOLOGY_GUARD_BLOCKED`, fail-closed on unknown state), **training-prior derivation** for dataset/planning, the **scene/guard patch** consumed by the twin, and the **published-version lineage check** pinned in the profile's `ontologyRefs` (re-checked at dispatch). Everything else is reviewable metadata.
|
|
540
|
-
- **The adoption loop — model evolution, not parameter tuning.** `optimizer_profile_propose` closes training → solving: the agent copies the latest *published* profile, swaps in a newly trained model artifact, creates draft v(n+1) and opens a HITL card (`optimizer-profile:<id>@<version>`). Both approval entries route to one service — approve ⇒ publish the draft (frozen hash) + **rebind every binding on the base version** (revision+1; in-flight solves fail closed with `BINDING_STALE`) + audit `optimizer.profile.adopt`; reject/timeout ⇒ zero writes. Compatibility (artifact kind × solver family, D21) is enforced at proposal time, and an agent can only propose inside its own binding face. Verified live in two consecutive evolution rounds (v1 → v2 → v3), each followed by an optimal `optimizer_solve` on the new artifact.
|
|
541
|
-
- **Verified.** 531 unit tests · 44 service-level ontology assertions · **72/72** ontology live e2e · **46/46** model-loop live e2e (twin creation chain + two adoption rounds + zero device writes) · 14 MCP assertions. Reports: [`docs/audit/2026-10-24-ontology-acceptance.md`](./docs/audit/2026-10-24-ontology-acceptance.md), [`docs/audit/2026-10-24-ontology-live-report.md`](./docs/audit/2026-10-24-ontology-live-report.md), [`docs/audit/2026-10-24-model-loop-acceptance.md`](./docs/audit/2026-10-24-model-loop-acceptance.md). Specs: [`docs/plans/2026-10-24-ontology-service-plan.md`](./docs/plans/2026-10-24-ontology-service-plan.md), [`docs/plans/2026-10-24-closed-loop-acceptance.md`](./docs/plans/2026-10-24-closed-loop-acceptance.md).
|
|
542
|
-
- **Boundaries (explicit).** ProblemIR-delta bounds are compiled but not yet consumed as solve constraints; the outcome write-back loop (execution result → recommendation ledger) and per-turn ontology prompt injection remain next-round items; RDF/OWL/SHACL export is not shipped.
|
|
543
|
-
|
|
544
|
-
---
|
|
545
|
-
|
|
546
|
-
## Usage
|
|
547
|
-
|
|
548
|
-
### Authentication
|
|
549
|
-
|
|
550
|
-
Email + password login issues a **bearer token** (multiple tokens per user, individually revocable).
|
|
551
|
-
|
|
552
|
-
```bash
|
|
553
|
-
# register
|
|
554
|
-
curl -X POST http://localhost:3000/api/users/register \
|
|
555
|
-
-H 'content-type: application/json' \
|
|
556
|
-
-d '{"email":"you@example.com","password":"secret","name":"you"}'
|
|
557
|
-
|
|
558
|
-
# every workshop call
|
|
559
|
-
curl http://localhost:3000/api/workshop/channels \
|
|
560
|
-
-H 'authorization: Bearer <token>'
|
|
561
|
-
```
|
|
562
|
-
|
|
563
|
-
### Line-level permissions
|
|
564
|
-
|
|
565
|
-
Industrial data is gated **per production line** with three states, managed by an admin
|
|
566
|
-
in the built-in **Permissions** page (`/permissions`, admin-only in the sidebar):
|
|
567
|
-
|
|
568
|
-
| State | DAQ nodes | DCW (write) nodes | Visibility |
|
|
569
|
-
| --- | --- | --- | --- |
|
|
570
|
-
| **none** (default for regular users) | hidden | hidden | line data withheld server-side — invisible in Line Ops, DAQ center and the digital twin |
|
|
571
|
-
| **read-only** | read | ✕ | line visible, values stream, no writes / dispatch / device binding |
|
|
572
|
-
| **operate** | read | read + write | full access incl. setpoint writes, dispatch, binding |
|
|
573
|
-
|
|
574
|
-
- `admin` / `editor` roles are unrestricted (operations roles).
|
|
575
|
-
- Regular users **default to none** — they see no line data until granted.
|
|
576
|
-
- Enforcement lives in the data plane: list endpoints filter by grant, write/dispatch
|
|
577
|
-
endpoints return a human-readable 403, and Agent↔node bindings validate the line grant
|
|
578
|
-
(DAQ needs read-only+, DCW needs operate).
|
|
579
|
-
- Agent write authorization is three-track: a `kind='dcw'` node binding is a point-level
|
|
580
|
-
write grant that also **narrows dispatch scope** (with DCW bindings, dispatch may only
|
|
581
|
-
cover those points and survives recipe switches; with none, a recipe-level grant allows
|
|
582
|
-
all recipe params by default for backward compatibility); a `kind='recipe'` binding is
|
|
583
|
-
a single-recipe operation right (version writes/rollback plus dispatch); a
|
|
584
|
-
`kind='line-recipe'` grant is line-level recipe management — view/create/update/rollback
|
|
585
|
-
**every recipe on the line**, including ones created later. Direct-write tools stay
|
|
586
|
-
rejected, and every write still passes the four-layer limits / run gate / HITL /
|
|
587
|
-
per-parameter ACK.
|
|
588
|
-
- Plugins get the same surface via `ctx.permissions` (`lineMode` / `visibleLineIds` /
|
|
589
|
-
`listGrants` / `setGrants`) plus a `permissions:changed` lifecycle hook; the SDK REST
|
|
590
|
-
client exposes `client.permissions.overview()` / `client.permissions.set(...)`.
|
|
591
|
-
|
|
592
|
-
### Execution modes
|
|
593
|
-
|
|
594
|
-
Prefix the task description (or pick in the composer UI):
|
|
595
|
-
|
|
596
|
-
| Mode | Semantics | Config |
|
|
597
|
-
|---|---|---|
|
|
598
|
-
| `goal` | lead decomposes → workers deliver → **lead judges satisfaction**; unmet → more subtasks; met → parent completes. | `goalCriteria` |
|
|
599
|
-
| `loop` | replay the same task on a fixed interval. | `intervalMs` (default 60000), `maxIterations` (default ∞) |
|
|
600
|
-
| `pipeline` | ordered stages; stage N+1 consumes stage N's output. | `stages: [{name, description, assigneeId?}]` |
|
|
601
|
-
|
|
602
|
-
### Scheduled tasks
|
|
603
|
-
|
|
604
|
-
Any task can also be attached to a **schedule** so a channel keeps working when nobody is watching:
|
|
605
|
-
|
|
606
|
-
| Aspect | Behavior |
|
|
607
|
-
|---|---|
|
|
608
|
-
| Modes | `interval` — fixed cadence (`intervalMs`, 60 s floor) · `daily` — once per day at `HH:MM` local time |
|
|
609
|
-
| Management | `/workshop/schedules` page, or `POST/PATCH /api/workshop/schedules` |
|
|
610
|
-
| Guard rails | busy-guard (a fire is deferred while the channel still has active tasks), per-run history with status, and a **consecutive-failure circuit breaker** (`maxConsecutiveFailures`) that auto-disables a misbehaving schedule |
|
|
611
|
-
| Typical use | nightly line patrol (`daq_query` + report to memory), periodic drift check with auto-judge, daily KPI digest |
|
|
612
|
-
|
|
613
|
-
```bash
|
|
614
|
-
# create a schedule: patrol the line every 30 minutes
|
|
615
|
-
curl -X POST http://localhost:3000/api/workshop/schedules \
|
|
616
|
-
-H 'authorization: Bearer <token>' -H 'content-type: application/json' \
|
|
617
|
-
-d '{"channelId":"<id>","name":"line-patrol","title":"Line patrol","description":"Read all DAQ nodes on line 1 and post a drift summary to channel memory.","mode":"interval","intervalMs":1800000}'
|
|
618
|
-
```
|
|
619
|
-
|
|
620
|
-
### The four entry points
|
|
621
|
-
|
|
622
|
-
| Entry | Endpoint | Audience |
|
|
623
|
-
|---|---|---|
|
|
624
|
-
| **WS** | `/api/workshop/ws?channelId=…` | Dashboards / UI — AEP v1 envelopes, per-channel monotonic `seq`, 5000-event ring, `lastSeq` resume, snapshot fallback. |
|
|
625
|
-
| **MCP** | in-process server, 25 tools | Agents (omp host tools) — management + job-face tools, channel-scoped. |
|
|
626
|
-
| **A2A** | `POST /api/workshop/a2a/:agentId/rpc` | External agents — JSON-RPC 2.0, `AgentCard` at `/card`, `tasks/sendSubscribe` SSE. |
|
|
627
|
-
| **REST** | `/api/workshop/**` | Humans / scripts — full management face. |
|
|
628
|
-
|
|
629
|
-
### Task state machine
|
|
630
|
-
|
|
631
|
-
```
|
|
632
|
-
SUBMITTED ─▶ ASSIGNED ─▶ WORKING ─▶ WAITING ─▶ COMPLETED
|
|
633
|
-
│ │ │ │
|
|
634
|
-
└────────────┴───────────┴──▶ CANCELED / FAILED ─▶ (retry ≤ 3 or cancel)
|
|
635
|
-
```
|
|
636
|
-
|
|
637
|
-
---
|
|
638
|
-
|
|
639
|
-
## Verified end-to-end
|
|
640
|
-
|
|
641
|
-
Every claim above is backed by a suite you can re-run. The acceptance suites drive a
|
|
642
|
-
**production instance over real simulated plant protocols** (Modbus TCP/RTU, OPC UA, MQTT,
|
|
643
|
-
HTTP + an MQTT/Timescale pipeline) with real engine CLIs, and assert on the database,
|
|
644
|
-
the event stream and the HTTP API — not on mocks. Two 2026-09-24 waves are archived:
|
|
645
|
-
the baseline matrix (~1100+ real assertions, v0.7.45 production build, isolated `AW_HOME`,
|
|
646
|
-
real browser) in [`docs/audit/e2e-2026-09-24-full-coverage.md`](./docs/audit/e2e-2026-09-24-full-coverage.md),
|
|
647
|
-
and the follow-up feature wave (real **PLC node simulator** + injection-molding AgentTeam
|
|
648
|
-
closed loop, FIFO multi-goal, scheduled tasks, collaboration; the report records each result,
|
|
649
|
-
including environment- or credential-limited failures and SKIPs)
|
|
650
|
-
in [`docs/audit/e2e-2026-09-24-all-features.md`](./docs/audit/e2e-2026-09-24-all-features.md).
|
|
651
|
-
|
|
652
|
-
| Suite | Latest result | What it covers | Reproduce |
|
|
653
|
-
|---|---|---|---|
|
|
654
|
-
| `e2e-multiexpert-remediation-real.mjs` | **17 / 17** (2026-10-28, `.output` production build + real `omp` + local **Qwen3.5-9B**, **worker identity**) | create AgentChannel (lead + worker) → worker binds DAQ/DCW → **runtime prompt injection** (execution-mode card + node semantic cards: range / step cap / manual-approval) → tool surface differs by binding → `daq_query` on live samples → `recipe_trial` raises HITL → human approval → **ACK verified by device** → node value changed / version unchanged / ledger anchor appended / samples queryable | `node scripts/e2e-multiexpert-remediation-real.mjs` (needs LM Studio at `127.0.0.1:1234`) |
|
|
655
|
-
| `real-injection-closed-loop.mjs` | **2 goals COMPLETED / 0 failed** (2026-09-24, real PLC simulator + real `omp` team) | injection line provisioned from the simulator (11 DCW + 14 DAQ nodes) → real AgentTeam lead/analyst/optimizer → governed writes with a **65.8 s gap ≥ 60 s policy** → DAQ re-measurement → `qualityOk`, verdict `keep` | `AW_BASE=<base> SIM_BASE=http://127.0.0.1:4010 AW_TOKEN=<token> node scripts/real-injection-closed-loop.mjs` |
|
|
656
|
-
| `_run-real-injection-fifo-goals.mjs` | exit 0 (2026-09-24) | **FIFO root queue with multi-task serialization**: goal 2 dispatched only after goal 1 closed, role gate flip, two governed writes 65.04 s apart, two judged records, 4-anchor ledger | `AW_BASE=<base> SIM_BASE=… AW_TOKEN=<token> node scripts/_run-real-injection-fifo-goals.mjs` |
|
|
657
|
-
| `e2e-plc-plugin-closedloop.mjs` | core stages A–D all green (2026-09-24) | PLC simulator supply over Modbus 16040 → DAQ cross-check (AW sample 197 vs simulator register 197.37) → HITL closed-loop write to 3 zones (registers 40021/40023/40025 = 210, verified write-through) → `dcw_judge` keep; plugin stages E–H need the external diagnosis service and are reported as SKIP | `AW_BASE=<base> KB_BASE=http://127.0.0.1:8771 AW_E2E_USERS_DB=<home>/data/users.sqlite node scripts/e2e-plc-plugin-closedloop.mjs` |
|
|
658
|
-
| `_dbg-schedule-e2e.mjs` | **35 / 0** (2026-09-24) | scheduled tasks: plan CRUD + validation, `next_run_at`, `scheduledCount`, busy guard **409 CHANNEL_BUSY**, in-flight duplicate **409 SCHEDULE_RUNNING**, cancel reconciliation (run FAILED + failure counters), **timer auto-fire** (`trigger_kind=timer`), disable/enable state machine, 404 after delete | `SCHED_E2E_BASE=<base> node scripts/_dbg-schedule-e2e.mjs` |
|
|
659
|
-
| `e2e-crash-cycle.mjs` | **5 / 5 phases** (2026-09-24) | watch → hard kill → persistence check → restart → redelivery → auto-resume → consumption-gap replay, each phase in its own process | `node scripts/e2e-crash-cycle.mjs --port 3300 --home .e2e-home-full` |
|
|
660
|
-
| `e2e-full-closedloop.mjs` | **98 / 0** (2026-09-24, v0.7.45 production build) | 11 stages: registration → line/product/recipe modeling → DAQ sampling → frame pipeline → DCW write + readback → rollback ledger → agent-node authorization → bridge privilege boundaries → plugins → data-root isolation | `node scripts/e2e-full-closedloop.mjs <base>` |
|
|
661
|
-
| Protocol matrix, real protocols | **46 / 0** (2026-09-24) | MQTT · Modbus TCP · Modbus RTU · OPC UA · HTTP — acquisition, governed write + readback, recipe-window interlock and a real agent closed loop per protocol | `node scripts/_dbg-protocol-matrix.mjs` |
|
|
662
|
-
| Production API live | 60 / 0 (2026-09-24) | persistence across restart, template CRUD, task assign/complete/cancel/loop/pipeline, A2A + mailbox, WS broadcast, MCP endpoint, cascade delete | `AW_E2E_TOKEN=<token> node scripts/api-live-e2e.mjs` |
|
|
663
|
-
| AgentTeam chat + native HITL | 112 passed / 0 failed / 1 blocked (2026-09-24, real `omp`) | group-chat request → trackable job; `omp` native ask → HITL approval → engine resumes with the receipt | `node scripts/e2e-agentteam-chat.mjs --phase=all` |
|
|
664
|
-
| Terminal mirror + prompt composition | **26 / 0** and **16 / 0** (2026-09-24, real `omp`) | terminal mirror frames, `input`/`abort`/`ui_response` injection, native `ask` round-trip; five-section prompt assembly (scenario → profile → memory → manual → assignment) observed on the wire | `node scripts/test-terminal-e2e.mjs` · `node scripts/test-prompt-system.mjs` |
|
|
665
|
-
| Real-engine collaboration | task-flow real **PASS**, `e2e-omp-workspace` **13 / 13**, group-chat real **PASS**, multi-user HIL **PASS** (2026-09-24) | real `omp` lead + workers: decomposition, dispatch, progress, artifacts, workspace-scoped file reads, unload; multi-user HITL visibility; multi-harness team 14/18 (omp + dsh green) | `npx tsx scripts/e2e-agentteam-task-flow-real.ts` · `npx tsx scripts/e2e-omp-workspace.ts` |
|
|
666
|
-
| Front-end acceptance | responsive gate **16 / 16** routes, nav drawer **10 / 10** (2026-09-24, real Chromium) | the 16 gated routes (of 22 page components) incl. the 3D town render at the gate thresholds; drawer interaction, scroll lock, route change, zero page errors | `node scripts/ui/verify-responsive.mjs --routes all` · `node scripts/ui/verify-nav.mjs` |
|
|
667
|
-
| `_aw0746-stage12.mjs` | **10 / 0** (2026-09-25, globally installed **v0.7.49 packaged build**) | health gate (version=0.7.49) → admin login/role surface → channel creation with a real `omp` lead → group chat opened → **real omp reply** → omp child process visible in monitoring | `AW_BASE=<base> node scripts/_aw0746-stage12.mjs` |
|
|
668
|
-
| `_aw0746-stage34.mjs` | **13 / 0** (2026-09-25, v0.7.49 packaged build + PLC simulator) | line provisioned from the simulator (11 DCW + 14 DAQ) → product/recipe triple → **every sample tagged with recipe_id/run_id** while running → `daq_query` **defaults to the active batch** (`scope=all` opts out, measured 1 vs 4) → Hybrid Twin template instantiated (lead + 3 workers; that run injected 6 twin tools / 57 total — the profile now injects 12) | `AW_BASE=<base> node scripts/_aw0746-stage34.mjs` |
|
|
669
|
-
| `_aw0746-stage6b-train-sweep.mjs` | gates **all green** (2026-09-25, v0.7.46 packaged build, real torch training) | 1 s grid dataset (**1724 rows / 10 runs**) → inline-code job trained for real → G1 one-step **0.0992** (≤0.10) / G2 rollout 0.1092 (≤0.25) / G3 generalisation 14.6% (≤20%) / G4 rows+runs → model registered and **promoted to production** | `AW_BASE=<base> AW_DATASET_ID=<ds> node scripts/_aw0746-stage6b-train-sweep.mjs` |
|
|
670
|
-
| `_aw0746-stage7-twin.mjs` | **17 / 0** (2026-09-25, v0.7.49 packaged build, real DAQ + real model) | real samples → TwinSnapshot `fresh=true` → 65 real VirtualTrials (12 safe candidates, `candidateExecuted=false`) → 12-check recommendation gate **write_eligible** → verdict written back to the model as `twinEligibility` → `mpc_optimize` upgrades to **precise_search** → **0 DCW writes** throughout | `AW_BASE=<base> AW_REQUIRE_MODEL=1 node scripts/_aw0746-stage7-twin.mjs` |
|
|
671
|
-
| `_aw0746-stage6c-jobsmoke.mjs` | **5 / 0** (2026-09-25, v0.7.49 packaged build) | AML job path: inline `code` accepted (no `workspace/train.py` required) → job reaches a terminal state → training logs/ONNX traces → experiment plus per-check gates persisted | `AW_BASE=<base> node scripts/_aw0746-stage6c-jobsmoke.mjs` |
|
|
672
|
-
| `_aw0748-failclosed-probe.mjs` | **7 / 0** (2026-09-25, v0.7.49 packaged build) | hard-constraint **fail-closed** regression: `auto_daq` builds a snapshot from real bindings → a mappable `weight` constraint evaluates normally → an unmappable `part_weight` constraint is judged not passed with a precise detail (v0.7.47 passed it falsely) → an empty trajectory is also judged not passed | `AW_BASE=<base> node scripts/_aw0748-failclosed-probe.mjs` |
|
|
673
|
-
| `_aw0748-mock-closedloop.mjs` | **13 / 0** (2026-09-25, v0.7.49 packaged build, in-process `mock`, no quota) | scheduler closed-loop regression: create a mock channel → the root task is genuinely dispatched and closed → `[mock:complex]` forces delegation into child tasks → the parent closes after they finish → **the second and third root tasks are dispatched too** (before the fix the lead was unloaded while idle, `cr.scheduler` became null and later root tasks only landed in the DB, sitting in SUBMITTED until `ROOT_TIMEOUT`) → the tool bridge explicitly rejects host tools for mock | `AW_BASE=<base> node scripts/_aw0748-mock-closedloop.mjs` |
|
|
674
|
-
| Industrial bench — integrated | **77 / 77 checks (current baseline contract**, `bench/PIPELINE.md`; an earlier 2026-09-21 run recorded 83/83) | five-protocol five-line bench: connectivity, sampling into Timescale, governed writes, governance, agent closed loop, semantic parameter layer | `node bench/pipeline.mjs --profile integrated` |
|
|
675
|
-
| Multi-scenario closed loop | 4 scenarios · closed loops reached (2026-09-21) | injection-molding weight-window tuning · A²/O wastewater compliance with energy minimum · continuous-annealing quality window vs throughput · BOPET line mission | `node bench/scenarios.mjs --scenarios injection,wwtp,anneal` |
|
|
676
|
-
| Line permissions / audit-negative | 21 / 21 + 9 / 9 (2026-09-12) | three-state line grants with human-readable 403s, binding-subject validation, revocation convergence, unauthenticated WS receives zero telemetry | `node scripts/_dbg-perms-e2e.mjs <base> <adminPass>` · `node scripts/_dbg-audit-neg-e2e.mjs <base> <adminPass>` |
|
|
677
|
-
| Render regression | 30 / 30 (2026-09-12) | DAQ table integrity (row count aligned with the API), WS-driven row updates, filters, detail page, 3D town + model library, 7-page smoke, zero page errors | `node scripts/_dbg-render-regression.mjs <base> <email> <pass>` |
|
|
678
|
-
| AML auto-modeling | 25 / 0 (2026-09-24, deterministic trainer) | dataset build → cross-recipe refusal → job submit → gates → promotion guards → prediction guards → audit; `--real` adds the uv/torch runtime | `node node_modules/tsx/dist/cli.mjs --tsconfig .nuxt/tsconfig.server.json scripts/e2e-aml.ts` |
|
|
679
|
-
| Offline unit/property suites | all green | AEP event index (`test-events-index`), LRU, data-root split (`test-data-root`), log flooding, rollback index, plugin hardening, task lease fencing (`test-task-lease-fencing`), CLI exit codes (`test-cli-exit`), SDK surface (`test-sdk-surface`) | `node scripts/test-<name>.mjs` (TS suites via tsx) |
|
|
680
|
-
|
|
681
|
-
The historical **v0.7.20** acceptance baseline — *156 assertions, 0 failures* — is archived in
|
|
682
|
-
[`docs/audit/e2e-2026-09-07.md`](./docs/audit/e2e-2026-09-07.md). Perf probing:
|
|
683
|
-
`scripts/_dbg-render-perf.mjs`.
|
|
684
|
-
|
|
685
|
-
---
|
|
686
|
-
|
|
687
|
-
## Project layout
|
|
688
|
-
|
|
689
|
-
```
|
|
690
|
-
AgentWorkShop/
|
|
691
|
-
├── bin/ · cli/ # aw CLI — command registry · built-in commands · config engine
|
|
692
|
-
├── app/ # Nuxt 4 frontend (srcDir)
|
|
693
|
-
│ ├── pages/ # / · /workshop · /workshop/agents · /workshop/teams
|
|
694
|
-
│ │ # /workshop/channel-templates · /workshop/schedules · /workshop/w/:id
|
|
695
|
-
│ │ # /town · /daq · /daq/:id · /dcw · /dcw/:id
|
|
696
|
-
│ │ # /aml · /operations · /monitor · /logs · /permissions
|
|
697
|
-
│ │ # /plugins · /users · /tokens · /settings
|
|
698
|
-
│ ├── components/workshop/ # timeline · lanes · task board · memory panel · 3D town
|
|
699
|
-
│ └── stores/composables/ # Pinia + AEP client
|
|
700
|
-
├── server/
|
|
701
|
-
│ ├── api/ # REST + WS + A2A + MCP routes
|
|
702
|
-
│ ├── services/workshop/
|
|
703
|
-
│ │ ├── runtime/ # manager · scheduler-loop · task-engine · memory · mailbox
|
|
704
|
-
│ │ ├── agents/ # AgentInterface: 14 engines (+ industrial tools)
|
|
705
|
-
│ │ ├── daq/ dcw/ aml/ # edge runtimes · drivers · bus · storage · modeling lab
|
|
706
|
-
│ │ └── db/ # repos over node:sqlite
|
|
707
|
-
│ ├── mcp/ # MCP server (25 tools, in-process workshop face)
|
|
708
|
-
│ ├── plugins-builtin/ # plugins shipped with the package (serial-bridge · rag-bridge · diag-bridge · twin-injection-default)
|
|
709
|
-
│ └── plugins/ # runtime assembly (singletons)
|
|
710
|
-
├── mcp/ # aw mcp — zero-dependency stdio MCP gateway (38 tools, instance auto-discovery)
|
|
711
|
-
├── sdk/ # agentworkshop/sdk — plugin context, hook bus, REST client, browser SDK
|
|
712
|
-
├── tui/ # terminal workbench (aw tui)
|
|
713
|
-
├── shared/
|
|
714
|
-
│ └── config/ # schema.json (128 setting descriptors) + engine (merge/validate/persist) + path resolver
|
|
715
|
-
├── config.yml # factory defaults (read at build/start; version comes from package.json)
|
|
716
|
-
├── .AgentWorkShop/ # config root in a checkout — prompts (versioned) + runtime overrides · data · logs · commands (git-ignored)
|
|
717
|
-
├── data/ # legacy pre-migration location (auto-migrated into the config root)
|
|
718
|
-
└── scripts/ # launchers · home bootstrap · E2E · verification suites
|
|
719
|
-
```
|
|
720
|
-
|
|
721
|
-
## Tech stack
|
|
722
|
-
|
|
723
|
-
| Layer | Tech |
|
|
724
|
-
|---|---|
|
|
725
|
-
| Framework | [Nuxt 4](https://nuxt.com) + Nitro (WebSocket) |
|
|
726
|
-
| UI | Vue 3.5 · Pinia · Ant Design Vue · UnoCSS · Three.js · ECharts |
|
|
727
|
-
| Language | TypeScript 5.7 across the stack; `shared/` used by both sides |
|
|
728
|
-
| CLI | Node ESM CLI with a pluggable command registry (`bin/aw.mjs`) |
|
|
729
|
-
| Persistence | `node:sqlite` (zero native deps) + FTS5 + optional `sqlite-vec`; TimescaleDB for time-series |
|
|
730
|
-
| Validation | `zod` at every message boundary |
|
|
731
|
-
| Interop | `@modelcontextprotocol/sdk` · A2A (JSON-RPC 2.0) · AEP v1 (in-house WS protocol) |
|
|
732
|
-
| Field bus | `modbus-serial` · `node-opcua` · `mqtt` |
|
|
733
|
-
|
|
734
|
-
## Development
|
|
735
|
-
|
|
736
|
-
```bash
|
|
737
|
-
pnpm dev # dev server (port from effective config)
|
|
738
|
-
pnpm cli … # the CLI in-repo: pnpm cli config list
|
|
739
|
-
pnpm tui # terminal workbench against a running instance
|
|
740
|
-
pnpm build && pnpm start
|
|
741
|
-
pnpm typecheck # wrapper: prepare → strip the stale volar entry → vue-tsc -b
|
|
742
|
-
pnpm lint
|
|
743
|
-
pnpm test:api-live # API suite against a running server
|
|
744
|
-
node scripts/e2e-full-closedloop.mjs # full closed loop (server must be running)
|
|
745
|
-
node scripts/e2e-crash-cycle.mjs # crash → restart → redelivery, manages its own instance
|
|
746
|
-
node scripts/test-sdk-surface.mjs # SDK export-surface guard
|
|
747
|
-
```
|
|
748
|
-
|
|
749
|
-
> Two test-runner notes worth knowing before you debug a red suite: (1) `pnpm typecheck`
|
|
750
|
-
> runs [`scripts/typecheck.mjs`](./scripts/typecheck.mjs) rather than bare `nuxt typecheck`,
|
|
751
|
-
> because Nuxt 4.5 still writes the `vue-router/volar/sfc-route-blocks` compiler plugin into
|
|
752
|
-
> the generated tsconfig while vue-router 4.6 no longer exports it — bare vue-tsc dies while
|
|
753
|
-
> loading the config, so the check never actually ran; (2) TypeScript suites that import real
|
|
754
|
-
> route handlers (e.g. `scripts/e2e-memory-system.ts`) need the pure-node path
|
|
755
|
-
> `node --experimental-transform-types --import ./scripts/_audit/ts-register-hook.mjs <suite>.ts`,
|
|
756
|
-
> which maps the Nuxt `#imports` virtual module onto a shared-config stub.
|
|
757
|
-
|
|
758
|
-
The docs site lives in `docs/site/` (VitePress) and is deployed to GitHub Pages by
|
|
759
|
-
[`.github/workflows/deploy-docs.yml`](./.github/workflows/deploy-docs.yml):
|
|
760
|
-
|
|
761
|
-
```bash
|
|
762
|
-
cd docs/site && npx vitepress dev # preview locally
|
|
763
|
-
cd docs/site && npx vitepress build # production build → .vitepress/dist
|
|
764
|
-
```
|
|
765
|
-
|
|
766
|
-
The workflow syncs `docs/{cli,plugins,sdk}.md` (and their `.en.md` twins) into the site before
|
|
767
|
-
building, so those files are the single source of truth for the single-page guides.
|
|
768
|
-
|
|
769
|
-
## Deployment (production)
|
|
770
|
-
|
|
771
|
-
Target shape: **single instance on an intranet host, TLS terminated by a reverse proxy**.
|
|
772
|
-
The server intentionally ships no TLS listener of its own — put caddy/nginx in front (they
|
|
773
|
-
also give you HTTP→HTTPS redirect, access logs and a second rate-limit layer).
|
|
774
|
-
|
|
775
|
-
> [!IMPORTANT]
|
|
776
|
-
> **One instance per config root.** Multiple instances pointing at the same `.AgentWorkShop`
|
|
777
|
-
> (repo or home) fight over plugin KV files and SQLite writes — on Windows this shows up as
|
|
778
|
-
> `EPERM` rename warnings. Run parallel instances only with **separate `AW_HOME` config roots**
|
|
779
|
-
> (the same isolation the E2E suites use).
|
|
780
|
-
|
|
781
|
-
```bash
|
|
782
|
-
# 1) build + run (prod entry refuses to boot without .output)
|
|
783
|
-
pnpm build
|
|
784
|
-
NUXT_SESSION_PASSWORD=$(node -e "console.log(require('crypto').randomBytes(24).toString('hex'))") \
|
|
785
|
-
PORT=3000 node scripts/start.mjs
|
|
786
|
-
```
|
|
787
|
-
|
|
788
|
-
**TLS reverse proxy.** caddy (automatic certificates, WebSocket pass-through built in):
|
|
789
|
-
|
|
790
|
-
```caddy
|
|
791
|
-
aw.example.com {
|
|
792
|
-
reverse_proxy 127.0.0.1:3000
|
|
793
|
-
}
|
|
794
|
-
```
|
|
795
|
-
|
|
796
|
-
nginx (note the WebSocket `Upgrade` headers — the workbench, HITL panels and live logs are all WS-driven):
|
|
797
|
-
|
|
798
|
-
```nginx
|
|
799
|
-
server {
|
|
800
|
-
listen 443 ssl;
|
|
801
|
-
server_name aw.example.com;
|
|
802
|
-
# ssl_certificate / ssl_certificate_key ...
|
|
803
|
-
location / {
|
|
804
|
-
proxy_pass http://127.0.0.1:3000;
|
|
805
|
-
proxy_http_version 1.1;
|
|
806
|
-
proxy_set_header Upgrade $http_upgrade;
|
|
807
|
-
proxy_set_header Connection "upgrade";
|
|
808
|
-
proxy_set_header Host $host;
|
|
809
|
-
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
810
|
-
proxy_read_timeout 300s;
|
|
811
|
-
}
|
|
812
|
-
}
|
|
813
|
-
```
|
|
814
|
-
|
|
815
|
-
After the whole site is HTTPS-only, enable `security.hstsEnabled` (runtime settings) so
|
|
816
|
-
responses carry `Strict-Transport-Security`.
|
|
817
|
-
|
|
818
|
-
**Process supervision.** `scripts/start.mjs` already spawns the server as a child with
|
|
819
|
-
crash back-off restart, a 30 s health probe and a heap-watermark proactive restart — put
|
|
820
|
-
*that* under a service manager so the supervisor itself survives reboots:
|
|
821
|
-
|
|
822
|
-
```ini
|
|
823
|
-
# /etc/systemd/system/agentworkshop.service
|
|
824
|
-
[Service]
|
|
825
|
-
WorkingDirectory=/opt/agentworkshop
|
|
826
|
-
Environment=NUXT_SESSION_PASSWORD=<generated-secret>
|
|
827
|
-
Environment=PORT=3000
|
|
828
|
-
ExecStart=/usr/bin/node scripts/start.mjs
|
|
829
|
-
Restart=always
|
|
830
|
-
User=aw
|
|
831
|
-
[Install]
|
|
832
|
-
WantedBy=multi-user.target
|
|
833
|
-
```
|
|
834
|
-
|
|
835
|
-
On Windows use `nssm install AgentWorkShop "C:\Program Files\nodejs\node.exe" scripts\start.mjs`.
|
|
836
|
-
Do **not** run a second instance against the same config root — a single-instance lock
|
|
837
|
-
(`.runtime/aw.lock` with heartbeat) makes the newer process take over and the older one exit.
|
|
838
|
-
|
|
839
|
-
**Auth hardening for production.** `security.allowRegistration` defaults to **false**:
|
|
840
|
-
with the first admin in place both register endpoints return 403, accounts are created by
|
|
841
|
-
an admin, and admin-created accounts are flagged `mustChangePassword` — the workbench
|
|
842
|
-
forces a password change at first login (admin password resets flag it again and revoke
|
|
843
|
-
all existing sessions). The bootstrap path is unaffected: with zero users the first
|
|
844
|
-
registered account still becomes the admin.
|
|
845
|
-
|
|
846
|
-
**Backups and restore.** `server/plugins/backup.ts` snapshots, every 24 h (keep 7) into
|
|
847
|
-
`<config root>/.AgentWorkShop/data/backups/`:
|
|
848
|
-
|
|
849
|
-
- the three SQLite databases (`workshop/users/daq-timeseries.sqlite`, WAL-checkpointed, atomic rename)
|
|
850
|
-
- all JSON stores plus `config.yml` / `runtime-settings.json` (`files-<stamp>/`)
|
|
851
|
-
- local object store + exports `daq-objects/` and `daq-exports/` (`objects-<stamp>/`) —
|
|
852
|
-
skipped with a log line when larger than `AW_BACKUP_OBJECTS_MAX_MB` (default 200 MB)
|
|
853
|
-
- a `manifest-<stamp>.json` per run; TimescaleDB/MinIO **docker volumes are not covered** —
|
|
854
|
-
back those up with `pg_dump` / `mc mirror` or volume snapshots
|
|
855
|
-
|
|
856
|
-
Restore drill (do it once before go-live): stop the server → copy `backups/` aside →
|
|
857
|
-
rebuild a data directory from the newest `*.bak` + `files-*` + `objects-*` bundles →
|
|
858
|
-
start → check `/api/health`, admin login, lines/recipes present. `BACKUP_DISABLED=1`,
|
|
859
|
-
`BACKUP_INTERVAL_HOURS` and `BACKUP_KEEP` tune the job.
|
|
860
|
-
|
|
861
|
-
**Production checklist.** generated `NUXT_SESSION_PASSWORD` (boot refuses known dev
|
|
862
|
-
secrets) · `security.allowRegistration=false` (default) · TLS via reverse proxy + HSTS ·
|
|
863
|
-
service manager installed · restore drill passed · `/api/health` + `/api/metrics` wired
|
|
864
|
-
into monitoring · `AW_HEAP_LIMIT_MB` sized for the host · `AW_RATE_LIMIT_OFF` **unset**
|
|
865
|
-
(the built-in rate guard must stay on) · `AW_BENCH_MODE` **unset** (write-control
|
|
866
|
-
interlocks and rate limits must stay fully engaged).
|
|
867
|
-
|
|
868
|
-
**The benchmark switch `AW_BENCH_MODE=1` is for experiments only — never in
|
|
869
|
-
production.** It serves the `bench/` paper pipeline (E1a four-arm ablation). When set
|
|
870
|
-
to 1: the API rate guard is disabled entirely; online-exploration rate limits (per-step
|
|
871
|
-
limit, 60 s minimum write interval, write-hold window) are waived wholesale; the write
|
|
872
|
-
endpoint accepts an `x-aw-bench-arm` header to bypass soft interlock layers
|
|
873
|
-
(no-interlock / no-readback / ungated; hard range and structural checks cannot be
|
|
874
|
-
bypassed by design). The only correct production value is **unset**: the code compares
|
|
875
|
-
strictly `=== '1'`, so the default is always the full arm. The flag is read at module
|
|
876
|
-
load — confirm it is absent **before** the process starts (a misconfiguration warns at
|
|
877
|
-
boot). `AW_RATE_LIMIT_OFF=1` only disables the API rate guard (write-control interlocks
|
|
878
|
-
stay on) and must likewise remain unset in production.
|
|
879
|
-
|
|
880
|
-
## Research paper
|
|
881
|
-
|
|
882
|
-
The platform's governance mechanisms are documented in a submission-ready manuscript —
|
|
883
|
-
**"Grading Machine-Originated Plant Writes: Separately Inspectable Evidence for Industrial
|
|
884
|
-
Agent Teams"** (IEEE Transactions on Industrial Informatics, anonymous review draft,
|
|
885
|
-
10 pages, IEEEtran). Source, compiled PDF and the five-seat review trail live in
|
|
886
|
-
[`paper/tii/SUBMISSION-IEEE-TII/`](./paper/tii/SUBMISSION-IEEE-TII/). Every mechanism
|
|
887
|
-
claim in the paper is backed by archives in this repository:
|
|
888
|
-
|
|
889
|
-
- [`docs/benchmarks/`](./docs/benchmarks) — the October 2026 deployment-scale regression
|
|
890
|
-
campaign: 14 pipeline executions, 1134 checks, zero failed (per-run `report.md` /
|
|
891
|
-
`benchmark.json` / `timeline.jsonl`), plus the admission-ablation companion run;
|
|
892
|
-
- [`docs/experiments/`](./docs/experiments) — cast-film closed-loop experiment plan and
|
|
893
|
-
results (the paper's Q3 deterministic loop);
|
|
894
|
-
- [`docs/audit/`](./docs/audit) — acceptance waves (baseline 1100+ assertions; follow-up wave reported item by item) referenced
|
|
895
|
-
by the evaluation section.
|
|
896
|
-
|
|
897
|
-
Re-run the paper pipeline locally: set `AW_BENCH_MODE=1` and follow
|
|
898
|
-
[`bench/PIPELINE.md`](./bench/PIPELINE.md).
|
|
899
|
-
|
|
900
|
-
## Roadmap
|
|
901
|
-
|
|
902
|
-
| Capability | Status |
|
|
903
|
-
|---|---|
|
|
904
|
-
| Channel runtime, lead orchestration, 7-state task engine | Shipped |
|
|
905
|
-
| Four entry points: WS (AEP v1) · MCP · A2A · REST | Shipped |
|
|
906
|
-
| Persistent memory (FTS5 + optional vector hybrid) | Shipped |
|
|
907
|
-
| Industrial stack: DAQ · DCW write control · lines/recipes/runs | Shipped |
|
|
908
|
-
| Agent ↔ node binding + HITL approval + interlock | Shipped |
|
|
909
|
-
| 3D digital-twin town · line operations UI · dashboards | Shipped |
|
|
910
|
-
| Full-feature live E2E (agent reads/writes a real line, 23 checks) | Shipped |
|
|
911
|
-
| Runtime configuration system: settings persistence · hot reload · settings UI | Shipped |
|
|
912
|
-
| `aw` CLI: config · start/dev · init · register · doctor | Shipped |
|
|
913
|
-
| Multi-harness registry: omp · codex · dsh · opencode subprocess engines | Shipped |
|
|
914
|
-
| Six field protocols: Modbus TCP · Modbus RTU-over-TCP · OPC UA · MQTT · HTTP + the built-in serial-bridge plugin (acquisition + write control) | Shipped |
|
|
915
|
-
| Harness availability probing + dispatch-time engine checks (UI disable + 409) | Shipped |
|
|
916
|
-
| Recipe versioning with attribution + non-destructive rollback (UI + agent tools) | Shipped |
|
|
917
|
-
| Recipe-chain optimization loop: recipe_trial batch trials (no version) → adopt on progress → unified rollback with PLC restore | Shipped |
|
|
918
|
-
| Channel-bound lines: read-only log/recipe/status access for all members, line brief injected into prompts | Shipped |
|
|
919
|
-
| Agent self-audit: line_context / ops_log / recipe_log / recipe_versions / dcw_journal | Shipped |
|
|
920
|
-
| Multi-harness parallel live E2E on a real protocol line (four engines, one line) | Shipped |
|
|
921
|
-
| HITL approval flow verified over real OPC UA writes | Shipped |
|
|
922
|
-
| Bilingual docs (简体中文 / English) with VitePress language switcher | Shipped |
|
|
923
|
-
| Per-channel LLM provider/model selection from live harness catalogs | Shipped |
|
|
924
|
-
| Configurable DAQ/TSDB cadences (sampling & query defaults + floors, live) | Shipped |
|
|
925
|
-
| Team-scoped plugin switches (create-time pick + team dialog, per-channel tool injection) | Shipped |
|
|
926
|
-
| Plugin hot management: `/plugins` page + `aw plugin list/enable/disable` | Shipped |
|
|
927
|
-
| Rendering perf pass (v0.7.27): DAQ main-thread blocking −90%, twin −69%, adaptive quality restored to top tier; `window.__townStats` instrumentation | Shipped |
|
|
928
|
-
| Plugin system v2: browser panel injection, plugin-scoped settings/groups, plugin i18n, host runtime services (`ctx.services`/`ctx.daq`/`ctx.omp`) | Shipped |
|
|
929
|
-
| Instrument Glass material layer (v0.7.36): three-tier translucent materials, vibrancy, specular edges, spring motion, per-page route transitions | Shipped |
|
|
930
|
-
| Realtime pipeline optimizations: DAQ frame indexing O(n²)→O(n), incremental per-agent event index, chart in-place updates, size-aware JSON persistence | Shipped |
|
|
931
|
-
| AML auto-modeling lab: dataset build · job orchestration (uv-managed Python) · leaderboard · promotion gates · 14 agent tools | Shipped |
|
|
932
|
-
| Claude Agent SDK adapter — resident sessions with same-turn steer and `canUseTool` HITL | Shipped |
|
|
933
|
-
| Semantic parameter mapping: `param_control`/`param_read` by process parameter, four-layer write bound, tuning loop (`dcw_judge`/`dcw_rollback`) | Shipped |
|
|
934
|
-
| Channel group chat: requests become trackable jobs; native HITL (`omp` ask → approval → receipt) | Shipped |
|
|
935
|
-
| Scheduled tasks: `interval` / `daily`, per-run history, busy-guard + consecutive-failure circuit breaker | Shipped |
|
|
936
|
-
| Root task queue (FIFO, visible queue positions) + assignment generation & execution-lease fencing | Shipped |
|
|
937
|
-
| Supervision watchdog + harness continuity (`persistent`/`per_turn`, session-reuse lease with restart reasons) | Shipped |
|
|
938
|
-
| Channel process memory: deterministic event contracts, canonical root summary, durable outbox + compensation worker | Shipped |
|
|
939
|
-
| Runtime observability: `GET /api/system/monitor` team metrics, each with a documented rollback switch | Shipped |
|
|
940
|
-
| Industrial bench: integrated profile (83 checks, hard gate) + multi-scenario closed loops (injection / wwtp / anneal / BOPET) + quality-target optloop | Shipped |
|
|
941
|
-
| Full-coverage acceptance wave matrix on a production build (~1100+ real assertions, 2026-09-24) | Shipped |
|
|
942
|
-
| Twin provider plugin SDK: hot-loadable physics/scene/objective/training/solver providers via `ctx.twin`, generation-staged reload with lease draining, bundled provider shipped through the same external contract | Shipped |
|
|
943
|
-
| Any-scene hybrid-twin modeling loop: scene discover → compile → freeze → physics-spec draft/validate/compile → reference-trainer job (physics calibration + residual ensemble + conformal UQ), model-backed trials, continuous-calibration worker | Shipped |
|
|
944
|
-
| Two-mode optimization loop: dedicated `aml-training` / `aml-optimization` channel templates, mutually exclusive tool faces, exploration ↔ production modes with governed read-back-paired micro-writes | Shipped |
|
|
945
|
-
| Line operations feed: `/operations` page + workshop-console panel, nine-category operation timeline, structured write diffs, closed-loop phase inference | Shipped |
|
|
946
|
-
| External MCP gateway: `aw mcp` stdio server (41 tools), instance auto-discovery, `mcp.enabled` runtime gate | Shipped |
|
|
947
|
-
| Configurable system timezone (`time.timeZone`, live) + recipe `stepLimit` per-parameter single-step bound + recipe `description` metadata | Shipped |
|
|
948
|
-
| Production hardening: TLS, MQTT auth, OPC UA sign+encrypt defaults, structured audit log | Planned |
|
|
949
|
-
| Edge deployment shape: standalone edge-agent + central broker | Planned |
|
|
950
|
-
| Alarm outbound delivery (email/webhook) + ack workflow | Planned |
|
|
951
|
-
| CI pipeline (typecheck + lint + e2e) — docs deployment already runs on GitHub Actions | Planned |
|
|
952
|
-
| License: Apache 2.0 (permissive, commercial & production use allowed) | Shipped |
|
|
953
|
-
|
|
954
|
-
## License
|
|
955
|
-
|
|
956
|
-
AgentWorkShop is an independent project and is **not an official product of Anthropic** or any LLM vendor. It integrates with agent harnesses (e.g. `omp`) through their public interfaces.
|
|
957
|
-
|
|
958
|
-
**AgentWorkShop is open-source software, licensed under the [Apache License 2.0](./LICENSE).**
|
|
959
|
-
|
|
960
|
-
- **Permitted** — personal, academic, and **commercial use**, including production deployment, modification, and redistribution, under the terms of the Apache License 2.0.
|
|
961
|
-
- **Conditions** — retain copyright and license notices, state significant changes, and include the `NOTICE` file when redistributing.
|
|
962
|
-
- **No trademark or warranty** — the license grants no trademark rights and provides the software **"as is"**, without warranties or conditions of any kind.
|
|
963
|
-
|
|
964
|
-
The full terms are in [LICENSE](./LICENSE). Questions: [GitHub @kingdol666](https://github.com/kingdol666).
|
|
965
|
-
|
|
966
|
-
<div align="center">
|
|
967
|
-
|
|
968
|
-
<a href="https://star-history.com/#kingdol666/AgentWorkShop&Date">
|
|
969
|
-
<picture>
|
|
970
|
-
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=kingdol666/AgentWorkShop&type=Date&theme=dark" />
|
|
971
|
-
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=kingdol666/AgentWorkShop&type=Date" />
|
|
972
|
-
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=kingdol666/AgentWorkShop&type=Date" width="80%" />
|
|
973
|
-
</picture>
|
|
974
|
-
</a>
|
|
975
|
-
|
|
976
|
-
</div>
|
|
977
|
-
|
|
978
|
-
---
|
|
979
|
-
|
|
980
|
-
## Contributing
|
|
981
|
-
|
|
982
|
-
Issues and pull requests are welcome. Before opening a PR:
|
|
983
|
-
|
|
984
|
-
1. **Read the contract you are touching** — [`docs/plugins.md`](./docs/plugins.md) for the extension surface, [`docs/sdk.md`](./docs/sdk.md) for the programming client, [`docs/cli.md`](./docs/cli.md) for the command registry.
|
|
985
|
-
2. **Run the guards locally**:
|
|
986
|
-
|
|
987
|
-
```bash
|
|
988
|
-
pnpm typecheck # vue-tsc across app + server + shared
|
|
989
|
-
pnpm lint # eslint 9, zero warnings expected
|
|
990
|
-
node scripts/e2e-full-closedloop.mjs # full closed loop, server must be running
|
|
991
|
-
node scripts/test-sdk-surface.mjs # SDK export surface must not drift
|
|
992
|
-
node scripts/check-docs-sync.mjs # docs/site pages stay in sync with docs/*.md
|
|
993
|
-
```
|
|
994
|
-
|
|
995
|
-
3. **Keep commits conventional** — `commitlint` runs on `commit-msg` (`feat:`, `fix:`, `docs:`, `refactor:`, `perf:`, `test:`, `chore:`), and `lint-staged` fixes staged JS/TS/Vue on commit.
|
|
996
|
-
4. **Add a test for behavior you change.** The repo leans on live E2E scripts under `scripts/` rather than mocks — a new industrial path should be provable against a running instance.
|
|
997
|
-
|
|
998
|
-
> [!TIP]
|
|
999
|
-
> `aw doctor` checks your environment end to end (Node version, config root, port availability, SQLite, optional Docker services) before you file a bug — it answers most "it does not start" reports immediately.
|
|
1000
|
-
|
|
1001
|
-
## Security
|
|
1002
|
-
|
|
1003
|
-
Please **do not** open a public issue for a vulnerability. Report it privately through [GitHub Security Advisories](https://github.com/kingdol666/AgentWorkShop/security/advisories/new) with a reproduction and the affected version.
|
|
1004
|
-
|
|
1005
|
-
AgentWorkShop drives real equipment when you point it at real equipment: review `config.yml` interlocks, safe ranges and HITL settings before connecting a live PLC. The default posture is advisory — writes are interlocked, approved and read back — but the plant-side logic is always the final veto.
|
|
1006
|
-
|
|
1007
|
-
---
|
|
1008
|
-
|
|
1009
|
-
<div align="center">
|
|
1010
|
-
|
|
1011
|
-
**If this project is useful to you, a ⭐ helps other people find it.**
|
|
1012
|
-
|
|
1013
|
-
<a href="https://star-history.com/#kingdol666/AgentWorkShop&Date">
|
|
1014
|
-
<picture>
|
|
1015
|
-
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=kingdol666/AgentWorkShop&type=Date&theme=dark" />
|
|
1016
|
-
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=kingdol666/AgentWorkShop&type=Date" />
|
|
1017
|
-
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=kingdol666/AgentWorkShop&type=Date" width="80%" />
|
|
1018
|
-
</picture>
|
|
1019
|
-
</a>
|
|
1020
|
-
|
|
1021
|
-
<br />
|
|
1022
|
-
|
|
1023
|
-
**[Documentation](https://kingdol666.github.io/AgentWorkShop)** · **[Guide](https://kingdol666.github.io/AgentWorkShop/guide/getting-started)** · **[Plugin API](./docs/plugins.md)** · **[SDK](./docs/sdk.md)** · **[CLI](./docs/cli.md)** · **[中文](./README-zh.md)**
|
|
1024
|
-
|
|
1025
|
-
<sub>Built with Nuxt 4 · Vue 3 · TypeScript · <code>node:sqlite</code> — supervisory layer, second-level soft real-time.<br />
|
|
1026
|
-
Time-critical loops stay in the PLC.</sub>
|
|
1027
|
-
|
|
1028
|
-
</div>
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+
<img src="https://raw.githubusercontent.com/kingdol666/AgentWorkShop/main/docs/readme-assets/hero.png" alt="AgentWorkShop — agent teams driving a real production line" width="100%" />
|
|
4
|
+
|
|
5
|
+
<br />
|
|
6
|
+
|
|
7
|
+
# AgentWorkShop
|
|
8
|
+
|
|
9
|
+
**Where AI agent teams meet the production line.**
|
|
10
|
+
|
|
11
|
+
[](https://github.com/kingdol666/AgentWorkShop)
|
|
12
|
+
[](https://github.com/kingdol666/AgentWorkShop)
|
|
13
|
+
[](https://github.com/kingdol666/AgentWorkShop/releases)
|
|
14
|
+
[](https://github.com/kingdol666/AgentWorkShop/stargazers)
|
|
15
|
+
[](https://github.com/kingdol666/AgentWorkShop/commits)
|
|
16
|
+
[](https://github.com/kingdol666/AgentWorkShop/issues)
|
|
17
|
+
[](./LICENSE)
|
|
18
|
+
|
|
19
|
+
[](https://nuxt.com)
|
|
20
|
+
[](https://vuejs.org)
|
|
21
|
+
[](https://www.typescriptlang.org)
|
|
22
|
+
[](https://nodejs.org)
|
|
23
|
+
[](https://nodejs.org/api/sqlite.html)
|
|
24
|
+
[](./docs/site/guide/daq-protocols.md)
|
|
25
|
+
[](./docs/plugins.md)
|
|
26
|
+
[](https://kingdol666.github.io/AgentWorkShop)
|
|
27
|
+
**[简体中文](./README-zh.md)** · **[Documentation](https://kingdol666.github.io/AgentWorkShop)** · **[Releases](https://github.com/kingdol666/AgentWorkShop/releases)** · **[Changelog](./changelog.md)** · **[Plugin API](./docs/plugins.md)** · **[SDK](./docs/sdk.md)**
|
|
28
|
+
|
|
29
|
+
<sub><b>v0.8.8</b> · 14 engines · 6 field protocols (5 built-in + serial plugin) + MES REST integration (mirror & live) · data-analysis ledger with line-scoped permissions · process optimizer (process model → AML → OSQP solver → governed dispatch) · **ontology service + AI-first model loop** (ontology · twin · solver · AML adoption) · 104 host tools · 128 runtime settings · bilingual docs (简体中文 / English)</sub>
|
|
30
|
+
|
|
31
|
+
<br />
|
|
32
|
+
|
|
33
|
+
*A configuration-driven platform where **AI agent teams** and an **industrial digital twin** share one runtime — agents query real telemetry, issue supervisory setpoints through human-approved write control, and every event streams live to a 3D twin.*
|
|
34
|
+
|
|
35
|
+
</div>
|
|
36
|
+
[Quick start](#quick-start) · [Live demo](#live-demo) · [Capabilities](#capabilities) · [Architecture](#architecture) · [Plugins & extension](#plugins--extension) · [Verification](#verification) · [Docs site](https://kingdol666.github.io/AgentWorkShop)
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## What is this?
|
|
41
|
+
|
|
42
|
+
A configuration-driven platform where **AI agent teams** and an **industrial production line** share one runtime — agents query real telemetry, issue supervisory setpoints through human-approved write control, and every event streams live to a 3D twin.
|
|
43
|
+
|
|
44
|
+
- **Supervisory layer** (SCADA-adjacent, second-level soft real-time): DAQ, write control, line/recipe/batch, permissions and audit in one place;
|
|
45
|
+
- **Agents are not chat decoration**: 14 executable engines, mixable per channel (omp / codex / opencode / claude / gemini / …), a 7-state task machine + root queue + HITL approvals — bound agents read and write real devices under scoped authority;
|
|
46
|
+
- **The loop is real**: read → analyze → propose → approve → write → verify readback → audited ledger, proven by live acceptance runs.
|
|
47
|
+
|
|
48
|
+
## Live demo
|
|
49
|
+
|
|
50
|
+
<p align="center">
|
|
51
|
+
<img src="https://raw.githubusercontent.com/kingdol666/AgentWorkShop/main/docs/readme-assets/fig-01-closedloop.gif" alt="Closed loop: goal → read → compute → approve → write → readback → report" width="86%" />
|
|
52
|
+
<br/>
|
|
53
|
+
<sub><b>Closed loop</b> — recorded from a running instance: real DAQ history, real write control, real HITL approval</sub>
|
|
54
|
+
</p>
|
|
55
|
+
|
|
56
|
+
<p align="center">
|
|
57
|
+
<img src="https://raw.githubusercontent.com/kingdol666/AgentWorkShop/main/docs/readme-assets/readme-grid-core.jpg" alt="Dashboard / Line Ops / DAQ Center / AutoML Lab / Digital Twin 3D / Monitor & HITL / Analysis / Audit Log" width="100%" />
|
|
58
|
+
</p>
|
|
59
|
+
|
|
60
|
+
> [!NOTE]
|
|
61
|
+
> Every image in this README is a screenshot of a **running instance** (v0.8.8 production build) — none are mock-ups.
|
|
62
|
+
|
|
63
|
+
<p align="center">
|
|
64
|
+
<a href="https://kingdol666.github.io/AgentWorkShop/demo/player.html">
|
|
65
|
+
<img src="docs/site/public/demo/agentworkshop-core-demo-poster.png" alt="3-minute product demo" width="62%" />
|
|
66
|
+
<br/>
|
|
67
|
+
<sub><b>🎬 3-minute product demo</b> (click the poster to open the player · English UI/voiceover · EN/中文 subtitles)</sub>
|
|
68
|
+
</a>
|
|
69
|
+
</p>
|
|
70
|
+
|
|
71
|
+
## Capabilities
|
|
72
|
+
|
|
73
|
+
| Area | In one sentence | Deep dive |
|
|
74
|
+
|---|---|---|
|
|
75
|
+
| **Agent team runtime** | lead orchestration + worker delivery; 7-state task machine, FIFO root queue, lease fencing, process memory (FTS5 + vector), group chat & scheduled jobs | [Architecture](#architecture) |
|
|
76
|
+
| **Industrial stack** | five field protocols (Modbus TCP/RTU · OPC UA · MQTT · HTTP) + serial plugin + MES REST (mirror & live); DAQ cadences, four-layer write limits, per-parameter ACK | [Protocol guide](./docs/site/guide/daq-protocols.md) |
|
|
77
|
+
| **Agent × device binding** | three-track node authority (dcw point scoping / recipe / line-recipe management), semantic cards injected into prompts, direct writes always refused, every write passes interlocks + HITL | [HITL guide](./docs/site/guide/hitl.md) |
|
|
78
|
+
| **Model loop** | AML auto-ML (physics priors + residual ensemble + conformal UQ) → promotion gates → HITL adoption → production deployment → model-driven trials | [AML manual](./docs/aml.md) |
|
|
79
|
+
| **Optimizer** | process model → OSQP solve → recipe_trial → promote only on improvement → unified rollback (PLC batch restore) | [Recipe versions](./docs/site/guide/recipe-versions.md) |
|
|
80
|
+
| **Governance & observability** | line-scoped tri-state permissions, structured audit & error ledger, /operations timeline, system monitor | [Line permissions](./docs/site/guide/line-permissions.md) |
|
|
81
|
+
| **Plugin ecosystem** | hot-reloadable plugins: custom drivers/processors/node templates/agent tools/HTTP routes/browser panels/Twin Providers, `aw plugin` CLI + MCP `list_changed` | [Plugins & extension](#plugins--extension) |
|
|
82
|
+
|
|
83
|
+
## Architecture
|
|
84
|
+
|
|
85
|
+
<p align="center">
|
|
86
|
+
<img src="https://raw.githubusercontent.com/kingdol666/AgentWorkShop/main/docs/readme-assets/architecture.png" alt="AgentWorkShop architecture: frontend → four entry points → agent runtime → industrial stack → time-series store" width="92%" />
|
|
87
|
+
</p>
|
|
88
|
+
|
|
89
|
+
<details>
|
|
90
|
+
<summary><b>Full diagram source (mermaid, open)</b></summary>
|
|
91
|
+
|
|
92
|
+
```mermaid
|
|
93
|
+
flowchart TB
|
|
94
|
+
subgraph FE["前端 — Nuxt 4 / Vue 3"]
|
|
95
|
+
UI["工作台 UI · 3D 孪生 · 大屏"]
|
|
96
|
+
WS["AEP 客户端 — seq 续传"]
|
|
97
|
+
end
|
|
98
|
+
subgraph SRV["服务端 — Nitro / h3"]
|
|
99
|
+
REST["REST /api/workshop/**"]
|
|
100
|
+
HUB["WS Hub — AEP v1"]
|
|
101
|
+
A2A["A2A JSON-RPC"]
|
|
102
|
+
MCP["MCP Server"]
|
|
103
|
+
subgraph RT["运行时"]
|
|
104
|
+
MGR["AgentChannelManager"]
|
|
105
|
+
SCH["SchedulerLoop — lead 监督"]
|
|
106
|
+
TE["TaskEngine — 7 态任务机"]
|
|
107
|
+
AR["AgentRuntime × N"]
|
|
108
|
+
MEM["AgentMemory — FTS5 + 向量"]
|
|
109
|
+
BUS["事件总线 (ManagerBus) — per-channel seq + 环形缓冲"]
|
|
110
|
+
end
|
|
111
|
+
subgraph IND["工业"]
|
|
112
|
+
DAQ["数采网关 — 逐节点边缘运行时"]
|
|
113
|
+
DCW["数控网关 — 写控"]
|
|
114
|
+
BR["队列 — inproc / MQTT"]
|
|
115
|
+
TSDB["时序库 — SQLite / Timescale"]
|
|
116
|
+
end
|
|
117
|
+
subgraph HB["Harness 适配器 — 14 个引擎"]
|
|
118
|
+
MOCK["mock · claude — 进程内"]
|
|
119
|
+
OMP["omp — RPC 子进程"]
|
|
120
|
+
CDX["codex — app-server"]
|
|
121
|
+
DSH["dsh · qwen · hermes — ACP"]
|
|
122
|
+
OC["opencode — serve"]
|
|
123
|
+
FAM["gemini · copilot · cursor · crush · goose · pi — 无头 CLI"]
|
|
124
|
+
end
|
|
125
|
+
DB[("SQLite — channels · agents · tasks
|
|
126
|
+
messages · memories (FTS5) · events")]
|
|
127
|
+
end
|
|
128
|
+
UI <--> WS
|
|
129
|
+
WS --> BUS
|
|
130
|
+
REST & A2A & MCP --> MGR
|
|
131
|
+
MGR --> SCH & TE & AR
|
|
132
|
+
AR --> MEM
|
|
133
|
+
AR --> MOCK & OMP & CDX & DSH & OC & FAM
|
|
134
|
+
MGR & TE & MEM & BUS --> DB
|
|
135
|
+
DAQ <--> BR --> TSDB
|
|
136
|
+
DCW --> BR
|
|
137
|
+
DAQ & DCW --> BUS
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
</details>
|
|
141
|
+
|
|
142
|
+
**The agent × machine bridge** (the part worth reading source for):
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
agent ──binding──▶ node (daq: auto / dcw: manual)
|
|
146
|
+
│ │
|
|
147
|
+
│ my_industrial_nodes ◀── semantic card: meaning · unit · safe range · recipe window
|
|
148
|
+
│ daq_query ◀── time-series history, statistics + physics semantics
|
|
149
|
+
│ dcw_control ──▶ interlock (safe range ∩ recipe window)
|
|
150
|
+
│ ──▶ HITL approval (manual mode, 180s timeout)
|
|
151
|
+
│ ──▶ PLC write → readback verify → ACK + write ledger
|
|
152
|
+
◀── result text with numeric values the agent can cite
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
## Quick start
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
node -v # ≥ 23.4.0 (needs built-in node:sqlite)
|
|
159
|
+
npm install -g agentworkshop # → `aw` / `agentworkshop` on PATH (prebuilt output, no build step)
|
|
160
|
+
aw start # → http://localhost:3001, everything initializes into ~/.AgentWorkShop
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
Prefer not to install globally: `npx agentworkshop start`. From source: `git clone … && pnpm install && pnpm dev` (→ 3000); production: `pnpm build && pnpm start`. Update: `aw update`.
|
|
164
|
+
|
|
165
|
+
> A real agent harness needs its CLI on PATH (`omp` / `codex` / `opencode` / … pick a subset, channels can mix; `mock` and `claude` run in-process, no CLI needed). Optional DAQ infrastructure (MQTT broker + TimescaleDB) auto-starts when Docker is reachable.
|
|
166
|
+
|
|
167
|
+
**Your first “agent × line” session (about 2 minutes):**
|
|
168
|
+
|
|
169
|
+
1. **Sign in** — register in the sidebar (or `POST /api/users/register`).
|
|
170
|
+
2. **Build a line** — “Line Operations” → create a line, add a DAQ node (e.g. `daq-temp-tc`) and a write node (e.g. `dcw-temp-sp`), create product + recipe, press **start**.
|
|
171
|
+
3. **Create a team** — “Agent Workbench” → pick lead + workers, **deploy** into a channel.
|
|
172
|
+
4. **Bind nodes** — agent detail panel → bind DAQ (*auto*) and write nodes (*manual* = needs your approval).
|
|
173
|
+
5. **Submit a goal** — “Analyze the last 5 minutes of melt temperature; if it deviates more than 1 °C from 182 °C, correct the setpoint (wait for my approval).”
|
|
174
|
+
6. **Approve** — the agent reads real history and proposes a write → approve in the HITL panel → watch the setpoint move, and the goal closes with a numeric report.
|
|
175
|
+
|
|
176
|
+
<details>
|
|
177
|
+
<summary><b>Config-driven · auth · line permissions · exec modes · scheduled jobs (open)</b></summary>
|
|
178
|
+
|
|
179
|
+
One runtime, one source of truth: **`config.yml`** (defaults) < **`runtime-settings.json`** (runtime overrides) < env vars / CLI flags; every key is declared once in `shared/config/schema.json`, and the settings UI and CLI consume the same descriptors.
|
|
180
|
+
|
|
181
|
+
**Auth**: email + password issues a bearer token (multiple tokens, revocable); `POST /api/users/register` → `authorization: Bearer <token>` on `/api/workshop/**`.
|
|
182
|
+
|
|
183
|
+
**Line tri-state permissions** (admin-managed at `/permissions`): none (default — the backend returns no data) / view-only / operate (read + write). Agent write authority tracks: `dcw` point bindings (write scope + dispatch narrowing), `recipe` (single-recipe operations), `line-recipe` (all recipes on a line). Direct writes are always refused; every write passes four-layer limits, run gates, HITL and per-parameter ACK.
|
|
184
|
+
|
|
185
|
+
**Exec modes**: `goal` (lead decomposes → judges → re-dispatches until satisfied) / `loop` (fixed-interval replay) / `pipeline` (ordered stages).
|
|
186
|
+
|
|
187
|
+
**Scheduled jobs**: `interval` (60s floor) / `daily` modes; busy-guard, per-run history, consecutive-failure circuit breaker; `/workshop/schedules` page or REST.
|
|
188
|
+
|
|
189
|
+
**Four entry points**: WS (AEP v1, seq resume) · MCP (in-process server) · A2A (JSON-RPC 2.0 + AgentCard) · REST (full management surface).
|
|
190
|
+
|
|
191
|
+
**Task state machine**: `SUBMITTED → ASSIGNED → WORKING → WAITING → COMPLETED` (any state may go `CANCELED / FAILED`; a FAILED task can be reassigned to retry with a fresh execution budget, root tasks are guarded by that budget).
|
|
192
|
+
|
|
193
|
+
</details>
|
|
194
|
+
|
|
195
|
+
<details>
|
|
196
|
+
<summary><b>Deployment · project layout · development (open)</b></summary>
|
|
197
|
+
|
|
198
|
+
**Deployment**: terminate TLS on a reverse proxy; optional infra via `docker compose up -d` (MQTT + Timescale + MinIO); `pnpm build && pnpm start` (port from `config.yml` → `server.prod.port`). All data lives in the config root and migrates automatically across versions.
|
|
199
|
+
|
|
200
|
+
**Project layout**: `app/` (Nuxt frontend) · `server/` (API and services: agents/daq/dcw/aml/plugins) · `shared/` (cross-boundary contracts: config schema, protocol catalogs) · `scripts/` (acceptance and tooling) · `bench/` (industrial benchmark pipeline) · `docs/` (docs and acceptance evidence) · `plugins-builtin/` (built-in plugins).
|
|
201
|
+
|
|
202
|
+
**Development**: `pnpm dev` hot reload; `pnpm typecheck && pnpm lint` gates; `npm run test:unit` (server tsconfig + force-exit); docs site via `npm run docs:dev` (VitePress, 中/EN).
|
|
203
|
+
|
|
204
|
+
</details>
|
|
205
|
+
|
|
206
|
+
## Plugins & extension
|
|
207
|
+
|
|
208
|
+
Plugins are a first-class extension surface: a directory + `index.mjs` gives you **agent tool registration (`ctx.tools`), custom DAQ drivers (`ctx.daq.registerDriver`), processors & node templates, HTTP routes, browser panels, settings & i18n, Twin Providers (`ctx.twin`), and line-permission hooks (`ctx.permissions`)** — enable/disable hot-reloads instantly, and a failing plugin is isolated from the main service. Built-ins cover the whole surface: custom driver + derate processor (`aw-matrix-plugin`), vector frames (`daq-vector-demo`), knowledge bridge (`rag-bridge`), diagnostics bridge (`diag-bridge`), serial (`serial-bridge`), twin provider (`twin-injection-default`). External simulators (e.g. MATLAB/Simulink) plug in via “Twin Provider registration” or “plugin tool spawn”, and their outputs feed the optimizer directly. → [Plugin API](./docs/plugins.md) · [SDK](./docs/sdk.md) · [MCP](./docs/mcp.md)
|
|
209
|
+
|
|
210
|
+
## Verification
|
|
211
|
+
|
|
212
|
+
Every claim above has a re-runnable suite behind it. Acceptance follows the **aw-system-acceptance five-layer flow** (static gates → unit & contract → live core loops → regression → plugin/tool surface). The 2026-10-29 full round: **24 suites/checks, ~1100+ assertions, all green**; the real-device integration matrix (`e2e-golive-matrix`) **21/21** — five real protocol stacks connected, platform samples equal device-side values, four-protocol write-through, agent-token batch dispatch, honest disconnect failure and self-healing; security hardening **29/29**; adversarial error handling **26/26**.
|
|
213
|
+
|
|
214
|
+
**2026-10-31 executable test-card round** (`bench/PIPELINE.md` execution contract, ralplan-consensus planning): static paper-code consistency **100%** (20 anchors) · real five-protocol tier **13/13 (100 points, incl. F5 interception rate = 1 and disconnect recovery)** · **E1a four-arm governance ablation** matches theory exactly (window-breaching writes execute 6/6 without interlock/authorization gate, false blocks stay 0 — mechanism-attribution evidence) · api-live **75/75** · unit 913/913 · **bit-exact reproduction against the 20260914 frozen baseline ×2 (REPRODUCIBLE, across 12 days)** · IDD/RAG plugin integration chain live end-to-end (real PLC scenario + omp/ustc-deepseek-flash: export → IDD deep diagnosis → knowledge ingest (HITL) → retrieval hit) · P12 real-harness transparent closed loop episode (all qualification gates passed; an out-of-surface tool call by a weak model was cancelled on the spot by the event monitor and 153 events frozen as evidence).
|
|
215
|
+
|
|
216
|
+
| Layer | Representative suites (this round) |
|
|
217
|
+
|---|---|
|
|
218
|
+
| Live core loops | line governance 44/44 · ontology 87/87 · model loop 53/53 · optimizer 105/105 · injection closed loop 6/6 · device matrix 21/21 · five-protocol tier 13/13 |
|
|
219
|
+
| Regression | api-live 75/75 · auth matrix 29/29 · template isolation 38/38 · robustness ALL · agent-team 25/25 · error handling 26/26 · E1a ablation 4 arms × 3 rounds |
|
|
220
|
+
| Special | security S1–S16 29/29 · production gates 8/8 · node authority 52/52 · three-mode live 42/42 · frozen-baseline reproduction ×2 |
|
|
221
|
+
|
|
222
|
+
Evidence and reproduction commands: [`docs/audit/evidence/`](./docs/audit/evidence) and [`docs/full-test-plan.md`](./docs/full-test-plan.md); the historical baseline (~1100+ assertions, 2026-09-24) is archived in [this coverage report](./docs/audit/e2e-2026-09-24-full-coverage.md).
|
|
223
|
+
|
|
224
|
+
## Roadmap
|
|
225
|
+
|
|
226
|
+
Delivered: channel runtime & four entry points, five-protocol DAQ/write control, node binding & HITL, recipe versioning & rollback, AML model loop & optimizer, ontology service, plugin system v2, 3D twin, scheduled jobs, 14-engine harness registry, bilingual docs — the full list lives in the [changelog](./changelog.md).
|
|
227
|
+
|
|
228
|
+
In progress / planned: **alarm outbound** (email/webhook) + acknowledgment workflow · **edge deployment** (edge-agent + central broker) · **CI pipeline** (typecheck + lint + e2e) · production hardening (TLS/MQTT auth/OPC UA signing) · more scenario templates & benchmarks.
|
|
229
|
+
|
|
230
|
+
## Research paper
|
|
231
|
+
|
|
232
|
+
The governance mechanisms are written up as **“Grading Machine-Originated Plant Writes: Separately Inspectable Evidence for Industrial Agent Teams”** (IEEE TII submission under review). Sources and review records: [`paper/tii/SUBMISSION-IEEE-TII/`](./paper/tii/SUBMISSION-IEEE-TII/); every mechanism claim is backed by in-repo evidence ([`docs/benchmarks/`](./docs/benchmarks) · [`docs/experiments/`](./docs/experiments) · [`docs/audit/`](./docs/audit)).
|
|
233
|
+
|
|
234
|
+
## Contributing
|
|
235
|
+
|
|
236
|
+
Issues and PRs welcome. Before a PR: ① read the contract you are changing ([plugins](./docs/plugins.md) / [SDK](./docs/sdk.md) / [CLI](./docs/cli.md)); ② run gates locally (`pnpm typecheck && pnpm lint`, add a real E2E for behavior changes); ③ conventional commits (enforced by the `commitlint` hook); ④ run `aw doctor` before filing a bug.
|
|
237
|
+
|
|
238
|
+
## Security
|
|
239
|
+
|
|
240
|
+
Please **do not** open public issues for vulnerabilities — report privately via [GitHub Security Advisories](https://github.com/kingdol666/AgentWorkShop/security/advisories/new). Before pointing AgentWorkShop at real devices, review the interlocks, safe ranges and HITL settings in `config.yml` — the default posture is advisory, and plant-side logic always holds the final veto.
|
|
241
|
+
|
|
242
|
+
## License
|
|
243
|
+
|
|
244
|
+
[Apache 2.0](./LICENSE) (permissive; commercial and production use allowed).
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
<div align="center">
|
|
249
|
+
|
|
250
|
+
**If this project is useful to you, a ⭐ helps others find it.**
|
|
251
|
+
|
|
252
|
+
Current version: **v0.8.8** — [Releases](https://github.com/kingdol666/AgentWorkShop/releases) · [Changelog](./changelog.md) · [Documentation](https://kingdol666.github.io/AgentWorkShop)
|
|
253
|
+
|
|
254
|
+
</div>
|