@skaile/workspaces 6.8.1 → 6.9.1
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 +54 -0
- package/dist/ai-sdk.js +5 -5
- package/dist/{asset-feeds-R75MH2WW.js → asset-feeds-PANNQPEE.js} +19 -19
- package/dist/{asset-feeds-R75MH2WW.js.map → asset-feeds-PANNQPEE.js.map} +1 -1
- package/dist/asset-manager/catalog-deployer.js +4 -4
- package/dist/asset-manager/history.js +19 -1
- package/dist/asset-manager/index.js +11 -11
- package/dist/asset-manager/installer.js +7 -7
- package/dist/asset-manager/renderers.js +6 -6
- package/dist/asset-manager/src/history.d.ts.map +1 -1
- package/dist/asset-manager/src/index.d.ts +65 -3
- package/dist/asset-manager/src/index.d.ts.map +1 -1
- package/dist/bridge/harnesses/claude-sdk.js +9 -9
- package/dist/bridge/harnesses/codex.js +29 -12
- package/dist/bridge/harnesses/codex.js.map +1 -1
- package/dist/bridge/harnesses/continue.js +8 -8
- package/dist/bridge/harnesses/echo.js +3 -3
- package/dist/bridge/harnesses/gemini.js +8 -8
- package/dist/bridge/harnesses/goose.js +8 -8
- package/dist/bridge/harnesses/omp.js +191 -24
- package/dist/bridge/harnesses/omp.js.map +1 -1
- package/dist/bridge/harnesses/opencode.js +8 -8
- package/dist/bridge/harnesses/qwen.js +8 -8
- package/dist/bridge/index.js +14 -14
- package/dist/bridge/src/codex/friendly-error.d.ts +7 -1
- package/dist/bridge/src/codex/friendly-error.d.ts.map +1 -1
- package/dist/bridge/src/codex/login-fallback.d.ts +5 -0
- package/dist/bridge/src/codex/login-fallback.d.ts.map +1 -1
- package/dist/bridge/src/harnesses/codex.d.ts +2 -0
- package/dist/bridge/src/harnesses/codex.d.ts.map +1 -1
- package/dist/bridge/src/harnesses/omp.d.ts +28 -0
- package/dist/bridge/src/harnesses/omp.d.ts.map +1 -1
- package/dist/{chunk-PKC2AHOB.js → chunk-2UKNI2HJ.js} +2 -2
- package/dist/{chunk-PKC2AHOB.js.map → chunk-2UKNI2HJ.js.map} +1 -1
- package/dist/{chunk-SBNUXJ6E.js → chunk-3AIEJSQR.js} +3 -3
- package/dist/{chunk-SBNUXJ6E.js.map → chunk-3AIEJSQR.js.map} +1 -1
- package/dist/{chunk-TMJBEGS4.js → chunk-4KPQ6ILH.js} +5 -34
- package/dist/chunk-4KPQ6ILH.js.map +1 -0
- package/dist/{chunk-G7NMF5WQ.js → chunk-4ROXSQEG.js} +3 -3
- package/dist/{chunk-G7NMF5WQ.js.map → chunk-4ROXSQEG.js.map} +1 -1
- package/dist/{chunk-WFK4MUBL.js → chunk-5J6JWGY4.js} +3 -3
- package/dist/{chunk-WFK4MUBL.js.map → chunk-5J6JWGY4.js.map} +1 -1
- package/dist/{chunk-ORXV3UB6.js → chunk-5J6N6LHL.js} +3 -3
- package/dist/{chunk-ORXV3UB6.js.map → chunk-5J6N6LHL.js.map} +1 -1
- package/dist/{chunk-O5Y7VMVQ.js → chunk-5KWQMCH7.js} +3 -3
- package/dist/{chunk-O5Y7VMVQ.js.map → chunk-5KWQMCH7.js.map} +1 -1
- package/dist/{chunk-KTBKW2FI.js → chunk-7QYBKUAS.js} +4 -3
- package/dist/chunk-7QYBKUAS.js.map +1 -0
- package/dist/{chunk-SILFO5RY.js → chunk-7TF5MNFK.js} +2 -2
- package/dist/{chunk-SILFO5RY.js.map → chunk-7TF5MNFK.js.map} +1 -1
- package/dist/{chunk-XIIIGLSL.js → chunk-7UCPGQCW.js} +9 -9
- package/dist/{chunk-XIIIGLSL.js.map → chunk-7UCPGQCW.js.map} +1 -1
- package/dist/{chunk-NAEXYRHR.js → chunk-AQTAULXT.js} +10 -10
- package/dist/{chunk-NAEXYRHR.js.map → chunk-AQTAULXT.js.map} +1 -1
- package/dist/{chunk-LL5GMUQG.js → chunk-BDAXHJC5.js} +7 -7
- package/dist/{chunk-LL5GMUQG.js.map → chunk-BDAXHJC5.js.map} +1 -1
- package/dist/{chunk-DXBHGNSI.js → chunk-BLBXOG5Q.js} +6 -6
- package/dist/{chunk-DXBHGNSI.js.map → chunk-BLBXOG5Q.js.map} +1 -1
- package/dist/{chunk-Y6LC5PEZ.js → chunk-C324IAXI.js} +14 -5
- package/dist/chunk-C324IAXI.js.map +1 -0
- package/dist/{chunk-NW7Y5SNK.js → chunk-CPMLMNI5.js} +4 -4
- package/dist/{chunk-NW7Y5SNK.js.map → chunk-CPMLMNI5.js.map} +1 -1
- package/dist/{chunk-DFP476EU.js → chunk-DJSGQW2Q.js} +89 -4
- package/dist/chunk-DJSGQW2Q.js.map +1 -0
- package/dist/{chunk-QCR5AE5E.js → chunk-E675QKFG.js} +5 -5
- package/dist/{chunk-QCR5AE5E.js.map → chunk-E675QKFG.js.map} +1 -1
- package/dist/{chunk-7RBFYW24.js → chunk-EMSU6L7K.js} +5 -5
- package/dist/{chunk-7RBFYW24.js.map → chunk-EMSU6L7K.js.map} +1 -1
- package/dist/{chunk-O7ADRMCR.js → chunk-FZO64PLQ.js} +45 -16
- package/dist/chunk-FZO64PLQ.js.map +1 -0
- package/dist/{chunk-I4DI5DAX.js → chunk-FZTHL6SK.js} +18 -18
- package/dist/chunk-FZTHL6SK.js.map +1 -0
- package/dist/{chunk-CMXDFTA2.js → chunk-GYPPVANR.js} +3 -3
- package/dist/{chunk-CMXDFTA2.js.map → chunk-GYPPVANR.js.map} +1 -1
- package/dist/{chunk-G44FFUMA.js → chunk-GZL6RN4Z.js} +92 -14
- package/dist/chunk-GZL6RN4Z.js.map +1 -0
- package/dist/{chunk-N65H7YYI.js → chunk-IISEBVMA.js} +5 -5
- package/dist/{chunk-N65H7YYI.js.map → chunk-IISEBVMA.js.map} +1 -1
- package/dist/{chunk-BGATDUYX.js → chunk-J45JCYS4.js} +4 -4
- package/dist/{chunk-BGATDUYX.js.map → chunk-J45JCYS4.js.map} +1 -1
- package/dist/{chunk-6ZM5X2XW.js → chunk-KVTV4LT2.js} +3 -3
- package/dist/{chunk-6ZM5X2XW.js.map → chunk-KVTV4LT2.js.map} +1 -1
- package/dist/{chunk-SAL72A7T.js → chunk-LMADWO4Q.js} +9 -6
- package/dist/chunk-LMADWO4Q.js.map +1 -0
- package/dist/{chunk-3HSLJAMJ.js → chunk-LYVLDGML.js} +3 -3
- package/dist/{chunk-3HSLJAMJ.js.map → chunk-LYVLDGML.js.map} +1 -1
- package/dist/{chunk-SGI5MRKP.js → chunk-MDCI4RSG.js} +40 -5
- package/dist/chunk-MDCI4RSG.js.map +1 -0
- package/dist/{chunk-QGA2OBUJ.js → chunk-MPO5CQUZ.js} +3 -3
- package/dist/{chunk-QGA2OBUJ.js.map → chunk-MPO5CQUZ.js.map} +1 -1
- package/dist/{chunk-KO3VSZQP.js → chunk-NDBHEOIA.js} +6 -6
- package/dist/{chunk-KO3VSZQP.js.map → chunk-NDBHEOIA.js.map} +1 -1
- package/dist/{chunk-OLZE4IHX.js → chunk-PBEDRYHP.js} +4093 -3886
- package/dist/chunk-PBEDRYHP.js.map +1 -0
- package/dist/{chunk-YMO4ZDLC.js → chunk-PLVM6OIV.js} +45 -13
- package/dist/chunk-PLVM6OIV.js.map +1 -0
- package/dist/{chunk-LZ3E6TML.js → chunk-Q5SSRVD5.js} +18 -9
- package/dist/chunk-Q5SSRVD5.js.map +1 -0
- package/dist/{chunk-4CD2R4MJ.js → chunk-QBUJTVMY.js} +4 -4
- package/dist/{chunk-4CD2R4MJ.js.map → chunk-QBUJTVMY.js.map} +1 -1
- package/dist/{chunk-REAF7ZFA.js → chunk-QIV7H3GJ.js} +398 -36
- package/dist/chunk-QIV7H3GJ.js.map +1 -0
- package/dist/{chunk-I6XH46Q6.js → chunk-RP3ML3QD.js} +3 -3
- package/dist/{chunk-I6XH46Q6.js.map → chunk-RP3ML3QD.js.map} +1 -1
- package/dist/{chunk-SVMIUCTT.js → chunk-RZRJTCP2.js} +4 -4
- package/dist/{chunk-SVMIUCTT.js.map → chunk-RZRJTCP2.js.map} +1 -1
- package/dist/{chunk-N2W7OJC6.js → chunk-S47KU4YB.js} +3 -3
- package/dist/{chunk-N2W7OJC6.js.map → chunk-S47KU4YB.js.map} +1 -1
- package/dist/{chunk-EDKTS44C.js → chunk-SME3PK4L.js} +6 -6
- package/dist/{chunk-EDKTS44C.js.map → chunk-SME3PK4L.js.map} +1 -1
- package/dist/{chunk-QW5B3TEO.js → chunk-TMQFOJ6F.js} +3 -3
- package/dist/{chunk-QW5B3TEO.js.map → chunk-TMQFOJ6F.js.map} +1 -1
- package/dist/{chunk-BB5EJLKZ.js → chunk-TUOHA6BM.js} +2 -2
- package/dist/{chunk-BB5EJLKZ.js.map → chunk-TUOHA6BM.js.map} +1 -1
- package/dist/{chunk-HLAEYFUN.js → chunk-U3FI4DVT.js} +3 -3
- package/dist/{chunk-HLAEYFUN.js.map → chunk-U3FI4DVT.js.map} +1 -1
- package/dist/{chunk-237BMOZW.js → chunk-UWD7YBDR.js} +4 -4
- package/dist/{chunk-237BMOZW.js.map → chunk-UWD7YBDR.js.map} +1 -1
- package/dist/{chunk-56PIAGD6.js → chunk-VEIWFS7Z.js} +331 -59
- package/dist/chunk-VEIWFS7Z.js.map +1 -0
- package/dist/{chunk-7O2CR5SZ.js → chunk-WEPTGUR4.js} +41 -35
- package/dist/chunk-WEPTGUR4.js.map +1 -0
- package/dist/{chunk-VT6G5AJV.js → chunk-WS3BOCAT.js} +4 -3
- package/dist/chunk-WS3BOCAT.js.map +1 -0
- package/dist/{chunk-JAGBPHXB.js → chunk-X5SGUBUV.js} +3 -3
- package/dist/{chunk-JAGBPHXB.js.map → chunk-X5SGUBUV.js.map} +1 -1
- package/dist/{chunk-62NNP7LU.js → chunk-XB4XHGIE.js} +3 -3
- package/dist/{chunk-62NNP7LU.js.map → chunk-XB4XHGIE.js.map} +1 -1
- package/dist/{chunk-VQFA5DR7.js → chunk-YPTDPN2B.js} +3 -3
- package/dist/{chunk-VQFA5DR7.js.map → chunk-YPTDPN2B.js.map} +1 -1
- package/dist/{chunk-Z5EPCIB6.js → chunk-ZUROGXJM.js} +93 -14
- package/dist/chunk-ZUROGXJM.js.map +1 -0
- package/dist/{claude-code-DS26HI3K.js → claude-code-ILZ46SLO.js} +5 -5
- package/dist/{claude-code-DS26HI3K.js.map → claude-code-ILZ46SLO.js.map} +1 -1
- package/dist/cli/index.js +277 -143
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/src/agent-pins.d.ts +8 -0
- package/dist/cli/src/agent-pins.d.ts.map +1 -1
- package/dist/cli/src/commands/asset-cmd.d.ts.map +1 -1
- package/dist/cli/src/commands/catalog.d.ts +4 -4
- package/dist/cli/src/commands/catalog.d.ts.map +1 -1
- package/dist/cli/src/commands/connector.d.ts.map +1 -1
- package/dist/cli/src/commands/deploy.d.ts.map +1 -1
- package/dist/cli/src/commands/flow.d.ts.map +1 -1
- package/dist/cli/src/commands/harness.d.ts.map +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 +42 -0
- package/dist/cli/src/commands/library-index.d.ts.map +1 -1
- package/dist/cli/src/commands/library-publish.d.ts.map +1 -1
- package/dist/cli/src/commands/npx.d.ts.map +1 -1
- package/dist/cli/src/commands/patch.d.ts.map +1 -1
- package/dist/cli/src/commands/plugin-registry-cmd.d.ts.map +1 -1
- package/dist/cli/src/commands/project.d.ts.map +1 -1
- package/dist/cli/src/commands/run.d.ts.map +1 -1
- package/dist/cli/src/commands/serve-preflight.d.ts +10 -0
- package/dist/cli/src/commands/serve-preflight.d.ts.map +1 -1
- package/dist/cli/src/commands/serve.d.ts +5 -3
- package/dist/cli/src/commands/serve.d.ts.map +1 -1
- package/dist/cli/src/commands/session.d.ts.map +1 -1
- 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/validate.d.ts.map +1 -1
- package/dist/cli/src/config-checks.d.ts +13 -0
- package/dist/cli/src/config-checks.d.ts.map +1 -1
- package/dist/cli/src/group-help.d.ts +11 -0
- package/dist/cli/src/group-help.d.ts.map +1 -0
- package/dist/connectors/config.js +2 -2
- package/dist/connectors/index.js +17 -17
- package/dist/connectors/src/config.d.ts.map +1 -1
- package/dist/{connectors-3ST6PGWP.js → connectors-KTRUUKWG.js} +20 -20
- package/dist/{connectors-3ST6PGWP.js.map → connectors-KTRUUKWG.js.map} +1 -1
- package/dist/core/index.js +4 -4
- package/dist/core/logging.js +1 -1
- package/dist/core/runtime-assets.js +2 -2
- package/dist/core/src/index.d.ts +1 -1
- package/dist/core/src/index.d.ts.map +1 -1
- package/dist/core/src/logging/config.d.ts.map +1 -1
- package/dist/core/src/repo-manager.d.ts +6 -0
- package/dist/core/src/repo-manager.d.ts.map +1 -1
- package/dist/core/src/run-state-ignore.d.ts +6 -4
- package/dist/core/src/run-state-ignore.d.ts.map +1 -1
- package/dist/core/src/walker.d.ts.map +1 -1
- package/dist/core/src/workspace-config.d.ts +6 -0
- package/dist/core/src/workspace-config.d.ts.map +1 -1
- package/dist/core/workspace-config.js +1 -1
- package/dist/deploy/index.js +4 -4
- package/dist/discovery/index.js +2 -2
- package/dist/{ensure-sources-VELKRM6X.js → ensure-sources-5QWKUIUD.js} +23 -23
- package/dist/{ensure-sources-VELKRM6X.js.map → ensure-sources-5QWKUIUD.js.map} +1 -1
- package/dist/factory-assets/connectors/box.js +17 -17
- package/dist/factory-assets/connectors/deploy.js +17 -17
- package/dist/factory-assets/connectors/devserver.js +17 -17
- package/dist/factory-assets/connectors/flow/adapter.js +17 -17
- package/dist/factory-assets/connectors/flow/engine.js +5 -5
- package/dist/factory-assets/connectors/flow/run-flow.js +18 -18
- package/dist/factory-assets/connectors/flow.js +17 -17
- package/dist/factory-assets/connectors/git.js +17 -17
- package/dist/factory-assets/connectors/gmail.js +17 -17
- package/dist/factory-assets/connectors/googledrive.js +17 -17
- package/dist/factory-assets/connectors/local.js +17 -17
- package/dist/factory-assets/connectors/mattermost.js +17 -17
- package/dist/factory-assets/connectors/memory.js +17 -17
- package/dist/factory-assets/connectors/minio.js +17 -17
- package/dist/factory-assets/connectors/postgres.js +17 -17
- package/dist/factory-assets/connectors/s3.js +17 -17
- package/dist/factory-assets/connectors/sharepoint.js +17 -17
- package/dist/factory-assets/connectors/sqlite.js +17 -17
- package/dist/factory-assets/connectors/static-server.js +17 -17
- package/dist/factory-assets/connectors/tunnel.js +17 -17
- package/dist/factory-assets/connectors/webdav.js +17 -17
- package/dist/factory-assets/connectors/xstate-store.js +17 -17
- package/dist/factory-assets/connectors/xstate.js +17 -17
- package/dist/factory-assets/skills/authoring-skaile-assets/SKILL.md +4 -4
- package/dist/factory-assets/skills/authoring-skaile-manifests/SKILL.md +10 -10
- package/dist/factory-assets/skills/authoring-skaile-manifests/references/dependency-standard.md +15 -15
- package/dist/factory-assets/skills/manifest-compliance/SKILL.md +1 -1
- package/dist/{flows-I6ODIPZZ.js → flows-UCP6ZUYS.js} +7 -7
- package/dist/{flows-I6ODIPZZ.js.map → flows-UCP6ZUYS.js.map} +1 -1
- package/dist/{helpers-LWNKX56Y.js → helpers-INS4B7OQ.js} +23 -23
- package/dist/{helpers-LWNKX56Y.js.map → helpers-INS4B7OQ.js.map} +1 -1
- package/dist/library/index.js +7 -7
- package/dist/library/src/index.d.ts +1 -1
- package/dist/library/src/index.d.ts.map +1 -1
- package/dist/library/src/remote/index.d.ts +1 -1
- package/dist/library/src/remote/index.d.ts.map +1 -1
- package/dist/library/src/remote/remote-catalog-source.d.ts +33 -2
- package/dist/library/src/remote/remote-catalog-source.d.ts.map +1 -1
- package/dist/{library-publish-WJVCT2IK.js → library-publish-AZTYRASL.js} +61 -47
- package/dist/library-publish-AZTYRASL.js.map +1 -0
- package/dist/model-endpoint/index.js +7 -7
- package/dist/model-endpoint/src/index.d.ts +1 -1
- package/dist/model-endpoint/src/index.d.ts.map +1 -1
- package/dist/model-endpoint/src/openai-agent.d.ts +60 -0
- package/dist/model-endpoint/src/openai-agent.d.ts.map +1 -0
- package/dist/model-endpoint/src/resolve.d.ts +12 -3
- package/dist/model-endpoint/src/resolve.d.ts.map +1 -1
- package/dist/model-endpoint/src/server.d.ts.map +1 -1
- package/dist/model-endpoint/src/types.d.ts +33 -0
- package/dist/model-endpoint/src/types.d.ts.map +1 -1
- package/dist/model-endpoint/src/upstream-models.d.ts +20 -0
- package/dist/model-endpoint/src/upstream-models.d.ts.map +1 -0
- package/dist/{open-library-Q7QZJY5D.js → open-library-3HMXYGUF.js} +26 -26
- package/dist/{open-library-Q7QZJY5D.js.map → open-library-3HMXYGUF.js.map} +1 -1
- package/dist/{open-registry-RZW2AFD6.js → open-registry-BHBHQMBA.js} +11 -11
- package/dist/{open-registry-RZW2AFD6.js.map → open-registry-BHBHQMBA.js.map} +1 -1
- package/dist/{paths-RPK5PNZQ.js → paths-77PXOXZY.js} +7 -7
- package/dist/{paths-RPK5PNZQ.js.map → paths-77PXOXZY.js.map} +1 -1
- package/dist/{plugin-store-OJTERUEZ.js → plugin-store-XQP2CRYH.js} +7 -7
- package/dist/{plugin-store-OJTERUEZ.js.map → plugin-store-XQP2CRYH.js.map} +1 -1
- package/dist/{project-WVPRL7CP.js → project-HVNPK2ZF.js} +39 -40
- package/dist/{project-WVPRL7CP.js.map → project-HVNPK2ZF.js.map} +1 -1
- package/dist/resolver/index.js +4 -4
- package/dist/runner/index.js +28 -28
- package/dist/runner/src/agent-loop.d.ts +42 -0
- package/dist/runner/src/agent-loop.d.ts.map +1 -0
- package/dist/runner/src/agents/in-process-host.d.ts +9 -6
- package/dist/runner/src/agents/in-process-host.d.ts.map +1 -1
- package/dist/runner/src/model-endpoint-discovery.d.ts +3 -0
- package/dist/runner/src/model-endpoint-discovery.d.ts.map +1 -1
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/runner/src/session-builder.d.ts +6 -4
- package/dist/runner/src/session-builder.d.ts.map +1 -1
- package/dist/runner/src/turn-end-contract.d.ts.map +1 -1
- package/dist/runner/src/turn-scheduler.d.ts +37 -2
- package/dist/runner/src/turn-scheduler.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +11 -11
- package/dist/sdk/bridge.js +14 -14
- package/dist/sdk/core.js +4 -4
- package/dist/sdk/flow.js +5 -5
- package/dist/sdk/index.js +28 -28
- package/dist/sdk/resolver.js +4 -4
- package/dist/sdk/runner.js +28 -28
- package/dist/sdk/transport/ws/server.js +5 -5
- package/dist/sdk/transport/ws.js +5 -5
- package/dist/sdk/transport.js +5 -5
- package/dist/{serve-preflight-24YWWYUG.js → serve-preflight-NHZOKHIC.js} +27 -26
- package/dist/{serve-preflight-24YWWYUG.js.map → serve-preflight-NHZOKHIC.js.map} +1 -1
- package/dist/{setup-F5JX64UP.js → setup-EX7Z7XRN.js} +24 -24
- package/dist/{setup-F5JX64UP.js.map → setup-EX7Z7XRN.js.map} +1 -1
- package/dist/{skills-KHHW3RZ3.js → skills-DE2BDQ6G.js} +6 -6
- package/dist/{skills-KHHW3RZ3.js.map → skills-DE2BDQ6G.js.map} +1 -1
- package/dist/{source-DG5IAAGZ.js → source-URRPRGMZ.js} +39 -39
- package/dist/{source-DG5IAAGZ.js.map → source-URRPRGMZ.js.map} +1 -1
- package/dist/{source-manifest-publish-76S2JD3O.js → source-manifest-publish-ZWRYRJ2U.js} +41 -41
- package/dist/{source-manifest-publish-76S2JD3O.js.map → source-manifest-publish-ZWRYRJ2U.js.map} +1 -1
- package/dist/transport/index.js +5 -5
- package/dist/transport/ws/server.js +5 -5
- package/dist/transport/ws.js +5 -5
- package/dist/tui/index.js +29 -29
- package/dist/tui/index.js.map +1 -1
- package/dist/tui/src/repl.d.ts.map +1 -1
- package/dist/types/manifests.js +1 -1
- package/dist/types/src/manifests/scaffold-body.d.ts +1 -1
- package/dist/types/src/manifests/scaffold-body.d.ts.map +1 -1
- package/dist/workspace-plugin/adapters/mcp.js +20 -20
- package/dist/workspace-plugin/adapters/omp.js +14 -14
- package/dist/workspace-plugin/index.js +2 -2
- package/package.json +1 -1
- package/dist/chunk-56PIAGD6.js.map +0 -1
- package/dist/chunk-7O2CR5SZ.js.map +0 -1
- package/dist/chunk-DFP476EU.js.map +0 -1
- package/dist/chunk-E5AZA2FL.js +0 -83
- package/dist/chunk-E5AZA2FL.js.map +0 -1
- package/dist/chunk-G44FFUMA.js.map +0 -1
- package/dist/chunk-I4DI5DAX.js.map +0 -1
- package/dist/chunk-KTBKW2FI.js.map +0 -1
- package/dist/chunk-LZ3E6TML.js.map +0 -1
- package/dist/chunk-O7ADRMCR.js.map +0 -1
- package/dist/chunk-OLZE4IHX.js.map +0 -1
- package/dist/chunk-REAF7ZFA.js.map +0 -1
- package/dist/chunk-SAL72A7T.js.map +0 -1
- package/dist/chunk-SGI5MRKP.js.map +0 -1
- package/dist/chunk-TMJBEGS4.js.map +0 -1
- package/dist/chunk-VT6G5AJV.js.map +0 -1
- package/dist/chunk-Y6LC5PEZ.js.map +0 -1
- package/dist/chunk-YMO4ZDLC.js.map +0 -1
- package/dist/chunk-Z5EPCIB6.js.map +0 -1
- package/dist/library-publish-WJVCT2IK.js.map +0 -1
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import { harnessSessionConfigHome, removeSessionConfigFile, writeSessionConfigFile } from '../../chunk-NBAGV6L2.js';
|
|
2
|
-
import { SubprocessCliHarness, extractText } from '../../chunk-
|
|
2
|
+
import { SubprocessCliHarness, extractText } from '../../chunk-MPO5CQUZ.js';
|
|
3
3
|
import { HARNESS_BINARIES } from '../../chunk-WWSRIT3J.js';
|
|
4
|
-
import { resolveEnvHarnessSession, resolveRegistryBinding, harnessModelSelector, credentialsForEveryProvider, registryModelEntries, selectableEntries, isStockCatalogEndpoint, entrySurface, entryBaseUrl, entryModelIds, versionedAnthropicBaseUrl } from '../../chunk-
|
|
4
|
+
import { resolveEnvHarnessSession, resolveRegistryBinding, harnessModelSelector, credentialsForEveryProvider, registryModelEntries, selectableEntries, isStockCatalogEndpoint, entrySurface, entryBaseUrl, entryModelIds, versionedAnthropicBaseUrl } from '../../chunk-RP3ML3QD.js';
|
|
5
5
|
import '../../chunk-5DE3DGVR.js';
|
|
6
6
|
import '../../chunk-7DN6JKP2.js';
|
|
7
|
-
import { getBridgeLogger, registryHarnessConfig } from '../../chunk-
|
|
8
|
-
import { BUILTIN_HARNESS_CATALOG, providerCredentialEnvName } from '../../chunk-
|
|
7
|
+
import { getBridgeLogger, registryHarnessConfig } from '../../chunk-5J6N6LHL.js';
|
|
8
|
+
import { BUILTIN_HARNESS_CATALOG, providerCredentialEnvName } from '../../chunk-7TF5MNFK.js';
|
|
9
9
|
import '../../chunk-G5SUWZEU.js';
|
|
10
10
|
import '../../chunk-6UP2EDFN.js';
|
|
11
|
-
import '../../chunk-
|
|
11
|
+
import '../../chunk-4KPQ6ILH.js';
|
|
12
12
|
import '../../chunk-4GY63JU6.js';
|
|
13
|
-
import '../../chunk-
|
|
13
|
+
import '../../chunk-4ROXSQEG.js';
|
|
14
14
|
import '../../chunk-5KRMNUL4.js';
|
|
15
15
|
import '../../chunk-C5HFK34M.js';
|
|
16
16
|
import '../../chunk-MWXYN6NY.js';
|
|
17
|
-
import '../../chunk-
|
|
17
|
+
import '../../chunk-FZO64PLQ.js';
|
|
18
18
|
import '../../chunk-L5VSIPQD.js';
|
|
19
19
|
import '../../chunk-VTETQCR6.js';
|
|
20
20
|
import '../../chunk-QC5BYUED.js';
|
|
@@ -23,7 +23,7 @@ import '../../chunk-RVRB27AN.js';
|
|
|
23
23
|
import '../../chunk-V5KG6CCV.js';
|
|
24
24
|
import '../../chunk-VSX2G7LA.js';
|
|
25
25
|
import '../../chunk-RXGPFAMN.js';
|
|
26
|
-
import '../../chunk-
|
|
26
|
+
import '../../chunk-MDCI4RSG.js';
|
|
27
27
|
import '../../chunk-C3CAXQMA.js';
|
|
28
28
|
import '../../chunk-BOFL7GIF.js';
|
|
29
29
|
import '../../chunk-NSBPE2FW.js';
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { GeminiFamilyHarness } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
3
|
-
import { fetchProviderModels } from '../../chunk-
|
|
1
|
+
import { GeminiFamilyHarness } from '../../chunk-BDAXHJC5.js';
|
|
2
|
+
import '../../chunk-MPO5CQUZ.js';
|
|
3
|
+
import { fetchProviderModels } from '../../chunk-3AIEJSQR.js';
|
|
4
4
|
import { HARNESS_BINARIES } from '../../chunk-WWSRIT3J.js';
|
|
5
|
-
import { resolveRegistryBinding } from '../../chunk-
|
|
5
|
+
import { resolveRegistryBinding } from '../../chunk-RP3ML3QD.js';
|
|
6
6
|
import '../../chunk-5DE3DGVR.js';
|
|
7
7
|
import '../../chunk-7DN6JKP2.js';
|
|
8
|
-
import { getBridgeLogger, registryHarnessConfig } from '../../chunk-
|
|
9
|
-
import { BUILTIN_HARNESS_CATALOG, entryCredentialValue } from '../../chunk-
|
|
8
|
+
import { getBridgeLogger, registryHarnessConfig } from '../../chunk-5J6N6LHL.js';
|
|
9
|
+
import { BUILTIN_HARNESS_CATALOG, entryCredentialValue } from '../../chunk-7TF5MNFK.js';
|
|
10
10
|
import '../../chunk-G5SUWZEU.js';
|
|
11
11
|
import '../../chunk-6UP2EDFN.js';
|
|
12
|
-
import '../../chunk-
|
|
12
|
+
import '../../chunk-WS3BOCAT.js';
|
|
13
13
|
import '../../chunk-VSX2G7LA.js';
|
|
14
14
|
import '../../chunk-RXGPFAMN.js';
|
|
15
|
-
import '../../chunk-
|
|
15
|
+
import '../../chunk-MDCI4RSG.js';
|
|
16
16
|
import '../../chunk-C3CAXQMA.js';
|
|
17
17
|
import '../../chunk-BOFL7GIF.js';
|
|
18
18
|
import '../../chunk-NSBPE2FW.js';
|
package/dist/bridge/index.js
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
export { BridgeRuntime, EventNormalizer, checkHarnessModel, checkModelProvider, checkModelSurface, checkOmpListedModel, checkOmpServeModel, createRuntime, detectFileChange, detectFileChanges, isUnlistedModel, labelToolCall, summarizeToolCall, summarizeToolResult, validateApiKey } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
export { ANTHROPIC_DEFAULT_BASE_URL, APPROVE_ONCE, DENY, agentTranscriptStore, approvalCardOf, buildClaudeEndpointEnv, claudeEndpointMode, localTranscriptStore, probeResumeTranscript, resolveClaudeConfigDir, sessionSurfaceNotice, transcriptStoreForRuntime, unsupportedSurfaceNotice } from '../chunk-
|
|
4
|
-
export { codexLoginFallbackNotice } from '../chunk-
|
|
1
|
+
export { BridgeRuntime, EventNormalizer, checkHarnessModel, checkModelProvider, checkModelSurface, checkOmpListedModel, checkOmpServeModel, createRuntime, detectFileChange, detectFileChanges, isUnlistedModel, labelToolCall, summarizeToolCall, summarizeToolResult, validateApiKey } from '../chunk-7UCPGQCW.js';
|
|
2
|
+
import '../chunk-CPMLMNI5.js';
|
|
3
|
+
export { ANTHROPIC_DEFAULT_BASE_URL, APPROVE_ONCE, DENY, agentTranscriptStore, approvalCardOf, buildClaudeEndpointEnv, claudeEndpointMode, localTranscriptStore, probeResumeTranscript, resolveClaudeConfigDir, sessionSurfaceNotice, transcriptStoreForRuntime, unsupportedSurfaceNotice } from '../chunk-KVTV4LT2.js';
|
|
4
|
+
export { codexLoginFallbackNotice } from '../chunk-C324IAXI.js';
|
|
5
5
|
export { CODEX_NATIVE_STATE_FORMAT, CodexNativeStateUnavailable } from '../chunk-LOO5CB5M.js';
|
|
6
6
|
export { dispatchCapability, filterRenderCapabilities, renderFallback } from '../chunk-YEOG7CWQ.js';
|
|
7
|
-
export { ModelTierResolutionError, PROVIDER_MODEL_TIERS, STATIC_MODELS, fetchProviderModels, getModels, getStaticModels, modelIdTargetForEntry, resolveManifestModel, resolveModelCapabilities, resolveModelTier } from '../chunk-
|
|
7
|
+
export { ModelTierResolutionError, PROVIDER_MODEL_TIERS, STATIC_MODELS, fetchProviderModels, getModels, getStaticModels, modelIdTargetForEntry, resolveManifestModel, resolveModelCapabilities, resolveModelTier } from '../chunk-3AIEJSQR.js';
|
|
8
8
|
export { HARNESS_BINARIES, findHarnessBinary } from '../chunk-WWSRIT3J.js';
|
|
9
|
-
import '../chunk-
|
|
9
|
+
import '../chunk-RP3ML3QD.js';
|
|
10
10
|
export { AccountUnavailableError, AuthError, RUNNER_AGENT_ENV_KEYS, RUNNER_PRIVATE_ENV_KEYS, ReconfigureLedger, classifyClaudeSdkError, reclassifyAuthAsAccountUnavailable, scopeReconfigureModel, stripRunnerPrivateEnv } from '../chunk-5DE3DGVR.js';
|
|
11
11
|
export { AGENT_EXEC_ENV, agentExecRequested, resolveAgentExec, wrapAgentCommand } from '../chunk-7DN6JKP2.js';
|
|
12
|
-
export { AGENT_EFFORT_LEVELS, AgentHarness, TOOL_ALLOWLIST_UNSUPPORTED, getBridgeLogger, registryHarnessConfig, toAgentEffort, toMergedRegistry } from '../chunk-
|
|
13
|
-
export { BUILTIN_HARNESS_CATALOG, PROVIDER_CREDENTIAL_ENV_PREFIX, PROVIDER_CREDENTIAL_ENV_SUFFIX, conventionalCredentialEnvName, createHarness, entryCredentialEnv, entryCredentialValue, harnessCapabilities, listHarnesses, listModelsForHarness, providerCredentialEnvName, registerBuiltinHarnesses, registryCredentialEnv, resolveEntryCredential, supportsLiveToolUpdates, unresolvedProviderCredentials } from '../chunk-
|
|
12
|
+
export { AGENT_EFFORT_LEVELS, AgentHarness, TOOL_ALLOWLIST_UNSUPPORTED, getBridgeLogger, registryHarnessConfig, toAgentEffort, toMergedRegistry } from '../chunk-5J6N6LHL.js';
|
|
13
|
+
export { BUILTIN_HARNESS_CATALOG, PROVIDER_CREDENTIAL_ENV_PREFIX, PROVIDER_CREDENTIAL_ENV_SUFFIX, conventionalCredentialEnvName, createHarness, entryCredentialEnv, entryCredentialValue, harnessCapabilities, listHarnesses, listModelsForHarness, providerCredentialEnvName, registerBuiltinHarnesses, registryCredentialEnv, resolveEntryCredential, supportsLiveToolUpdates, unresolvedProviderCredentials } from '../chunk-7TF5MNFK.js';
|
|
14
14
|
import '../chunk-G5SUWZEU.js';
|
|
15
|
-
export { loadMergedProviderRegistry } from '../chunk-
|
|
15
|
+
export { loadMergedProviderRegistry } from '../chunk-LYVLDGML.js';
|
|
16
16
|
export { AI_PROVIDER_PRESETS, buildCredentialHeaders, catalogLayer, expandPreset, getProviderPreset, listProviderPresets, presetBaseUrl, probeProviderEntry, resolvePresetBaseUrl, resolveProbeUrl } from '../chunk-6UP2EDFN.js';
|
|
17
17
|
import '../chunk-7NN3P6VF.js';
|
|
18
|
-
import '../chunk-
|
|
19
|
-
import '../chunk-
|
|
18
|
+
import '../chunk-WS3BOCAT.js';
|
|
19
|
+
import '../chunk-4KPQ6ILH.js';
|
|
20
20
|
import '../chunk-4GY63JU6.js';
|
|
21
|
-
import '../chunk-
|
|
21
|
+
import '../chunk-4ROXSQEG.js';
|
|
22
22
|
import '../chunk-5KRMNUL4.js';
|
|
23
23
|
import '../chunk-C5HFK34M.js';
|
|
24
24
|
import '../chunk-MWXYN6NY.js';
|
|
25
|
-
import '../chunk-
|
|
25
|
+
import '../chunk-FZO64PLQ.js';
|
|
26
26
|
import '../chunk-L5VSIPQD.js';
|
|
27
27
|
import '../chunk-VTETQCR6.js';
|
|
28
28
|
import '../chunk-QC5BYUED.js';
|
|
@@ -31,7 +31,7 @@ import '../chunk-RVRB27AN.js';
|
|
|
31
31
|
import '../chunk-V5KG6CCV.js';
|
|
32
32
|
import '../chunk-VSX2G7LA.js';
|
|
33
33
|
import '../chunk-RXGPFAMN.js';
|
|
34
|
-
import '../chunk-
|
|
34
|
+
import '../chunk-MDCI4RSG.js';
|
|
35
35
|
import '../chunk-C3CAXQMA.js';
|
|
36
36
|
import '../chunk-BOFL7GIF.js';
|
|
37
37
|
import '../chunk-NSBPE2FW.js';
|
|
@@ -10,10 +10,16 @@ export interface FriendlyCodexError {
|
|
|
10
10
|
category: "auth" | "model" | "network";
|
|
11
11
|
hint: string;
|
|
12
12
|
}
|
|
13
|
+
/** What the harness knows about the credentials of the run that failed. */
|
|
14
|
+
export interface FriendlyCodexContext {
|
|
15
|
+
/** The run signs in with codex's ChatGPT login (`auth_mode: chatgpt`), not an API key. */
|
|
16
|
+
chatgptLogin?: boolean;
|
|
17
|
+
}
|
|
13
18
|
/**
|
|
14
19
|
* Map `raw` to a friendly error, or `null` when it is not one of the known shapes.
|
|
15
20
|
*
|
|
16
21
|
* @param raw - The error text of a `turn.failed`/`error` event or a rejected stream.
|
|
22
|
+
* @param context - What the harness knows about the run's credentials.
|
|
17
23
|
*/
|
|
18
|
-
export declare function friendlyCodexError(raw: string): FriendlyCodexError | null;
|
|
24
|
+
export declare function friendlyCodexError(raw: string, context?: FriendlyCodexContext): FriendlyCodexError | null;
|
|
19
25
|
//# sourceMappingURL=friendly-error.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
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
|
|
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,2EAA2E;AAC3E,MAAM,WAAW,oBAAoB;IACnC,0FAA0F;IAC1F,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAUD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,oBAAyB,GACjC,kBAAkB,GAAG,IAAI,CAmD3B"}
|
|
@@ -9,6 +9,11 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import type { AIProviderRegistry, MergedAIProviderRegistry } from "@skaile/workspaces/core/provider-registry";
|
|
11
11
|
import { type CodexConfigBuild } from "./config-toml.js";
|
|
12
|
+
/**
|
|
13
|
+
* Whether the codex login file at `file` is a ChatGPT sign-in (`auth_mode: chatgpt`) and not a
|
|
14
|
+
* stored API key. `false` for no file or one that does not parse.
|
|
15
|
+
*/
|
|
16
|
+
export declare function isChatgptLogin(file: string | undefined): boolean;
|
|
12
17
|
/**
|
|
13
18
|
* The codex CLI's ChatGPT login file (`$CODEX_HOME/auth.json`, default `~/.codex/auth.json`) of
|
|
14
19
|
* the user's environment, or `undefined` when there is none. `env` is the parent environment,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login-fallback.d.ts","sourceRoot":"","sources":["../../../../bridge/src/codex/login-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,2CAA2C,CAAC;AAEnD,OAAO,EAEL,KAAK,gBAAgB,EAEtB,MAAM,kBAAkB,CAAC;AAE1B;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,SAAS,CAI1F;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,gBAAgB,EACvB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EACvC,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,OAAO,CAKT;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE;IAAE,QAAQ,CAAC,EAAE,kBAAkB,GAAG,wBAAwB,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,EACxF,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,MAAM,GAAG,SAAS,CAYpB"}
|
|
1
|
+
{"version":3,"file":"login-fallback.d.ts","sourceRoot":"","sources":["../../../../bridge/src/codex/login-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,2CAA2C,CAAC;AAEnD,OAAO,EAEL,KAAK,gBAAgB,EAEtB,MAAM,kBAAkB,CAAC;AAE1B;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAQhE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,SAAS,CAI1F;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,gBAAgB,EACvB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EACvC,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,OAAO,CAKT;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE;IAAE,QAAQ,CAAC,EAAE,kBAAkB,GAAG,wBAAwB,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,EACxF,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,MAAM,GAAG,SAAS,CAYpB"}
|
|
@@ -48,6 +48,8 @@ export declare class CodexHarness extends AgentHarness {
|
|
|
48
48
|
private abortController;
|
|
49
49
|
private pendingToolResults;
|
|
50
50
|
private activeAssistantItemId;
|
|
51
|
+
/** The run signs in with codex's ChatGPT login, not an API key: a 401 means the login lapsed. */
|
|
52
|
+
private chatgptLogin;
|
|
51
53
|
private activeAssistantText;
|
|
52
54
|
private _runtimeSessionId;
|
|
53
55
|
/** Token usage from the most recent completed turn. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../../bridge/src/harnesses/codex.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAkBnE,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAUpE,OAAO,EACL,KAAK,WAAW,EAChB,YAAY,EAIZ,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AAoFrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,YAAa,SAAQ,YAAY;IAC5C,QAAQ,CAAC,WAAW,EAAE,WAAW,CAM/B;IAEF,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoC;IACxD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwD;IACjF,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,qBAAqB,CAAuB;IACpD,OAAO,CAAC,mBAAmB,CAAM;IACjC,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,uDAAuD;IACvD,OAAO,CAAC,WAAW,CAA2B;gBAElC,MAAM,EAAE,WAAW;IAM/B,IAAa,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAElD;IAEc,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvC;;;;OAIG;IACM,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAIjE,QAAQ,IAAI,MAAM,GAAG,SAAS;IAI1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../../bridge/src/harnesses/codex.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAkBnE,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAUpE,OAAO,EACL,KAAK,WAAW,EAChB,YAAY,EAIZ,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AAoFrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,YAAa,SAAQ,YAAY;IAC5C,QAAQ,CAAC,WAAW,EAAE,WAAW,CAM/B;IAEF,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoC;IACxD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwD;IACjF,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,qBAAqB,CAAuB;IACpD,iGAAiG;IACjG,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,mBAAmB,CAAM;IACjC,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,uDAAuD;IACvD,OAAO,CAAC,WAAW,CAA2B;gBAElC,MAAM,EAAE,WAAW;IAM/B,IAAa,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAElD;IAEc,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvC;;;;OAIG;IACM,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAIjE,QAAQ,IAAI,MAAM,GAAG,SAAS;IAI1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAwHtB,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiDtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAInC,IAAW,SAAS,IAAI,OAAO,CAE9B;IAEM,IAAI,IAAI,IAAI;IAOnB;;;;;;;;;OASG;IACY,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAYlD;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAcvB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAS1B,aAAa,IAAI,UAAU,GAAG,IAAI;IAI3C;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IA8B7B,OAAO,CAAC,iBAAiB;IAoEzB,OAAO,CAAC,gBAAgB;IAuCxB,OAAO,CAAC,kBAAkB;IAuC1B,OAAO,CAAC,sBAAsB;IAmC9B,OAAO,CAAC,iBAAiB;IAmCzB,OAAO,CAAC,gBAAgB;IA6BxB,OAAO,CAAC,eAAe;IA4BvB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,oBAAoB;CA8C7B;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAKjE;AAED;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,EAAE,aAAa,CAAC,WAAW,CAkBzD,CAAC"}
|
|
@@ -189,6 +189,11 @@ export declare class OmpHarness extends AgentHarness {
|
|
|
189
189
|
private prevText;
|
|
190
190
|
/** OMP session ID captured via `get_state` after each turn. */
|
|
191
191
|
private _ompSessionId?;
|
|
192
|
+
/**
|
|
193
|
+
* The omp session the last unexpected exit left behind, set as `config.resumeSessionId` for
|
|
194
|
+
* the respawn; cleared once a respawn on it fails (the next one starts empty).
|
|
195
|
+
*/
|
|
196
|
+
private exitResumeSessionId?;
|
|
192
197
|
/**
|
|
193
198
|
* Usage of the most recent turn, summed over every model call in it (a tool
|
|
194
199
|
* loop is one prompt but many assistant messages). Cleared when a turn
|
|
@@ -201,12 +206,18 @@ export declare class OmpHarness extends AgentHarness {
|
|
|
201
206
|
* `get_state.contextUsage.tokens` replaces it once that reply lands.
|
|
202
207
|
*/
|
|
203
208
|
private _lastContextTokens;
|
|
209
|
+
/** USD cost of the most recent turn, summed like {@link _lastTokens}. */
|
|
210
|
+
private _lastTurnCostUsd;
|
|
211
|
+
/** The current turn's request failed (`message_end` with `stopReason: "error"`). */
|
|
212
|
+
private turnFailed;
|
|
204
213
|
/** Context window of the active model, from `get_state.contextUsage`. */
|
|
205
214
|
private _contextWindow;
|
|
206
215
|
/** Per-spawn file holding the system prompt omp was started with; removed with the process. */
|
|
207
216
|
private systemPromptFile;
|
|
208
217
|
/** The private omp home of the running process, when it is the harness's own temporary one. */
|
|
209
218
|
private privateHome;
|
|
219
|
+
/** Settles when the process last killed has exited and its private home is deleted. */
|
|
220
|
+
private homeGone;
|
|
210
221
|
getTokenUsage(): TokenUsage | null;
|
|
211
222
|
getContextTokens(): number | null;
|
|
212
223
|
getContextWindow(): number | null;
|
|
@@ -242,6 +253,14 @@ export declare class OmpHarness extends AgentHarness {
|
|
|
242
253
|
private promptTail;
|
|
243
254
|
/** `true` while `agent_end` is being delivered to listeners. */
|
|
244
255
|
private turnEnded;
|
|
256
|
+
/** `true` once the current turn showed model output (text, a thinking delta or a tool run). */
|
|
257
|
+
private turnOutputSeen;
|
|
258
|
+
/** `true` once `runPrompt` sent the current prompt a second time after an early exit. */
|
|
259
|
+
private promptRetried;
|
|
260
|
+
/** `true` once omp recorded the current prompt as a user message in its session. */
|
|
261
|
+
private turnUserMessageSeen;
|
|
262
|
+
/** Counts `kill()` calls, so a prompt that restarts omp itself can tell it was killed meanwhile. */
|
|
263
|
+
private killEpoch;
|
|
245
264
|
get runtimeSessionId(): string | undefined;
|
|
246
265
|
/** Slash commands from omp's last `available_commands_update`. */
|
|
247
266
|
private cachedCommands;
|
|
@@ -387,6 +406,13 @@ export declare class OmpHarness extends AgentHarness {
|
|
|
387
406
|
private captureContextUsage;
|
|
388
407
|
/** Forget the previous turn's usage; called as a new turn begins. */
|
|
389
408
|
private beginUsageTurn;
|
|
409
|
+
/**
|
|
410
|
+
* omp announces a tool run as `tool_execution_start`; its assistant message names the
|
|
411
|
+
* call only in `message_end`, after the run. Publish it as `tool_call` here, like a host
|
|
412
|
+
* tool call. Host tools already got theirs from `host_tool_call`, and `ask` becomes a
|
|
413
|
+
* `question` through its dialog.
|
|
414
|
+
*/
|
|
415
|
+
private announceToolExecution;
|
|
390
416
|
/**
|
|
391
417
|
* Fold one finished assistant message into the turn's usage. Only the
|
|
392
418
|
* `message_end` value is final (`message_start` and partials carry running
|
|
@@ -458,6 +484,8 @@ export declare class OmpHarness extends AgentHarness {
|
|
|
458
484
|
* `OmpHarness` to start a fresh session.
|
|
459
485
|
*/
|
|
460
486
|
kill(): void;
|
|
487
|
+
/** Stop omp and wait until the process has exited and its private home is deleted. */
|
|
488
|
+
dispose(): Promise<void>;
|
|
461
489
|
resetSession(): Promise<void>;
|
|
462
490
|
private classifyProcessError;
|
|
463
491
|
private classifyErrorMessage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"omp.d.ts","sourceRoot":"","sources":["../../../../bridge/src/harnesses/omp.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EACL,KAAK,oBAAoB,EAEzB,KAAK,UAAU,EAEhB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAW/C,OAAO,EACL,KAAK,WAAW,EAChB,YAAY,EAEZ,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAEhB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EAEtB,MAAM,aAAa,CAAC;AAQrB;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAUxD;AAcD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAalF;AAED;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,qJAgBpB,CAAC;AAEX,wEAAwE;AACxE,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAE9C,CAAC;AAyDF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,MAAM,EAAE,CAgBtE;AASD,6EAA6E;AAC7E,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,QAAQ,EAAE,WAAW,CAAC;CACvB;AAED,2CAA2C;AAC3C,MAAM,WAAW,cAAc;IAC7B,+CAA+C;IAC/C,WAAW,EAAE,qBAAqB,EAAE,CAAC;IACrC,0EAA0E;IAC1E,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,4EAA4E;IAC5E,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAClD;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,oBAAoB,EAAE,GAAG,cAAc,CA8BxF;AAED,6GAA6G;AAC7G,eAAO,MAAM,mBAAmB,8EAStB,CAAC;AACX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAKpE;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,QAAQ,CAAC,GAC5C,gBAAgB,GAAG,SAAS,CAW9B;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAM9F;
|
|
1
|
+
{"version":3,"file":"omp.d.ts","sourceRoot":"","sources":["../../../../bridge/src/harnesses/omp.ts"],"names":[],"mappings":"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"}
|
|
@@ -305,5 +305,5 @@ function resolveProjectDir(additionalEnvVars) {
|
|
|
305
305
|
}
|
|
306
306
|
|
|
307
307
|
export { PluginStore, WorkspacePlugin, buildClaudePluginFiles, resolveProjectDir };
|
|
308
|
-
//# sourceMappingURL=chunk-
|
|
309
|
-
//# sourceMappingURL=chunk-
|
|
308
|
+
//# sourceMappingURL=chunk-2UKNI2HJ.js.map
|
|
309
|
+
//# sourceMappingURL=chunk-2UKNI2HJ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../workspace-plugin/src/adapters/claude-code.ts","../workspace-plugin/src/store.ts","../workspace-plugin/src/plugin.ts","../workspace-plugin/src/utils/project-dir.ts"],"names":["err"],"mappings":"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","file":"chunk-PKC2AHOB.js","sourcesContent":["// ── Claude Code plugin-directory generator (STATELESS) ──────────────────────\n// Generates the contents of a Claude Code plugin directory\n// (`.claude/plugins/skaile/`) as an in-memory file map. No plugin instance or\n// boot() is required — safe to call from install commands.\n//\n// The previous standalone `@skaile/workspace-plugin-claude` package shipped\n// these as static files plus loose `.mjs` hook scripts; they are now\n// CLI-owned templates. Hooks invoke the `skaile` binary directly\n// (`skaile integration hook <event>`) and MCP runs via `skaile mcp-server` — no\n// generated script files, no shebang, no runtime assumption.\n\n/**\n * The Claude Code plugin manifest. `name` is `skaile`; `hooks` and\n * `mcpServers` point at sibling files in the generated directory.\n */\nconst PLUGIN_JSON = {\n name: \"skaile\",\n version: \"0.1.0\",\n description: \"Skaile workspace — connectors, mounts, skills, flows, shared state\",\n author: { name: \"skaile-ai\", url: \"https://github.com/skaile-ai\" },\n repository: \"https://github.com/skaile-ai/workspaces\",\n keywords: [\"skaile\", \"connectors\", \"workspace\", \"ai-assets\"],\n hooks: \"./hooks/hooks.json\",\n mcpServers: \"./.mcp.json\",\n userConfig: {\n skaile_yaml_path: {\n type: \"string\",\n title: \"skaile.yaml path\",\n description: \"Override path to skaile.yaml (default: auto-detect from project root)\",\n },\n },\n};\n\n/**\n * Hook wiring. Each lifecycle event invokes the `skaile` binary directly —\n * no loose `.mjs` scripts. `skaile integration hook <event>` resolves the project\n * directory itself (`CLAUDE_PROJECT_DIR` / cwd) and always exits 0.\n */\nconst HOOKS_JSON = {\n hooks: {\n SessionStart: [\n { hooks: [{ type: \"command\", command: \"skaile integration hook session-start\" }] },\n ],\n SessionEnd: [{ hooks: [{ type: \"command\", command: \"skaile integration hook session-end\" }] }],\n UserPromptSubmit: [\n { hooks: [{ type: \"command\", command: \"skaile integration hook user-prompt-submit\" }] },\n ],\n },\n};\n\n/**\n * MCP server wiring. Spawns `skaile mcp-server` — a stdio MCP subprocess that\n * runs on plain Node (no Claude Agent SDK).\n */\nconst MCP_JSON = {\n mcpServers: {\n \"skaile-workspace\": {\n command: \"skaile\",\n args: [\"mcp-server\"],\n env: {},\n },\n },\n};\n\n/**\n * Build the Claude Code plugin directory as an in-memory file map.\n *\n * Returns `{ relativePath: contents }` for every file the installer must\n * write under `<projectDir>/.claude/plugins/skaile/`. The installer is also\n * responsible for populating `skills/` with the project's installed skills (`.claude/skills/`, `.skaile/skills/`).\n *\n * Stateless — no plugin instance, no `boot()`. The generated artifacts carry\n * no project-specific paths: hooks and the MCP server resolve the project\n * directory themselves at runtime.\n *\n * @returns A map of plugin-relative file paths to their string contents.\n *\n * @docLink packages/workspace-plugin/concepts#adapters\n */\nexport function buildClaudePluginFiles(): Record<string, string> {\n return {\n \".claude-plugin/plugin.json\": `${JSON.stringify(PLUGIN_JSON, null, 2)}\\n`,\n \"hooks/hooks.json\": `${JSON.stringify(HOOKS_JSON, null, 2)}\\n`,\n \".mcp.json\": `${JSON.stringify(MCP_JSON, null, 2)}\\n`,\n \"skills/.gitkeep\": \"\",\n };\n}\n","import { mkdir, readFile, writeFile } from \"node:fs/promises\";\nimport { dirname } from \"node:path\";\n\ninterface Subscriber {\n regex: RegExp;\n handler: (key: string, value: unknown) => void;\n}\n\n/**\n * Disk-backed reactive key-value store for plugin state.\n *\n * Keeps an in-memory map that can be flushed to / loaded from a JSON file.\n * Supports glob-style subscriptions (`connector:*`, `*`).\n *\n * State is persisted to `<projectDir>/.skaile/plugin-state.json`.\n * The instance is available on {@link WorkspacePlugin} as the public `store`\n * field after `boot()` resolves.\n *\n * @docLink packages/workspace-plugin/concepts#plugin-store\n */\nexport class PluginStore {\n private readonly statePath: string;\n private data: Map<string, unknown> = new Map();\n private subscribers: Subscriber[] = [];\n\n constructor(statePath: string) {\n this.statePath = statePath;\n }\n\n /** Synchronous read from in-memory map. */\n get<T>(key: string): T | undefined {\n return this.data.get(key) as T | undefined;\n }\n\n /** Write to in-memory map and notify matching subscribers. */\n set<T>(key: string, value: T): void {\n this.data.set(key, value);\n this.notify(key, value);\n }\n\n /** Remove key and notify matching subscribers. */\n delete(key: string): void {\n this.data.delete(key);\n this.notify(key, undefined);\n }\n\n /**\n * Subscribe to changes matching a glob-style pattern.\n * `*` matches any sequence of characters.\n * Returns an unsubscribe function.\n */\n subscribe(pattern: string, handler: (key: string, value: unknown) => void): () => void {\n const escaped = pattern.replace(/[.+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n const regexStr = `^${escaped.replace(/\\*/g, \".*\")}$`;\n const sub: Subscriber = { regex: new RegExp(regexStr), handler };\n this.subscribers.push(sub);\n\n return () => {\n const idx = this.subscribers.indexOf(sub);\n if (idx !== -1) this.subscribers.splice(idx, 1);\n };\n }\n\n /** Rehydrate from disk JSON. Missing file = empty store (no throw). */\n async load(): Promise<void> {\n try {\n const raw = await readFile(this.statePath, \"utf-8\");\n const parsed = JSON.parse(raw);\n if (parsed && typeof parsed === \"object\" && !Array.isArray(parsed)) {\n this.data = new Map(Object.entries(parsed));\n }\n } catch (e: unknown) {\n // Missing file or invalid JSON — start with empty store\n }\n }\n\n /** Write entire store to disk as JSON. Creates parent dirs if needed. */\n async flush(): Promise<void> {\n const obj = Object.fromEntries(this.data);\n const json = JSON.stringify(obj, null, 2);\n await mkdir(dirname(this.statePath), { recursive: true });\n await writeFile(this.statePath, json, \"utf-8\");\n }\n\n private notify(key: string, value: unknown): void {\n for (const sub of this.subscribers) {\n if (sub.regex.test(key)) {\n sub.handler(key, value);\n }\n }\n }\n}\n","import { readFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport type { ConnectorManager } from \"@skaile/workspaces/connectors\";\nimport { DEFAULT_HARNESS_ID } from \"@skaile/workspaces/core/framework\";\nimport { createLogger } from \"@skaile/workspaces/core/logging\";\nimport type { Logger } from \"@skaile/workspaces/types\";\nimport { PluginStore } from \"./store.js\";\n\n/**\n * Construction options for {@link WorkspacePlugin}.\n *\n * At minimum `projectDir` must be supplied. All other fields are optional\n * and are pre-resolved by the caller when available (e.g. the runner already\n * knows `harness`/`model` from its own settings resolution).\n *\n * @docLink packages/workspace-plugin/concepts#workspaceplugin-lifecycle\n */\nexport interface WorkspacePluginOpts {\n projectDir: string;\n /**\n * Active connector manager. The unified `ConnectorManager` owns both\n * filesystem-face (mountable) and tool-face connectors.\n */\n connectorManager?: ConnectorManager;\n bootOwned?: boolean;\n onLog?: (msg: string) => void;\n /** Pre-resolved harness type (avoids needing boot() to read settings). */\n harness?: string;\n /** Pre-resolved model. */\n model?: string;\n}\n\n/**\n * Shared runtime core for the skaile workspace plugin.\n *\n * Manages the full lifecycle (`boot` → tools available → `shutdown`) and\n * surfaces workspace capabilities — mounts, connectors, flows, skills,\n * sessions, and config validation — through two adapters:\n *\n * - **MCP, in-process** (runner): call {@link buildWorkspaceMcpServer} for the\n * Claude Agent SDK server the runner embeds into its `query()` call.\n * - **MCP, stdio** (`skaile mcp-server`): call {@link runMcpServerStdio} for a\n * raw `@modelcontextprotocol/sdk` server — no Claude Agent SDK.\n * - **OMP**: call {@link buildOmpToolSet} for the 13-tool native subset and\n * {@link buildOmpExtensionSource} for the generated extension file.\n *\n * Two boot modes are supported via {@link WorkspacePluginOpts.bootOwned}:\n * - `bootOwned: false` (default) — managers injected externally by the runner.\n * - `bootOwned: true` — plugin owns the full manager lifecycle (standalone MCP\n * subprocess or OMP extension).\n *\n * @docLink packages/workspace-plugin/concepts#workspaceplugin-lifecycle\n */\nexport class WorkspacePlugin {\n readonly projectDir: string;\n connectorManager: ConnectorManager | null;\n readonly store: PluginStore;\n\n private readonly bootOwned: boolean;\n private readonly onLog: (msg: string) => void;\n private readonly log: Logger = createLogger({\n kind: \"mcp\",\n subkind: \"skaile-workspace\",\n });\n harness?: string;\n model?: string;\n\n constructor(opts: WorkspacePluginOpts) {\n this.projectDir = opts.projectDir;\n this.connectorManager = opts.connectorManager ?? null;\n this.store = new PluginStore(join(opts.projectDir, \".skaile\", \"plugin-state.json\"));\n this.bootOwned = opts.bootOwned ?? false;\n if (opts.harness) this.harness = opts.harness;\n if (opts.model) this.model = opts.model;\n this.onLog = opts.onLog ?? (() => {});\n this.log.debug(\"plugin constructed\", {\n harness: opts.harness,\n hasConnectors: !!opts.connectorManager,\n model: opts.model,\n bootOwned: this.bootOwned,\n });\n }\n\n async boot(): Promise<void> {\n if (!this.bootOwned) {\n // Managers were injected externally — resolve settings only (non-fatal)\n try {\n const { resolveSettings } = await import(\"@skaile/workspaces/core\");\n const settings = await resolveSettings(this.projectDir);\n this.harness = settings.harness ?? DEFAULT_HARNESS_ID;\n this.model = settings.model;\n } catch {\n /* non-fatal */\n }\n await this.store.load();\n return;\n }\n\n // bootOwned: we own the managers lifecycle\n try {\n const { resolveSettings } = await import(\"@skaile/workspaces/core\");\n const settings = await resolveSettings(this.projectDir);\n this.harness = settings.harness ?? DEFAULT_HARNESS_ID;\n this.model = settings.model;\n } catch {\n /* non-fatal */\n }\n\n try {\n const {\n ConnectorManager,\n loadConnectorDeclarations,\n registerBuiltinConnectors,\n createCliSecretProviderChain,\n } = await import(\"@skaile/workspaces/connectors\");\n\n registerBuiltinConnectors();\n\n const secrets = createCliSecretProviderChain();\n\n const connectorDecls = await loadConnectorDeclarations(this.projectDir);\n const cm = new ConnectorManager(this.projectDir, { secrets });\n await cm.connectAll(connectorDecls);\n this.connectorManager = cm;\n\n this.log.info(\"workspace plugin booted\", {\n connectors: connectorDecls.length,\n });\n this.onLog(`WorkspacePlugin booted: ${connectorDecls.length} connectors`);\n } catch (err) {\n this.log.warn(\"workspace plugin boot warning\", {\n error: err instanceof Error ? err.message : String(err),\n });\n this.onLog(`WorkspacePlugin boot warning: ${err}`);\n }\n\n await this.store.load();\n }\n\n async reload(): Promise<void> {\n if (!this.bootOwned) return;\n await this.shutdown();\n await this.boot();\n }\n\n async shutdown(): Promise<void> {\n this.log.info(\"workspace plugin shutdown\");\n await this.store.flush();\n if (!this.bootOwned) return;\n try {\n await (this.connectorManager as any)?.disconnectAll?.();\n } catch {\n /* best-effort */\n }\n this.connectorManager = null;\n }\n\n buildSystemPromptSection(harness?: string): string {\n const d = harness ?? this.harness ?? \"unknown\";\n // The unified ConnectorManager owns both mountable (filesystem-face) and\n // tool-face connectors. Filesystem-face connectors expose a `mountPath`.\n const all = (this.connectorManager as any)?.listConnectors?.() ?? [];\n const mounts = (all as any[]).filter((c) => typeof c.mountPath === \"string\");\n const connectors = (all as any[]).filter((c) => typeof c.mountPath !== \"string\");\n const lines = [\"## Workspace (skaile)\", \"\", `Harness: ${d}`, `Project: ${this.projectDir}`];\n if (mounts.length > 0) {\n lines.push(\"\", \"Mounts:\");\n for (const v of mounts) {\n lines.push(` · ${v.id} (${v.driver}) → ${v.mountPath ?? \"(unmounted)\"}`);\n }\n }\n if (connectors.length > 0) {\n lines.push(\"\", \"Connectors:\");\n for (const c of connectors) {\n lines.push(` · ${c.id} (${c.driver})`);\n }\n }\n lines.push(\"\", \"Use workspace_info for full details. Use workspace_validate to check health.\");\n\n for (const name of [\"SOUL.md\", \"RULES.md\"]) {\n const skaileOverride = join(this.projectDir, \".skaile\", name);\n const rootFile = join(this.projectDir, name);\n for (const candidate of [skaileOverride, rootFile]) {\n try {\n const content = readFileSync(candidate, \"utf-8\").trim();\n if (content) {\n lines.push(\"\", `## ${name.replace(\".md\", \"\")}`, \"\", content);\n break;\n }\n } catch {\n // file not found, try next\n }\n }\n }\n\n return lines.join(\"\\n\");\n }\n\n /**\n * Build the in-process Claude Agent SDK MCP server (runner embedding).\n * Returns `null` when `@anthropic-ai/claude-agent-sdk` is unavailable.\n */\n async buildWorkspaceMcpServer(): Promise<unknown | null> {\n this.log.info(\"building workspace MCP server\");\n try {\n const { buildWorkspaceMcpServer } = await import(\"./adapters/mcp.js\");\n const server = await buildWorkspaceMcpServer(this);\n if (server) this.log.info(\"workspace MCP server ready\");\n else this.log.debug(\"workspace MCP server skipped (no tools)\");\n return server;\n } catch (err) {\n this.log.error(\"workspace MCP server build failed\", err);\n throw err;\n }\n }\n\n /**\n * Build the raw `@modelcontextprotocol/sdk` stdio MCP server — no Claude\n * Agent SDK. Used by the `skaile mcp-server` subprocess. The returned\n * server is not yet connected to a transport.\n */\n async buildWorkspaceMcpStdioServer(): Promise<unknown> {\n this.log.info(\"building workspace stdio MCP server\");\n const { buildWorkspaceMcpStdioServer } = await import(\"./adapters/mcp.js\");\n return buildWorkspaceMcpStdioServer(this);\n }\n\n /**\n * Build and run the stdio MCP server: builds the raw\n * `@modelcontextprotocol/sdk` server and connects a `StdioServerTransport`.\n * Used by the `skaile mcp-server` subprocess.\n */\n async runMcpServerStdio(): Promise<void> {\n this.log.info(\"starting workspace stdio MCP server\");\n const { runMcpServerStdio } = await import(\"./adapters/mcp.js\");\n await runMcpServerStdio(this);\n }\n\n async buildOmpToolSet(): Promise<unknown[]> {\n const { buildOmpToolSet } = await import(\"./adapters/omp.js\");\n return buildOmpToolSet(this);\n }\n\n /**\n * The generated `.omp/extensions/skaile.ts`. Path-independent unless `pinProjectDir` is set\n * (an ephemeral file written outside the project).\n */\n async buildOmpExtensionSource(opts: { pinProjectDir?: boolean } = {}): Promise<string> {\n const { buildOmpExtensionSource } = await import(\"./adapters/omp.js\");\n return buildOmpExtensionSource(opts.pinProjectDir ? this.projectDir : null);\n }\n\n async handleSlashCommand(group: string, args: string[]): Promise<string> {\n const { handleSlashCommand } = await import(\"./adapters/omp.js\");\n return handleSlashCommand(this, group, args);\n }\n}\n","// utils/project-dir.ts\n// Centralised project-directory resolution used by all plugin entry points.\n\n/**\n * Resolve the skaile project directory from environment variables.\n *\n * Resolution order:\n * 1. `SKAILE_PROJECT_DIR` (always checked first)\n * 2. Any additional env var keys supplied by the caller (in order)\n * 3. `process.cwd()` as final fallback\n *\n * @param additionalEnvVars - Optional list of extra environment variable names\n * to check before falling back to `process.cwd()`.\n * @returns Absolute path to the resolved project directory.\n *\n * @example\n * // Claude Code — also checks CLAUDE_PROJECT_DIR\n * const projectDir = resolveProjectDir([\"CLAUDE_PROJECT_DIR\"]);\n *\n * // OMP / standalone — SKAILE_PROJECT_DIR or cwd only\n * const projectDir = resolveProjectDir();\n *\n * @docLink packages/workspace-plugin/concepts#workspaceplugin-lifecycle\n */\nexport function resolveProjectDir(additionalEnvVars?: string[]): string {\n if (process.env.SKAILE_PROJECT_DIR) return process.env.SKAILE_PROJECT_DIR;\n for (const key of additionalEnvVars ?? []) {\n const val = process.env[key];\n if (val) return val;\n }\n return process.cwd();\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../workspace-plugin/src/adapters/claude-code.ts","../workspace-plugin/src/store.ts","../workspace-plugin/src/plugin.ts","../workspace-plugin/src/utils/project-dir.ts"],"names":["err"],"mappings":"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","file":"chunk-2UKNI2HJ.js","sourcesContent":["// ── Claude Code plugin-directory generator (STATELESS) ──────────────────────\n// Generates the contents of a Claude Code plugin directory\n// (`.claude/plugins/skaile/`) as an in-memory file map. No plugin instance or\n// boot() is required — safe to call from install commands.\n//\n// The previous standalone `@skaile/workspace-plugin-claude` package shipped\n// these as static files plus loose `.mjs` hook scripts; they are now\n// CLI-owned templates. Hooks invoke the `skaile` binary directly\n// (`skaile integration hook <event>`) and MCP runs via `skaile mcp-server` — no\n// generated script files, no shebang, no runtime assumption.\n\n/**\n * The Claude Code plugin manifest. `name` is `skaile`; `hooks` and\n * `mcpServers` point at sibling files in the generated directory.\n */\nconst PLUGIN_JSON = {\n name: \"skaile\",\n version: \"0.1.0\",\n description: \"Skaile workspace — connectors, mounts, skills, flows, shared state\",\n author: { name: \"skaile-ai\", url: \"https://github.com/skaile-ai\" },\n repository: \"https://github.com/skaile-ai/workspaces\",\n keywords: [\"skaile\", \"connectors\", \"workspace\", \"ai-assets\"],\n hooks: \"./hooks/hooks.json\",\n mcpServers: \"./.mcp.json\",\n userConfig: {\n skaile_yaml_path: {\n type: \"string\",\n title: \"skaile.yaml path\",\n description: \"Override path to skaile.yaml (default: auto-detect from project root)\",\n },\n },\n};\n\n/**\n * Hook wiring. Each lifecycle event invokes the `skaile` binary directly —\n * no loose `.mjs` scripts. `skaile integration hook <event>` resolves the project\n * directory itself (`CLAUDE_PROJECT_DIR` / cwd) and always exits 0.\n */\nconst HOOKS_JSON = {\n hooks: {\n SessionStart: [\n { hooks: [{ type: \"command\", command: \"skaile integration hook session-start\" }] },\n ],\n SessionEnd: [{ hooks: [{ type: \"command\", command: \"skaile integration hook session-end\" }] }],\n UserPromptSubmit: [\n { hooks: [{ type: \"command\", command: \"skaile integration hook user-prompt-submit\" }] },\n ],\n },\n};\n\n/**\n * MCP server wiring. Spawns `skaile mcp-server` — a stdio MCP subprocess that\n * runs on plain Node (no Claude Agent SDK).\n */\nconst MCP_JSON = {\n mcpServers: {\n \"skaile-workspace\": {\n command: \"skaile\",\n args: [\"mcp-server\"],\n env: {},\n },\n },\n};\n\n/**\n * Build the Claude Code plugin directory as an in-memory file map.\n *\n * Returns `{ relativePath: contents }` for every file the installer must\n * write under `<projectDir>/.claude/plugins/skaile/`. The installer is also\n * responsible for populating `skills/` with the project's installed skills (`.claude/skills/`, `.skaile/skills/`).\n *\n * Stateless — no plugin instance, no `boot()`. The generated artifacts carry\n * no project-specific paths: hooks and the MCP server resolve the project\n * directory themselves at runtime.\n *\n * @returns A map of plugin-relative file paths to their string contents.\n *\n * @docLink packages/workspace-plugin/concepts#adapters\n */\nexport function buildClaudePluginFiles(): Record<string, string> {\n return {\n \".claude-plugin/plugin.json\": `${JSON.stringify(PLUGIN_JSON, null, 2)}\\n`,\n \"hooks/hooks.json\": `${JSON.stringify(HOOKS_JSON, null, 2)}\\n`,\n \".mcp.json\": `${JSON.stringify(MCP_JSON, null, 2)}\\n`,\n \"skills/.gitkeep\": \"\",\n };\n}\n","import { mkdir, readFile, writeFile } from \"node:fs/promises\";\nimport { dirname } from \"node:path\";\n\ninterface Subscriber {\n regex: RegExp;\n handler: (key: string, value: unknown) => void;\n}\n\n/**\n * Disk-backed reactive key-value store for plugin state.\n *\n * Keeps an in-memory map that can be flushed to / loaded from a JSON file.\n * Supports glob-style subscriptions (`connector:*`, `*`).\n *\n * State is persisted to `<projectDir>/.skaile/plugin-state.json`.\n * The instance is available on {@link WorkspacePlugin} as the public `store`\n * field after `boot()` resolves.\n *\n * @docLink packages/workspace-plugin/concepts#plugin-store\n */\nexport class PluginStore {\n private readonly statePath: string;\n private data: Map<string, unknown> = new Map();\n private subscribers: Subscriber[] = [];\n\n constructor(statePath: string) {\n this.statePath = statePath;\n }\n\n /** Synchronous read from in-memory map. */\n get<T>(key: string): T | undefined {\n return this.data.get(key) as T | undefined;\n }\n\n /** Write to in-memory map and notify matching subscribers. */\n set<T>(key: string, value: T): void {\n this.data.set(key, value);\n this.notify(key, value);\n }\n\n /** Remove key and notify matching subscribers. */\n delete(key: string): void {\n this.data.delete(key);\n this.notify(key, undefined);\n }\n\n /**\n * Subscribe to changes matching a glob-style pattern.\n * `*` matches any sequence of characters.\n * Returns an unsubscribe function.\n */\n subscribe(pattern: string, handler: (key: string, value: unknown) => void): () => void {\n const escaped = pattern.replace(/[.+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n const regexStr = `^${escaped.replace(/\\*/g, \".*\")}$`;\n const sub: Subscriber = { regex: new RegExp(regexStr), handler };\n this.subscribers.push(sub);\n\n return () => {\n const idx = this.subscribers.indexOf(sub);\n if (idx !== -1) this.subscribers.splice(idx, 1);\n };\n }\n\n /** Rehydrate from disk JSON. Missing file = empty store (no throw). */\n async load(): Promise<void> {\n try {\n const raw = await readFile(this.statePath, \"utf-8\");\n const parsed = JSON.parse(raw);\n if (parsed && typeof parsed === \"object\" && !Array.isArray(parsed)) {\n this.data = new Map(Object.entries(parsed));\n }\n } catch (e: unknown) {\n // Missing file or invalid JSON — start with empty store\n }\n }\n\n /** Write entire store to disk as JSON. Creates parent dirs if needed. */\n async flush(): Promise<void> {\n const obj = Object.fromEntries(this.data);\n const json = JSON.stringify(obj, null, 2);\n await mkdir(dirname(this.statePath), { recursive: true });\n await writeFile(this.statePath, json, \"utf-8\");\n }\n\n private notify(key: string, value: unknown): void {\n for (const sub of this.subscribers) {\n if (sub.regex.test(key)) {\n sub.handler(key, value);\n }\n }\n }\n}\n","import { readFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport type { ConnectorManager } from \"@skaile/workspaces/connectors\";\nimport { DEFAULT_HARNESS_ID } from \"@skaile/workspaces/core/framework\";\nimport { createLogger } from \"@skaile/workspaces/core/logging\";\nimport type { Logger } from \"@skaile/workspaces/types\";\nimport { PluginStore } from \"./store.js\";\n\n/**\n * Construction options for {@link WorkspacePlugin}.\n *\n * At minimum `projectDir` must be supplied. All other fields are optional\n * and are pre-resolved by the caller when available (e.g. the runner already\n * knows `harness`/`model` from its own settings resolution).\n *\n * @docLink packages/workspace-plugin/concepts#workspaceplugin-lifecycle\n */\nexport interface WorkspacePluginOpts {\n projectDir: string;\n /**\n * Active connector manager. The unified `ConnectorManager` owns both\n * filesystem-face (mountable) and tool-face connectors.\n */\n connectorManager?: ConnectorManager;\n bootOwned?: boolean;\n onLog?: (msg: string) => void;\n /** Pre-resolved harness type (avoids needing boot() to read settings). */\n harness?: string;\n /** Pre-resolved model. */\n model?: string;\n}\n\n/**\n * Shared runtime core for the skaile workspace plugin.\n *\n * Manages the full lifecycle (`boot` → tools available → `shutdown`) and\n * surfaces workspace capabilities — mounts, connectors, flows, skills,\n * sessions, and config validation — through two adapters:\n *\n * - **MCP, in-process** (runner): call {@link buildWorkspaceMcpServer} for the\n * Claude Agent SDK server the runner embeds into its `query()` call.\n * - **MCP, stdio** (`skaile mcp-server`): call {@link runMcpServerStdio} for a\n * raw `@modelcontextprotocol/sdk` server — no Claude Agent SDK.\n * - **OMP**: call {@link buildOmpToolSet} for the 13-tool native subset and\n * {@link buildOmpExtensionSource} for the generated extension file.\n *\n * Two boot modes are supported via {@link WorkspacePluginOpts.bootOwned}:\n * - `bootOwned: false` (default) — managers injected externally by the runner.\n * - `bootOwned: true` — plugin owns the full manager lifecycle (standalone MCP\n * subprocess or OMP extension).\n *\n * @docLink packages/workspace-plugin/concepts#workspaceplugin-lifecycle\n */\nexport class WorkspacePlugin {\n readonly projectDir: string;\n connectorManager: ConnectorManager | null;\n readonly store: PluginStore;\n\n private readonly bootOwned: boolean;\n private readonly onLog: (msg: string) => void;\n private readonly log: Logger = createLogger({\n kind: \"mcp\",\n subkind: \"skaile-workspace\",\n });\n harness?: string;\n model?: string;\n\n constructor(opts: WorkspacePluginOpts) {\n this.projectDir = opts.projectDir;\n this.connectorManager = opts.connectorManager ?? null;\n this.store = new PluginStore(join(opts.projectDir, \".skaile\", \"plugin-state.json\"));\n this.bootOwned = opts.bootOwned ?? false;\n if (opts.harness) this.harness = opts.harness;\n if (opts.model) this.model = opts.model;\n this.onLog = opts.onLog ?? (() => {});\n this.log.debug(\"plugin constructed\", {\n harness: opts.harness,\n hasConnectors: !!opts.connectorManager,\n model: opts.model,\n bootOwned: this.bootOwned,\n });\n }\n\n async boot(): Promise<void> {\n if (!this.bootOwned) {\n // Managers were injected externally — resolve settings only (non-fatal)\n try {\n const { resolveSettings } = await import(\"@skaile/workspaces/core\");\n const settings = await resolveSettings(this.projectDir);\n this.harness = settings.harness ?? DEFAULT_HARNESS_ID;\n this.model = settings.model;\n } catch {\n /* non-fatal */\n }\n await this.store.load();\n return;\n }\n\n // bootOwned: we own the managers lifecycle\n try {\n const { resolveSettings } = await import(\"@skaile/workspaces/core\");\n const settings = await resolveSettings(this.projectDir);\n this.harness = settings.harness ?? DEFAULT_HARNESS_ID;\n this.model = settings.model;\n } catch {\n /* non-fatal */\n }\n\n try {\n const {\n ConnectorManager,\n loadConnectorDeclarations,\n registerBuiltinConnectors,\n createCliSecretProviderChain,\n } = await import(\"@skaile/workspaces/connectors\");\n\n registerBuiltinConnectors();\n\n const secrets = createCliSecretProviderChain();\n\n const connectorDecls = await loadConnectorDeclarations(this.projectDir);\n const cm = new ConnectorManager(this.projectDir, { secrets });\n await cm.connectAll(connectorDecls);\n this.connectorManager = cm;\n\n this.log.info(\"workspace plugin booted\", {\n connectors: connectorDecls.length,\n });\n this.onLog(`WorkspacePlugin booted: ${connectorDecls.length} connectors`);\n } catch (err) {\n this.log.warn(\"workspace plugin boot warning\", {\n error: err instanceof Error ? err.message : String(err),\n });\n this.onLog(`WorkspacePlugin boot warning: ${err}`);\n }\n\n await this.store.load();\n }\n\n async reload(): Promise<void> {\n if (!this.bootOwned) return;\n await this.shutdown();\n await this.boot();\n }\n\n async shutdown(): Promise<void> {\n this.log.info(\"workspace plugin shutdown\");\n await this.store.flush();\n if (!this.bootOwned) return;\n try {\n await (this.connectorManager as any)?.disconnectAll?.();\n } catch {\n /* best-effort */\n }\n this.connectorManager = null;\n }\n\n buildSystemPromptSection(harness?: string): string {\n const d = harness ?? this.harness ?? \"unknown\";\n // The unified ConnectorManager owns both mountable (filesystem-face) and\n // tool-face connectors. Filesystem-face connectors expose a `mountPath`.\n const all = (this.connectorManager as any)?.listConnectors?.() ?? [];\n const mounts = (all as any[]).filter((c) => typeof c.mountPath === \"string\");\n const connectors = (all as any[]).filter((c) => typeof c.mountPath !== \"string\");\n const lines = [\"## Workspace (skaile)\", \"\", `Harness: ${d}`, `Project: ${this.projectDir}`];\n if (mounts.length > 0) {\n lines.push(\"\", \"Mounts:\");\n for (const v of mounts) {\n lines.push(` · ${v.id} (${v.driver}) → ${v.mountPath ?? \"(unmounted)\"}`);\n }\n }\n if (connectors.length > 0) {\n lines.push(\"\", \"Connectors:\");\n for (const c of connectors) {\n lines.push(` · ${c.id} (${c.driver})`);\n }\n }\n lines.push(\"\", \"Use workspace_info for full details. Use workspace_validate to check health.\");\n\n for (const name of [\"SOUL.md\", \"RULES.md\"]) {\n const skaileOverride = join(this.projectDir, \".skaile\", name);\n const rootFile = join(this.projectDir, name);\n for (const candidate of [skaileOverride, rootFile]) {\n try {\n const content = readFileSync(candidate, \"utf-8\").trim();\n if (content) {\n lines.push(\"\", `## ${name.replace(\".md\", \"\")}`, \"\", content);\n break;\n }\n } catch {\n // file not found, try next\n }\n }\n }\n\n return lines.join(\"\\n\");\n }\n\n /**\n * Build the in-process Claude Agent SDK MCP server (runner embedding).\n * Returns `null` when `@anthropic-ai/claude-agent-sdk` is unavailable.\n */\n async buildWorkspaceMcpServer(): Promise<unknown | null> {\n this.log.info(\"building workspace MCP server\");\n try {\n const { buildWorkspaceMcpServer } = await import(\"./adapters/mcp.js\");\n const server = await buildWorkspaceMcpServer(this);\n if (server) this.log.info(\"workspace MCP server ready\");\n else this.log.debug(\"workspace MCP server skipped (no tools)\");\n return server;\n } catch (err) {\n this.log.error(\"workspace MCP server build failed\", err);\n throw err;\n }\n }\n\n /**\n * Build the raw `@modelcontextprotocol/sdk` stdio MCP server — no Claude\n * Agent SDK. Used by the `skaile mcp-server` subprocess. The returned\n * server is not yet connected to a transport.\n */\n async buildWorkspaceMcpStdioServer(): Promise<unknown> {\n this.log.info(\"building workspace stdio MCP server\");\n const { buildWorkspaceMcpStdioServer } = await import(\"./adapters/mcp.js\");\n return buildWorkspaceMcpStdioServer(this);\n }\n\n /**\n * Build and run the stdio MCP server: builds the raw\n * `@modelcontextprotocol/sdk` server and connects a `StdioServerTransport`.\n * Used by the `skaile mcp-server` subprocess.\n */\n async runMcpServerStdio(): Promise<void> {\n this.log.info(\"starting workspace stdio MCP server\");\n const { runMcpServerStdio } = await import(\"./adapters/mcp.js\");\n await runMcpServerStdio(this);\n }\n\n async buildOmpToolSet(): Promise<unknown[]> {\n const { buildOmpToolSet } = await import(\"./adapters/omp.js\");\n return buildOmpToolSet(this);\n }\n\n /**\n * The generated `.omp/extensions/skaile.ts`. Path-independent unless `pinProjectDir` is set\n * (an ephemeral file written outside the project).\n */\n async buildOmpExtensionSource(opts: { pinProjectDir?: boolean } = {}): Promise<string> {\n const { buildOmpExtensionSource } = await import(\"./adapters/omp.js\");\n return buildOmpExtensionSource(opts.pinProjectDir ? this.projectDir : null);\n }\n\n async handleSlashCommand(group: string, args: string[]): Promise<string> {\n const { handleSlashCommand } = await import(\"./adapters/omp.js\");\n return handleSlashCommand(this, group, args);\n }\n}\n","// utils/project-dir.ts\n// Centralised project-directory resolution used by all plugin entry points.\n\n/**\n * Resolve the skaile project directory from environment variables.\n *\n * Resolution order:\n * 1. `SKAILE_PROJECT_DIR` (always checked first)\n * 2. Any additional env var keys supplied by the caller (in order)\n * 3. `process.cwd()` as final fallback\n *\n * @param additionalEnvVars - Optional list of extra environment variable names\n * to check before falling back to `process.cwd()`.\n * @returns Absolute path to the resolved project directory.\n *\n * @example\n * // Claude Code — also checks CLAUDE_PROJECT_DIR\n * const projectDir = resolveProjectDir([\"CLAUDE_PROJECT_DIR\"]);\n *\n * // OMP / standalone — SKAILE_PROJECT_DIR or cwd only\n * const projectDir = resolveProjectDir();\n *\n * @docLink packages/workspace-plugin/concepts#workspaceplugin-lifecycle\n */\nexport function resolveProjectDir(additionalEnvVars?: string[]): string {\n if (process.env.SKAILE_PROJECT_DIR) return process.env.SKAILE_PROJECT_DIR;\n for (const key of additionalEnvVars ?? []) {\n const val = process.env[key];\n if (val) return val;\n }\n return process.cwd();\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getProviderPreset, resolvePresetBaseUrl, expandPreset, resolveProbeUrl, buildCredentialHeaders, presetBaseUrl } from './chunk-6UP2EDFN.js';
|
|
2
|
-
import { modelIdSchemaForTarget } from './chunk-
|
|
2
|
+
import { modelIdSchemaForTarget } from './chunk-WS3BOCAT.js';
|
|
3
3
|
import { resolveEntryBaseUrl, entryTransport, parseModelRef, registryEntries } from './chunk-RXGPFAMN.js';
|
|
4
4
|
|
|
5
5
|
// bridge/src/models.ts
|
|
@@ -323,5 +323,5 @@ function resolveModelTier(tier, sessionModel, options = {}) {
|
|
|
323
323
|
}
|
|
324
324
|
|
|
325
325
|
export { ModelTierResolutionError, PROVIDER_MODEL_TIERS, STATIC_MODELS, fetchProviderModels, getModels, getStaticModels, modelIdTargetForEntry, resolveManifestModel, resolveModelCapabilities, resolveModelTier };
|
|
326
|
-
//# sourceMappingURL=chunk-
|
|
327
|
-
//# sourceMappingURL=chunk-
|
|
326
|
+
//# sourceMappingURL=chunk-3AIEJSQR.js.map
|
|
327
|
+
//# sourceMappingURL=chunk-3AIEJSQR.js.map
|