@skaile/workspaces 5.19.0 → 6.1.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 +56 -0
- package/README.md +8 -8
- package/dist/app-sdk/index.js +1 -1
- package/dist/{asset-feeds-QGLI3AXI.js → asset-feeds-HJFV7UPW.js} +32 -24
- package/dist/asset-feeds-HJFV7UPW.js.map +1 -0
- package/dist/asset-manager/catalog-deployer.js +12 -12
- package/dist/asset-manager/index.js +19 -19
- package/dist/asset-manager/installer.js +14 -14
- package/dist/asset-manager/renderers.js +13 -13
- package/dist/asset-manager/src/index.d.ts +214 -27
- package/dist/asset-manager/src/index.d.ts.map +1 -1
- package/dist/asset-manager/src/install-agent.d.ts +2 -2
- package/dist/asset-manager/src/install-agent.d.ts.map +1 -1
- package/dist/asset-manager/src/install-instances.d.ts +8 -8
- package/dist/asset-manager/src/install-instances.d.ts.map +1 -1
- package/dist/asset-manager/src/installer.d.ts +34 -3
- package/dist/asset-manager/src/installer.d.ts.map +1 -1
- package/dist/asset-manager/src/mcp-config.d.ts +35 -14
- package/dist/asset-manager/src/mcp-config.d.ts.map +1 -1
- package/dist/asset-manager/src/renderers.d.ts +12 -12
- package/dist/asset-manager/src/renderers.d.ts.map +1 -1
- package/dist/bridge/codex-app-server.js +2 -2
- package/dist/bridge/harnesses/claude-sdk.d.ts +2 -0
- package/dist/bridge/{drivers → harnesses}/claude-sdk.js +69 -73
- package/dist/bridge/harnesses/claude-sdk.js.map +1 -0
- package/dist/bridge/{drivers/gemini.d.ts → harnesses/codex.d.ts} +1 -1
- package/dist/bridge/{drivers → harnesses}/codex.js +53 -53
- package/dist/bridge/harnesses/codex.js.map +1 -0
- package/dist/bridge/{drivers/claude-sdk.d.ts → harnesses/continue.d.ts} +1 -1
- package/dist/bridge/{drivers → harnesses}/continue.js +30 -30
- package/dist/bridge/harnesses/continue.js.map +1 -0
- package/dist/bridge/{drivers → harnesses}/echo.d.ts +1 -1
- package/dist/bridge/{drivers → harnesses}/echo.js +27 -27
- package/dist/bridge/harnesses/echo.js.map +1 -0
- package/dist/bridge/{drivers/continue.d.ts → harnesses/gemini.d.ts} +1 -1
- package/dist/bridge/harnesses/gemini.js +18 -0
- package/dist/bridge/{drivers → harnesses}/goose.d.ts +1 -1
- package/dist/bridge/{drivers → harnesses}/goose.js +30 -30
- package/dist/bridge/harnesses/goose.js.map +1 -0
- package/dist/bridge/{drivers → harnesses}/omp.d.ts +1 -1
- package/dist/bridge/{drivers → harnesses}/omp.js +31 -31
- package/dist/bridge/harnesses/omp.js.map +1 -0
- package/dist/bridge/{drivers → harnesses}/opencode.d.ts +1 -1
- package/dist/bridge/{drivers → harnesses}/opencode.js +31 -31
- package/dist/bridge/harnesses/opencode.js.map +1 -0
- package/dist/bridge/{drivers → harnesses}/qwen.d.ts +1 -1
- package/dist/bridge/{drivers → harnesses}/qwen.js +20 -20
- package/dist/bridge/harnesses/qwen.js.map +1 -0
- package/dist/bridge/index.js +25 -25
- package/dist/bridge/src/agent-exec.d.ts +2 -2
- package/dist/bridge/src/agent-transcript.d.ts +1 -1
- package/dist/bridge/src/agent-transcript.d.ts.map +1 -1
- package/dist/bridge/src/approval-card.d.ts +3 -3
- package/dist/bridge/src/capability-dispatch.d.ts +5 -5
- package/dist/bridge/src/claude-sdk-surface.d.ts +17 -0
- package/dist/bridge/src/claude-sdk-surface.d.ts.map +1 -0
- package/dist/bridge/src/cloud.d.ts +4 -4
- package/dist/bridge/src/codex/config-toml.d.ts +3 -3
- package/dist/bridge/src/codex/friendly-error.d.ts +1 -1
- package/dist/bridge/src/codex/friendly-error.d.ts.map +1 -1
- package/dist/bridge/src/codex/{managed-driver.d.ts → managed-harness.d.ts} +5 -5
- package/dist/bridge/src/codex/managed-harness.d.ts.map +1 -0
- package/dist/bridge/src/codex/native-approvals.d.ts +1 -1
- package/dist/bridge/src/codex/native-approvals.d.ts.map +1 -1
- package/dist/bridge/src/error-classifier.d.ts +7 -7
- package/dist/bridge/src/{driver-capabilities.d.ts → harness-capabilities.d.ts} +18 -18
- package/dist/bridge/src/harness-capabilities.d.ts.map +1 -0
- package/dist/bridge/src/harness-model-check.d.ts +40 -0
- package/dist/bridge/src/harness-model-check.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/_subprocess-cli.d.ts +8 -8
- package/dist/bridge/src/harnesses/_subprocess-cli.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/claude-context-usage.d.ts +5 -5
- package/dist/bridge/src/harnesses/claude-context-usage.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/claude-sdk.d.ts +27 -27
- package/dist/bridge/src/harnesses/claude-sdk.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/claude-self-turns.d.ts +5 -5
- package/dist/bridge/src/harnesses/claude-self-turns.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/claude-tool-allowlist.d.ts +4 -4
- package/dist/bridge/src/harnesses/claude-tool-allowlist.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/codex.d.ts +14 -14
- package/dist/bridge/src/harnesses/codex.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/continue.d.ts +12 -12
- package/dist/bridge/src/harnesses/continue.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/echo.d.ts +16 -16
- package/dist/bridge/src/harnesses/echo.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/flow-script.d.ts +9 -9
- package/dist/bridge/src/harnesses/flow-script.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/gemini.d.ts +15 -15
- package/dist/bridge/src/harnesses/gemini.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/goose.d.ts +10 -10
- package/dist/bridge/src/harnesses/goose.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/omp-models-yml.d.ts +12 -12
- package/dist/bridge/src/harnesses/omp-models-yml.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/omp.d.ts +23 -23
- package/dist/bridge/src/harnesses/omp.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/opencode.d.ts +11 -11
- package/dist/bridge/src/harnesses/opencode.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/qwen.d.ts +12 -12
- package/dist/bridge/src/harnesses/qwen.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/recovery-policy.d.ts +4 -4
- package/dist/bridge/src/harnesses/recovery-policy.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/resume-probe.d.ts +3 -3
- package/dist/bridge/src/harnesses/resume-probe.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/sanitize-assistant-text.d.ts +1 -1
- package/dist/bridge/src/harnesses/sanitize-assistant-text.d.ts.map +1 -0
- package/dist/bridge/src/{drivers → harnesses}/scrub-transcript.d.ts +1 -1
- package/dist/bridge/src/harnesses/scrub-transcript.d.ts.map +1 -0
- package/dist/bridge/src/index.d.ts +5 -4
- package/dist/bridge/src/index.d.ts.map +1 -1
- package/dist/bridge/src/logger.d.ts +4 -4
- package/dist/bridge/src/models.d.ts +1 -1
- package/dist/bridge/src/normalizer.d.ts +5 -3
- package/dist/bridge/src/normalizer.d.ts.map +1 -1
- package/dist/bridge/src/provider-materialize/continue-config-yaml.d.ts +5 -5
- package/dist/bridge/src/provider-materialize/continue-config-yaml.d.ts.map +1 -1
- package/dist/bridge/src/provider-materialize/credential-env.d.ts +3 -3
- package/dist/bridge/src/provider-materialize/{env-drivers.d.ts → env-harnesses.d.ts} +19 -19
- package/dist/bridge/src/provider-materialize/env-harnesses.d.ts.map +1 -0
- package/dist/bridge/src/provider-materialize/goose-custom-providers.d.ts +5 -5
- package/dist/bridge/src/provider-materialize/goose-custom-providers.d.ts.map +1 -1
- package/dist/bridge/src/provider-materialize/opencode-config.d.ts +7 -7
- package/dist/bridge/src/provider-materialize/opencode-config.d.ts.map +1 -1
- package/dist/bridge/src/provider-materialize/session-config-home.d.ts +5 -5
- package/dist/bridge/src/provider-materialize/session-config-home.d.ts.map +1 -1
- package/dist/bridge/src/provider-registry-derive.d.ts +4 -4
- package/dist/bridge/src/provider-registry-derive.d.ts.map +1 -1
- package/dist/bridge/src/reconfigure-ledger.d.ts +8 -8
- package/dist/bridge/src/reconfigure-ledger.d.ts.map +1 -1
- package/dist/bridge/src/registry.d.ts +34 -41
- package/dist/bridge/src/registry.d.ts.map +1 -1
- package/dist/bridge/src/runner-private-env.d.ts +2 -2
- package/dist/bridge/src/runtime.d.ts +11 -11
- package/dist/bridge/src/runtime.d.ts.map +1 -1
- package/dist/bridge/src/types.d.ts +158 -158
- package/dist/bridge/src/types.d.ts.map +1 -1
- package/dist/{chunk-7NT4F6SR.js → chunk-2LAPHLDH.js} +587 -521
- package/dist/chunk-2LAPHLDH.js.map +1 -0
- package/dist/{chunk-25ZVWL2R.js → chunk-3GMOPFWH.js} +4 -4
- package/dist/{chunk-25ZVWL2R.js.map → chunk-3GMOPFWH.js.map} +1 -1
- package/dist/{chunk-X5YPJV4N.js → chunk-3MWQKQUB.js} +2 -2
- package/dist/{chunk-X5YPJV4N.js.map → chunk-3MWQKQUB.js.map} +1 -1
- package/dist/{chunk-EPBKISS5.js → chunk-3TG2NV2F.js} +2 -2
- package/dist/chunk-3TG2NV2F.js.map +1 -0
- package/dist/{chunk-L2AMXONH.js → chunk-3X7VTCPG.js} +2 -2
- package/dist/chunk-3X7VTCPG.js.map +1 -0
- package/dist/{chunk-VIM3PWZM.js → chunk-4FVIT5DI.js} +3 -3
- package/dist/{chunk-VIM3PWZM.js.map → chunk-4FVIT5DI.js.map} +1 -1
- package/dist/{chunk-IF6IA3PZ.js → chunk-4MUDQCBP.js} +4 -4
- package/dist/{chunk-IF6IA3PZ.js.map → chunk-4MUDQCBP.js.map} +1 -1
- package/dist/{chunk-MKRWN7XP.js → chunk-5J4NPGFM.js} +5 -5
- package/dist/chunk-5J4NPGFM.js.map +1 -0
- package/dist/{chunk-5TBFN46Z.js → chunk-5KRMNUL4.js} +4 -4
- package/dist/chunk-5KRMNUL4.js.map +1 -0
- package/dist/{chunk-7SCS64BG.js → chunk-5Y2KGB4H.js} +109 -74
- package/dist/chunk-5Y2KGB4H.js.map +1 -0
- package/dist/{chunk-YIF2IJUA.js → chunk-6GWSDPBP.js} +3 -3
- package/dist/{chunk-YIF2IJUA.js.map → chunk-6GWSDPBP.js.map} +1 -1
- package/dist/{chunk-WST6UITC.js → chunk-6YR4ALVX.js} +17 -17
- package/dist/chunk-6YR4ALVX.js.map +1 -0
- package/dist/{chunk-YROR332M.js → chunk-7DN6JKP2.js} +2 -2
- package/dist/chunk-7DN6JKP2.js.map +1 -0
- package/dist/{chunk-IZCR27MU.js → chunk-7EKQDY2T.js} +3 -3
- package/dist/chunk-7EKQDY2T.js.map +1 -0
- package/dist/chunk-7HX6FNKL.js +317 -0
- package/dist/chunk-7HX6FNKL.js.map +1 -0
- package/dist/{chunk-COJIL7G4.js → chunk-7LP7RCZI.js} +7 -7
- package/dist/chunk-7LP7RCZI.js.map +1 -0
- package/dist/{chunk-2PBSAH3Z.js → chunk-AATHJRKL.js} +4 -4
- package/dist/{chunk-2PBSAH3Z.js.map → chunk-AATHJRKL.js.map} +1 -1
- package/dist/{chunk-C7WBGSBV.js → chunk-ABFPSVIS.js} +10 -10
- package/dist/chunk-ABFPSVIS.js.map +1 -0
- package/dist/{chunk-ICSCSM5D.js → chunk-ADPM6AYF.js} +3 -3
- package/dist/{chunk-ICSCSM5D.js.map → chunk-ADPM6AYF.js.map} +1 -1
- package/dist/{chunk-WOIRYY5L.js → chunk-AITJ7ELM.js} +141 -27
- package/dist/chunk-AITJ7ELM.js.map +1 -0
- package/dist/{chunk-HU5HVKY7.js → chunk-ASWTQQ7E.js} +4 -4
- package/dist/{chunk-HU5HVKY7.js.map → chunk-ASWTQQ7E.js.map} +1 -1
- package/dist/{chunk-RO6VOM6Z.js → chunk-AZ2H6R5I.js} +51 -25
- package/dist/chunk-AZ2H6R5I.js.map +1 -0
- package/dist/{chunk-I7TWVK6N.js → chunk-BBBCJSSU.js} +4 -4
- package/dist/{chunk-I7TWVK6N.js.map → chunk-BBBCJSSU.js.map} +1 -1
- package/dist/{chunk-AJ7EGIFR.js → chunk-BIRW3HOG.js} +3 -3
- package/dist/chunk-BIRW3HOG.js.map +1 -0
- package/dist/{chunk-FPHNJE4M.js → chunk-CEKW3KXP.js} +91 -30
- package/dist/chunk-CEKW3KXP.js.map +1 -0
- package/dist/{chunk-F6AA42GW.js → chunk-COYF6IG2.js} +5 -5
- package/dist/{chunk-F6AA42GW.js.map → chunk-COYF6IG2.js.map} +1 -1
- package/dist/{chunk-HT35SQZD.js → chunk-DGTI65OC.js} +30 -30
- package/dist/chunk-DGTI65OC.js.map +1 -0
- package/dist/{chunk-W4Q6CKJ5.js → chunk-DIGFA7Z5.js} +11 -11
- package/dist/chunk-DIGFA7Z5.js.map +1 -0
- package/dist/{chunk-335ENCCS.js → chunk-E572OHGY.js} +2 -2
- package/dist/{chunk-335ENCCS.js.map → chunk-E572OHGY.js.map} +1 -1
- package/dist/{chunk-Y5MBW5EU.js → chunk-EJPMNDTP.js} +3 -3
- package/dist/{chunk-Y5MBW5EU.js.map → chunk-EJPMNDTP.js.map} +1 -1
- package/dist/chunk-EX3GLAL6.js +31 -0
- package/dist/chunk-EX3GLAL6.js.map +1 -0
- package/dist/{chunk-XWOPZW26.js → chunk-FKQNBCDW.js} +38 -38
- package/dist/chunk-FKQNBCDW.js.map +1 -0
- package/dist/{chunk-6E6PKKAD.js → chunk-G5SUWZEU.js} +18 -8
- package/dist/chunk-G5SUWZEU.js.map +1 -0
- package/dist/{chunk-2GXSSZAM.js → chunk-GNZBFSRB.js} +12 -12
- package/dist/chunk-GNZBFSRB.js.map +1 -0
- package/dist/{chunk-PYJS5K7V.js → chunk-HMISULVD.js} +5 -5
- package/dist/{chunk-PYJS5K7V.js.map → chunk-HMISULVD.js.map} +1 -1
- package/dist/{chunk-IP2IPMEH.js → chunk-HPMQRAIF.js} +18 -18
- package/dist/chunk-HPMQRAIF.js.map +1 -0
- package/dist/{chunk-MRHVPQNO.js → chunk-HWNK3F3X.js} +1015 -189
- package/dist/chunk-HWNK3F3X.js.map +1 -0
- package/dist/{chunk-ZQSOJH6I.js → chunk-IHFGPHCT.js} +141 -341
- package/dist/chunk-IHFGPHCT.js.map +1 -0
- package/dist/{chunk-CQJH4G2K.js → chunk-ILLTBKDJ.js} +101 -102
- package/dist/chunk-ILLTBKDJ.js.map +1 -0
- package/dist/{chunk-FKU57Q5Q.js → chunk-IRYKRKVQ.js} +3 -3
- package/dist/{chunk-FKU57Q5Q.js.map → chunk-IRYKRKVQ.js.map} +1 -1
- package/dist/{chunk-J24CY3PF.js → chunk-J72MO2WA.js} +39 -39
- package/dist/chunk-J72MO2WA.js.map +1 -0
- package/dist/{chunk-Y56YIT6J.js → chunk-JCPD4QRM.js} +4 -4
- package/dist/chunk-JCPD4QRM.js.map +1 -0
- package/dist/{chunk-X3RMRJNR.js → chunk-JRN5QF4C.js} +8 -3
- package/dist/chunk-JRN5QF4C.js.map +1 -0
- package/dist/{chunk-K4O6L3WH.js → chunk-KNY356I3.js} +3 -3
- package/dist/{chunk-K4O6L3WH.js.map → chunk-KNY356I3.js.map} +1 -1
- package/dist/{chunk-XJVBUDDJ.js → chunk-KUQAJVYT.js} +8 -8
- package/dist/chunk-KUQAJVYT.js.map +1 -0
- package/dist/{chunk-4ZTPYIBE.js → chunk-KW37WNXY.js} +12 -12
- package/dist/chunk-KW37WNXY.js.map +1 -0
- package/dist/{chunk-MJHSLODD.js → chunk-LSI2IVFT.js} +2 -2
- package/dist/chunk-LSI2IVFT.js.map +1 -0
- package/dist/{chunk-WDXZA7QW.js → chunk-LSSYC5IC.js} +2 -2
- package/dist/{chunk-WDXZA7QW.js.map → chunk-LSSYC5IC.js.map} +1 -1
- package/dist/{chunk-WG6V4ISA.js → chunk-NB7SYQYP.js} +7 -7
- package/dist/{chunk-WG6V4ISA.js.map → chunk-NB7SYQYP.js.map} +1 -1
- package/dist/{chunk-EAZECHPM.js → chunk-NBAGV6L2.js} +5 -5
- package/dist/chunk-NBAGV6L2.js.map +1 -0
- package/dist/{chunk-JTOWA6RS.js → chunk-NUA33BYO.js} +181 -64
- package/dist/chunk-NUA33BYO.js.map +1 -0
- package/dist/{chunk-A6SMCEEE.js → chunk-QAKUD6QN.js} +11 -11
- package/dist/{chunk-A6SMCEEE.js.map → chunk-QAKUD6QN.js.map} +1 -1
- package/dist/{chunk-QG6GHTRM.js → chunk-QEULL4Q3.js} +8 -8
- package/dist/chunk-QEULL4Q3.js.map +1 -0
- package/dist/{chunk-ZX4KRWRB.js → chunk-QSYQOTWN.js} +4 -4
- package/dist/{chunk-ZX4KRWRB.js.map → chunk-QSYQOTWN.js.map} +1 -1
- package/dist/{chunk-X4ZZTHU3.js → chunk-RDTLPOPD.js} +4 -4
- package/dist/{chunk-X4ZZTHU3.js.map → chunk-RDTLPOPD.js.map} +1 -1
- package/dist/{chunk-GOCWM7FN.js → chunk-RHN5MRQO.js} +21 -4
- package/dist/chunk-RHN5MRQO.js.map +1 -0
- package/dist/{chunk-XM6T2AZ2.js → chunk-S2XHGWQC.js} +162 -124
- package/dist/chunk-S2XHGWQC.js.map +1 -0
- package/dist/{chunk-VJ7NU7GD.js → chunk-SVTMNSPI.js} +23 -6
- package/dist/chunk-SVTMNSPI.js.map +1 -0
- package/dist/{chunk-I37INEWE.js → chunk-UI745XC3.js} +10 -23
- package/dist/chunk-UI745XC3.js.map +1 -0
- package/dist/{chunk-N46LQR46.js → chunk-VMVDAZLA.js} +53 -30
- package/dist/chunk-VMVDAZLA.js.map +1 -0
- package/dist/{chunk-IG5LZ3WU.js → chunk-VTETQCR6.js} +10 -10
- package/dist/chunk-VTETQCR6.js.map +1 -0
- package/dist/{chunk-EFLKSMCO.js → chunk-VUJXZDCY.js} +5 -5
- package/dist/{chunk-EFLKSMCO.js.map → chunk-VUJXZDCY.js.map} +1 -1
- package/dist/{chunk-H6UVIKQ2.js → chunk-VYVTEMAW.js} +3 -3
- package/dist/{chunk-H6UVIKQ2.js.map → chunk-VYVTEMAW.js.map} +1 -1
- package/dist/{chunk-M3WPBTGJ.js → chunk-WD3L5QSU.js} +2 -2
- package/dist/{chunk-M3WPBTGJ.js.map → chunk-WD3L5QSU.js.map} +1 -1
- package/dist/{chunk-R6O6YWU7.js → chunk-WYZXSJBK.js} +3 -3
- package/dist/{chunk-R6O6YWU7.js.map → chunk-WYZXSJBK.js.map} +1 -1
- package/dist/{chunk-R4I3VBSS.js → chunk-X3YGUKCG.js} +5 -5
- package/dist/{chunk-R4I3VBSS.js.map → chunk-X3YGUKCG.js.map} +1 -1
- package/dist/{chunk-RPZVHXQ3.js → chunk-XFIEVEU7.js} +4 -4
- package/dist/chunk-XFIEVEU7.js.map +1 -0
- package/dist/{chunk-VSZWNUZC.js → chunk-XGULGQA3.js} +4 -4
- package/dist/chunk-XGULGQA3.js.map +1 -0
- package/dist/{chunk-Q6E6FM7P.js → chunk-XKNXPLKR.js} +6 -6
- package/dist/{chunk-Q6E6FM7P.js.map → chunk-XKNXPLKR.js.map} +1 -1
- package/dist/{chunk-7XSAW5OC.js → chunk-YLLVSR2U.js} +4 -4
- package/dist/{chunk-7XSAW5OC.js.map → chunk-YLLVSR2U.js.map} +1 -1
- package/dist/{chunk-6Z5KTFJT.js → chunk-Z3VKUWAX.js} +3 -3
- package/dist/{chunk-6Z5KTFJT.js.map → chunk-Z3VKUWAX.js.map} +1 -1
- package/dist/{chunk-5BEFNLOR.js → chunk-Z7ZEZZB6.js} +8 -8
- package/dist/chunk-Z7ZEZZB6.js.map +1 -0
- package/dist/{chunk-2LSDMJI2.js → chunk-ZAELRYKS.js} +4 -4
- package/dist/{chunk-2LSDMJI2.js.map → chunk-ZAELRYKS.js.map} +1 -1
- package/dist/{chunk-UQ33Y4DM.js → chunk-ZBHZLWV3.js} +4 -4
- package/dist/{chunk-UQ33Y4DM.js.map → chunk-ZBHZLWV3.js.map} +1 -1
- package/dist/{chunk-TIIXG3PN.js → chunk-ZDLUQLI6.js} +4 -4
- package/dist/{chunk-TIIXG3PN.js.map → chunk-ZDLUQLI6.js.map} +1 -1
- package/dist/{chunk-PHRNUTSG.js → chunk-ZFUZ5AKM.js} +4 -4
- package/dist/{chunk-PHRNUTSG.js.map → chunk-ZFUZ5AKM.js.map} +1 -1
- package/dist/{chunk-V257LUBM.js → chunk-ZHGKAZJ7.js} +251 -26
- package/dist/chunk-ZHGKAZJ7.js.map +1 -0
- package/dist/claude-code-RE46FJXI.js +10 -0
- package/dist/{claude-code-2PU7TITZ.js.map → claude-code-RE46FJXI.js.map} +1 -1
- package/dist/cli/index.js +1066 -647
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/src/agent-pins.d.ts +11 -0
- package/dist/cli/src/agent-pins.d.ts.map +1 -1
- package/dist/cli/src/commands/catalog.d.ts +4 -4
- package/dist/cli/src/commands/catalog.d.ts.map +1 -1
- package/dist/cli/src/commands/complete-resolvers.d.ts.map +1 -1
- package/dist/cli/src/commands/config.d.ts +2 -2
- package/dist/cli/src/commands/config.d.ts.map +1 -1
- package/dist/cli/src/commands/diff.d.ts.map +1 -1
- package/dist/cli/src/commands/harness.d.ts +24 -0
- package/dist/cli/src/commands/harness.d.ts.map +1 -0
- package/dist/cli/src/commands/integration.d.ts +1 -1
- package/dist/cli/src/commands/integration.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 +20 -2
- 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/migrate-assets.d.ts.map +1 -1
- package/dist/cli/src/commands/migrate-files.d.ts +14 -0
- package/dist/cli/src/commands/migrate-files.d.ts.map +1 -1
- package/dist/cli/src/commands/migrate-harness.d.ts +49 -0
- package/dist/cli/src/commands/migrate-harness.d.ts.map +1 -0
- package/dist/cli/src/commands/migrate.d.ts +4 -2
- package/dist/cli/src/commands/migrate.d.ts.map +1 -1
- package/dist/cli/src/commands/plugin/types.d.ts +1 -6
- package/dist/cli/src/commands/plugin/types.d.ts.map +1 -1
- package/dist/cli/src/commands/plugin-registry-cmd.d.ts +1 -1
- package/dist/cli/src/commands/preset-export.d.ts +1 -1
- package/dist/cli/src/commands/project.d.ts +20 -2
- package/dist/cli/src/commands/project.d.ts.map +1 -1
- package/dist/cli/src/commands/run.d.ts +2 -2
- package/dist/cli/src/commands/run.d.ts.map +1 -1
- package/dist/cli/src/commands/serve-preflight.d.ts +11 -11
- package/dist/cli/src/commands/serve-preflight.d.ts.map +1 -1
- package/dist/cli/src/commands/serve.d.ts +1 -1
- package/dist/cli/src/commands/serve.d.ts.map +1 -1
- package/dist/cli/src/commands/session-logs/local-query.d.ts +2 -0
- package/dist/cli/src/commands/session-logs/local-query.d.ts.map +1 -1
- package/dist/cli/src/commands/source.d.ts +9 -2
- package/dist/cli/src/commands/source.d.ts.map +1 -1
- package/dist/cli/src/commands/store.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/config-checks.d.ts +37 -0
- package/dist/cli/src/config-checks.d.ts.map +1 -0
- package/dist/cli/src/harness-error.d.ts +47 -0
- package/dist/cli/src/harness-error.d.ts.map +1 -0
- package/dist/cli/src/helpers.d.ts +5 -5
- package/dist/cli/src/helpers.d.ts.map +1 -1
- package/dist/cli/src/plugin-store/index.d.ts +2 -2
- package/dist/cli/src/setup.d.ts +3 -3
- package/dist/cli/src/setup.d.ts.map +1 -1
- package/dist/cli/src/skill-checks.d.ts +27 -0
- package/dist/cli/src/skill-checks.d.ts.map +1 -1
- package/dist/cli/src/store-addable.d.ts +11 -0
- package/dist/cli/src/store-addable.d.ts.map +1 -1
- package/dist/connectors/config.js +6 -6
- package/dist/connectors/index.js +31 -31
- package/dist/connectors/src/connector-prompt.d.ts +5 -5
- package/dist/connectors/src/connector-registry.d.ts +1 -1
- package/dist/connectors-7THEF7YA.js +48 -0
- package/dist/{connectors-RBGZ3M7G.js.map → connectors-7THEF7YA.js.map} +1 -1
- package/dist/connectors-shared/index.js +2 -2
- package/dist/core/framework.js +1 -1
- package/dist/{bridge/drivers/codex.d.ts → core/harness-targets.d.ts} +1 -1
- package/dist/core/harness-targets.js +4 -0
- package/dist/core/harness-targets.js.map +1 -0
- package/dist/core/index.js +11 -11
- package/dist/core/manifest.js +2 -2
- package/dist/core/models.js +1 -1
- package/dist/core/provider-registry-credentials.js +2 -2
- package/dist/core/provider-registry.js +1 -1
- package/dist/core/publish-manifest.js +3 -3
- package/dist/core/ref.js +1 -1
- package/dist/core/runtime-assets.js +6 -6
- package/dist/core/src/agent-instances.d.ts.map +1 -1
- package/dist/core/src/asset-roots.d.ts +2 -2
- package/dist/core/src/config-key-diagnostics.d.ts +9 -0
- package/dist/core/src/config-key-diagnostics.d.ts.map +1 -0
- package/dist/core/src/framework.d.ts +21 -21
- package/dist/core/src/framework.d.ts.map +1 -1
- package/dist/core/src/{driver-sdk.d.ts → harness-sdk.d.ts} +9 -9
- package/dist/core/src/harness-sdk.d.ts.map +1 -0
- package/dist/core/src/harness-targets.d.ts +71 -0
- package/dist/core/src/harness-targets.d.ts.map +1 -0
- package/dist/core/src/index.d.ts +8 -8
- package/dist/core/src/index.d.ts.map +1 -1
- package/dist/core/src/manifest.d.ts +10 -0
- package/dist/core/src/manifest.d.ts.map +1 -1
- package/dist/core/src/models.d.ts +8 -0
- package/dist/core/src/models.d.ts.map +1 -1
- package/dist/core/src/provider-registry.d.ts +2 -2
- package/dist/core/src/settings.d.ts +17 -16
- package/dist/core/src/settings.d.ts.map +1 -1
- package/dist/core/src/store.d.ts +12 -12
- package/dist/core/src/store.d.ts.map +1 -1
- package/dist/core/src/workspace-config.d.ts +39 -21
- package/dist/core/src/workspace-config.d.ts.map +1 -1
- package/dist/core/src/workspace-yaml-editor.d.ts +10 -3
- package/dist/core/src/workspace-yaml-editor.d.ts.map +1 -1
- package/dist/core/store.js +2 -2
- package/dist/core/workspace-config.js +5 -5
- package/dist/deploy/index.js +12 -12
- package/dist/discovery/index.js +5 -5
- package/dist/discovery/src/builtin-providers.d.ts.map +1 -1
- package/dist/discovery/src/parse-manifest.d.ts.map +1 -1
- package/dist/{ensure-sources-GKVLE6L5.js → ensure-sources-IH7CHSJF.js} +22 -22
- package/dist/{ensure-sources-GKVLE6L5.js.map → ensure-sources-IH7CHSJF.js.map} +1 -1
- package/dist/factory-assets/connectors/box.js +31 -31
- package/dist/factory-assets/connectors/deploy.js +31 -31
- package/dist/factory-assets/connectors/devserver.js +31 -31
- package/dist/factory-assets/connectors/flow/CONNECTOR.md +5 -5
- package/dist/factory-assets/connectors/flow/adapter.d.ts +3 -3
- package/dist/factory-assets/connectors/flow/adapter.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/adapter.js +31 -31
- package/dist/factory-assets/connectors/flow/contract/normalize.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/contract.js +1 -1
- package/dist/factory-assets/connectors/flow/engine/types.d.ts +1 -1
- package/dist/factory-assets/connectors/flow/engine.js +13 -13
- package/dist/factory-assets/connectors/flow/inline-sub-flow-host.d.ts +2 -2
- package/dist/factory-assets/connectors/flow/inline-sub-flow-host.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/orchestrator-turn.d.ts +4 -4
- package/dist/factory-assets/connectors/flow/orchestrator-turn.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/prompt-fragments.d.ts +1 -1
- package/dist/factory-assets/connectors/flow/prompt-fragments.js +1 -1
- package/dist/factory-assets/connectors/flow/run-flow.d.ts +12 -12
- package/dist/factory-assets/connectors/flow/run-flow.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/run-flow.js +33 -33
- package/dist/factory-assets/connectors/flow/sub-flow-runner.d.ts +1 -1
- package/dist/factory-assets/connectors/flow/sub-flow-runner.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/subprompt-runner.d.ts +22 -22
- package/dist/factory-assets/connectors/flow/subprompt-runner.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow.js +31 -31
- package/dist/factory-assets/connectors/git.js +31 -31
- package/dist/factory-assets/connectors/gmail.js +31 -31
- package/dist/factory-assets/connectors/googledrive.js +31 -31
- package/dist/factory-assets/connectors/local.js +31 -31
- package/dist/factory-assets/connectors/mattermost.js +31 -31
- package/dist/factory-assets/connectors/memory.js +31 -31
- package/dist/factory-assets/connectors/minio.js +31 -31
- package/dist/factory-assets/connectors/postgres.js +31 -31
- package/dist/factory-assets/connectors/s3.js +31 -31
- package/dist/factory-assets/connectors/sharepoint.js +31 -31
- package/dist/factory-assets/connectors/sqlite.js +31 -31
- package/dist/factory-assets/connectors/static-server.js +31 -31
- package/dist/factory-assets/connectors/tunnel.js +31 -31
- package/dist/factory-assets/connectors/webdav.js +31 -31
- package/dist/factory-assets/connectors/xstate-store.js +31 -31
- package/dist/factory-assets/connectors/xstate.js +31 -31
- package/dist/factory-assets/skills/authoring-skaile-assets/SKILL.md +1 -1
- package/dist/factory-assets/skills/authoring-skaile-manifests/SKILL.md +2 -2
- package/dist/factory-assets/skills/authoring-skaile-manifests/references/dependency-standard.md +3 -3
- package/dist/factory-assets/skills/skaile-manage-workspace/SKILL.md +1 -1
- package/dist/flows-4JZQ3XFK.js +26 -0
- package/dist/{flows-W2FB7WIM.js.map → flows-4JZQ3XFK.js.map} +1 -1
- package/dist/{helpers-34QNVIGB.js → helpers-JNMK3FC2.js} +22 -22
- package/dist/{helpers-34QNVIGB.js.map → helpers-JNMK3FC2.js.map} +1 -1
- package/dist/library/index.js +15 -15
- package/dist/library/install.js +4 -4
- package/dist/library/src/index.d.ts +1 -1
- package/dist/library/src/index.d.ts.map +1 -1
- package/dist/library/src/local/library-dir.d.ts +22 -5
- package/dist/library/src/local/library-dir.d.ts.map +1 -1
- package/dist/library/src/local/local-catalog-source.d.ts.map +1 -1
- package/dist/library/src/remote/remote-catalog-source.d.ts +6 -0
- package/dist/library/src/remote/remote-catalog-source.d.ts.map +1 -1
- package/dist/{library-publish-RUQTKTJU.js → library-publish-I3UWXAHI.js} +69 -67
- package/dist/library-publish-I3UWXAHI.js.map +1 -0
- package/dist/model-endpoint/index.js +15 -15
- package/dist/model-endpoint/src/resolve.d.ts +1 -1
- package/dist/open-library-NKKUJLWA.js +42 -0
- package/dist/{open-library-PVTIUQUF.js.map → open-library-NKKUJLWA.js.map} +1 -1
- package/dist/open-registry-BYAXSHUI.js +32 -0
- package/dist/{open-registry-SOIS3TA2.js.map → open-registry-BYAXSHUI.js.map} +1 -1
- package/dist/paths-UKWE35XS.js +22 -0
- package/dist/{paths-JLNX7Y4X.js.map → paths-UKWE35XS.js.map} +1 -1
- package/dist/plugin-registry/index.js +1 -1
- package/dist/plugin-registry/src/context.d.ts +3 -3
- package/dist/plugin-registry/src/context.d.ts.map +1 -1
- package/dist/plugin-registry/src/deploy-handle.d.ts +1 -1
- package/dist/plugin-registry/src/index.d.ts +2 -2
- package/dist/plugin-registry/src/index.d.ts.map +1 -1
- package/dist/plugin-registry/src/internal.d.ts.map +1 -1
- package/dist/plugin-registry/src/registry.d.ts +3 -3
- package/dist/plugin-registry/src/registry.d.ts.map +1 -1
- package/dist/plugin-registry/src/targets.d.ts +9 -9
- package/dist/plugin-registry/src/targets.d.ts.map +1 -1
- package/dist/plugin-store-ABE35NRX.js +23 -0
- package/dist/{plugin-store-G2GWAHSD.js.map → plugin-store-ABE35NRX.js.map} +1 -1
- package/dist/plugins/src/asset-kind-provider.d.ts +1 -1
- package/dist/project-BIPK47JK.js +86 -0
- package/dist/{project-EX47PUBN.js.map → project-BIPK47JK.js.map} +1 -1
- package/dist/resolver/index.js +12 -12
- package/dist/runner/index.js +50 -50
- package/dist/runner/src/agent.d.ts +3 -3
- package/dist/runner/src/agent.d.ts.map +1 -1
- package/dist/runner/src/agents/in-process-host.d.ts +1 -1
- package/dist/runner/src/agents/instances.d.ts +1 -1
- package/dist/runner/src/agents/instances.d.ts.map +1 -1
- package/dist/runner/src/agents/run-controller.d.ts +7 -7
- package/dist/runner/src/agents/run-controller.d.ts.map +1 -1
- package/dist/runner/src/agents/standalone-surface.d.ts +2 -2
- package/dist/runner/src/agents/standalone-surface.d.ts.map +1 -1
- package/dist/runner/src/ai-provider-switch.d.ts +7 -7
- package/dist/runner/src/assistant-home.d.ts +1 -1
- package/dist/runner/src/capability-registry.d.ts +2 -2
- package/dist/runner/src/coalesced-restart.d.ts +2 -2
- package/dist/runner/src/compaction/context-window.d.ts +8 -8
- package/dist/runner/src/compaction/context-window.d.ts.map +1 -1
- package/dist/runner/src/compaction/orchestrator.d.ts +24 -24
- package/dist/runner/src/compaction/orchestrator.d.ts.map +1 -1
- package/dist/runner/src/compaction-gate.d.ts +30 -30
- package/dist/runner/src/compaction-gate.d.ts.map +1 -1
- package/dist/runner/src/composition/content-source.d.ts.map +1 -1
- package/dist/runner/src/composition/dry-run.d.ts +2 -2
- package/dist/runner/src/composition/dry-run.d.ts.map +1 -1
- package/dist/runner/src/composition/errors.d.ts +16 -1
- package/dist/runner/src/composition/errors.d.ts.map +1 -1
- package/dist/runner/src/composition/resolve-instance.d.ts +2 -2
- package/dist/runner/src/composition/resolve.d.ts +1 -1
- package/dist/runner/src/config.d.ts +3 -3
- package/dist/runner/src/config.d.ts.map +1 -1
- package/dist/runner/src/context-usage/collector.d.ts +15 -15
- package/dist/runner/src/context-usage/collector.d.ts.map +1 -1
- package/dist/runner/src/context-usage/compose.d.ts +6 -6
- package/dist/runner/src/context-usage/compose.d.ts.map +1 -1
- package/dist/runner/src/context-usage/estimator.d.ts +1 -1
- package/dist/runner/src/context-usage/index.d.ts +1 -1
- package/dist/runner/src/context-usage/index.d.ts.map +1 -1
- package/dist/runner/src/context-usage/transcript-tracker.d.ts +2 -2
- package/dist/runner/src/context-usage/transcript-tracker.d.ts.map +1 -1
- package/dist/runner/src/credential-notice.d.ts +4 -4
- package/dist/runner/src/credential-notice.d.ts.map +1 -1
- package/dist/runner/src/credential-rotated.d.ts +1 -1
- package/dist/runner/src/final-text.d.ts +1 -1
- package/dist/runner/src/{driver-swap-gate.d.ts → harness-swap-gate.d.ts} +21 -21
- package/dist/runner/src/harness-swap-gate.d.ts.map +1 -0
- package/dist/runner/src/late-mcp-rebuild.d.ts +6 -6
- package/dist/runner/src/late-mcp-rebuild.d.ts.map +1 -1
- package/dist/runner/src/lifecycle-handler.d.ts +1 -1
- package/dist/runner/src/lifecycle-handler.d.ts.map +1 -1
- package/dist/runner/src/manifest.d.ts +1 -1
- package/dist/runner/src/mcp-runtime-handlers.d.ts +6 -6
- package/dist/runner/src/mcp-runtime-handlers.d.ts.map +1 -1
- package/dist/runner/src/model-endpoint-discovery.d.ts +1 -1
- package/dist/runner/src/pending-turns.d.ts +3 -3
- package/dist/runner/src/platform-blocks.d.ts +5 -5
- package/dist/runner/src/platform-blocks.d.ts.map +1 -1
- package/dist/runner/src/prompt-turn-queue.d.ts +1 -1
- package/dist/runner/src/provider-quota-forwarder.d.ts +1 -1
- package/dist/runner/src/provider-quota-forwarder.d.ts.map +1 -1
- package/dist/runner/src/reconfigure-handler.d.ts +14 -14
- package/dist/runner/src/reconfigure-handler.d.ts.map +1 -1
- package/dist/runner/src/resource-handler.d.ts +1 -1
- package/dist/runner/src/resources.d.ts +5 -5
- package/dist/runner/src/resources.d.ts.map +1 -1
- package/dist/runner/src/runner-capabilities.d.ts +7 -7
- package/dist/runner/src/runtime-session-emit.d.ts +5 -5
- package/dist/runner/src/runtime-session-emit.d.ts.map +1 -1
- package/dist/runner/src/s3-presign-client.d.ts +1 -1
- package/dist/runner/src/serve-credentials.d.ts +7 -7
- package/dist/runner/src/serve-credentials.d.ts.map +1 -1
- package/dist/runner/src/serve.d.ts +46 -34
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/runner/src/session-builder.d.ts +41 -41
- package/dist/runner/src/session-builder.d.ts.map +1 -1
- package/dist/runner/src/session-capability-wiring.d.ts +9 -9
- package/dist/runner/src/session-capability-wiring.d.ts.map +1 -1
- package/dist/runner/src/session-stimulus.d.ts +1 -1
- package/dist/runner/src/session.d.ts +5 -5
- package/dist/runner/src/session.d.ts.map +1 -1
- package/dist/runner/src/skill-staging.d.ts +16 -16
- package/dist/runner/src/skill-staging.d.ts.map +1 -1
- package/dist/runner/src/turn-end-contract.d.ts +5 -5
- package/dist/runner/src/turn-end-contract.d.ts.map +1 -1
- package/dist/runner/src/turn-scheduler.d.ts +22 -22
- package/dist/runner/src/turn-scheduler.d.ts.map +1 -1
- package/dist/runner/src/turn-status-replay.d.ts +1 -1
- package/dist/runner/src/usage-limit-turn-hold.d.ts +1 -1
- package/dist/sdk/asset-manager.js +19 -19
- package/dist/sdk/bridge.js +25 -25
- package/dist/sdk/core.js +11 -11
- package/dist/sdk/flow.js +13 -13
- package/dist/sdk/index.js +54 -54
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/resolver.js +12 -12
- package/dist/sdk/runner.js +50 -50
- package/dist/sdk/session.js +2 -2
- package/dist/sdk/src/agent-session.d.ts +1 -1
- package/dist/sdk/src/local-runtime.d.ts +1 -1
- package/dist/sdk/src/local-runtime.d.ts.map +1 -1
- package/dist/sdk/src/types.d.ts +1 -1
- package/dist/sdk/src/types.d.ts.map +1 -1
- package/dist/sdk/store.js +2 -2
- package/dist/sdk/transport/ws/server.js +12 -12
- package/dist/sdk/transport/ws.js +12 -12
- package/dist/sdk/transport.js +12 -12
- package/dist/sdk/types.js +1 -1
- package/dist/serve-preflight-FLTIBTEX.js +107 -0
- package/dist/serve-preflight-FLTIBTEX.js.map +1 -0
- package/dist/session/index.js +2 -2
- package/dist/session/src/dispatcher.d.ts +2 -2
- package/dist/sessions-2Q7SSYPT.js +5 -0
- package/dist/{sessions-DICDEONJ.js.map → sessions-2Q7SSYPT.js.map} +1 -1
- package/dist/{setup-AFZQNGKA.js → setup-AG6NFHSN.js} +52 -52
- package/dist/setup-AG6NFHSN.js.map +1 -0
- package/dist/skills-UQYUHVKO.js +26 -0
- package/dist/{skills-YYYC6D5X.js.map → skills-UQYUHVKO.js.map} +1 -1
- package/dist/source-ASEHI2XS.js +85 -0
- package/dist/{source-DGPCT5IC.js.map → source-ASEHI2XS.js.map} +1 -1
- package/dist/{source-manifest-publish-AGJ63JF2.js → source-manifest-publish-IEVV3W6J.js} +62 -62
- package/dist/{source-manifest-publish-AGJ63JF2.js.map → source-manifest-publish-IEVV3W6J.js.map} +1 -1
- package/dist/store/index.js +2 -2
- package/dist/store/src/store.d.ts +3 -3
- package/dist/store/src/store.d.ts.map +1 -1
- package/dist/transport/index.js +12 -12
- package/dist/transport/ws/server.js +12 -12
- package/dist/transport/ws.js +12 -12
- package/dist/tui/index.js +70 -70
- package/dist/tui/index.js.map +1 -1
- package/dist/tui/src/repl-session.d.ts +5 -5
- package/dist/tui/src/repl.d.ts +5 -5
- package/dist/tui/src/repl.d.ts.map +1 -1
- package/dist/types/index.js +1 -1
- package/dist/types/manifests.js +1 -1
- package/dist/types/src/agent-lifecycle.d.ts +1 -1
- package/dist/types/src/agent-lifecycle.d.ts.map +1 -1
- package/dist/types/src/ask-slots.d.ts +1 -1
- package/dist/types/src/capabilities.d.ts +1 -1
- package/dist/types/src/context-usage.d.ts +22 -22
- package/dist/types/src/context-usage.d.ts.map +1 -1
- package/dist/types/src/events.d.ts +49 -49
- package/dist/types/src/events.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +2 -2
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/install-manifest.d.ts +1 -1
- package/dist/types/src/install-manifest.d.ts.map +1 -1
- package/dist/types/src/lifecycle.d.ts +6 -6
- package/dist/types/src/lifecycle.d.ts.map +1 -1
- package/dist/types/src/logging.d.ts +1 -1
- package/dist/types/src/manifests/agent.d.ts +3 -3
- package/dist/types/src/protocol.d.ts +4 -4
- package/dist/types/src/runtime.d.ts +38 -38
- package/dist/types/src/runtime.d.ts.map +1 -1
- package/dist/types/src/version.d.ts +22 -11
- package/dist/types/src/version.d.ts.map +1 -1
- package/dist/validator-DRHMJ457.js +5 -0
- package/dist/{validator-FA2PFW6N.js.map → validator-DRHMJ457.js.map} +1 -1
- package/dist/workspace-plugin/adapters/mcp.js +41 -41
- package/dist/workspace-plugin/adapters/omp.js +26 -26
- package/dist/workspace-plugin/adapters/omp.js.map +1 -1
- package/dist/workspace-plugin/index.js +3 -3
- package/dist/workspace-plugin/src/plugin.d.ts +5 -5
- package/dist/workspace-plugin/src/plugin.d.ts.map +1 -1
- package/dist/workspace-plugin/src/tools/flows.d.ts +1 -1
- package/dist/workspace-plugin/src/tools/validator.d.ts +6 -6
- package/dist/workspace-plugin/src/tools/validator.d.ts.map +1 -1
- package/dist/workspace-plugin/src/types.d.ts +2 -2
- package/dist/workspace-plugin/src/types.d.ts.map +1 -1
- package/package.json +59 -59
- package/dist/asset-feeds-QGLI3AXI.js.map +0 -1
- package/dist/bridge/drivers/claude-sdk.js.map +0 -1
- package/dist/bridge/drivers/codex.js.map +0 -1
- package/dist/bridge/drivers/continue.js.map +0 -1
- package/dist/bridge/drivers/echo.js.map +0 -1
- package/dist/bridge/drivers/gemini.js +0 -18
- package/dist/bridge/drivers/goose.js.map +0 -1
- package/dist/bridge/drivers/omp.js.map +0 -1
- package/dist/bridge/drivers/opencode.js.map +0 -1
- package/dist/bridge/drivers/qwen.js.map +0 -1
- package/dist/bridge/src/codex/managed-driver.d.ts.map +0 -1
- package/dist/bridge/src/driver-capabilities.d.ts.map +0 -1
- package/dist/bridge/src/driver-model-check.d.ts +0 -25
- package/dist/bridge/src/driver-model-check.d.ts.map +0 -1
- package/dist/bridge/src/drivers/_subprocess-cli.d.ts.map +0 -1
- package/dist/bridge/src/drivers/claude-context-usage.d.ts.map +0 -1
- package/dist/bridge/src/drivers/claude-sdk.d.ts.map +0 -1
- package/dist/bridge/src/drivers/claude-self-turns.d.ts.map +0 -1
- package/dist/bridge/src/drivers/claude-tool-allowlist.d.ts.map +0 -1
- package/dist/bridge/src/drivers/codex.d.ts.map +0 -1
- package/dist/bridge/src/drivers/continue.d.ts.map +0 -1
- package/dist/bridge/src/drivers/echo.d.ts.map +0 -1
- package/dist/bridge/src/drivers/flow-script.d.ts.map +0 -1
- package/dist/bridge/src/drivers/gemini.d.ts.map +0 -1
- package/dist/bridge/src/drivers/goose.d.ts.map +0 -1
- package/dist/bridge/src/drivers/omp-models-yml.d.ts.map +0 -1
- package/dist/bridge/src/drivers/omp.d.ts.map +0 -1
- package/dist/bridge/src/drivers/opencode.d.ts.map +0 -1
- package/dist/bridge/src/drivers/qwen.d.ts.map +0 -1
- package/dist/bridge/src/drivers/recovery-policy.d.ts.map +0 -1
- package/dist/bridge/src/drivers/resume-probe.d.ts.map +0 -1
- package/dist/bridge/src/drivers/sanitize-assistant-text.d.ts.map +0 -1
- package/dist/bridge/src/drivers/scrub-transcript.d.ts.map +0 -1
- package/dist/bridge/src/provider-materialize/env-drivers.d.ts.map +0 -1
- package/dist/chunk-2GXSSZAM.js.map +0 -1
- package/dist/chunk-4ZTPYIBE.js.map +0 -1
- package/dist/chunk-5BEFNLOR.js.map +0 -1
- package/dist/chunk-5TBFN46Z.js.map +0 -1
- package/dist/chunk-6E6PKKAD.js.map +0 -1
- package/dist/chunk-7NT4F6SR.js.map +0 -1
- package/dist/chunk-7SCS64BG.js.map +0 -1
- package/dist/chunk-AJ7EGIFR.js.map +0 -1
- package/dist/chunk-C7WBGSBV.js.map +0 -1
- package/dist/chunk-COJIL7G4.js.map +0 -1
- package/dist/chunk-CQJH4G2K.js.map +0 -1
- package/dist/chunk-EAZECHPM.js.map +0 -1
- package/dist/chunk-EPBKISS5.js.map +0 -1
- package/dist/chunk-FPHNJE4M.js.map +0 -1
- package/dist/chunk-GOCWM7FN.js.map +0 -1
- package/dist/chunk-HT35SQZD.js.map +0 -1
- package/dist/chunk-I37INEWE.js.map +0 -1
- package/dist/chunk-IG5LZ3WU.js.map +0 -1
- package/dist/chunk-IP2IPMEH.js.map +0 -1
- package/dist/chunk-IZCR27MU.js.map +0 -1
- package/dist/chunk-J24CY3PF.js.map +0 -1
- package/dist/chunk-JTOWA6RS.js.map +0 -1
- package/dist/chunk-L2AMXONH.js.map +0 -1
- package/dist/chunk-MJHSLODD.js.map +0 -1
- package/dist/chunk-MKRWN7XP.js.map +0 -1
- package/dist/chunk-MRHVPQNO.js.map +0 -1
- package/dist/chunk-N46LQR46.js.map +0 -1
- package/dist/chunk-PUK7TQT4.js +0 -13
- package/dist/chunk-PUK7TQT4.js.map +0 -1
- package/dist/chunk-QG6GHTRM.js.map +0 -1
- package/dist/chunk-RO6VOM6Z.js.map +0 -1
- package/dist/chunk-RPZVHXQ3.js.map +0 -1
- package/dist/chunk-V257LUBM.js.map +0 -1
- package/dist/chunk-VJ7NU7GD.js.map +0 -1
- package/dist/chunk-VSZWNUZC.js.map +0 -1
- package/dist/chunk-W4Q6CKJ5.js.map +0 -1
- package/dist/chunk-WOIRYY5L.js.map +0 -1
- package/dist/chunk-WST6UITC.js.map +0 -1
- package/dist/chunk-X3RMRJNR.js.map +0 -1
- package/dist/chunk-XJVBUDDJ.js.map +0 -1
- package/dist/chunk-XM6T2AZ2.js.map +0 -1
- package/dist/chunk-XWOPZW26.js.map +0 -1
- package/dist/chunk-Y56YIT6J.js.map +0 -1
- package/dist/chunk-YROR332M.js.map +0 -1
- package/dist/chunk-ZQSOJH6I.js.map +0 -1
- package/dist/claude-code-2PU7TITZ.js +0 -10
- package/dist/cli/src/driver-error.d.ts +0 -28
- package/dist/cli/src/driver-error.d.ts.map +0 -1
- package/dist/connectors-RBGZ3M7G.js +0 -48
- package/dist/core/driver-targets.d.ts +0 -2
- package/dist/core/driver-targets.js +0 -4
- package/dist/core/driver-targets.js.map +0 -1
- package/dist/core/src/driver-sdk.d.ts.map +0 -1
- package/dist/core/src/driver-targets.d.ts +0 -71
- package/dist/core/src/driver-targets.d.ts.map +0 -1
- package/dist/flows-W2FB7WIM.js +0 -26
- package/dist/library-publish-RUQTKTJU.js.map +0 -1
- package/dist/open-library-PVTIUQUF.js +0 -42
- package/dist/open-registry-SOIS3TA2.js +0 -32
- package/dist/paths-JLNX7Y4X.js +0 -22
- package/dist/plugin-store-G2GWAHSD.js +0 -23
- package/dist/project-EX47PUBN.js +0 -84
- package/dist/runner/src/driver-swap-gate.d.ts.map +0 -1
- package/dist/serve-preflight-QXRKGOI5.js +0 -108
- package/dist/serve-preflight-QXRKGOI5.js.map +0 -1
- package/dist/sessions-DICDEONJ.js +0 -5
- package/dist/setup-AFZQNGKA.js.map +0 -1
- package/dist/skills-YYYC6D5X.js +0 -26
- package/dist/source-DGPCT5IC.js +0 -85
- package/dist/validator-FA2PFW6N.js +0 -5
- /package/dist/bridge/{drivers → harnesses}/gemini.js.map +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../bridge/src/provider-materialize/opencode-config.ts","../../../bridge/src/harnesses/opencode.ts"],"names":[],"mappings":"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","file":"opencode.js","sourcesContent":["/**\n * OpenCode's `opencode.json` adapter — the file half of the OpenCode row\n * (§2.3).\n *\n * OpenCode names providers out of [models.dev](https://models.dev): a stock\n * endpoint is already in that list, so the env half's `-m <preset>/<model>`\n * reaches it with nothing written. An endpoint models.dev has never heard of —\n * a self-hosted gateway, a LiteLLM proxy, an Ollama box — exists for OpenCode\n * only if a `provider` block in `opencode.json` describes it:\n *\n * ```jsonc\n * {\n * \"provider\": {\n * \"corp-gateway\": {\n * \"npm\": \"@ai-sdk/openai-compatible\",\n * \"name\": \"Corp Gateway\",\n * \"options\": {\n * \"baseURL\": \"https://llm.corp.example/v1\",\n * \"apiKey\": \"{env:SKAILE_AIP_CORP_GATEWAY_KEY}\"\n * },\n * \"models\": { \"corp-fast-1\": { \"name\": \"corp-fast-1\" } }\n * }\n * }\n * }\n * ```\n *\n * The block is keyed by {@link harnessProviderName}, so the name in the file\n * is the name the env half already puts on `-m`. `npm` is the Vercel AI SDK\n * package for the entry's wire `surface`; OpenCode instantiates the provider\n * from it, which is why an entry on a surface with no package is left out\n * rather than guessed at.\n *\n * **Credentials never enter the file.** `options.apiKey` holds OpenCode's own\n * `{env:VAR}` indirection naming the per-entry variable\n * `SKAILE_AIP_<ID>_KEY`; the value rides in the child environment.\n *\n * The document is written to `<home>/opencode/opencode.json` and the child's\n * `XDG_CONFIG_HOME` is pointed at `<home>` — see\n * {@link harnessSessionConfigHome} for why that, and not the developer's\n * `~/.config/opencode`.\n *\n * @docLink packages/bridge/harnesses#one-shot-cli-harnesses-gemini-qwen-opencode-goose-continue\n */\n\nimport { join } from \"node:path\";\nimport type {\n AIProviderLlmEntry,\n AIProviderSurface,\n} from \"@skaile/workspaces/core/provider-registry\";\nimport { providerCredentialEnvName } from \"./credential-env.js\";\nimport {\n harnessModelSelector,\n entryBaseUrl,\n entryModelIds,\n entrySurface,\n type EnvHarnessSession,\n isStockCatalogEndpoint,\n resolveRegistryBinding,\n selectableEntries,\n versionedAnthropicBaseUrl,\n} from \"./env-harnesses.js\";\nimport {\n harnessSessionConfigHome,\n removeSessionConfigFile,\n writeSessionConfigFile,\n} from \"./session-config-home.js\";\n\n/**\n * `surface` → the Vercel AI SDK package OpenCode loads for it. These are the\n * four surfaces `BUILTIN_HARNESS_CATALOG.opencode.surfaces` declares; a surface\n * with no package here cannot be instantiated, so the entry is skipped.\n */\nconst OPENCODE_NPM_PACKAGE: Partial<Record<AIProviderSurface, string>> = {\n \"anthropic-messages\": \"@ai-sdk/anthropic\",\n \"openai-completions\": \"@ai-sdk/openai-compatible\",\n \"openai-responses\": \"@ai-sdk/openai\",\n \"google-generative-ai\": \"@ai-sdk/google\",\n};\n\n/** Credential kinds whose value the adapter hands over in an env var. */\nconst ENV_DELIVERED_CREDENTIALS: Record<string, true> = {\n api_key_header: true,\n bearer: true,\n command: true,\n};\n\n/** Subdirectory OpenCode reads its global config from, under the config home. */\nexport const OPENCODE_CONFIG_DIRNAME = \"opencode\";\n\n/** Filename OpenCode reads its global config from. */\nexport const OPENCODE_CONFIG_FILENAME = \"opencode.json\";\n\n/** One `provider.<id>` block, in OpenCode's own vocabulary. */\nexport interface OpenCodeProviderBlock {\n /** AI SDK package OpenCode instantiates the provider from. */\n npm: string;\n /** Display name in the `/models` picker. */\n name: string;\n options: {\n baseURL?: string;\n /** OpenCode's `{env:VAR}` indirection — never a secret. */\n apiKey?: string;\n headers?: Record<string, string>;\n };\n /** Provider-side model id → its display entry. */\n models: Record<string, { name: string }>;\n}\n\n/** The subset of `opencode.json` this adapter owns. */\nexport interface OpenCodeConfigDocument {\n $schema: string;\n /** `<provider>/<model>` the session selected, when it selected one. */\n model?: string;\n provider: Record<string, OpenCodeProviderBlock>;\n}\n\n/** An entry OpenCode cannot be taught, and why. */\nexport interface OpenCodeSkippedEntry {\n id: string;\n reason: string;\n}\n\n/** Result of {@link buildOpenCodeConfigDocument}. */\nexport interface OpenCodeConfigBuild {\n document: OpenCodeConfigDocument;\n /** Entries left out of the document — non-fatal, logged by the harness. */\n skipped: OpenCodeSkippedEntry[];\n}\n\n/**\n * Render one entry as a provider block, or explain why OpenCode cannot load\n * it.\n */\nexport function renderOpenCodeProvider(\n providerId: string,\n entry: AIProviderLlmEntry,\n): { block: OpenCodeProviderBlock } | { skipped: string } {\n const surface = entrySurface(entry);\n const npm = surface ? OPENCODE_NPM_PACKAGE[surface] : undefined;\n if (!npm)\n return {\n skipped: surface\n ? `OpenCode has no AI SDK package for surface '${surface}'`\n : \"entry declares no surface\",\n };\n const baseUrl = entryBaseUrl(entry);\n if (!baseUrl)\n return { skipped: \"entry states no base_url, and OpenCode does not know this provider\" };\n\n const models: Record<string, { name: string }> = {};\n for (const [logicalId, providerModelId] of entryModelIds(entry)) {\n models[providerModelId] = { name: `${entry.label ?? providerId} ${logicalId}` };\n }\n\n const block: OpenCodeProviderBlock = {\n npm,\n name: entry.label ?? providerId,\n // `@ai-sdk/anthropic` posts to `<baseURL>/messages`.\n options: { baseURL: versionedAnthropicBaseUrl(baseUrl, surface) },\n models,\n };\n const credentialKind = entry.credential?.kind;\n if (credentialKind && ENV_DELIVERED_CREDENTIALS[credentialKind])\n block.options.apiKey = `{env:${providerCredentialEnvName(providerId)}}`;\n if (entry.headers && Object.keys(entry.headers).length > 0)\n block.options.headers = { ...entry.headers };\n return { block };\n}\n\n/**\n * Build the document for a session: one block per entry OpenCode cannot name\n * on its own, plus the selected `<provider>/<model>`.\n *\n * The selected model is added to its provider's `models` map even when no\n * `model_map` declared it — a selector naming a model the registry did not\n * enumerate still has to resolve, and `-m` would otherwise name a model the\n * provider block does not list.\n *\n * An empty registry renders nothing — there is no endpoint of the session's\n * own to tell OpenCode about, and models.dev already covers the stock ones.\n */\nexport function buildOpenCodeConfigDocument(session: EnvHarnessSession): OpenCodeConfigBuild {\n const document: OpenCodeConfigDocument = {\n $schema: \"https://opencode.ai/config.json\",\n provider: {},\n };\n const skipped: OpenCodeSkippedEntry[] = [];\n\n for (const [providerId, entry] of selectableEntries(session.registry)) {\n // OpenCode already knows every catalog endpoint through models.dev, under\n // the same name `harnessProviderName` gives `-m`. What it cannot know is\n // an endpoint of the session's own, and that is exactly what this file is\n // for — one rule, read by both halves.\n if (isStockCatalogEndpoint(entry)) continue;\n const rendered = renderOpenCodeProvider(providerId, entry);\n if (\"skipped\" in rendered) skipped.push({ id: providerId, reason: rendered.skipped });\n else document.provider[providerId] = rendered.block;\n }\n\n const binding = resolveRegistryBinding(session);\n const selector = binding ? harnessModelSelector(binding) : undefined;\n if (binding && selector) {\n document.model = selector;\n const block = document.provider[binding.providerId];\n if (block && binding.providerModelId && !block.models[binding.providerModelId])\n block.models[binding.providerModelId] = { name: binding.providerModelId };\n }\n\n return { document, skipped };\n}\n\n/** What {@link materializeOpenCodeConfig} handed the harness. */\nexport interface OpenCodeMaterialization extends OpenCodeConfigBuild {\n /** Child env fragment: `XDG_CONFIG_HOME`, or empty when nothing was written. */\n env: Record<string, string>;\n /** Absolute path of the rendered file, when one was written. */\n path?: string;\n}\n\n/**\n * Render the session's custom endpoints and point the child at them.\n *\n * A session whose every endpoint is already a models.dev provider writes\n * nothing and leaves `XDG_CONFIG_HOME` alone: relocating it would hide the\n * developer's own `~/.config/opencode` for no gain. A file left by an earlier\n * render of the same session is removed in that case, so a session that drops\n * its custom endpoint stops answering to it.\n */\nexport function materializeOpenCodeConfig(\n session: EnvHarnessSession,\n config: { cwd: string; sessionId?: string },\n): OpenCodeMaterialization {\n const build = buildOpenCodeConfigDocument(session);\n const home = harnessSessionConfigHome(\"opencode\", config);\n const dir = join(home, OPENCODE_CONFIG_DIRNAME);\n if (Object.keys(build.document.provider).length === 0) {\n removeSessionConfigFile(dir, OPENCODE_CONFIG_FILENAME);\n return { ...build, env: {} };\n }\n const path = writeSessionConfigFile(\n dir,\n OPENCODE_CONFIG_FILENAME,\n `${JSON.stringify(build.document, null, 2)}\\n`,\n );\n return { ...build, env: { XDG_CONFIG_HOME: home }, path };\n}\n","import type { HarnessTarget } from \"@skaile/workspaces/plugin-registry\";\nimport type { Logger, TokenUsage } from \"@skaile/workspaces/types\";\nimport * as z from \"zod\";\nimport { getBridgeLogger } from \"../logger.js\";\nimport type { ModelEntry } from \"../models.js\";\nimport {\n harnessModelSelector,\n credentialsForEveryProvider,\n type EnvHarnessSession,\n registryModelEntries,\n resolveEnvHarnessSession,\n resolveRegistryBinding,\n} from \"../provider-materialize/env-harnesses.js\";\nimport { materializeOpenCodeConfig } from \"../provider-materialize/opencode-config.js\";\nimport { registryHarnessConfig } from \"../provider-registry-derive.js\";\nimport { BUILTIN_HARNESS_CATALOG } from \"../registry.js\";\nimport type { AgentConfig, HarnessInfo, ReconfigureApplied } from \"../types.js\";\nimport { extractText, SubprocessCliHarness } from \"./_subprocess-cli.js\";\n\n/**\n * One `opencode run --format json` event, as emitted by opencode-ai 1.18.31:\n * `{type, timestamp, sessionID, part}` with the payload nested under `part`.\n * Only the fields the harness reads are pinned; other keys are stripped.\n */\nconst OpenCodeEvent = z.object({\n type: z.string(),\n sessionID: z.string().optional(),\n part: z\n .object({\n text: z.string().optional(),\n reason: z.string().optional(),\n cost: z.number().optional(),\n tokens: z\n .object({\n input: z.number().optional(),\n output: z.number().optional(),\n total: z.number().optional(),\n reasoning: z.number().optional(),\n cache: z.object({ read: z.number().optional(), write: z.number().optional() }).optional(),\n })\n .optional(),\n })\n .default({}),\n});\ntype OpenCodeTokens = NonNullable<z.infer<typeof OpenCodeEvent>[\"part\"][\"tokens\"]>;\n\n/** Map `step_finish.part.tokens` onto {@link TokenUsage}; zero cache/reasoning counts are omitted. */\nfunction opencodeTokens(t: OpenCodeTokens | undefined): TokenUsage | null {\n if (!t) return null;\n const usage: TokenUsage = {};\n if (t.input !== undefined) usage.inputTokens = t.input;\n if (t.output !== undefined) usage.outputTokens = t.output;\n if (t.total !== undefined) usage.totalTokens = t.total;\n if (t.reasoning) usage.reasoningTokens = t.reasoning;\n if (t.cache?.read) usage.cacheReadTokens = t.cache.read;\n if (t.cache?.write) usage.cacheCreationTokens = t.cache.write;\n return Object.keys(usage).length > 0 ? usage : null;\n}\n\n/** Sum two usages field by field (a turn can span several opencode steps). */\nfunction addTokens(a: TokenUsage | null, b: TokenUsage): TokenUsage {\n if (!a) return b;\n const out: TokenUsage = { ...a };\n for (const key of Object.keys(b) as (keyof TokenUsage)[])\n out[key] = (a[key] ?? 0) + (b[key] ?? 0);\n return out;\n}\n\n/**\n * Agent harness for **OpenCode** (`opencode`), the model-agnostic open-source\n * coding agent.\n *\n * Spawns `opencode run \"<prompt>\" --format json` per turn and maps OpenCode's\n * JSON event stream to the unified {@link AgentEvent} stream. A\n * `credentials-n` harness (§2.3): every enabled AI provider entry's\n * credential reaches the child environment, and the active model is selected\n * as `-m <provider>/<model>`. An endpoint models.dev does not know is\n * additionally rendered into a session-private `opencode.json`\n * (`provider-materialize/opencode-config.ts`) that `XDG_CONFIG_HOME` points\n * the child at.\n *\n * @remarks\n * - The prompt is a **positional argument** — OpenCode's `-p` flag is a\n * basic-auth password, not the prompt.\n * - Session resume via `-s <id>`; the session id is read from `sessionID`,\n * present on every event, and emitted once as `session_info`.\n * - The event schema is pinned against opencode-ai 1.18.31 by a recorded\n * fixture (`tests/fixtures/opencode-1.18-events.jsonl`).\n *\n * @see https://github.com/sst/opencode\n * @docLink packages/bridge/harnesses#opencode-harness\n */\nexport class OpenCodeHarness extends SubprocessCliHarness {\n readonly harnessInfo: HarnessInfo = {\n id: \"opencode\",\n name: \"OpenCode\",\n modelAgnostic: true,\n supportsInBandAbort: false,\n };\n\n protected readonly log: Logger = getBridgeLogger(\"opencode\");\n protected readonly defaultBin = \"opencode\";\n protected readonly productName = \"OpenCode\";\n protected readonly envPrefix = \"OPENCODE\";\n\n private providers?: EnvHarnessSession;\n\n /** This session's AI providers, resolved once from the config. */\n private providerSession(): EnvHarnessSession {\n this.providers ??= resolveEnvHarnessSession(this.config);\n return this.providers;\n }\n\n protected override onReconfigured(applied: ReconfigureApplied): void {\n if (applied.model !== undefined) this.providers = undefined;\n }\n\n override getModel(): string | undefined {\n return resolveRegistryBinding(this.providerSession())?.providerModelId ?? this.config.model;\n }\n\n protected buildArgs(message: string, resumeId: string | undefined): string[] {\n const args = [\"run\", message, \"--format\", \"json\"];\n const binding = resolveRegistryBinding(this.providerSession());\n const model = binding ? harnessModelSelector(binding) : this.config.model;\n if (model) args.push(\"-m\", model);\n if (resumeId) args.push(\"-s\", resumeId);\n return args;\n }\n\n /**\n * Base env plus one credential variable per enabled registry entry — the\n * canonical `SKAILE_AIP_<ID>_KEY` and, for a stock catalog endpoint, the\n * vendor carrier OpenCode reads on its own (`ANTHROPIC_API_KEY`, …). There\n * is no per-harness key allowlist: what reaches the child is exactly what\n * the registry can authenticate.\n *\n * This is also where the session's custom endpoints are rendered. It runs\n * once per spawn, so a `reconfigure()` between turns re-renders rather than\n * leaving the child pointed at the previous selection.\n */\n protected buildEnv(): Record<string, string> {\n const session = this.providerSession();\n const materialized = materializeOpenCodeConfig(session, this.config);\n for (const entry of materialized.skipped)\n this.log.warn(\"OpenCode cannot address an AI provider entry\", {\n providerId: entry.id,\n reason: entry.reason,\n });\n if (materialized.path)\n this.log.debug(\"rendered OpenCode provider config\", { path: materialized.path });\n return {\n ...this.baseEnv(),\n ...credentialsForEveryProvider(session),\n ...materialized.env,\n };\n }\n\n protected installHint(): string {\n return \"OpenCode is not installed or not on your PATH. Install it with `npm i -g opencode-ai`.\";\n }\n\n override async prompt(message: string): Promise<void> {\n this.turnText = \"\";\n this.turnTokens = null;\n this.turnCost = undefined;\n return super.prompt(message);\n }\n\n /** Assistant text of the current turn, joined across `text` parts and steps. */\n private turnText = \"\";\n /** Usage summed across the turn's `step_finish` events. */\n private turnTokens: TokenUsage | null = null;\n private turnCost: number | undefined;\n\n /**\n * Map `opencode run --format json` (pinned against opencode-ai 1.18.31,\n * fixture `tests/fixtures/opencode-1.18-events.jsonl`). Every event is\n * `{type, timestamp, sessionID, part}` with the payload under `part`;\n * observed types are `step_start`, `text` and `step_finish`. Anything else\n * is ignored rather than guessed at.\n */\n protected handleJson(json: unknown): void {\n const parsed = OpenCodeEvent.safeParse(json);\n if (!parsed.success) return;\n const { type, sessionID, part } = parsed.data;\n this.captureSession(sessionID);\n switch (type) {\n case \"text\": {\n const text = extractText(parsed.data);\n if (!text) break;\n this.turnText += text;\n this.pushAssistantDelta(this.turnText);\n break;\n }\n\n case \"step_finish\": {\n const tokens = opencodeTokens(part.tokens);\n if (tokens) this.turnTokens = addTokens(this.turnTokens, tokens);\n if (part.cost !== undefined) this.turnCost = (this.turnCost ?? 0) + part.cost;\n // [INFERENCE] a step ending in tool calls is followed by another step\n // in the same turn; only the observed terminal reason ends the turn.\n if (part.reason === \"tool-calls\") break;\n this.pushResult({\n tokens: this.turnTokens,\n costUsd: this.turnCost,\n summary: this.turnText || \"Task completed\",\n });\n this.turnText = \"\";\n this.turnTokens = null;\n this.turnCost = undefined;\n break;\n }\n }\n }\n\n /**\n * OpenCode has no model-list endpoint of its own (it reads models.dev), so\n * the session's registry is the list: every enabled entry's mapped ids,\n * namespaced exactly as `-m` takes them.\n */\n override async listModels(): Promise<ModelEntry[]> {\n return registryModelEntries(this.providerSession());\n }\n}\n\n/**\n * `HarnessTarget` wrapper for the opencode harness. Registered into the plugin\n * registry by `registerBuiltinHarnesses()`.\n */\nexport const opencodeHarnessTarget: HarnessTarget<AgentConfig> = {\n id: \"opencode\",\n displayName: BUILTIN_HARNESS_CATALOG.opencode?.name ?? \"OpenCode\",\n apiVersion: 1,\n configSchema: z.custom<AgentConfig>(() => true),\n create: async (config, _ctx) => new OpenCodeHarness(config),\n listModels: async (registry, options) =>\n new OpenCodeHarness({\n cwd: process.cwd(),\n sessionId: \"model-list\",\n ...registryHarnessConfig(registry, options),\n }).listModels(),\n};\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Auto-generated by _scripts/emit-dts-sidecars.ts — do not edit by hand.
|
|
2
|
-
export * from "../src/
|
|
2
|
+
export * from "../src/harnesses/qwen.js";
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import '../../chunk-
|
|
3
|
-
import { fetchProviderModels } from '../../chunk-
|
|
4
|
-
import { resolveRegistryBinding } from '../../chunk-
|
|
5
|
-
import '../../chunk-
|
|
6
|
-
import '../../chunk-
|
|
7
|
-
import { getBridgeLogger,
|
|
8
|
-
import {
|
|
9
|
-
import '../../chunk-
|
|
10
|
-
import '../../chunk-
|
|
11
|
-
import '../../chunk-
|
|
1
|
+
import { GeminiFamilyHarness } from '../../chunk-HPMQRAIF.js';
|
|
2
|
+
import '../../chunk-DIGFA7Z5.js';
|
|
3
|
+
import { fetchProviderModels } from '../../chunk-5J4NPGFM.js';
|
|
4
|
+
import { resolveRegistryBinding } from '../../chunk-GNZBFSRB.js';
|
|
5
|
+
import '../../chunk-XFIEVEU7.js';
|
|
6
|
+
import '../../chunk-7DN6JKP2.js';
|
|
7
|
+
import { getBridgeLogger, registryHarnessConfig } from '../../chunk-FKQNBCDW.js';
|
|
8
|
+
import { BUILTIN_HARNESS_CATALOG, entryCredentialValue } from '../../chunk-ILLTBKDJ.js';
|
|
9
|
+
import '../../chunk-G5SUWZEU.js';
|
|
10
|
+
import '../../chunk-E572OHGY.js';
|
|
11
|
+
import '../../chunk-ADPM6AYF.js';
|
|
12
12
|
import '../../chunk-DKXNKFKP.js';
|
|
13
|
-
import '../../chunk-
|
|
13
|
+
import '../../chunk-LSI2IVFT.js';
|
|
14
14
|
import '../../chunk-C3CAXQMA.js';
|
|
15
15
|
import '../../chunk-BOFL7GIF.js';
|
|
16
16
|
import '../../chunk-NSBPE2FW.js';
|
|
17
17
|
import * as z from 'zod';
|
|
18
18
|
|
|
19
|
-
var
|
|
20
|
-
|
|
19
|
+
var QwenHarness = class extends GeminiFamilyHarness {
|
|
20
|
+
harnessInfo = {
|
|
21
21
|
id: "qwen",
|
|
22
22
|
name: "Qwen Code",
|
|
23
23
|
modelAgnostic: true,
|
|
@@ -74,19 +74,19 @@ var QwenDriver = class extends GeminiFamilyDriver {
|
|
|
74
74
|
return result.ok ? result.models : [];
|
|
75
75
|
}
|
|
76
76
|
};
|
|
77
|
-
var
|
|
77
|
+
var qwenHarnessTarget = {
|
|
78
78
|
id: "qwen",
|
|
79
|
-
displayName:
|
|
79
|
+
displayName: BUILTIN_HARNESS_CATALOG.qwen?.name ?? "Qwen Code",
|
|
80
80
|
apiVersion: 1,
|
|
81
81
|
configSchema: z.custom(() => true),
|
|
82
|
-
create: async (config, _ctx) => new
|
|
83
|
-
listModels: async (registry, options) => new
|
|
82
|
+
create: async (config, _ctx) => new QwenHarness(config),
|
|
83
|
+
listModels: async (registry, options) => new QwenHarness({
|
|
84
84
|
cwd: process.cwd(),
|
|
85
85
|
sessionId: "model-list",
|
|
86
|
-
...
|
|
86
|
+
...registryHarnessConfig(registry, options)
|
|
87
87
|
}).listModels()
|
|
88
88
|
};
|
|
89
89
|
|
|
90
|
-
export {
|
|
90
|
+
export { QwenHarness, qwenHarnessTarget };
|
|
91
91
|
//# sourceMappingURL=qwen.js.map
|
|
92
92
|
//# sourceMappingURL=qwen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../bridge/src/harnesses/qwen.ts"],"names":[],"mappings":"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","file":"qwen.js","sourcesContent":["import type { HarnessTarget } from \"@skaile/workspaces/plugin-registry\";\nimport type { Logger } from \"@skaile/workspaces/types\";\nimport * as z from \"zod\";\nimport { getBridgeLogger } from \"../logger.js\";\nimport { fetchProviderModels, type ModelEntry } from \"../models.js\";\nimport { entryCredentialValue } from \"../provider-materialize/credential-env.js\";\nimport { resolveRegistryBinding } from \"../provider-materialize/env-harnesses.js\";\nimport { registryHarnessConfig } from \"../provider-registry-derive.js\";\nimport { BUILTIN_HARNESS_CATALOG } from \"../registry.js\";\nimport type { AgentConfig, HarnessInfo } from \"../types.js\";\nimport { GeminiFamilyHarness } from \"./gemini.js\";\n\n/**\n * Agent harness for **Qwen Code** (`qwen`) — a fork of Gemini CLI.\n *\n * Reuses {@link GeminiFamilyHarness}'s stream-json event mapping. Unlike\n * Gemini, Qwen is **OpenAI-compatible**: it reads `OPENAI_API_KEY`,\n * `OPENAI_BASE_URL` and `OPENAI_MODEL`, so the AI provider entry the session's\n * model selector names maps onto it one-to-one — any `openai-completions`\n * endpoint (Alibaba DashScope by default).\n *\n * @remarks\n * - Spawns `qwen -p \"<prompt>\" -o stream-json --include-partial-messages`.\n * - Sets `QWEN_CODE_UNATTENDED_RETRY=1` so the CLI backs off on 429/529 in\n * unattended harness contexts.\n * - Supports headless session resume via `--resume <id>`.\n *\n * @see https://github.com/QwenLM/qwen-code\n * @docLink packages/bridge/harnesses#qwen-harness\n */\nexport class QwenHarness extends GeminiFamilyHarness {\n readonly harnessInfo: HarnessInfo = {\n id: \"qwen\",\n name: \"Qwen Code\",\n modelAgnostic: true,\n supportsInBandAbort: false,\n };\n\n protected readonly log: Logger = getBridgeLogger(\"qwen\");\n protected readonly defaultBin = \"qwen\";\n protected readonly productName = \"Qwen Code\";\n protected readonly envPrefix = \"QWEN\";\n\n protected buildArgs(message: string, resumeId: string | undefined): string[] {\n const args = [\"-p\", message, \"-o\", \"stream-json\", \"--include-partial-messages\"];\n const model = this.registryBinding()?.providerModelId ?? this.config.model;\n if (model) args.push(\"-m\", model);\n if (resumeId) args.push(\"--resume\", resumeId);\n return args;\n }\n\n protected buildEnv(): Record<string, string> {\n const env = this.baseEnv([\"OPENAI_API_KEY\", \"OPENAI_BASE_URL\", \"OPENAI_MODEL\"]);\n env.QWEN_CODE_UNATTENDED_RETRY = \"1\";\n const binding = this.registryBinding();\n if (!binding) {\n if (this.config.model) env.OPENAI_MODEL = this.config.model;\n return env;\n }\n\n // The entry is the authority: an inherited OPENAI_* triple must not\n // silently re-point a session that names its own endpoint.\n delete env.OPENAI_API_KEY;\n delete env.OPENAI_BASE_URL;\n delete env.OPENAI_MODEL;\n const key = entryCredentialValue(binding.providerId, binding.entry, {\n env: this.providerSession().lookupEnv,\n });\n if (key) env.OPENAI_API_KEY = key;\n if (binding.baseUrl) env.OPENAI_BASE_URL = binding.baseUrl;\n if (binding.providerModelId) env.OPENAI_MODEL = binding.providerModelId;\n return env;\n }\n\n protected installHint(): string {\n return \"Qwen Code is not installed or not on your PATH. Install it with `npm i -g @qwen-code/qwen-code`.\";\n }\n\n /**\n * Discovery runs against the bound entry — its credential and its endpoint,\n * so a custom OpenAI-compatible host lists its own models rather than\n * OpenAI's.\n */\n override async listModels(): Promise<ModelEntry[]> {\n const session = this.providerSession();\n const binding = resolveRegistryBinding(session);\n const key = binding\n ? entryCredentialValue(binding.providerId, binding.entry, { env: session.lookupEnv })\n : session.lookupEnv.OPENAI_API_KEY;\n if (!key) return [];\n const result = await fetchProviderModels(\n \"openai\",\n key,\n binding?.baseUrl ? { baseUrl: binding.baseUrl } : {},\n );\n return result.ok ? result.models : [];\n }\n}\n\n/**\n * `HarnessTarget` wrapper for the qwen harness. Registered into the plugin\n * registry by `registerBuiltinHarnesses()`.\n */\nexport const qwenHarnessTarget: HarnessTarget<AgentConfig> = {\n id: \"qwen\",\n displayName: BUILTIN_HARNESS_CATALOG.qwen?.name ?? \"Qwen Code\",\n apiVersion: 1,\n configSchema: z.custom<AgentConfig>(() => true),\n create: async (config, _ctx) => new QwenHarness(config),\n listModels: async (registry, options) =>\n new QwenHarness({\n cwd: process.cwd(),\n sessionId: \"model-list\",\n ...registryHarnessConfig(registry, options),\n }).listModels(),\n};\n"]}
|
package/dist/bridge/index.js
CHANGED
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
export { BridgeRuntime, EventNormalizer,
|
|
2
|
-
import '../chunk-
|
|
3
|
-
export { ANTHROPIC_DEFAULT_BASE_URL, APPROVE_ONCE, DENY, agentTranscriptStore, approvalCardOf, buildClaudeEndpointEnv, claudeEndpointMode, localTranscriptStore, probeResumeTranscript, resolveClaudeConfigDir, transcriptStoreForRuntime } from '../chunk-
|
|
4
|
-
import '../chunk-
|
|
1
|
+
export { BridgeRuntime, EventNormalizer, checkHarnessModel, checkModelProvider, checkOmpServeModel, createRuntime, detectFileChange, detectFileChanges, labelToolCall, summarizeToolCall, summarizeToolResult, validateApiKey } from '../chunk-5Y2KGB4H.js';
|
|
2
|
+
import '../chunk-7LP7RCZI.js';
|
|
3
|
+
export { ANTHROPIC_DEFAULT_BASE_URL, APPROVE_ONCE, DENY, agentTranscriptStore, approvalCardOf, buildClaudeEndpointEnv, claudeEndpointMode, localTranscriptStore, probeResumeTranscript, resolveClaudeConfigDir, sessionSurfaceNotice, transcriptStoreForRuntime, unsupportedSurfaceNotice } from '../chunk-SVTMNSPI.js';
|
|
4
|
+
import '../chunk-XGULGQA3.js';
|
|
5
5
|
export { CODEX_NATIVE_STATE_FORMAT, CodexNativeStateUnavailable } from '../chunk-LOO5CB5M.js';
|
|
6
|
-
export { dispatchCapability, filterRenderCapabilities, renderFallback } from '../chunk-
|
|
7
|
-
export { ModelTierResolutionError, PROVIDER_MODEL_TIERS, STATIC_MODELS, fetchProviderModels, getModels, getStaticModels, modelIdTargetForEntry, resolveManifestModel, resolveModelCapabilities, resolveModelTier } from '../chunk-
|
|
8
|
-
import '../chunk-
|
|
9
|
-
export { AccountUnavailableError, AuthError, RUNNER_PRIVATE_ENV_KEYS, ReconfigureLedger, classifyClaudeSdkError, reclassifyAuthAsAccountUnavailable, scopeReconfigureModel, stripRunnerPrivateEnv } from '../chunk-
|
|
10
|
-
export { AGENT_EXEC_ENV, agentExecRequested, resolveAgentExec, wrapAgentCommand } from '../chunk-
|
|
11
|
-
export { AGENT_EFFORT_LEVELS,
|
|
12
|
-
export { AI_PROVIDER_PRESETS,
|
|
13
|
-
import '../chunk-
|
|
14
|
-
import '../chunk-
|
|
15
|
-
import '../chunk-
|
|
16
|
-
import '../chunk-
|
|
6
|
+
export { dispatchCapability, filterRenderCapabilities, renderFallback } from '../chunk-BIRW3HOG.js';
|
|
7
|
+
export { ModelTierResolutionError, PROVIDER_MODEL_TIERS, STATIC_MODELS, fetchProviderModels, getModels, getStaticModels, modelIdTargetForEntry, resolveManifestModel, resolveModelCapabilities, resolveModelTier } from '../chunk-5J4NPGFM.js';
|
|
8
|
+
import '../chunk-GNZBFSRB.js';
|
|
9
|
+
export { AccountUnavailableError, AuthError, RUNNER_PRIVATE_ENV_KEYS, ReconfigureLedger, classifyClaudeSdkError, reclassifyAuthAsAccountUnavailable, scopeReconfigureModel, stripRunnerPrivateEnv } from '../chunk-XFIEVEU7.js';
|
|
10
|
+
export { AGENT_EXEC_ENV, agentExecRequested, resolveAgentExec, wrapAgentCommand } from '../chunk-7DN6JKP2.js';
|
|
11
|
+
export { AGENT_EFFORT_LEVELS, AgentHarness, TOOL_ALLOWLIST_UNSUPPORTED, getBridgeLogger, registryHarnessConfig, toAgentEffort, toMergedRegistry } from '../chunk-FKQNBCDW.js';
|
|
12
|
+
export { AI_PROVIDER_PRESETS, BUILTIN_HARNESS_CATALOG, PROVIDER_CREDENTIAL_ENV_PREFIX, PROVIDER_CREDENTIAL_ENV_SUFFIX, buildCredentialHeaders, catalogLayer, conventionalCredentialEnvName, createHarness, entryCredentialEnv, entryCredentialValue, expandPreset, getProviderPreset, harnessCapabilities, listHarnesses, listModelsForHarness, listProviderPresets, presetBaseUrl, probeProviderEntry, providerCredentialEnvName, registerBuiltinHarnesses, registryCredentialEnv, resolveEntryCredential, resolvePresetBaseUrl, resolveProbeUrl, supportsLiveToolUpdates, unresolvedProviderCredentials } from '../chunk-ILLTBKDJ.js';
|
|
13
|
+
import '../chunk-G5SUWZEU.js';
|
|
14
|
+
import '../chunk-JCPD4QRM.js';
|
|
15
|
+
import '../chunk-E572OHGY.js';
|
|
16
|
+
import '../chunk-VMVDAZLA.js';
|
|
17
17
|
import '../chunk-4GY63JU6.js';
|
|
18
|
-
import '../chunk-
|
|
19
|
-
import '../chunk-
|
|
20
|
-
import '../chunk-
|
|
18
|
+
import '../chunk-ZDLUQLI6.js';
|
|
19
|
+
import '../chunk-5KRMNUL4.js';
|
|
20
|
+
import '../chunk-Z7ZEZZB6.js';
|
|
21
21
|
import '../chunk-MWXYN6NY.js';
|
|
22
|
-
import '../chunk-
|
|
22
|
+
import '../chunk-ZHGKAZJ7.js';
|
|
23
23
|
import '../chunk-L5VSIPQD.js';
|
|
24
|
-
import '../chunk-
|
|
25
|
-
import '../chunk-
|
|
24
|
+
import '../chunk-VTETQCR6.js';
|
|
25
|
+
import '../chunk-ZBHZLWV3.js';
|
|
26
26
|
import '../chunk-RVRB27AN.js';
|
|
27
|
-
import '../chunk-
|
|
28
|
-
import '../chunk-
|
|
29
|
-
import '../chunk-
|
|
27
|
+
import '../chunk-RHN5MRQO.js';
|
|
28
|
+
import '../chunk-LSSYC5IC.js';
|
|
29
|
+
import '../chunk-ADPM6AYF.js';
|
|
30
30
|
import '../chunk-DKXNKFKP.js';
|
|
31
|
-
import '../chunk-
|
|
31
|
+
import '../chunk-LSI2IVFT.js';
|
|
32
32
|
import '../chunk-C3CAXQMA.js';
|
|
33
33
|
import '../chunk-BOFL7GIF.js';
|
|
34
34
|
import '../chunk-NSBPE2FW.js';
|
|
@@ -4,14 +4,14 @@
|
|
|
4
4
|
* In the Skaile agent image the runner cannot switch uid itself (it runs with
|
|
5
5
|
* no-new-privs and no `CAP_SETUID`). When the container entrypoint has started
|
|
6
6
|
* the root launcher (`skaile-agent-launchd`), it exports this variable with the
|
|
7
|
-
* absolute path of the runner-side shim (`skaile-agent-exec`). A
|
|
7
|
+
* absolute path of the runner-side shim (`skaile-agent-exec`). A harness then
|
|
8
8
|
* spawns `<shim> -- <command> <args...>` instead of `<command>`: the shim
|
|
9
9
|
* passes its stdio, cwd, argv and env to the launcher, which runs the command
|
|
10
10
|
* as the agent uid, forwards signals and reports the exit status, so the
|
|
11
11
|
* returned child behaves like a direct one.
|
|
12
12
|
*
|
|
13
13
|
* Unset (every other environment, and the image until the entrypoint wires
|
|
14
|
-
* it):
|
|
14
|
+
* it): harnesses spawn directly, unchanged.
|
|
15
15
|
*/
|
|
16
16
|
export declare const AGENT_EXEC_ENV = "SKAILE_AGENT_EXEC";
|
|
17
17
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-transcript.d.ts","sourceRoot":"","sources":["../../../bridge/src/agent-transcript.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwB,KAAK,eAAe,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"agent-transcript.d.ts","sourceRoot":"","sources":["../../../bridge/src/agent-transcript.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwB,KAAK,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAE7F;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAkIlE;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAe,GACpD,eAAe,CAGjB"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The tool-approval card a
|
|
2
|
+
* The tool-approval card a harness raises for `permissionMode: "interactive"`: a `message_start`
|
|
3
3
|
* carrying an `AskUserQuestion` tool call whose input has an `approval` description. The
|
|
4
|
-
* normalizer turns it into a `question` event with `approval`; a host that reads the
|
|
4
|
+
* normalizer turns it into a `question` event with `approval`; a host that reads the harness's
|
|
5
5
|
* events directly (the REPL, a single-shot run) recognises it with {@link approvalCardOf} and
|
|
6
|
-
* answers with {@link APPROVE_ONCE} or {@link DENY} through `
|
|
6
|
+
* answers with {@link APPROVE_ONCE} or {@link DENY} through `harness.answerQuestion`.
|
|
7
7
|
*/
|
|
8
8
|
import type { AgentEvent } from "./types.js";
|
|
9
9
|
/** The one positive answer of an approval card. */
|
|
@@ -24,16 +24,16 @@ export interface CapabilityDispatchResult {
|
|
|
24
24
|
* fire-and-forget capabilities the background promise is fired and any error
|
|
25
25
|
* is logged through `onBackgroundError` (defaulting to a no-op). For all
|
|
26
26
|
* other capabilities the handler is awaited; errors propagate as a rejection
|
|
27
|
-
* so the
|
|
27
|
+
* so the harness can surface them as tool errors.
|
|
28
28
|
*
|
|
29
29
|
* **Dispatch call id.** Every dispatch mints a fresh `randomUUID()` and uses it
|
|
30
30
|
* for `render_invoked.callId`, `hooks.invoke`'s `callId` and — for client
|
|
31
31
|
* capabilities — the outbound `capability_invoked.callId`. It is deliberately
|
|
32
|
-
* NOT the
|
|
32
|
+
* NOT the harness's tool-call id: those are only as unique as the model
|
|
33
33
|
* provider makes them (some harnesses emit `call_0` on every turn), and the
|
|
34
34
|
* runner's pending-call map is keyed by this id, so a late `capability_result`
|
|
35
35
|
* for a timed-out call must never be able to resolve a later call that reused
|
|
36
|
-
* the provider's id.
|
|
36
|
+
* the provider's id. Harnesses map results back to their tool calls through the
|
|
37
37
|
* returned value, never through this id.
|
|
38
38
|
*
|
|
39
39
|
* @param hooks - Capability dispatch bundle from `AgentConfig.capabilities`.
|
|
@@ -68,8 +68,8 @@ export declare function renderFallback(template: string, input: unknown): string
|
|
|
68
68
|
/**
|
|
69
69
|
* Filter a capability list to those marked as render-capable (having a `render` spec).
|
|
70
70
|
*
|
|
71
|
-
* Used by
|
|
72
|
-
* Currently unused in production
|
|
71
|
+
* Used by harnesses that emit a separate render manifest at registration time.
|
|
72
|
+
* Currently unused in production harnesses; reserved for future phases.
|
|
73
73
|
*
|
|
74
74
|
* @param caps - Full capability list to filter.
|
|
75
75
|
* @returns Subset of capabilities with a non-undefined `render` property.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type AIProviderEntry, type AIProviderRegistry, type MergedAIProviderRegistry } from "@skaile/workspaces/core/provider-registry";
|
|
2
|
+
/**
|
|
3
|
+
* The line for a selected provider entry whose surface the Claude Agent SDK cannot speak, or
|
|
4
|
+
* `undefined` when there is none. `skaile run` and `skaile repl` print it as one `!` line (runner
|
|
5
|
+
* `credential-notice.ts`), so the harness logs the same text at `info`, which reaches the log
|
|
6
|
+
* database but not the terminal (p1475).
|
|
7
|
+
*
|
|
8
|
+
* @param providerId - The entry the run selected.
|
|
9
|
+
* @param entry - That registry entry.
|
|
10
|
+
*/
|
|
11
|
+
export declare function unsupportedSurfaceNotice(providerId: string, entry: AIProviderEntry): string | undefined;
|
|
12
|
+
/**
|
|
13
|
+
* {@link unsupportedSurfaceNotice} for a session: the entry its model selector names (an entry id,
|
|
14
|
+
* or the head of `<providerId>/<modelId>`). `undefined` with no selector, or an entry it speaks.
|
|
15
|
+
*/
|
|
16
|
+
export declare function sessionSurfaceNotice(registry: AIProviderRegistry | MergedAIProviderRegistry, modelRef: string | undefined): string | undefined;
|
|
17
|
+
//# sourceMappingURL=claude-sdk-surface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claude-sdk-surface.d.ts","sourceRoot":"","sources":["../../../bridge/src/claude-sdk-surface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAG9B,MAAM,2CAA2C,CAAC;AAGnD;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,eAAe,GACrB,MAAM,GAAG,SAAS,CAKpB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,kBAAkB,GAAG,wBAAwB,EACvD,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,MAAM,GAAG,SAAS,CASpB"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* AI endpoint transport for the `claude-sdk`
|
|
2
|
+
* AI endpoint transport for the `claude-sdk` harness — the Claude Agent SDK's
|
|
3
3
|
* child-process environment.
|
|
4
4
|
*
|
|
5
5
|
* {@link buildClaudeEndpointEnv} takes an **AI provider registry entry** and
|
|
6
|
-
* is what the
|
|
7
|
-
* `buildEndpointEnv` for the claude-sdk row (named for the
|
|
6
|
+
* is what the harness calls, on every transport. It is plan §2.3's
|
|
7
|
+
* `buildEndpointEnv` for the claude-sdk row (named for the harness because the
|
|
8
8
|
* vars it emits — `CLAUDE_CODE_USE_*`, `ANTHROPIC_*` — are the Claude Agent
|
|
9
9
|
* SDK's own contract, not a portable one).
|
|
10
10
|
*
|
|
@@ -49,7 +49,7 @@ export interface ClaudeEndpointEnvInput {
|
|
|
49
49
|
*/
|
|
50
50
|
credential?: string;
|
|
51
51
|
/**
|
|
52
|
-
* The
|
|
52
|
+
* The harness's base environment — `process.env` with `undefined` dropped.
|
|
53
53
|
* The endpoint vars are layered **on top** of it, never instead of it, so
|
|
54
54
|
* `PATH`, `HOME` and `SKAILE_SESSION_ID` reach the child.
|
|
55
55
|
*/
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Codex's `config.toml` adapter — the AI provider registry materialized into
|
|
3
3
|
* the only provider surface the Codex CLI reads (plan §2.3, codex rows).
|
|
4
4
|
*
|
|
5
|
-
* Codex is a **file-shaped**
|
|
5
|
+
* Codex is a **file-shaped** harness: it takes its endpoints from
|
|
6
6
|
* `$CODEX_HOME/config.toml`, never from per-request options. Both codex modes
|
|
7
7
|
* therefore get a session-private `CODEX_HOME` holding a rendered document:
|
|
8
8
|
*
|
|
@@ -25,9 +25,9 @@
|
|
|
25
25
|
* entry would take the rest of the registry down with it. Entries whose
|
|
26
26
|
* surface codex cannot speak (`openai-completions`, `anthropic-messages`,
|
|
27
27
|
* `bedrock-converse-stream`, `google-*`) are therefore left out and reported
|
|
28
|
-
* in {@link CodexConfigBuild.skipped} for the
|
|
28
|
+
* in {@link CodexConfigBuild.skipped} for the harness to log.
|
|
29
29
|
*
|
|
30
|
-
* @docLink packages/bridge/
|
|
30
|
+
* @docLink packages/bridge/harnesses#codex-harness
|
|
31
31
|
*/
|
|
32
32
|
import { type AIProviderEntry, type AIProviderRegistry, type MergedAIProviderRegistry } from "@skaile/workspaces/core/provider-registry";
|
|
33
33
|
/**
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* The codex child reports a stream failure as a `Reconnecting... n/5 (<reason>)` line (the
|
|
5
5
|
* reason is cut off mid-JSON) and an API refusal as the raw JSON body. Neither names what to do.
|
|
6
6
|
*/
|
|
7
|
-
/** A failure the
|
|
7
|
+
/** A failure the harness can phrase better than codex did. */
|
|
8
8
|
export interface FriendlyCodexError {
|
|
9
9
|
message: string;
|
|
10
10
|
category: "auth" | "model" | "network";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"friendly-error.d.ts","sourceRoot":"","sources":["../../../../bridge/src/codex/friendly-error.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,
|
|
1
|
+
{"version":3,"file":"friendly-error.d.ts","sourceRoot":"","sources":["../../../../bridge/src/codex/friendly-error.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,8DAA8D;AAC9D,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC;CACd;AAoBD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI,CA2CzE"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
/** Managed (App Server) adapter. `
|
|
3
|
-
export declare class
|
|
1
|
+
import { AgentHarness, type AgentConfig, type AgentPromptInput, type HarnessInfo, type ReconfigureOutcome, type ReconfigurePatch } from "../types.js";
|
|
2
|
+
/** Managed (App Server) adapter. `codexHarnessTarget` picks it over the standalone `CodexHarness` via `isManagedCodexConfig`. */
|
|
3
|
+
export declare class ManagedCodexHarness extends AgentHarness {
|
|
4
4
|
private config;
|
|
5
|
-
readonly
|
|
5
|
+
readonly harnessInfo: HarnessInfo;
|
|
6
6
|
private client?;
|
|
7
7
|
private connecting?;
|
|
8
8
|
private options?;
|
|
@@ -73,4 +73,4 @@ export declare class ManagedCodexDriver extends AgentDriver {
|
|
|
73
73
|
private finishTurn;
|
|
74
74
|
private event;
|
|
75
75
|
}
|
|
76
|
-
//# sourceMappingURL=managed-
|
|
76
|
+
//# sourceMappingURL=managed-harness.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managed-harness.d.ts","sourceRoot":"","sources":["../../../../bridge/src/codex/managed-harness.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ type Identity = {
|
|
|
12
12
|
export type NativeApprovalFileChanges = Extract<NativeNotifications["item/started"]["item"], {
|
|
13
13
|
type: "fileChange";
|
|
14
14
|
}>["changes"];
|
|
15
|
-
/**
|
|
15
|
+
/** Harness-owned consent hooks; the existing native callback wrapper owns turn/generation binding. */
|
|
16
16
|
export declare function createCodexNativeApprovalHandlers(options: {
|
|
17
17
|
questions: CodexQuestions;
|
|
18
18
|
getPolicy: () => NativeApprovalPolicy | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-approvals.d.ts","sourceRoot":"","sources":["../../../../bridge/src/codex/native-approvals.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,KAAK,EAAE,mBAAmB,EAAwB,MAAM,gCAAgC,CAAC;AAChG,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,KAAK,cAAc,GACf,uCAAuC,GACvC,iCAAiC,GACjC,kCAAkC,CAAC;AACvC,KAAK,QAAQ,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAIrE,mFAAmF;AACnF,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAC7C,mBAAmB,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAC3C;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CACvB,CAAC,SAAS,CAAC,CAAC;AAEb,
|
|
1
|
+
{"version":3,"file":"native-approvals.d.ts","sourceRoot":"","sources":["../../../../bridge/src/codex/native-approvals.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,KAAK,EAAE,mBAAmB,EAAwB,MAAM,gCAAgC,CAAC;AAChG,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,KAAK,cAAc,GACf,uCAAuC,GACvC,iCAAiC,GACjC,kCAAkC,CAAC;AACvC,KAAK,QAAQ,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAIrE,mFAAmF;AACnF,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAC7C,mBAAmB,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAC3C;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CACvB,CAAC,SAAS,CAAC,CAAC;AAEb,sGAAsG;AACtG,wBAAgB,iCAAiC,CAAC,OAAO,EAAE;IACzD,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,MAAM,oBAAoB,GAAG,SAAS,CAAC;IAClD,cAAc,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,yBAAyB,GAAG,SAAS,CAAC;CAC/E,GAAG,IAAI,CAAC,0BAA0B,EAAE,cAAc,CAAC,CA2InD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Error classification for the Claude Agent SDK
|
|
2
|
+
* Error classification for the Claude Agent SDK harness.
|
|
3
3
|
*
|
|
4
4
|
* Wraps the Anthropic API error patterns surfaced through the bundled
|
|
5
5
|
* `claude-cli.js`. The CLI flattens upstream HTTP errors into terse strings
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
*/
|
|
32
32
|
import type { AgentError } from "./types.js";
|
|
33
33
|
/**
|
|
34
|
-
* Error thrown by
|
|
34
|
+
* Error thrown by harnesses when the upstream provider rejects the credential
|
|
35
35
|
* with an authentication-shaped failure (HTTP 401 / `authentication_error`
|
|
36
36
|
* structured body). Carries the structured {@link AgentError} produced by
|
|
37
37
|
* {@link classifyClaudeSdkError} so the runner can mediate without
|
|
@@ -57,7 +57,7 @@ export declare class AuthError extends Error {
|
|
|
57
57
|
* account itself: a hidden-tier rate limit, a billing block, or anti-abuse
|
|
58
58
|
* throttling on OAuth tokens used at scale (Anthropic mislabels all three as
|
|
59
59
|
* `authentication_error`). It deliberately does **not** extend {@link AuthError}
|
|
60
|
-
* so the
|
|
60
|
+
* so the harness's auth self-heal does not fire again on it.
|
|
61
61
|
*
|
|
62
62
|
* @category Errors
|
|
63
63
|
*/
|
|
@@ -124,15 +124,15 @@ export declare function isLongContextEntitlementRejection(texts: ReadonlyArray<s
|
|
|
124
124
|
export declare function classifyClaudeSdkError(input: string | ClaudeSdkResultErrorInput): AgentError;
|
|
125
125
|
/**
|
|
126
126
|
* The shared keyword buckets matched by {@link classifyGenericErrorMessage}.
|
|
127
|
-
*
|
|
127
|
+
* Harnesses layer a provider-specific `hint` on top of the returned category.
|
|
128
128
|
*/
|
|
129
129
|
export type GenericErrorCategory = "auth" | "rate_limit" | "model" | "network";
|
|
130
130
|
/**
|
|
131
|
-
* Classify a free-text
|
|
132
|
-
* subprocess/SDK
|
|
131
|
+
* Classify a free-text harness error against the keyword buckets common to the
|
|
132
|
+
* subprocess/SDK harnesses (omp, codex). Returns the matched `category` +
|
|
133
133
|
* `retryable` flag, or `null` when no shared bucket matches so the caller can
|
|
134
134
|
* fall through to its own provider-specific buckets (e.g. codex sandbox) and
|
|
135
|
-
* `unknown` default. The
|
|
135
|
+
* `unknown` default. The harness supplies the user-facing `hint` — only the
|
|
136
136
|
* bucketing logic is shared, not the copy.
|
|
137
137
|
*/
|
|
138
138
|
export declare function classifyGenericErrorMessage(msg: string): {
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* What the runner may ask of a harness, by
|
|
2
|
+
* What the runner may ask of a harness, by harness id.
|
|
3
3
|
*
|
|
4
|
-
* Deliberately light: this module imports no
|
|
4
|
+
* Deliberately light: this module imports no harness, no SDK and no `zod`, so a
|
|
5
5
|
* runner file that only needs a capability can import it without loading the
|
|
6
|
-
*
|
|
6
|
+
* harness graph. The plugin-registry singleton is read through its `internal`
|
|
7
7
|
* module (the same file `@skaile/workspaces/plugin-registry` re-exports, so one
|
|
8
8
|
* instance under the bundler's shared chunks), not through the package index,
|
|
9
9
|
* which pulls in the deploy helpers and their `zod` schemas.
|
|
10
10
|
*
|
|
11
11
|
* @docLink packages/bridge/api-reference#registry
|
|
12
12
|
*/
|
|
13
|
-
import type {
|
|
13
|
+
import type { HarnessCapabilities } from "@skaile/workspaces/types";
|
|
14
14
|
/**
|
|
15
15
|
* Declared capabilities of the built-in harnesses that differ from nothing.
|
|
16
|
-
* `
|
|
17
|
-
* {@link
|
|
16
|
+
* `BUILTIN_HARNESS_CATALOG` rows point at these entries, so `listHarnesses()` and
|
|
17
|
+
* {@link harnessCapabilities} read one table. A built-in absent here (echo,
|
|
18
18
|
* gemini, qwen, opencode, goose, continue) takes the generic defaults.
|
|
19
19
|
*/
|
|
20
|
-
export declare const
|
|
20
|
+
export declare const BUILTIN_HARNESS_CAPABILITIES: {
|
|
21
21
|
readonly omp: {
|
|
22
22
|
readonly inProcessMcpServers: false;
|
|
23
23
|
readonly liveToolUpdates: true;
|
|
@@ -41,26 +41,26 @@ export declare const BUILTIN_DRIVER_CAPABILITIES: {
|
|
|
41
41
|
};
|
|
42
42
|
};
|
|
43
43
|
/**
|
|
44
|
-
* Resolve what the runner may ask of a harness, by
|
|
45
|
-
* its module. Built-ins read {@link
|
|
46
|
-
*
|
|
47
|
-
* generic defaults. Fields a
|
|
44
|
+
* Resolve what the runner may ask of a harness, by harness id, without loading
|
|
45
|
+
* its module. Built-ins read {@link BUILTIN_HARNESS_CAPABILITIES}; a third-party
|
|
46
|
+
* harness reads its registered `HarnessTarget`; an unknown or absent id gets the
|
|
47
|
+
* generic defaults. Fields a harness omits take the generic default too.
|
|
48
48
|
*
|
|
49
|
-
* This is the one place the runner learns
|
|
49
|
+
* This is the one place the runner learns harness facts — it never compares an
|
|
50
50
|
* id against `"claude-sdk"`, `"codex"` or `"omp"`.
|
|
51
51
|
*
|
|
52
|
-
* @param id -
|
|
52
|
+
* @param id - Harness id (e.g. a session's `harnessType`); `undefined` resolves to the defaults.
|
|
53
53
|
* @docLink packages/bridge/api-reference#registry
|
|
54
54
|
*/
|
|
55
|
-
export declare function
|
|
55
|
+
export declare function harnessCapabilities(id: string | undefined): HarnessCapabilities;
|
|
56
56
|
/**
|
|
57
57
|
* Whether a hot-plugged MCP server reaches the agent's next turn without a
|
|
58
|
-
*
|
|
59
|
-
* itself, so it never takes live updates, whatever the standalone
|
|
58
|
+
* harness restart. A host-managed session refreshes its native tool snapshot
|
|
59
|
+
* itself, so it never takes live updates, whatever the standalone harness does.
|
|
60
60
|
*
|
|
61
|
-
* @param id -
|
|
61
|
+
* @param id - Harness id of the live session.
|
|
62
62
|
* @param managed - Whether the session is host-managed (`managedCodex`).
|
|
63
63
|
* @docLink packages/bridge/api-reference#registry
|
|
64
64
|
*/
|
|
65
65
|
export declare function supportsLiveToolUpdates(id: string | undefined, managed?: boolean): boolean;
|
|
66
|
-
//# sourceMappingURL=
|
|
66
|
+
//# sourceMappingURL=harness-capabilities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"harness-capabilities.d.ts","sourceRoot":"","sources":["../../../bridge/src/harness-capabilities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAepE;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;CA2Be,CAAC;AAEzD;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,mBAAmB,CAO/E;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,UAAQ,GAAG,OAAO,CAGxF"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { type AIProviderRegistry, type MergedAIProviderRegistry } from "@skaile/workspaces/core/provider-registry";
|
|
2
|
+
/** What {@link checkHarnessModel} reads. */
|
|
3
|
+
export interface HarnessModelCheckInput {
|
|
4
|
+
registry?: AIProviderRegistry | MergedAIProviderRegistry;
|
|
5
|
+
/** The model selector: `<providerId>/<modelId>`, a bare id or `@role`. */
|
|
6
|
+
model?: string;
|
|
7
|
+
roles?: Record<string, string>;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* `<provider>/<model>` whose provider nothing can serve: not a registry entry and not a
|
|
11
|
+
* provider the harness has its own login for. Without this the id goes to the harness's default
|
|
12
|
+
* provider verbatim and fails there with a message that blames the login.
|
|
13
|
+
*
|
|
14
|
+
* The rule differs per harness (p1111). omp and the Claude SDK route through a registry entry,
|
|
15
|
+
* so while any enabled registry entry is left they take an unknown head as a vendor-scoped
|
|
16
|
+
* model id (`meta-llama/Llama-3.3-70B`). codex talks to OpenAI only and cannot, so it refuses
|
|
17
|
+
* a head that is neither a registered provider nor `openai`, whatever else is registered.
|
|
18
|
+
*/
|
|
19
|
+
export declare function checkModelProvider(harnessId: string, input: HarnessModelCheckInput): string | undefined;
|
|
20
|
+
/**
|
|
21
|
+
* The refusal message the harness prints for this model, or `undefined` when it takes it.
|
|
22
|
+
* The text matches the one the harness throws at start.
|
|
23
|
+
*/
|
|
24
|
+
export declare function checkHarnessModel(harnessId: string, input: HarnessModelCheckInput): string | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* The refusal `skaile serve --harness omp --model <x>` prints before it is ready, or `undefined`
|
|
27
|
+
* when omp can take the model (p1334). Stricter than {@link checkHarnessModel}, which `run --dry-run`
|
|
28
|
+
* shares: a server answers its first prompt long after start, so a model omp reports as "not
|
|
29
|
+
* found" must fail at start.
|
|
30
|
+
*
|
|
31
|
+
* It judges exactly what the harness sends. `materializeOmpProviders` resolves the selector with
|
|
32
|
+
* `parseModelRef` and passes `--model <entry>/<model>` to omp: an `<entry>/<model>` selector goes
|
|
33
|
+
* to that entry; a bare id, or a vendor-scoped id whose head is no registry entry
|
|
34
|
+
* (`anthropic/claude-sonnet-4-5`, `openrouter/openai/gpt-5.2`), goes to the entry that maps it,
|
|
35
|
+
* else to the first entry (so `meta-llama/Llama-3.3-70B` reaches a gateway that serves it). omp
|
|
36
|
+
* then refuses a model that entry does not declare. The check refuses the same set and names the
|
|
37
|
+
* selector the user typed, never the rewritten one alone.
|
|
38
|
+
*/
|
|
39
|
+
export declare function checkOmpServeModel(input: HarnessModelCheckInput): string | undefined;
|
|
40
|
+
//# sourceMappingURL=harness-model-check.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"harness-model-check.d.ts","sourceRoot":"","sources":["../../../bridge/src/harness-model-check.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,KAAK,kBAAkB,EAEvB,KAAK,wBAAwB,EAG9B,MAAM,2CAA2C,CAAC;AAOnD,4CAA4C;AAC5C,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,kBAAkB,GAAG,wBAAwB,CAAC;IACzD,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AA6DD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,sBAAsB,GAC5B,MAAM,GAAG,SAAS,CAuBpB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,sBAAsB,GAC5B,MAAM,GAAG,SAAS,CAiBpB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM,GAAG,SAAS,CAgBpF"}
|