@skaile/workspaces 5.7.0 → 5.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +114 -0
- package/dist/app-sdk/index.js +1 -1
- package/dist/{asset-feeds-K36CR52Q.js → asset-feeds-EYRZR4K5.js} +54 -30
- package/dist/asset-feeds-EYRZR4K5.js.map +1 -0
- package/dist/asset-manager/catalog-deployer.js +9 -9
- package/dist/asset-manager/index.js +15 -15
- package/dist/asset-manager/installer.js +11 -11
- package/dist/asset-manager/renderers.js +10 -10
- package/dist/asset-manager/src/index.d.ts +268 -24
- package/dist/asset-manager/src/index.d.ts.map +1 -1
- package/dist/asset-manager/src/install-agent.d.ts +11 -0
- package/dist/asset-manager/src/install-agent.d.ts.map +1 -1
- package/dist/asset-manager/src/installer.d.ts +2 -2
- package/dist/asset-manager/src/installer.d.ts.map +1 -1
- package/dist/bridge/drivers/claude-sdk.js +147 -211
- package/dist/bridge/drivers/claude-sdk.js.map +1 -1
- package/dist/bridge/drivers/codex.js +90 -66
- package/dist/bridge/drivers/codex.js.map +1 -1
- package/dist/bridge/drivers/continue.js +14 -15
- package/dist/bridge/drivers/continue.js.map +1 -1
- package/dist/bridge/drivers/echo.js +4 -4
- package/dist/bridge/drivers/gemini.js +8 -8
- package/dist/bridge/drivers/goose.js +14 -15
- package/dist/bridge/drivers/goose.js.map +1 -1
- package/dist/bridge/drivers/omp.js +68 -104
- package/dist/bridge/drivers/omp.js.map +1 -1
- package/dist/bridge/drivers/opencode.js +14 -15
- package/dist/bridge/drivers/opencode.js.map +1 -1
- package/dist/bridge/drivers/qwen.js +8 -8
- package/dist/bridge/index.js +16 -17
- package/dist/bridge/src/codex/managed-driver.d.ts +13 -10
- package/dist/bridge/src/codex/managed-driver.d.ts.map +1 -1
- package/dist/bridge/src/drivers/_subprocess-cli.d.ts +12 -2
- package/dist/bridge/src/drivers/_subprocess-cli.d.ts.map +1 -1
- package/dist/bridge/src/drivers/claude-sdk.d.ts +37 -62
- package/dist/bridge/src/drivers/claude-sdk.d.ts.map +1 -1
- package/dist/bridge/src/drivers/codex.d.ts +26 -10
- package/dist/bridge/src/drivers/codex.d.ts.map +1 -1
- package/dist/bridge/src/drivers/continue.d.ts +2 -2
- package/dist/bridge/src/drivers/continue.d.ts.map +1 -1
- package/dist/bridge/src/drivers/gemini.d.ts +2 -2
- package/dist/bridge/src/drivers/gemini.d.ts.map +1 -1
- package/dist/bridge/src/drivers/goose.d.ts +2 -2
- package/dist/bridge/src/drivers/goose.d.ts.map +1 -1
- package/dist/bridge/src/drivers/omp.d.ts +24 -35
- package/dist/bridge/src/drivers/omp.d.ts.map +1 -1
- package/dist/bridge/src/drivers/opencode.d.ts +2 -2
- package/dist/bridge/src/drivers/opencode.d.ts.map +1 -1
- package/dist/bridge/src/drivers/recovery-policy.d.ts +79 -0
- package/dist/bridge/src/drivers/recovery-policy.d.ts.map +1 -0
- package/dist/bridge/src/index.d.ts +1 -0
- package/dist/bridge/src/index.d.ts.map +1 -1
- package/dist/bridge/src/reconfigure-ledger.d.ts +117 -0
- package/dist/bridge/src/reconfigure-ledger.d.ts.map +1 -0
- package/dist/bridge/src/types.d.ts +57 -6
- package/dist/bridge/src/types.d.ts.map +1 -1
- package/dist/{chunk-WIEC3ZE4.js → chunk-2FRUUDZY.js} +5 -5
- package/dist/{chunk-WIEC3ZE4.js.map → chunk-2FRUUDZY.js.map} +1 -1
- package/dist/{chunk-O4Z7MAW7.js → chunk-2LWYNQK7.js} +3 -3
- package/dist/{chunk-O4Z7MAW7.js.map → chunk-2LWYNQK7.js.map} +1 -1
- package/dist/{chunk-OOLT6HGP.js → chunk-36AFURKZ.js} +7 -7
- package/dist/{chunk-OOLT6HGP.js.map → chunk-36AFURKZ.js.map} +1 -1
- package/dist/{chunk-DFFD4BFG.js → chunk-4MQS7CAF.js} +174 -86
- package/dist/chunk-4MQS7CAF.js.map +1 -0
- package/dist/{chunk-RNPHRRLG.js → chunk-4PTSR4UU.js} +3 -3
- package/dist/{chunk-RNPHRRLG.js.map → chunk-4PTSR4UU.js.map} +1 -1
- package/dist/{chunk-34C42MJX.js → chunk-6GRX5L6A.js} +5 -5
- package/dist/{chunk-34C42MJX.js.map → chunk-6GRX5L6A.js.map} +1 -1
- package/dist/{chunk-NFGRW3L7.js → chunk-7RGTAEG6.js} +3 -3
- package/dist/{chunk-NFGRW3L7.js.map → chunk-7RGTAEG6.js.map} +1 -1
- package/dist/{chunk-BTK7ECLH.js → chunk-AWQYXZVG.js} +15 -6
- package/dist/chunk-AWQYXZVG.js.map +1 -0
- package/dist/{chunk-XBSQ4KMC.js → chunk-B4X2N7JQ.js} +205 -3
- package/dist/chunk-B4X2N7JQ.js.map +1 -0
- package/dist/{chunk-FRHE7FFB.js → chunk-B6GIW55K.js} +5 -3
- package/dist/chunk-B6GIW55K.js.map +1 -0
- package/dist/{chunk-JLSCA5T5.js → chunk-BJNUNQAW.js} +3 -3
- package/dist/{chunk-JLSCA5T5.js.map → chunk-BJNUNQAW.js.map} +1 -1
- package/dist/{chunk-RVIZQ5XD.js → chunk-BTE2V4IW.js} +3 -3
- package/dist/{chunk-RVIZQ5XD.js.map → chunk-BTE2V4IW.js.map} +1 -1
- package/dist/{chunk-EB4XN3KE.js → chunk-CGT45WN7.js} +3 -3
- package/dist/{chunk-EB4XN3KE.js.map → chunk-CGT45WN7.js.map} +1 -1
- package/dist/{chunk-47ZD34KB.js → chunk-CIFS5K6T.js} +3 -3
- package/dist/{chunk-47ZD34KB.js.map → chunk-CIFS5K6T.js.map} +1 -1
- package/dist/{chunk-FAP63KV7.js → chunk-CKQEIY43.js} +4 -4
- package/dist/{chunk-FAP63KV7.js.map → chunk-CKQEIY43.js.map} +1 -1
- package/dist/{chunk-AVCUPPG6.js → chunk-EF7NPDDU.js} +4 -4
- package/dist/{chunk-AVCUPPG6.js.map → chunk-EF7NPDDU.js.map} +1 -1
- package/dist/chunk-EPBKISS5.js +84 -0
- package/dist/chunk-EPBKISS5.js.map +1 -0
- package/dist/{chunk-THEJJBOU.js → chunk-F2EKONM7.js} +3 -3
- package/dist/{chunk-THEJJBOU.js.map → chunk-F2EKONM7.js.map} +1 -1
- package/dist/{chunk-DMLDYFDS.js → chunk-F3RDEH5U.js} +7 -4
- package/dist/chunk-F3RDEH5U.js.map +1 -0
- package/dist/{chunk-SZWRPEF7.js → chunk-FTJJO3EM.js} +39 -29
- package/dist/chunk-FTJJO3EM.js.map +1 -0
- package/dist/{chunk-PSA6ONFB.js → chunk-FVJK4QWM.js} +4 -4
- package/dist/{chunk-PSA6ONFB.js.map → chunk-FVJK4QWM.js.map} +1 -1
- package/dist/{chunk-LBQ4BBX4.js → chunk-FZNG4V4J.js} +16 -30
- package/dist/chunk-FZNG4V4J.js.map +1 -0
- package/dist/{chunk-SWO25LTO.js → chunk-GB7WDMH2.js} +4 -4
- package/dist/{chunk-SWO25LTO.js.map → chunk-GB7WDMH2.js.map} +1 -1
- package/dist/{chunk-NARITJS2.js → chunk-GCICGXDD.js} +3 -3
- package/dist/{chunk-NARITJS2.js.map → chunk-GCICGXDD.js.map} +1 -1
- package/dist/{chunk-TTPSDC2G.js → chunk-GTILM2CI.js} +34 -13
- package/dist/chunk-GTILM2CI.js.map +1 -0
- package/dist/{chunk-EU3Q5AQ4.js → chunk-GXXFLBUQ.js} +23 -32
- package/dist/chunk-GXXFLBUQ.js.map +1 -0
- package/dist/{chunk-D5HOETOB.js → chunk-H7QUDDKH.js} +981 -126
- package/dist/chunk-H7QUDDKH.js.map +1 -0
- package/dist/{chunk-GIC3G5YG.js → chunk-HG34RNTK.js} +7 -13
- package/dist/chunk-HG34RNTK.js.map +1 -0
- package/dist/{chunk-LXY4BUA3.js → chunk-HYDRDNKN.js} +9 -5
- package/dist/chunk-HYDRDNKN.js.map +1 -0
- package/dist/{chunk-N6FBTXQ5.js → chunk-I6NLLJHZ.js} +2 -2
- package/dist/{chunk-N6FBTXQ5.js.map → chunk-I6NLLJHZ.js.map} +1 -1
- package/dist/{chunk-NWQB7UTY.js → chunk-IONAUNWB.js} +3 -3
- package/dist/{chunk-NWQB7UTY.js.map → chunk-IONAUNWB.js.map} +1 -1
- package/dist/{chunk-CT6NQSA4.js → chunk-ISHJITXJ.js} +3 -3
- package/dist/{chunk-CT6NQSA4.js.map → chunk-ISHJITXJ.js.map} +1 -1
- package/dist/chunk-IZCR27MU.js +60 -0
- package/dist/chunk-IZCR27MU.js.map +1 -0
- package/dist/{chunk-LCU5U5IW.js → chunk-JAKOMFC6.js} +67 -19
- package/dist/chunk-JAKOMFC6.js.map +1 -0
- package/dist/{chunk-VOOI7B2L.js → chunk-LEMHVDET.js} +86 -66
- package/dist/chunk-LEMHVDET.js.map +1 -0
- package/dist/{chunk-37FTLYFP.js → chunk-LNFKL23K.js} +3 -3
- package/dist/{chunk-37FTLYFP.js.map → chunk-LNFKL23K.js.map} +1 -1
- package/dist/{chunk-6UFFKMVC.js → chunk-LSXHED6I.js} +6 -6
- package/dist/{chunk-6UFFKMVC.js.map → chunk-LSXHED6I.js.map} +1 -1
- package/dist/{chunk-XUUYAS3Z.js → chunk-M3WPBTGJ.js} +3 -3
- package/dist/{chunk-XUUYAS3Z.js.map → chunk-M3WPBTGJ.js.map} +1 -1
- package/dist/{chunk-QZLWJETK.js → chunk-MGGFBZWA.js} +3 -3
- package/dist/{chunk-QZLWJETK.js.map → chunk-MGGFBZWA.js.map} +1 -1
- package/dist/{chunk-53MSCGR2.js → chunk-NPLPCRW5.js} +5 -5
- package/dist/{chunk-53MSCGR2.js.map → chunk-NPLPCRW5.js.map} +1 -1
- package/dist/{chunk-QCI6D7E4.js → chunk-NUELZWCF.js} +266 -170
- package/dist/chunk-NUELZWCF.js.map +1 -0
- package/dist/{chunk-BWZF2ZIF.js → chunk-OFBIWVCR.js} +3 -3
- package/dist/{chunk-BWZF2ZIF.js.map → chunk-OFBIWVCR.js.map} +1 -1
- package/dist/{chunk-IZLQ4GDO.js → chunk-P23M65LB.js} +43 -21
- package/dist/chunk-P23M65LB.js.map +1 -0
- package/dist/{chunk-G67BOI2J.js → chunk-PMECEZK3.js} +15 -9
- package/dist/chunk-PMECEZK3.js.map +1 -0
- package/dist/{chunk-GWXFSLBK.js → chunk-PTSGWKHR.js} +4 -4
- package/dist/{chunk-GWXFSLBK.js.map → chunk-PTSGWKHR.js.map} +1 -1
- package/dist/{chunk-OKGUDNDT.js → chunk-Q6E6FM7P.js} +35 -33
- package/dist/chunk-Q6E6FM7P.js.map +1 -0
- package/dist/{chunk-CWM3MYGX.js → chunk-QOP6KDFR.js} +8 -9
- package/dist/chunk-QOP6KDFR.js.map +1 -0
- package/dist/{chunk-O7VPNKYN.js → chunk-QVNRCDTV.js} +23 -7
- package/dist/chunk-QVNRCDTV.js.map +1 -0
- package/dist/{chunk-UX3K4RKE.js → chunk-S53LOR7B.js} +3 -3
- package/dist/{chunk-UX3K4RKE.js.map → chunk-S53LOR7B.js.map} +1 -1
- package/dist/{chunk-KNWCFEWU.js → chunk-SH5D7U7N.js} +20 -7
- package/dist/{chunk-KNWCFEWU.js.map → chunk-SH5D7U7N.js.map} +1 -1
- package/dist/{chunk-KM7XWC4Y.js → chunk-UAROCOXF.js} +3 -3
- package/dist/{chunk-KM7XWC4Y.js.map → chunk-UAROCOXF.js.map} +1 -1
- package/dist/{chunk-JMKB7IB4.js → chunk-UMVKJM4Q.js} +4 -4
- package/dist/chunk-UMVKJM4Q.js.map +1 -0
- package/dist/{chunk-HCYS7GFP.js → chunk-V2DXZYBB.js} +3 -3
- package/dist/{chunk-HCYS7GFP.js.map → chunk-V2DXZYBB.js.map} +1 -1
- package/dist/{chunk-IUUYRXT6.js → chunk-W5DWWE4Y.js} +4 -4
- package/dist/{chunk-IUUYRXT6.js.map → chunk-W5DWWE4Y.js.map} +1 -1
- package/dist/{chunk-FK6HPLQA.js → chunk-WTQ3TATB.js} +3 -3
- package/dist/{chunk-FK6HPLQA.js.map → chunk-WTQ3TATB.js.map} +1 -1
- package/dist/{chunk-7FJQT3GT.js → chunk-Y4N2NUZD.js} +4 -4
- package/dist/{chunk-7FJQT3GT.js.map → chunk-Y4N2NUZD.js.map} +1 -1
- package/dist/{chunk-6VRJH4MR.js → chunk-Y7QA2OLD.js} +6 -6
- package/dist/{chunk-6VRJH4MR.js.map → chunk-Y7QA2OLD.js.map} +1 -1
- package/dist/{chunk-74EEFB52.js → chunk-YSHVQGUS.js} +115 -27
- package/dist/chunk-YSHVQGUS.js.map +1 -0
- package/dist/{chunk-6C654TFI.js → chunk-ZAOGFXDO.js} +36 -8
- package/dist/chunk-ZAOGFXDO.js.map +1 -0
- package/dist/{chunk-MKLBK7HI.js → chunk-ZKSJMZKD.js} +17 -13
- package/dist/chunk-ZKSJMZKD.js.map +1 -0
- package/dist/cli/index.js +373 -188
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/src/asset-feeds.d.ts +5 -2
- package/dist/cli/src/asset-feeds.d.ts.map +1 -1
- package/dist/cli/src/commands/asset-cmd.d.ts.map +1 -1
- package/dist/cli/src/commands/catalog.d.ts +15 -2
- package/dist/cli/src/commands/catalog.d.ts.map +1 -1
- package/dist/cli/src/commands/library-cmd.d.ts.map +1 -1
- package/dist/cli/src/commands/library-index.d.ts +8 -0
- package/dist/cli/src/commands/library-index.d.ts.map +1 -1
- package/dist/cli/src/commands/library-publish.d.ts.map +1 -1
- package/dist/cli/src/commands/manage.d.ts.map +1 -1
- package/dist/cli/src/commands/outdated.d.ts +7 -2
- package/dist/cli/src/commands/outdated.d.ts.map +1 -1
- package/dist/cli/src/commands/project.d.ts +2 -0
- package/dist/cli/src/commands/project.d.ts.map +1 -1
- package/dist/cli/src/commands/publish-core.d.ts +10 -1
- package/dist/cli/src/commands/publish-core.d.ts.map +1 -1
- package/dist/cli/src/commands/session.d.ts.map +1 -1
- package/dist/cli/src/commands/source.d.ts +14 -0
- package/dist/cli/src/commands/source.d.ts.map +1 -1
- package/dist/cli/src/commands/tree.d.ts.map +1 -1
- package/dist/cli/src/commands/update.d.ts.map +1 -1
- package/dist/cli/src/commands/validate.d.ts.map +1 -1
- package/dist/cli/src/flow-discovery.d.ts +8 -5
- package/dist/cli/src/flow-discovery.d.ts.map +1 -1
- package/dist/cli/src/open-library.d.ts +0 -11
- package/dist/cli/src/open-library.d.ts.map +1 -1
- package/dist/cli/src/skill-checks.d.ts +11 -2
- package/dist/cli/src/skill-checks.d.ts.map +1 -1
- package/dist/connectors/config.js +5 -5
- package/dist/connectors/index.js +25 -26
- package/dist/connectors/src/access-policy.d.ts +33 -0
- package/dist/connectors/src/access-policy.d.ts.map +1 -0
- package/dist/connectors/src/connector-manager.d.ts.map +1 -1
- package/dist/connectors/src/index.d.ts +2 -0
- package/dist/connectors/src/index.d.ts.map +1 -1
- package/dist/connectors-O6Y6VESP.js +44 -0
- package/dist/{connectors-SSOTIDHT.js.map → connectors-O6Y6VESP.js.map} +1 -1
- package/dist/connectors-shared/index.js +2 -2
- package/dist/core/index.js +8 -8
- package/dist/core/logging.js +1 -1
- package/dist/core/manifest.js +2 -2
- package/dist/core/models.js +1 -1
- package/dist/core/publish-manifest.js +2 -2
- package/dist/core/ref.js +1 -1
- package/dist/core/runtime-assets.js +5 -5
- package/dist/core/src/index.d.ts +3 -3
- package/dist/core/src/index.d.ts.map +1 -1
- package/dist/core/src/logging/config.d.ts +9 -1
- package/dist/core/src/logging/config.d.ts.map +1 -1
- package/dist/core/src/manifest.d.ts +11 -1
- package/dist/core/src/manifest.d.ts.map +1 -1
- package/dist/core/src/models.d.ts +14 -6
- package/dist/core/src/models.d.ts.map +1 -1
- package/dist/core/src/repo-manager.d.ts +41 -6
- package/dist/core/src/repo-manager.d.ts.map +1 -1
- package/dist/core/src/store.d.ts +16 -2
- package/dist/core/src/store.d.ts.map +1 -1
- package/dist/core/src/workspace-config.d.ts +10 -1
- package/dist/core/src/workspace-config.d.ts.map +1 -1
- package/dist/core/store.js +1 -1
- package/dist/core/workspace-config.js +4 -4
- package/dist/deploy/index.js +8 -8
- package/dist/discovery/index.js +5 -5
- package/dist/{ensure-sources-277VI7R3.js → ensure-sources-SKLNM4UZ.js} +18 -18
- package/dist/{ensure-sources-277VI7R3.js.map → ensure-sources-SKLNM4UZ.js.map} +1 -1
- package/dist/factory-assets/connectors/box.js +25 -26
- package/dist/factory-assets/connectors/deploy.js +25 -26
- package/dist/factory-assets/connectors/devserver.js +25 -26
- package/dist/factory-assets/connectors/flow/adapter.d.ts +6 -0
- package/dist/factory-assets/connectors/flow/adapter.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/adapter.js +25 -26
- package/dist/factory-assets/connectors/flow/contract/expression.d.ts +3 -0
- package/dist/factory-assets/connectors/flow/contract/expression.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/contract/output-fields.d.ts +1 -1
- package/dist/factory-assets/connectors/flow/contract/output-fields.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/contract/schema.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/contract.js +4 -4
- package/dist/factory-assets/connectors/flow/engine/flow-output.d.ts +4 -3
- package/dist/factory-assets/connectors/flow/engine/flow-output.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/engine/output-schema.d.ts +6 -1
- package/dist/factory-assets/connectors/flow/engine/output-schema.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/engine.js +12 -12
- package/dist/factory-assets/connectors/flow/inline-sub-flow-host.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/prompt-fragments.js +3 -3
- package/dist/factory-assets/connectors/flow/run-flow.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/run-flow.js +27 -28
- package/dist/factory-assets/connectors/flow.js +25 -26
- package/dist/factory-assets/connectors/git/config.d.ts.map +1 -1
- package/dist/factory-assets/connectors/git.js +25 -26
- package/dist/factory-assets/connectors/gmail.js +25 -26
- package/dist/factory-assets/connectors/googledrive.js +25 -26
- package/dist/factory-assets/connectors/local.js +25 -26
- package/dist/factory-assets/connectors/mattermost.js +25 -26
- package/dist/factory-assets/connectors/memory.js +25 -26
- package/dist/factory-assets/connectors/minio.js +25 -26
- package/dist/factory-assets/connectors/postgres.js +25 -26
- package/dist/factory-assets/connectors/s3.js +25 -26
- package/dist/factory-assets/connectors/sharepoint.js +25 -26
- package/dist/factory-assets/connectors/sqlite.js +25 -26
- package/dist/factory-assets/connectors/static-server.js +25 -26
- package/dist/factory-assets/connectors/tunnel.js +25 -26
- package/dist/factory-assets/connectors/webdav.js +25 -26
- package/dist/factory-assets/connectors/xstate-store.js +25 -26
- package/dist/factory-assets/connectors/xstate.js +25 -26
- package/dist/factory-assets/skills/skaile-author-asset/SKILL.md +10 -7
- package/dist/{flows-J2UEU2QM.js → flows-CBYRSAGS.js} +13 -13
- package/dist/{flows-J2UEU2QM.js.map → flows-CBYRSAGS.js.map} +1 -1
- package/dist/{helpers-KC5O7CML.js → helpers-MWZDRBLD.js} +18 -18
- package/dist/{helpers-KC5O7CML.js.map → helpers-MWZDRBLD.js.map} +1 -1
- package/dist/library/index.js +12 -12
- package/dist/library/install.js +3 -3
- package/dist/library/src/index.d.ts +3 -1
- package/dist/library/src/index.d.ts.map +1 -1
- package/dist/library/src/local/scan-authoring-libraries.d.ts +43 -0
- package/dist/library/src/local/scan-authoring-libraries.d.ts.map +1 -0
- package/dist/library/src/manifest-writer.d.ts +26 -3
- package/dist/library/src/manifest-writer.d.ts.map +1 -1
- package/dist/library/src/sync/git-driver.d.ts.map +1 -1
- package/dist/{library-publish-FGXF5TJO.js → library-publish-PICMDSB2.js} +73 -37
- package/dist/library-publish-PICMDSB2.js.map +1 -0
- package/dist/open-library-OG457THY.js +40 -0
- package/dist/{open-library-P3D337NH.js.map → open-library-OG457THY.js.map} +1 -1
- package/dist/open-registry-ZUZJ7MS7.js +32 -0
- package/dist/{open-registry-Z3P2X2AB.js.map → open-registry-ZUZJ7MS7.js.map} +1 -1
- package/dist/paths-FQ64OLJG.js +22 -0
- package/dist/{paths-JKEKXM52.js.map → paths-FQ64OLJG.js.map} +1 -1
- package/dist/{plugin-store-WI4MZJLP.js → plugin-store-MPAMD5OT.js} +10 -10
- package/dist/{plugin-store-WI4MZJLP.js.map → plugin-store-MPAMD5OT.js.map} +1 -1
- package/dist/project-2GFT5LEZ.js +41 -0
- package/dist/{project-WFUDVYNN.js.map → project-2GFT5LEZ.js.map} +1 -1
- package/dist/resolver/index.js +9 -9
- package/dist/runner/index.js +40 -41
- package/dist/runner/src/logging-bootstrap.d.ts +6 -0
- package/dist/runner/src/logging-bootstrap.d.ts.map +1 -1
- package/dist/runner/src/reconfigure-handler.d.ts +38 -17
- package/dist/runner/src/reconfigure-handler.d.ts.map +1 -1
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/runner/src/session-capability-wiring.d.ts +0 -2
- package/dist/runner/src/session-capability-wiring.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +15 -15
- package/dist/sdk/bridge.js +16 -17
- package/dist/sdk/core.js +8 -8
- package/dist/sdk/flow.js +12 -12
- package/dist/sdk/index.js +68 -45
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/resolver.js +9 -9
- package/dist/sdk/runner.js +40 -41
- package/dist/sdk/session.js +2 -2
- package/dist/sdk/src/agent-session.d.ts +8 -0
- package/dist/sdk/src/agent-session.d.ts.map +1 -1
- package/dist/sdk/store.js +2 -1
- package/dist/sdk/types.js +1 -1
- package/dist/session/index.js +2 -2
- package/dist/{setup-RAMLTORM.js → setup-WHMCSIF2.js} +26 -27
- package/dist/setup-WHMCSIF2.js.map +1 -0
- package/dist/skills-TVO26Y4V.js +26 -0
- package/dist/{skills-EOHZ2DZ4.js.map → skills-TVO26Y4V.js.map} +1 -1
- package/dist/source-LKOFTOEK.js +41 -0
- package/dist/{source-FYVSFYEI.js.map → source-LKOFTOEK.js.map} +1 -1
- package/dist/{source-manifest-publish-4FPIPPLV.js → source-manifest-publish-L5J3QXER.js} +27 -27
- package/dist/{source-manifest-publish-4FPIPPLV.js.map → source-manifest-publish-L5J3QXER.js.map} +1 -1
- package/dist/store/index.js +2 -1
- package/dist/store/src/store.d.ts +8 -5
- package/dist/store/src/store.d.ts.map +1 -1
- package/dist/tui/index.js +40 -41
- package/dist/tui/index.js.map +1 -1
- package/dist/types/index.js +1 -1
- package/dist/types/manifests.js +1 -1
- package/dist/types/src/ask-slots.d.ts +68 -0
- package/dist/types/src/ask-slots.d.ts.map +1 -0
- package/dist/types/src/delivery.d.ts.map +1 -1
- package/dist/types/src/events.d.ts +29 -1
- package/dist/types/src/events.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/manifests/index.d.ts +1 -1
- package/dist/types/src/manifests/index.d.ts.map +1 -1
- package/dist/types/src/manifests/preset.d.ts +4 -0
- package/dist/types/src/manifests/preset.d.ts.map +1 -1
- package/dist/types/src/version.d.ts +12 -1
- package/dist/types/src/version.d.ts.map +1 -1
- package/dist/workspace-plugin/adapters/mcp.js +32 -33
- package/dist/workspace-plugin/adapters/omp.js +14 -14
- package/dist/workspace-plugin/index.js +2 -2
- package/package.json +1 -1
- package/dist/asset-feeds-K36CR52Q.js.map +0 -1
- package/dist/chunk-6C654TFI.js.map +0 -1
- package/dist/chunk-74EEFB52.js.map +0 -1
- package/dist/chunk-BTK7ECLH.js.map +0 -1
- package/dist/chunk-CWM3MYGX.js.map +0 -1
- package/dist/chunk-D5HOETOB.js.map +0 -1
- package/dist/chunk-DFFD4BFG.js.map +0 -1
- package/dist/chunk-DMLDYFDS.js.map +0 -1
- package/dist/chunk-EINLFFP6.js +0 -59
- package/dist/chunk-EINLFFP6.js.map +0 -1
- package/dist/chunk-EU3Q5AQ4.js.map +0 -1
- package/dist/chunk-FRHE7FFB.js.map +0 -1
- package/dist/chunk-G67BOI2J.js.map +0 -1
- package/dist/chunk-GIC3G5YG.js.map +0 -1
- package/dist/chunk-IZLQ4GDO.js.map +0 -1
- package/dist/chunk-JMKB7IB4.js.map +0 -1
- package/dist/chunk-LBQ4BBX4.js.map +0 -1
- package/dist/chunk-LCU5U5IW.js.map +0 -1
- package/dist/chunk-LXY4BUA3.js.map +0 -1
- package/dist/chunk-MKLBK7HI.js.map +0 -1
- package/dist/chunk-O7VPNKYN.js.map +0 -1
- package/dist/chunk-OKGUDNDT.js.map +0 -1
- package/dist/chunk-QCI6D7E4.js.map +0 -1
- package/dist/chunk-SZWRPEF7.js.map +0 -1
- package/dist/chunk-TTPSDC2G.js.map +0 -1
- package/dist/chunk-VOOI7B2L.js.map +0 -1
- package/dist/chunk-XBSQ4KMC.js.map +0 -1
- package/dist/connectors-SSOTIDHT.js +0 -45
- package/dist/library-publish-FGXF5TJO.js.map +0 -1
- package/dist/open-library-P3D337NH.js +0 -40
- package/dist/open-registry-Z3P2X2AB.js +0 -32
- package/dist/paths-JKEKXM52.js +0 -22
- package/dist/project-WFUDVYNN.js +0 -41
- package/dist/setup-RAMLTORM.js.map +0 -1
- package/dist/skills-EOHZ2DZ4.js +0 -26
- package/dist/source-FYVSFYEI.js +0 -41
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { DriverTarget } from "@skaile/workspaces/plugin-registry";
|
|
2
2
|
import type { TokenUsage } from "@skaile/workspaces/types";
|
|
3
3
|
import { type ModelEntry } from "../models.js";
|
|
4
|
-
import { type AgentConfig, AgentDriver, type
|
|
4
|
+
import { type AgentConfig, AgentDriver, type DriverInfo, type ReconfigureOutcome, type ReconfigurePatch } from "../types.js";
|
|
5
5
|
/**
|
|
6
6
|
* Agent driver for the OpenAI Codex SDK.
|
|
7
7
|
*
|
|
@@ -31,13 +31,18 @@ import { type AgentConfig, AgentDriver, type AgentPromptInput, type DriverInfo }
|
|
|
31
31
|
* file. A session with no addressable registry entry renders nothing and
|
|
32
32
|
* falls back to codex's built-in providers with `OPENAI_API_KEY`.
|
|
33
33
|
*
|
|
34
|
+
* **Standalone only** — the constructor throws `CODEX_MANAGED_REQUIRES_FACTORY` for
|
|
35
|
+
* a managed config (see {@link isManagedCodexConfig}); build through
|
|
36
|
+
* `createDriver("codex", config)` / `codexDriverTarget.create(config)`, which pick
|
|
37
|
+
* the managed App Server adapter, so managed auth never falls back to local auth.
|
|
38
|
+
*
|
|
34
39
|
* @docLink packages/bridge/drivers#codex-driver
|
|
35
40
|
*/
|
|
36
41
|
export declare class CodexDriver extends AgentDriver {
|
|
37
42
|
readonly driverInfo: DriverInfo;
|
|
38
43
|
private readonly log;
|
|
39
44
|
private config;
|
|
40
|
-
private readonly
|
|
45
|
+
private readonly reconfig;
|
|
41
46
|
private thread;
|
|
42
47
|
private running;
|
|
43
48
|
private abortController;
|
|
@@ -49,11 +54,14 @@ export declare class CodexDriver extends AgentDriver {
|
|
|
49
54
|
private _lastTokens;
|
|
50
55
|
constructor(config: AgentConfig);
|
|
51
56
|
get runtimeSessionId(): string | undefined;
|
|
52
|
-
get acceptsReplyAsPrompt(): boolean;
|
|
53
57
|
dispose(): Promise<void>;
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
58
|
+
/**
|
|
59
|
+
* Store a model / thinking / effort change. The SDK thread is built from
|
|
60
|
+
* `config` in {@link start}, so the next thread start (first prompt, or after
|
|
61
|
+
* `resetSession()`) uses it; a thread already running keeps its options.
|
|
62
|
+
*/
|
|
63
|
+
reconfigure(patch: ReconfigurePatch): Promise<ReconfigureOutcome>;
|
|
64
|
+
getModel(): string | undefined;
|
|
57
65
|
start(): Promise<void>;
|
|
58
66
|
prompt(message: string): Promise<void>;
|
|
59
67
|
abort(): Promise<void>;
|
|
@@ -77,8 +85,6 @@ export declare class CodexDriver extends AgentDriver {
|
|
|
77
85
|
private selectedProviderEntry;
|
|
78
86
|
resetSession(): Promise<void>;
|
|
79
87
|
getTokenUsage(): TokenUsage | null;
|
|
80
|
-
reconfigure(patch: Partial<Pick<AgentConfig, "model" | "thinking" | "effort">>): void;
|
|
81
|
-
getModel(): string | undefined;
|
|
82
88
|
/**
|
|
83
89
|
* Write a combined instructions file for Codex CLI's `model_instructions_file` config.
|
|
84
90
|
* Combines the agent's pre-rendered identity (`.codex/skaile-agents/<agentName>.md`, written
|
|
@@ -98,10 +104,20 @@ export declare class CodexDriver extends AgentDriver {
|
|
|
98
104
|
private toObject;
|
|
99
105
|
private classifyErrorMessage;
|
|
100
106
|
}
|
|
107
|
+
/**
|
|
108
|
+
* Whether `config` selects the managed (App Server) adapter: a `managedRuntime`
|
|
109
|
+
* is set, or `authSource` is set and not `"local"`. Single source for the
|
|
110
|
+
* standalone-vs-managed decision; `codexDriverTarget` is the only place that
|
|
111
|
+
* acts on it, and the standalone `CodexDriver` constructor refuses such a
|
|
112
|
+
* config so managed auth never falls back to local credentials.
|
|
113
|
+
*/
|
|
114
|
+
export declare function isManagedCodexConfig(config: AgentConfig): boolean;
|
|
101
115
|
/**
|
|
102
116
|
* `DriverTarget` wrapper for the codex driver. Registered into the plugin
|
|
103
|
-
* registry by `registerBuiltinDrivers()`.
|
|
104
|
-
* `
|
|
117
|
+
* registry by `registerBuiltinDrivers()`. Picks the standalone SDK adapter
|
|
118
|
+
* (`CodexDriver`) or the managed App Server adapter (`ManagedCodexDriver`) once
|
|
119
|
+
* per config. The Codex SDK is lazy-imported inside `start()` — this target
|
|
120
|
+
* export never pulls it at module top.
|
|
105
121
|
*/
|
|
106
122
|
export declare const codexDriverTarget: DriverTarget<AgentConfig>;
|
|
107
123
|
//# sourceMappingURL=codex.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/codex.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAcnE,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/codex.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAcnE,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AASpE,OAAO,EACL,KAAK,WAAW,EAChB,WAAW,EAIX,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AA4BrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,WAAY,SAAQ,WAAW;IAC1C,QAAQ,CAAC,UAAU,EAAE,UAAU,CAM7B;IAEF,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoC;IACxD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwD;IACjF,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,qBAAqB,CAAuB;IACpD,OAAO,CAAC,mBAAmB,CAAM;IACjC,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,uDAAuD;IACvD,OAAO,CAAC,WAAW,CAA2B;gBAElC,MAAM,EAAE,WAAW;IAM/B,IAAa,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAElD;IAEc,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvC;;;;OAIG;IACM,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAIjE,QAAQ,IAAI,MAAM,GAAG,SAAS;IAI1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA8EtB,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiDtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAInC,IAAW,SAAS,IAAI,OAAO,CAE9B;IAEM,IAAI,IAAI,IAAI;IAOnB;;;;;;;;;OASG;IACY,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAYlD;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAcvB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAS1B,aAAa,IAAI,UAAU,GAAG,IAAI;IAI3C;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IA8B7B,OAAO,CAAC,iBAAiB;IAoEzB,OAAO,CAAC,gBAAgB;IAuCxB,OAAO,CAAC,kBAAkB;IAuC1B,OAAO,CAAC,sBAAsB;IAmC9B,OAAO,CAAC,iBAAiB;IAmCzB,OAAO,CAAC,gBAAgB;IA6BxB,OAAO,CAAC,eAAe;IA4BvB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,oBAAoB;CAoC7B;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAKjE;AAED;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,WAAW,CAkBvD,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { DriverTarget } from "@skaile/workspaces/plugin-registry";
|
|
2
2
|
import type { Logger } from "@skaile/workspaces/types";
|
|
3
3
|
import type { ModelEntry } from "../models.js";
|
|
4
|
-
import type { AgentConfig, DriverInfo } from "../types.js";
|
|
4
|
+
import type { AgentConfig, DriverInfo, ReconfigureApplied } from "../types.js";
|
|
5
5
|
import { SubprocessCliDriver } from "./_subprocess-cli.js";
|
|
6
6
|
/**
|
|
7
7
|
* Agent driver for the **Continue CLI** (`cn`), the model-agnostic agent backed
|
|
@@ -37,7 +37,7 @@ export declare class ContinueDriver extends SubprocessCliDriver {
|
|
|
37
37
|
private providerSession;
|
|
38
38
|
/** The entry + model bound to Continue's `chat` role for this session. */
|
|
39
39
|
private roleBinding;
|
|
40
|
-
|
|
40
|
+
protected onReconfigured(applied: ReconfigureApplied): void;
|
|
41
41
|
getModel(): string | undefined;
|
|
42
42
|
start(): Promise<void>;
|
|
43
43
|
protected buildArgs(message: string, resumeId: string | undefined): string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"continue.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/continue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAa/C,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"continue.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/continue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAa/C,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAA2C,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEpG;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,cAAe,SAAQ,mBAAmB;IACrD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAK7B;IAEF,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAA+B;IAC7D,SAAS,CAAC,QAAQ,CAAC,UAAU,QAAQ;IACrC,SAAS,CAAC,QAAQ,CAAC,WAAW,kBAAkB;IAChD,SAAS,CAAC,QAAQ,CAAC,SAAS,cAAc;IAC1C,mBAA4B,IAAI,EAAG,UAAU,CAAU;IAEvD,OAAO,CAAC,SAAS,CAAC,CAAmB;IAErC,kEAAkE;IAClE,OAAO,CAAC,eAAe;IAKvB,0EAA0E;IAC1E,OAAO,CAAC,WAAW;cAIA,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAI3D,QAAQ,IAAI,MAAM,GAAG,SAAS;IAIxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAarC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE;IAW5E;;;;;;;;;;OAUG;IACH,SAAS,CAAC,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAuB5C,SAAS,CAAC,WAAW,IAAI,MAAM;IAI/B,SAAS,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAyB3C;;;OAGG;IACY,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;CAGnD;AAqCD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,YAAY,CAAC,WAAW,CAY1D,CAAC"}
|
|
@@ -2,7 +2,7 @@ import type { DriverTarget } from "@skaile/workspaces/plugin-registry";
|
|
|
2
2
|
import type { Logger } from "@skaile/workspaces/types";
|
|
3
3
|
import { type ModelEntry } from "../models.js";
|
|
4
4
|
import { type EnvDriverSession, type RegistryModelBinding } from "../provider-materialize/env-drivers.js";
|
|
5
|
-
import type { AgentConfig, DriverInfo } from "../types.js";
|
|
5
|
+
import type { AgentConfig, DriverInfo, ReconfigureApplied } from "../types.js";
|
|
6
6
|
import { SubprocessCliDriver } from "./_subprocess-cli.js";
|
|
7
7
|
/**
|
|
8
8
|
* Shared base for the Gemini-CLI event family. Gemini CLI and Qwen Code (a fork
|
|
@@ -35,7 +35,7 @@ export declare abstract class GeminiFamilyDriver extends SubprocessCliDriver {
|
|
|
35
35
|
* harness cannot — the error names the surface.
|
|
36
36
|
*/
|
|
37
37
|
start(): Promise<void>;
|
|
38
|
-
|
|
38
|
+
protected onReconfigured(applied: ReconfigureApplied): void;
|
|
39
39
|
/** The provider-side model id the harness is actually run with. */
|
|
40
40
|
getModel(): string | undefined;
|
|
41
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/gemini.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAwC,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAGrF,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EAG1B,MAAM,wCAAwC,CAAC;AAGhD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/gemini.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAwC,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAGrF,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EAG1B,MAAM,wCAAwC,CAAC;AAGhD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAA2C,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAQpG;;;;;;;;GAQG;AACH,8BAAsB,kBAAmB,SAAQ,mBAAmB;IAClE,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI;IAkDrC,OAAO,CAAC,SAAS,CAAC,CAAmB;IACrC,OAAO,CAAC,UAAU,CAAC,CAAuB;IAC1C,OAAO,CAAC,eAAe,CAAS;IAEhC,kEAAkE;IAClE,SAAS,CAAC,eAAe,IAAI,gBAAgB;IAK7C;;;;;;;;OAQG;IACH,SAAS,CAAC,eAAe,IAAI,oBAAoB,GAAG,SAAS;IAa7D;;;OAGG;IACY,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;cAKlB,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAOpE,mEAAmE;IAC1D,QAAQ,IAAI,MAAM,GAAG,SAAS;CAGxC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,YAAa,SAAQ,kBAAkB;IAClD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAK7B;IAEF,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAA6B;IAC3D,SAAS,CAAC,QAAQ,CAAC,UAAU,YAAY;IACzC,SAAS,CAAC,QAAQ,CAAC,WAAW,gBAAgB;IAC9C,SAAS,CAAC,QAAQ,CAAC,SAAS,YAAY;IAExC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE;IAY5E,SAAS,CAAC,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAsB5C,SAAS,CAAC,WAAW,IAAI,MAAM;cAIZ,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI;IAalF;;;;;OAKG;IACY,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;CAgBnD;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,WAAW,CAYxD,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { DriverTarget } from "@skaile/workspaces/plugin-registry";
|
|
2
2
|
import type { Logger } from "@skaile/workspaces/types";
|
|
3
3
|
import type { ModelEntry } from "../models.js";
|
|
4
|
-
import type { AgentConfig, DriverInfo } from "../types.js";
|
|
4
|
+
import type { AgentConfig, DriverInfo, ReconfigureApplied } from "../types.js";
|
|
5
5
|
import { SubprocessCliDriver } from "./_subprocess-cli.js";
|
|
6
6
|
/**
|
|
7
7
|
* Agent driver for **Goose** (Block) (`goose`), the model-agnostic open-source
|
|
@@ -36,7 +36,7 @@ export declare class GooseDriver extends SubprocessCliDriver {
|
|
|
36
36
|
private providers?;
|
|
37
37
|
/** This session's AI providers, resolved once from the config. */
|
|
38
38
|
private providerSession;
|
|
39
|
-
|
|
39
|
+
protected onReconfigured(applied: ReconfigureApplied): void;
|
|
40
40
|
getModel(): string | undefined;
|
|
41
41
|
protected buildArgs(message: string, resumeId: string | undefined): string[];
|
|
42
42
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"goose.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/goose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAW/C,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"goose.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/goose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAW/C,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAA2C,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEpG;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,WAAY,SAAQ,mBAAmB;IAClD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAK7B;IAEF,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAA4B;IAC1D,SAAS,CAAC,QAAQ,CAAC,UAAU,WAAW;IACxC,SAAS,CAAC,QAAQ,CAAC,WAAW,WAAW;IACzC,SAAS,CAAC,QAAQ,CAAC,SAAS,WAAW;IAEvC,OAAO,CAAC,SAAS,CAAC,CAAmB;IAErC,kEAAkE;IAClE,OAAO,CAAC,eAAe;cAKJ,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAI3D,QAAQ,IAAI,MAAM,GAAG,SAAS;IAIvC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE;IAM5E;;;;;;;;;OASG;IACH,SAAS,CAAC,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IA0B5C,SAAS,CAAC,WAAW,IAAI,MAAM;IAI/B,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI;IA8CrC;;;OAGG;IACY,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;CAGnD;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,WAAW,CAYvD,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { DriverTarget } from "@skaile/workspaces/plugin-registry";
|
|
2
2
|
import { type DriverContextReport, type TokenUsage } from "@skaile/workspaces/types";
|
|
3
3
|
import type { ModelEntry } from "../models.js";
|
|
4
|
-
import { type AgentConfig, AgentDriver, type AgentPromptInput, type BridgeCapabilityTool, type DriverInfo, type SlashCommandInfo } from "../types.js";
|
|
4
|
+
import { type AgentConfig, AgentDriver, type AgentPromptInput, type BridgeCapabilityTool, type DriverInfo, type ReconfigureOutcome, type ReconfigurePatch, type SlashCommandInfo } from "../types.js";
|
|
5
5
|
/**
|
|
6
6
|
* Build the explicit env allowlist forwarded to the omp child process.
|
|
7
7
|
*
|
|
@@ -225,44 +225,33 @@ export declare class OmpDriver extends AgentDriver {
|
|
|
225
225
|
getSlashCommands(): SlashCommandInfo[];
|
|
226
226
|
getModel(): string | undefined;
|
|
227
227
|
/**
|
|
228
|
-
*
|
|
229
|
-
*
|
|
230
|
-
*
|
|
231
|
-
* level sent. Set at spawn,
|
|
228
|
+
* Owns the desired config, drift and ordering of live reconfigures. Its
|
|
229
|
+
* snapshot is what the running omp process was last told: the config values
|
|
230
|
+
* `model`, `modelRef`, `thinking` and `effort` came from (the rollback targets
|
|
231
|
+
* when omp refuses a change) and the omp thinking `level` sent. Set at spawn,
|
|
232
|
+
* updated on each successful `set_*`.
|
|
232
233
|
*/
|
|
233
|
-
private
|
|
234
|
-
/** Serialises live reconfigure RPCs so concurrent patches never interleave. */
|
|
235
|
-
private reconfigureChain;
|
|
234
|
+
private readonly reconfig;
|
|
236
235
|
/**
|
|
237
|
-
* Apply `model` / `thinking` / `effort
|
|
238
|
-
*
|
|
239
|
-
* `set_thinking_level`)
|
|
240
|
-
*
|
|
241
|
-
*
|
|
242
|
-
*
|
|
243
|
-
*
|
|
244
|
-
*
|
|
245
|
-
*
|
|
246
|
-
* rejected the same way as one omp refuses: an `error` event and a rollback,
|
|
247
|
-
* since the running process cannot switch to it. In registry mode the patch
|
|
248
|
-
* also replaces `modelRef`, so a respawn (crash, `resetSession()`) starts the
|
|
249
|
-
* reconfigured model; models.yml already lists every enabled provider.
|
|
250
|
-
*/
|
|
251
|
-
reconfigure(patch: Partial<Pick<AgentConfig, "model" | "thinking" | "effort">>): void;
|
|
252
|
-
private syncReconfigure;
|
|
253
|
-
/** Push config drift to the running process. Never rejects. */
|
|
254
|
-
private applyReconfigure;
|
|
255
|
-
/**
|
|
256
|
-
* Restore the model the running process holds after a failed live switch —
|
|
257
|
-
* unless a newer patch already replaced `model` (it will be applied next).
|
|
236
|
+
* Apply `model` / `thinking` / `effort`: the {@link ReconfigureLedger} writes
|
|
237
|
+
* the desired config and, when the process is up and idle, pushes it through
|
|
238
|
+
* {@link applyLive} (`set_model` / `set_thinking_level`), answering from omp's
|
|
239
|
+
* reply. A patch that arrives mid-turn or before `ready` is not lost: config is
|
|
240
|
+
* the source of truth, flushed before the next `prompt()` and read by the next
|
|
241
|
+
* spawn. A refusal (omp's, or a model `set_model` cannot express live: no
|
|
242
|
+
* `provider/` prefix) rolls the config back and answers `rejected`. In registry
|
|
243
|
+
* mode the patch also replaces `modelRef`, so a respawn (crash, `resetSession()`)
|
|
244
|
+
* starts the reconfigured model; models.yml already lists every enabled provider.
|
|
258
245
|
*/
|
|
259
|
-
|
|
260
|
-
/** Push
|
|
261
|
-
private
|
|
246
|
+
reconfigure(patch: ReconfigurePatch): Promise<ReconfigureOutcome>;
|
|
247
|
+
/** Push drifted model / thinking settings to the running process. Never rejects. */
|
|
248
|
+
private applyLive;
|
|
262
249
|
/**
|
|
263
|
-
* Send one live-reconfigure request. A failed `response` is
|
|
264
|
-
*
|
|
265
|
-
* process gone)
|
|
250
|
+
* Send one live-reconfigure request. A failed `response` is emitted as an
|
|
251
|
+
* `error` event by {@link handleEvent}, and a transport failure (timeout,
|
|
252
|
+
* process gone) here, unless `late`: a refusal of a patch already answered
|
|
253
|
+
* `ok` reaches the host as `reconfigure_rejected`, so it gets no `error`
|
|
254
|
+
* event as well. Returns `null` when omp accepted it, else why not.
|
|
266
255
|
*/
|
|
267
256
|
private sendReconfigure;
|
|
268
257
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"omp.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/omp.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EACL,KAAK,mBAAmB,EAExB,KAAK,UAAU,EAEhB,MAAM,0BAA0B,CAAC;AAMlC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"omp.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/omp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { DriverTarget } from "@skaile/workspaces/plugin-registry";
|
|
2
2
|
import type { Logger } from "@skaile/workspaces/types";
|
|
3
3
|
import type { ModelEntry } from "../models.js";
|
|
4
|
-
import type { AgentConfig, DriverInfo } from "../types.js";
|
|
4
|
+
import type { AgentConfig, DriverInfo, ReconfigureApplied } from "../types.js";
|
|
5
5
|
import { SubprocessCliDriver } from "./_subprocess-cli.js";
|
|
6
6
|
/**
|
|
7
7
|
* Agent driver for **OpenCode** (`opencode`), the model-agnostic open-source
|
|
@@ -36,7 +36,7 @@ export declare class OpenCodeDriver extends SubprocessCliDriver {
|
|
|
36
36
|
private providers?;
|
|
37
37
|
/** This session's AI providers, resolved once from the config. */
|
|
38
38
|
private providerSession;
|
|
39
|
-
|
|
39
|
+
protected onReconfigured(applied: ReconfigureApplied): void;
|
|
40
40
|
getModel(): string | undefined;
|
|
41
41
|
protected buildArgs(message: string, resumeId: string | undefined): string[];
|
|
42
42
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/opencode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,0BAA0B,CAAC;AAGnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAY/C,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/opencode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,0BAA0B,CAAC;AAGnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAY/C,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAe,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAmDxE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,cAAe,SAAQ,mBAAmB;IACrD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAK7B;IAEF,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAA+B;IAC7D,SAAS,CAAC,QAAQ,CAAC,UAAU,cAAc;IAC3C,SAAS,CAAC,QAAQ,CAAC,WAAW,cAAc;IAC5C,SAAS,CAAC,QAAQ,CAAC,SAAS,cAAc;IAE1C,OAAO,CAAC,SAAS,CAAC,CAAmB;IAErC,kEAAkE;IAClE,OAAO,CAAC,eAAe;cAKJ,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAI3D,QAAQ,IAAI,MAAM,GAAG,SAAS;IAIvC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE;IAS5E;;;;;;;;;;OAUG;IACH,SAAS,CAAC,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAiB5C,SAAS,CAAC,WAAW,IAAI,MAAM;IAIhB,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOrD,gFAAgF;IAChF,OAAO,CAAC,QAAQ,CAAM;IACtB,2DAA2D;IAC3D,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,QAAQ,CAAqB;IAErC;;;;;;OAMG;IACH,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAkCzC;;;;OAIG;IACY,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;CAGnD;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,YAAY,CAAC,WAAW,CAY1D,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Recovery policy for a failed turn: one decision per failure.
|
|
3
|
+
*
|
|
4
|
+
* A harness driver that can recover from a failed turn (the claude-sdk driver,
|
|
5
|
+
* and the managed codex driver's 401 refresh gate) observes a failure, asks
|
|
6
|
+
* {@link decide} once what to do, records the answer on the turn, and acts on
|
|
7
|
+
* that record. The policy is pure: it picks at most one recovery *attempt* or
|
|
8
|
+
* says to *fail*, and it owns the per-turn budgets. The recovery actions
|
|
9
|
+
* themselves (drop the query, retract text, scrub a transcript, replay the
|
|
10
|
+
* prompt, refresh a credential) stay in the driver.
|
|
11
|
+
*
|
|
12
|
+
* Rules:
|
|
13
|
+
* - One attempt per kind per turn. Budgets are independent per kind, so a
|
|
14
|
+
* stale-resume retry never uses up the auth budget (the fresh session it
|
|
15
|
+
* starts can still meet an expired credential).
|
|
16
|
+
* - Auth refresh and limit failover exclude each other: an auth failure with
|
|
17
|
+
* no `onAuthError` callback falls through to limit failover.
|
|
18
|
+
* - Limit failover needs a limit rejection seen on *this* attempt.
|
|
19
|
+
* - A poisoned-transcript scrub needs a resumable session id.
|
|
20
|
+
*
|
|
21
|
+
* Internal module: not exported from `bridge/src/index.ts`.
|
|
22
|
+
*/
|
|
23
|
+
/** The recovery attempts a failed turn can take. */
|
|
24
|
+
export type RecoveryKind = "stale_resume" | "poison_scrub" | "auth_refresh" | "limit_failover" | "query_ended_replay";
|
|
25
|
+
/**
|
|
26
|
+
* What the driver saw fail. Facts only — the policy derives the meaning.
|
|
27
|
+
*/
|
|
28
|
+
export interface FailureObservation {
|
|
29
|
+
/** The failure's message text (thrown error, or the result's joined `errors[]`). */
|
|
30
|
+
message: string;
|
|
31
|
+
/** The failure was classified as an auth failure (a 401-shaped `AuthError`). */
|
|
32
|
+
authError: boolean;
|
|
33
|
+
/** An upstream usage-limit rejection was seen on THIS attempt (not an earlier one). */
|
|
34
|
+
limitRejected: boolean;
|
|
35
|
+
/** The turn was never dispatched: the serving query ended before it ran. */
|
|
36
|
+
queryEnded: boolean;
|
|
37
|
+
}
|
|
38
|
+
/** Which host capabilities exist for this failure. */
|
|
39
|
+
export interface RecoveryWiring {
|
|
40
|
+
/** The host wired an `onAuthError` credential-refresh callback. */
|
|
41
|
+
onAuthError: boolean;
|
|
42
|
+
/** The host wired an `onLimitBlocked` seat-failover callback. */
|
|
43
|
+
onLimitBlocked: boolean;
|
|
44
|
+
/** A session id exists that a transcript scrub could repair and resume. */
|
|
45
|
+
resumableSessionId: boolean;
|
|
46
|
+
}
|
|
47
|
+
/** One-shot budgets for a single logical turn; `true` = that kind has been spent. */
|
|
48
|
+
export type RecoveryBudget = Readonly<Record<RecoveryKind, boolean>>;
|
|
49
|
+
/** The policy's answer: take one recovery attempt, or fail the turn. */
|
|
50
|
+
export type RecoveryDecision = {
|
|
51
|
+
attempt: RecoveryKind;
|
|
52
|
+
} | {
|
|
53
|
+
fail: true;
|
|
54
|
+
};
|
|
55
|
+
/** The "no recovery" answer. */
|
|
56
|
+
export declare const FAIL: RecoveryDecision;
|
|
57
|
+
/** A pristine budget for the first attempt of a turn (nothing spent yet). */
|
|
58
|
+
export declare function freshBudget(): RecoveryBudget;
|
|
59
|
+
/** The budget after `kind` has been spent; the input is not modified. */
|
|
60
|
+
export declare function spend(budget: RecoveryBudget, kind: RecoveryKind): RecoveryBudget;
|
|
61
|
+
/** Whether `kind` has already been spent this turn (regardless of wiring). */
|
|
62
|
+
export declare function isSpent(budget: RecoveryBudget, kind: RecoveryKind): boolean;
|
|
63
|
+
/**
|
|
64
|
+
* Whether no recovery has been spent yet — the turn is on its first attempt.
|
|
65
|
+
* Derived from the budget, so a new {@link RecoveryKind} is covered by default.
|
|
66
|
+
*/
|
|
67
|
+
export declare function isFirstAttempt(budget: RecoveryBudget): boolean;
|
|
68
|
+
/**
|
|
69
|
+
* Whether `kind` could still run this turn: unspent and with the host
|
|
70
|
+
* capability it needs. For checks that run before any failure is classified
|
|
71
|
+
* (e.g. hiding an auth-error render while a self-heal can still follow).
|
|
72
|
+
*/
|
|
73
|
+
export declare function isAvailable(budget: RecoveryBudget, kind: RecoveryKind, wiring: RecoveryWiring): boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Decide what to do about one failure. Call once per failure, where it is
|
|
76
|
+
* classified, and act on the recorded answer.
|
|
77
|
+
*/
|
|
78
|
+
export declare function decide(observation: FailureObservation, budget: RecoveryBudget, wiring: RecoveryWiring): RecoveryDecision;
|
|
79
|
+
//# sourceMappingURL=recovery-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recovery-policy.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/recovery-policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,oDAAoD;AACpD,MAAM,MAAM,YAAY,GACpB,cAAc,GACd,cAAc,GACd,cAAc,GACd,gBAAgB,GAChB,oBAAoB,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,oFAAoF;IACpF,OAAO,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,SAAS,EAAE,OAAO,CAAC;IACnB,uFAAuF;IACvF,aAAa,EAAE,OAAO,CAAC;IACvB,4EAA4E;IAC5E,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,sDAAsD;AACtD,MAAM,WAAW,cAAc;IAC7B,mEAAmE;IACnE,WAAW,EAAE,OAAO,CAAC;IACrB,iEAAiE;IACjE,cAAc,EAAE,OAAO,CAAC;IACxB,2EAA2E;IAC3E,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED,qFAAqF;AACrF,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;AAErE,wEAAwE;AACxE,MAAM,MAAM,gBAAgB,GAAG;IAAE,OAAO,EAAE,YAAY,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CAAC;AAE1E,gCAAgC;AAChC,eAAO,MAAM,IAAI,EAAE,gBAAiC,CAAC;AAgBrD,6EAA6E;AAC7E,wBAAgB,WAAW,IAAI,cAAc,CAQ5C;AAED,yEAAyE;AACzE,wBAAgB,KAAK,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,YAAY,GAAG,cAAc,CAEhF;AAED,8EAA8E;AAC9E,wBAAgB,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAE3E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAE9D;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,cAAc,GACrB,OAAO,CAaT;AAED;;;GAGG;AACH,wBAAgB,MAAM,CACpB,WAAW,EAAE,kBAAkB,EAC/B,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,cAAc,GACrB,gBAAgB,CA0BlB"}
|
|
@@ -12,6 +12,7 @@ export * from "./normalizer.js";
|
|
|
12
12
|
export * from "./provider-catalog.js";
|
|
13
13
|
export * from "./provider-materialize/credential-env.js";
|
|
14
14
|
export * from "./provider-registry-derive.js";
|
|
15
|
+
export * from "./reconfigure-ledger.js";
|
|
15
16
|
export * from "./reconfigure-model-ref.js";
|
|
16
17
|
export * from "./registry.js";
|
|
17
18
|
export { probeResumeTranscript, type ResumeProbeOutcome, resolveClaudeConfigDir, } from "./drivers/resume-probe.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../bridge/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,KAAK,yBAAyB,EAC9B,sBAAsB,EACtB,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,KAAK,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAC3F,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AAItC,cAAc,0CAA0C,CAAC;AACzD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,eAAe,CAAC;AAC9B,OAAO,EACL,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAEhC,OAAO,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../bridge/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,KAAK,yBAAyB,EAC9B,sBAAsB,EACtB,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,KAAK,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAC3F,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AAItC,cAAc,0CAA0C,CAAC;AACzD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,eAAe,CAAC;AAC9B,OAAO,EACL,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAEhC,OAAO,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import type { Logger } from "@skaile/workspaces/types";
|
|
2
|
+
import type { AgentConfig, ReconfigureApplied, ReconfigureOutcome, ReconfigurePatch, ReconfigureRollback } from "./types.js";
|
|
3
|
+
/** The config fields a live reconfigure reads and writes (the driver's own config object). */
|
|
4
|
+
export type ReconfigureConfig = Pick<AgentConfig, "model" | "modelRef" | "thinking" | "effort" | "registry" | "roles">;
|
|
5
|
+
/** What the running process holds: the settings it spawned with or was last switched to. */
|
|
6
|
+
export interface ReconfigureSnapshot {
|
|
7
|
+
model?: string;
|
|
8
|
+
modelRef?: string;
|
|
9
|
+
thinking?: AgentConfig["thinking"];
|
|
10
|
+
effort?: AgentConfig["effort"];
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* What an {@link ReconfigureLedgerOptions.applyLive} hook answers:
|
|
14
|
+
*
|
|
15
|
+
* - `"applied"`: the process now runs the delta.
|
|
16
|
+
* - `"respawn"`: the process cannot take it live; the driver replaces it before
|
|
17
|
+
* the next turn and the new process reads the desired config.
|
|
18
|
+
* - `{ rejected }`: the process refuses it; the ledger rolls the config back to
|
|
19
|
+
* the snapshot.
|
|
20
|
+
*/
|
|
21
|
+
export type ReconfigureApplyResult = "applied" | "respawn" | {
|
|
22
|
+
rejected: string;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* What an {@link ReconfigureLedgerOptions.applyLive} hook is told about a push.
|
|
26
|
+
* `late` is true when the whole delta was answered `ok` earlier (it landed
|
|
27
|
+
* mid-turn): a refusal then reaches the host only through
|
|
28
|
+
* {@link ReconfigureLedgerOptions.onLateRejection}, so the hook must not also
|
|
29
|
+
* report it on another channel (an `error` event).
|
|
30
|
+
*/
|
|
31
|
+
export interface ReconfigurePushContext {
|
|
32
|
+
late: boolean;
|
|
33
|
+
}
|
|
34
|
+
export interface ReconfigureLedgerOptions<S extends ReconfigureSnapshot> {
|
|
35
|
+
/**
|
|
36
|
+
* The desired config. A getter, because a driver may replace its config object;
|
|
37
|
+
* the ledger writes accepted patches into whatever it returns.
|
|
38
|
+
*/
|
|
39
|
+
config: () => ReconfigureConfig;
|
|
40
|
+
/**
|
|
41
|
+
* Push a delta (the fields whose desired value differs from the snapshot) into
|
|
42
|
+
* the running process. Called with the process up and idle, or at a turn
|
|
43
|
+
* boundary through {@link ReconfigureLedger.flushBeforeTurn}. The hook receives
|
|
44
|
+
* the live snapshot and may refine it (a driver that keeps extra fields on `S`
|
|
45
|
+
* updates them here); on `"applied"` the ledger copies the delta into it.
|
|
46
|
+
* A hook that throws counts as a rejection. Its `context.late` says whether a
|
|
47
|
+
* refusal is reported elsewhere (see {@link ReconfigurePushContext}). Absent: the process reads the
|
|
48
|
+
* desired config at its next spawn and there is nothing to push.
|
|
49
|
+
*/
|
|
50
|
+
applyLive?: (delta: ReconfigureApplied, snapshot: S, context: ReconfigurePushContext) => ReconfigureApplyResult | Promise<ReconfigureApplyResult>;
|
|
51
|
+
/** Whether the process is up and can take a push. Default: true. */
|
|
52
|
+
isLive?: () => boolean;
|
|
53
|
+
/** Whether no turn is in flight. Default: true. */
|
|
54
|
+
isIdle?: () => boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Called synchronously once a patch is written to the desired config, before
|
|
57
|
+
* any live push. For drivers that must refresh a derived cache on a change.
|
|
58
|
+
*/
|
|
59
|
+
onDesired?: (applied: ReconfigureApplied) => void;
|
|
60
|
+
/**
|
|
61
|
+
* A refusal that arrives after the patch was already answered `ok` (it landed
|
|
62
|
+
* mid-turn and flushed at the turn boundary). The config is already rolled back
|
|
63
|
+
* when this runs, and an idle-time refusal never calls it (the capability call
|
|
64
|
+
* answers that one). A driver emits the driver event `reconfigure-rollback`.
|
|
65
|
+
*/
|
|
66
|
+
onLateRejection?: (rollback: ReconfigureRollback) => void;
|
|
67
|
+
log?: Pick<Logger, "warn" | "info">;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Serialised live reconfigure for one driver.
|
|
71
|
+
*
|
|
72
|
+
* `ok: true` means effective from the next turn: the next turn runs on the new
|
|
73
|
+
* settings by live switch, query recycle or respawn. A patch that lands while a
|
|
74
|
+
* turn is in flight (or before the process is ready) stays desired, is answered
|
|
75
|
+
* `ok`, and is pushed by {@link flushBeforeTurn}.
|
|
76
|
+
*
|
|
77
|
+
* @category Bridge
|
|
78
|
+
*/
|
|
79
|
+
export declare class ReconfigureLedger<S extends ReconfigureSnapshot = ReconfigureSnapshot> {
|
|
80
|
+
private readonly options;
|
|
81
|
+
private snapshot;
|
|
82
|
+
private respawn;
|
|
83
|
+
private tail;
|
|
84
|
+
constructor(options: ReconfigureLedgerOptions<S>);
|
|
85
|
+
/**
|
|
86
|
+
* Record what a freshly spawned process runs. Call at every spawn: the
|
|
87
|
+
* desired config is what that spawn read, so drift is computed against this.
|
|
88
|
+
* `null` forgets the process (nothing left to push to).
|
|
89
|
+
*/
|
|
90
|
+
setSnapshot(snapshot: S | null): void;
|
|
91
|
+
/**
|
|
92
|
+
* The process cannot take the desired config live and the driver must replace
|
|
93
|
+
* it before the next turn. Cleared by the next {@link setSnapshot}.
|
|
94
|
+
*/
|
|
95
|
+
get needsRespawn(): boolean;
|
|
96
|
+
/**
|
|
97
|
+
* Apply a patch: scope the model to the session's provider entry, write it to
|
|
98
|
+
* the desired config, and push it when the process is up and idle. Patches run
|
|
99
|
+
* one at a time in arrival order.
|
|
100
|
+
*/
|
|
101
|
+
reconfigure(patch: ReconfigurePatch): Promise<ReconfigureOutcome>;
|
|
102
|
+
/**
|
|
103
|
+
* Push any drift to the process at a turn boundary. Await it before the turn
|
|
104
|
+
* is sent, so the turn runs on the desired settings. Never rejects.
|
|
105
|
+
*/
|
|
106
|
+
flushBeforeTurn(): Promise<void>;
|
|
107
|
+
private enqueue;
|
|
108
|
+
private runPatch;
|
|
109
|
+
/**
|
|
110
|
+
* Push the drift to the process. Returns the refusal message, or `null` when
|
|
111
|
+
* the process took it (or will, by respawn). On a refusal the config rolls back
|
|
112
|
+
* to the snapshot; fields outside `own` were answered `ok` earlier, so they are
|
|
113
|
+
* reported through `onLateRejection`.
|
|
114
|
+
*/
|
|
115
|
+
private flush;
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=reconfigure-ledger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reconfigure-ledger.d.ts","sourceRoot":"","sources":["../../../bridge/src/reconfigure-ledger.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,KAAK,EACV,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAEpB,8FAA8F;AAC9F,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,WAAW,EACX,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CACpE,CAAC;AAEF,4FAA4F;AAC5F,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;CAChC;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,SAAS,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAElF;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,OAAO,CAAC;CACf;AAID,MAAM,WAAW,wBAAwB,CAAC,CAAC,SAAS,mBAAmB;IACrE;;;OAGG;IACH,MAAM,EAAE,MAAM,iBAAiB,CAAC;IAChC;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,CACV,KAAK,EAAE,kBAAkB,EACzB,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,sBAAsB,KAC5B,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC9D,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;IACvB,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;IACvB;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAClD;;;;;OAKG;IACH,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC1D,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CACrC;AAED;;;;;;;;;GASG;AACH,qBAAa,iBAAiB,CAAC,CAAC,SAAS,mBAAmB,GAAG,mBAAmB;IAKpE,OAAO,CAAC,QAAQ,CAAC,OAAO;IAJpC,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,IAAI,CAAiC;gBAEhB,OAAO,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAEjE;;;;OAIG;IACH,WAAW,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;IAKrC;;;OAGG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAIjE;;;OAGG;IACH,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAQhC,OAAO,CAAC,OAAO;YAcD,QAAQ;IA8CtB;;;;;OAKG;YACW,KAAK;CAqDpB"}
|
|
@@ -788,6 +788,52 @@ export type AgentEvent = {
|
|
|
788
788
|
reason: "signature_mismatch" | "model_mismatch" | "jsonl_lost" | "jsonl_poisoned" | "native_state_unavailable";
|
|
789
789
|
[k: string]: any;
|
|
790
790
|
};
|
|
791
|
+
/** The settings a live reconfigure may change. */
|
|
792
|
+
export type ReconfigurePatch = Partial<Pick<AgentConfig, "model" | "thinking" | "effort">>;
|
|
793
|
+
/**
|
|
794
|
+
* What a driver now holds for the fields of an accepted reconfigure. `modelRef`
|
|
795
|
+
* is the registry selector the model was scoped to; it is absent when the
|
|
796
|
+
* session has none. A host remembers exactly this, never the raw patch.
|
|
797
|
+
*/
|
|
798
|
+
export interface ReconfigureApplied {
|
|
799
|
+
model?: string;
|
|
800
|
+
modelRef?: string;
|
|
801
|
+
thinking?: AgentConfig["thinking"];
|
|
802
|
+
effort?: AgentConfig["effort"];
|
|
803
|
+
}
|
|
804
|
+
/**
|
|
805
|
+
* Result of `AgentDriver.reconfigure()`. `ok: true` means effective from the
|
|
806
|
+
* next turn (live switch, query recycle or respawn); a driver that cannot
|
|
807
|
+
* promise that answers `ok: false` instead.
|
|
808
|
+
*
|
|
809
|
+
* - `not_supported`: the driver cannot change settings live.
|
|
810
|
+
* - `model_not_on_provider`: the session's AI provider entry does not list the
|
|
811
|
+
* model (`providerId` names the entry).
|
|
812
|
+
* - `rejected`: the running process refused the change; the driver config is
|
|
813
|
+
* unchanged.
|
|
814
|
+
*
|
|
815
|
+
* @category Bridge
|
|
816
|
+
*/
|
|
817
|
+
export type ReconfigureOutcome = {
|
|
818
|
+
ok: true;
|
|
819
|
+
applied: ReconfigureApplied;
|
|
820
|
+
} | {
|
|
821
|
+
ok: false;
|
|
822
|
+
code: "not_supported" | "model_not_on_provider" | "rejected";
|
|
823
|
+
message: string;
|
|
824
|
+
providerId?: string;
|
|
825
|
+
};
|
|
826
|
+
/**
|
|
827
|
+
* A reconfigure the driver answered `ok` (it landed mid-turn) and then refused
|
|
828
|
+
* at the next turn boundary. The driver already rolled its config back;
|
|
829
|
+
* `requested` is what was asked, `restored` what it holds again. Emitted as the
|
|
830
|
+
* driver event `'reconfigure-rollback'`.
|
|
831
|
+
*/
|
|
832
|
+
export interface ReconfigureRollback {
|
|
833
|
+
message: string;
|
|
834
|
+
requested: ReconfigureApplied;
|
|
835
|
+
restored: ReconfigureApplied;
|
|
836
|
+
}
|
|
791
837
|
/**
|
|
792
838
|
* Abstract base class for agent drivers.
|
|
793
839
|
*
|
|
@@ -798,7 +844,9 @@ export type AgentEvent = {
|
|
|
798
844
|
* Subclasses must implement `start`, `prompt`, `abort`, `kill`, and `isRunning`.
|
|
799
845
|
* Implementations should never emit an event name other than `'agent-event'` as
|
|
800
846
|
* the public streaming channel — internal events (`'ready'`, `'exit'`, etc.) are
|
|
801
|
-
* driver-private.
|
|
847
|
+
* driver-private. The one other public event is `'reconfigure-rollback'` (a
|
|
848
|
+
* {@link ReconfigureRollback}): a live reconfigure the driver had accepted and
|
|
849
|
+
* then refused at the turn boundary, already rolled back in the driver.
|
|
802
850
|
*
|
|
803
851
|
* @example
|
|
804
852
|
* ```ts
|
|
@@ -889,13 +937,16 @@ export declare abstract class AgentDriver extends EventEmitter {
|
|
|
889
937
|
*/
|
|
890
938
|
supersedePendingQuestion(): void;
|
|
891
939
|
/**
|
|
892
|
-
* Live-update driver configuration.
|
|
893
|
-
*
|
|
940
|
+
* Live-update driver configuration. `ok: true` means effective from the next
|
|
941
|
+
* turn: the next turn runs on the new settings, by live switch, query recycle
|
|
942
|
+
* or respawn, and the host needs no restart. A turn in progress finishes on
|
|
943
|
+
* the old settings. Only model/thinking/effort are reconfigurable mid-session.
|
|
894
944
|
*
|
|
895
|
-
*
|
|
896
|
-
*
|
|
945
|
+
* Drivers that can honour that promise build a `ReconfigureLedger` and
|
|
946
|
+
* delegate to it; it owns the model scope rule, ordering, drift and rollback.
|
|
947
|
+
* The base implementation answers `not_supported`.
|
|
897
948
|
*/
|
|
898
|
-
reconfigure(patch:
|
|
949
|
+
reconfigure(patch: ReconfigurePatch): Promise<ReconfigureOutcome>;
|
|
899
950
|
/**
|
|
900
951
|
* Returns the model identifier currently configured on this driver.
|
|
901
952
|
* Subclasses that store config locally should override this.
|