@skaile/workspaces 0.24.0 → 0.26.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 +276 -0
- package/README.md +2 -2
- package/dist/{asset-feeds-WKIKSZ6Z.js → asset-feeds-WMVTI7KW.js} +11 -10
- package/dist/asset-feeds-WMVTI7KW.js.map +1 -0
- package/dist/asset-manager/index.js +11 -10
- package/dist/asset-manager/installer.js +10 -9
- package/dist/asset-manager/renderers.js +2 -2
- package/dist/asset-manager/src/index.d.ts +6 -7
- package/dist/asset-manager/src/index.d.ts.map +1 -1
- package/dist/asset-manager/src/installer.d.ts.map +1 -1
- package/dist/bridge/drivers/claude-sdk.js +14 -7
- package/dist/bridge/drivers/claude-sdk.js.map +1 -1
- package/dist/bridge/drivers/codex.js +8 -34
- package/dist/bridge/drivers/codex.js.map +1 -1
- package/dist/bridge/drivers/echo.js +1 -1
- package/dist/bridge/drivers/omp.js +64 -50
- package/dist/bridge/drivers/omp.js.map +1 -1
- package/dist/bridge/index.js +4 -4
- package/dist/bridge/src/drivers/claude-sdk.d.ts.map +1 -1
- package/dist/bridge/src/drivers/codex.d.ts.map +1 -1
- package/dist/bridge/src/drivers/omp.d.ts +20 -4
- package/dist/bridge/src/drivers/omp.d.ts.map +1 -1
- package/dist/bridge/src/error-classifier.d.ts +17 -0
- package/dist/bridge/src/error-classifier.d.ts.map +1 -1
- package/dist/bridge/src/models.d.ts +1 -1
- package/dist/bridge/src/models.d.ts.map +1 -1
- package/dist/bridge/src/provider-endpoints.d.ts +16 -0
- package/dist/bridge/src/provider-endpoints.d.ts.map +1 -0
- package/dist/bridge/src/validation.d.ts +1 -1
- package/dist/bridge/src/validation.d.ts.map +1 -1
- package/dist/{chunk-M5TE6YI5.js → chunk-23M4XZQW.js} +10 -52
- package/dist/chunk-23M4XZQW.js.map +1 -0
- package/dist/{chunk-DH4N5AW4.js → chunk-2FS4FPZ7.js} +3 -3
- package/dist/{chunk-DH4N5AW4.js.map → chunk-2FS4FPZ7.js.map} +1 -1
- package/dist/{chunk-6VTG73UY.js → chunk-45H3UO2R.js} +2 -2
- package/dist/{chunk-6VTG73UY.js.map → chunk-45H3UO2R.js.map} +1 -1
- package/dist/chunk-4SQ6Y6U7.js +28 -0
- package/dist/chunk-4SQ6Y6U7.js.map +1 -0
- package/dist/{chunk-LSGAYQ2E.js → chunk-5YO3H5Q4.js} +3 -3
- package/dist/{chunk-LSGAYQ2E.js.map → chunk-5YO3H5Q4.js.map} +1 -1
- package/dist/{chunk-JDX54X4Y.js → chunk-7GWYRVAX.js} +12 -9
- package/dist/chunk-7GWYRVAX.js.map +1 -0
- package/dist/{chunk-46COM7M5.js → chunk-7OBGSR7O.js} +5 -5
- package/dist/chunk-7OBGSR7O.js.map +1 -0
- package/dist/{chunk-2RFOFHSM.js → chunk-BKF3UFF4.js} +21 -9
- package/dist/chunk-BKF3UFF4.js.map +1 -0
- package/dist/{chunk-KOVLSBXK.js → chunk-BMQKMOQY.js} +81 -79
- package/dist/chunk-BMQKMOQY.js.map +1 -0
- package/dist/{chunk-J2TITSXF.js → chunk-BQRRBGDE.js} +2 -2
- package/dist/{chunk-J2TITSXF.js.map → chunk-BQRRBGDE.js.map} +1 -1
- package/dist/{chunk-5ESCS2OS.js → chunk-C32BRO2W.js} +67 -35
- package/dist/chunk-C32BRO2W.js.map +1 -0
- package/dist/{chunk-GZWJGNNN.js → chunk-DEYYRFQU.js} +3 -3
- package/dist/chunk-DEYYRFQU.js.map +1 -0
- package/dist/{chunk-YX3UWPJ5.js → chunk-IEJ5IOC3.js} +27 -49
- package/dist/chunk-IEJ5IOC3.js.map +1 -0
- package/dist/chunk-IERB3UXJ.js +215 -0
- package/dist/chunk-IERB3UXJ.js.map +1 -0
- package/dist/{chunk-FVTV7M76.js → chunk-IFGTRL2I.js} +3 -3
- package/dist/chunk-IFGTRL2I.js.map +1 -0
- package/dist/{chunk-LJ52ZKIU.js → chunk-JIQLLZ65.js} +203 -39
- package/dist/chunk-JIQLLZ65.js.map +1 -0
- package/dist/{chunk-Z3M5K67G.js → chunk-KL2MQ6WI.js} +114 -63
- package/dist/chunk-KL2MQ6WI.js.map +1 -0
- package/dist/{chunk-6FNCZYJY.js → chunk-MBOR7D65.js} +3 -3
- package/dist/{chunk-6FNCZYJY.js.map → chunk-MBOR7D65.js.map} +1 -1
- package/dist/{chunk-QAVZOJCV.js → chunk-OVRSNIKJ.js} +2 -2
- package/dist/chunk-OVRSNIKJ.js.map +1 -0
- package/dist/{chunk-DQWREFRQ.js → chunk-PAYAFNXG.js} +22 -3
- package/dist/chunk-PAYAFNXG.js.map +1 -0
- package/dist/{chunk-D3VO6WNC.js → chunk-PRLD7EXG.js} +3 -3
- package/dist/chunk-PRLD7EXG.js.map +1 -0
- package/dist/{chunk-N6TA6RSH.js → chunk-PY7AQRGH.js} +59 -13
- package/dist/chunk-PY7AQRGH.js.map +1 -0
- package/dist/{chunk-NELZIQ2E.js → chunk-QDJKE557.js} +20 -3
- package/dist/chunk-QDJKE557.js.map +1 -0
- package/dist/{chunk-OYRW5RCM.js → chunk-QHXS3YDV.js} +9 -9
- package/dist/chunk-QHXS3YDV.js.map +1 -0
- package/dist/{chunk-2F3RUZXC.js → chunk-RTAIGPTF.js} +161 -106
- package/dist/chunk-RTAIGPTF.js.map +1 -0
- package/dist/{chunk-IPUYL6TD.js → chunk-TV72ZJYN.js} +8 -5
- package/dist/{chunk-IPUYL6TD.js.map → chunk-TV72ZJYN.js.map} +1 -1
- package/dist/{chunk-ICS76R4T.js → chunk-W7W66MDZ.js} +10 -8
- package/dist/chunk-W7W66MDZ.js.map +1 -0
- package/dist/{chunk-JQBHCJ6N.js → chunk-WD4LP66U.js} +329 -121
- package/dist/chunk-WD4LP66U.js.map +1 -0
- package/dist/{chunk-AFLH7B64.js → chunk-XGLGS5B4.js} +3 -3
- package/dist/{chunk-AFLH7B64.js.map → chunk-XGLGS5B4.js.map} +1 -1
- package/dist/{chunk-HIIARTRZ.js → chunk-YDTW4GT6.js} +450 -207
- package/dist/chunk-YDTW4GT6.js.map +1 -0
- package/dist/{chunk-2XY6732A.js → chunk-YRU4WB6Y.js} +5 -5
- package/dist/chunk-YRU4WB6Y.js.map +1 -0
- package/dist/{chunk-542K7SR6.js → chunk-Z5DI7PDG.js} +173 -90
- package/dist/chunk-Z5DI7PDG.js.map +1 -0
- package/dist/{chunk-KLNL7QHN.js → chunk-ZAP2BDHG.js} +30 -5
- package/dist/chunk-ZAP2BDHG.js.map +1 -0
- package/dist/{chunk-GCJXPUHG.js → chunk-ZONCCO5N.js} +9 -4
- package/dist/chunk-ZONCCO5N.js.map +1 -0
- package/dist/{chunk-ODPII24X.js → chunk-ZYDE52WE.js} +3 -3
- package/dist/{chunk-ODPII24X.js.map → chunk-ZYDE52WE.js.map} +1 -1
- package/dist/cli/index.js +566 -425
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/src/commands/complete-resolvers.d.ts.map +1 -1
- package/dist/cli/src/commands/config.d.ts.map +1 -1
- package/dist/cli/src/commands/connector.d.ts +7 -0
- package/dist/cli/src/commands/connector.d.ts.map +1 -1
- package/dist/cli/src/commands/flow.d.ts +3 -2
- package/dist/cli/src/commands/flow.d.ts.map +1 -1
- package/dist/cli/src/commands/npx.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/validate.d.ts.map +1 -1
- package/dist/cli/src/flow-discovery.d.ts +24 -0
- package/dist/cli/src/flow-discovery.d.ts.map +1 -0
- package/dist/cli/src/open-registry.d.ts +2 -2
- package/dist/cli/src/paths.d.ts +26 -9
- package/dist/cli/src/paths.d.ts.map +1 -1
- package/dist/cli/src/skill-walker.d.ts +9 -5
- package/dist/cli/src/skill-walker.d.ts.map +1 -1
- package/dist/connectors/config.js +8 -7
- package/dist/connectors/index.js +13 -12
- package/dist/connectors/rclone-config.js +1 -1
- package/dist/connectors/src/connector-manager.d.ts +24 -2
- package/dist/connectors/src/connector-manager.d.ts.map +1 -1
- package/dist/connectors/src/connector-prompt.d.ts.map +1 -1
- package/dist/connectors/src/connector-registry.d.ts +3 -3
- package/dist/connectors/src/credential-helper-script.d.ts.map +1 -1
- package/dist/connectors/src/index.d.ts +4 -2
- package/dist/connectors/src/index.d.ts.map +1 -1
- package/dist/connectors/src/managed-gitconfig.d.ts.map +1 -1
- package/dist/connectors/src/mount-placeholder.d.ts +68 -0
- package/dist/connectors/src/mount-placeholder.d.ts.map +1 -0
- package/dist/connectors/src/rclone-config/googledrive.d.ts +1 -1
- package/dist/core/discovery.js +1 -1
- package/dist/core/index.js +7 -6
- package/dist/core/manifest.js +2 -2
- package/dist/core/models.js +1 -1
- package/dist/core/publish-manifest.d.ts +2 -0
- package/dist/core/publish-manifest.js +5 -0
- package/dist/core/publish-manifest.js.map +1 -0
- package/dist/core/runtime-assets.js +5 -4
- package/dist/core/src/discovery.d.ts +27 -0
- package/dist/core/src/discovery.d.ts.map +1 -1
- package/dist/core/src/index.d.ts +9 -6
- package/dist/core/src/index.d.ts.map +1 -1
- package/dist/core/src/lock.d.ts.map +1 -1
- package/dist/core/src/manifest-yaml-editor.d.ts +62 -0
- package/dist/core/src/manifest-yaml-editor.d.ts.map +1 -0
- package/dist/core/src/models.d.ts +16 -3
- package/dist/core/src/models.d.ts.map +1 -1
- package/dist/core/src/publish-manifest.d.ts +160 -0
- package/dist/core/src/publish-manifest.d.ts.map +1 -0
- package/dist/core/src/repo-manager.d.ts +9 -1
- package/dist/core/src/repo-manager.d.ts.map +1 -1
- package/dist/core/src/runtime-assets.d.ts +80 -29
- package/dist/core/src/runtime-assets.d.ts.map +1 -1
- package/dist/core/src/walker.d.ts +19 -6
- package/dist/core/src/walker.d.ts.map +1 -1
- package/dist/core/src/workspace-config.d.ts +30 -36
- package/dist/core/src/workspace-config.d.ts.map +1 -1
- package/dist/core/src/workspace-yaml-editor.d.ts +1 -15
- package/dist/core/src/workspace-yaml-editor.d.ts.map +1 -1
- package/dist/core/workspace-config.js +4 -3
- package/dist/deploy/index.js +50 -79
- package/dist/deploy/index.js.map +1 -1
- package/dist/deploy/src/targets/container-runtime.d.ts +1 -1
- package/dist/deploy/src/targets/container-runtime.d.ts.map +1 -1
- package/dist/deploy/src/targets/local.d.ts.map +1 -1
- package/dist/deploy/src/targets/nix.d.ts.map +1 -1
- package/dist/deploy/src/targets/process-handle.d.ts +7 -5
- package/dist/deploy/src/targets/process-handle.d.ts.map +1 -1
- package/dist/discovery/index.js +5 -4
- package/dist/discovery/src/discover-manifest.d.ts +3 -2
- package/dist/discovery/src/discover-manifest.d.ts.map +1 -1
- package/dist/discovery/src/discover.d.ts +2 -2
- package/dist/discovery/src/discover.d.ts.map +1 -1
- package/dist/discovery/src/index.d.ts +1 -1
- package/dist/discovery/src/index.d.ts.map +1 -1
- package/dist/discovery/src/source-config.d.ts +53 -12
- package/dist/discovery/src/source-config.d.ts.map +1 -1
- package/dist/discovery/src/tree-entries.d.ts +2 -2
- package/dist/discovery/src/tree-entries.d.ts.map +1 -1
- package/dist/{ensure-sources-OJUBGX6Z.js → ensure-sources-CVULUVH4.js} +12 -11
- package/dist/ensure-sources-CVULUVH4.js.map +1 -0
- package/dist/factory-assets/.skaile-source.yaml +6 -0
- package/dist/factory-assets/README.md +36 -0
- package/dist/factory-assets/bundles/workspaces-authoring/workspaces-authoring.bundle.yaml +9 -0
- package/dist/factory-assets/connectors/deploy/CONNECTOR.md +41 -0
- package/dist/{base-assets → factory-assets}/connectors/deploy/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/deploy/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/deploy.js +22 -0
- package/dist/factory-assets/connectors/devserver/CONNECTOR.md +44 -0
- package/dist/{base-assets → factory-assets}/connectors/devserver/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/devserver/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/devserver.js +22 -0
- package/dist/factory-assets/connectors/flow/CONNECTOR.md +47 -0
- package/dist/{base-assets → factory-assets}/connectors/flow/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/flow/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/adapter.js +22 -0
- package/dist/factory-assets/connectors/flow/engine/engine.d.ts.map +1 -0
- package/dist/{base-assets → factory-assets}/connectors/flow/engine/flow-kind-provider.d.ts +1 -1
- package/dist/factory-assets/connectors/flow/engine/flow-kind-provider.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/engine/flow-manifest.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/engine/index.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/engine/loader.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/engine/types.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/engine.js +15 -0
- package/dist/factory-assets/connectors/flow/index.d.ts.map +1 -0
- package/dist/{base-assets → factory-assets}/connectors/flow/prompt-fragments.d.ts +5 -5
- package/dist/factory-assets/connectors/flow/prompt-fragments.d.ts.map +1 -0
- package/dist/{base-assets → factory-assets}/connectors/flow/prompt-fragments.js +1 -1
- package/dist/{base-assets → factory-assets}/connectors/flow/run-flow.d.ts +8 -8
- package/dist/factory-assets/connectors/flow/run-flow.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/run-flow.js +25 -0
- package/dist/{base-assets → factory-assets}/connectors/flow/stimulus-driver.d.ts +2 -2
- package/dist/factory-assets/connectors/flow/stimulus-driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/stimulus-driver.js +4 -0
- package/dist/factory-assets/connectors/flow.js +22 -0
- package/dist/factory-assets/connectors/git/CONNECTOR.md +145 -0
- package/dist/{base-assets → factory-assets}/connectors/git/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/git/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/git.js +22 -0
- package/dist/factory-assets/connectors/gmail/CONNECTOR.md +50 -0
- package/dist/{base-assets → factory-assets}/connectors/gmail/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/gmail/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/gmail.js +22 -0
- package/dist/factory-assets/connectors/googledrive/CONNECTOR.md +150 -0
- package/dist/{base-assets → factory-assets}/connectors/googledrive/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/googledrive/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/googledrive.js +22 -0
- package/dist/factory-assets/connectors/local/CONNECTOR.md +40 -0
- package/dist/{base-assets → factory-assets}/connectors/local/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/local/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/local.js +22 -0
- package/dist/factory-assets/connectors/mattermost/CONNECTOR.md +65 -0
- package/dist/{base-assets → factory-assets}/connectors/mattermost/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/mattermost/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/mattermost.js +22 -0
- package/dist/factory-assets/connectors/memory/CONNECTOR.md +40 -0
- package/dist/{base-assets → factory-assets}/connectors/memory/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/memory/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/memory.js +22 -0
- package/dist/factory-assets/connectors/minio/CONNECTOR.md +68 -0
- package/dist/{base-assets → factory-assets}/connectors/minio/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/minio/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/minio.js +22 -0
- package/dist/factory-assets/connectors/postgres/CONNECTOR.md +46 -0
- package/dist/{base-assets → factory-assets}/connectors/postgres/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/postgres/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/postgres.js +22 -0
- package/dist/factory-assets/connectors/s3/CONNECTOR.md +76 -0
- package/dist/{base-assets → factory-assets}/connectors/s3/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/s3/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/s3.js +22 -0
- package/dist/factory-assets/connectors/sharepoint/CONNECTOR.md +181 -0
- package/dist/{base-assets → factory-assets}/connectors/sharepoint/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/sharepoint/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/sharepoint.js +22 -0
- package/dist/factory-assets/connectors/sqlite/CONNECTOR.md +44 -0
- package/dist/{base-assets → factory-assets}/connectors/sqlite/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/sqlite/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/sqlite.js +22 -0
- package/dist/factory-assets/connectors/static-server/CONNECTOR.md +41 -0
- package/dist/{base-assets → factory-assets}/connectors/static-server/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/static-server/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/static-server.js +22 -0
- package/dist/factory-assets/connectors/tunnel/CONNECTOR.md +40 -0
- package/dist/{base-assets → factory-assets}/connectors/tunnel/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/tunnel/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/tunnel.js +22 -0
- package/dist/factory-assets/connectors/webdav/CONNECTOR.md +139 -0
- package/dist/{base-assets → factory-assets}/connectors/webdav/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/webdav/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/webdav.js +22 -0
- package/dist/factory-assets/connectors/xstate/CONNECTOR.md +57 -0
- package/dist/{base-assets → factory-assets}/connectors/xstate/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/xstate/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/xstate-store/CONNECTOR.md +48 -0
- package/dist/{base-assets → factory-assets}/connectors/xstate-store/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/xstate-store/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/xstate-store.js +22 -0
- package/dist/factory-assets/connectors/xstate.js +22 -0
- package/dist/{base-assets → factory-assets}/index.d.ts +1 -1
- package/dist/factory-assets/index.d.ts.map +1 -0
- package/dist/{base-assets → factory-assets}/index.js +1 -1
- package/dist/factory-assets/index.js.map +1 -0
- package/dist/factory-assets/skaile.manifest.yaml +25 -0
- package/dist/factory-assets/skills/authoring-skaile-assets/SKILL.md +176 -0
- package/dist/factory-assets/skills/authoring-skaile-manifests/SKILL.md +243 -0
- package/dist/factory-assets/skills/authoring-skaile-manifests/references/dependency-standard.md +197 -0
- package/dist/factory-assets/skills/manifest-compliance/SKILL.md +140 -0
- package/dist/factory-assets/skills/skaile-author-asset/SKILL.md +239 -0
- package/dist/factory-assets/skills/skaile-manage-workspace/SKILL.md +168 -0
- package/dist/{flows-DYFTPCPM.js → flows-JZFJD5IN.js} +3 -3
- package/dist/{flows-DYFTPCPM.js.map → flows-JZFJD5IN.js.map} +1 -1
- package/dist/library/index.js +14 -5
- package/dist/library/src/install/install-from-manifest.d.ts.map +1 -1
- package/dist/library/src/library.d.ts +2 -0
- package/dist/library/src/library.d.ts.map +1 -1
- package/dist/library/src/local/library.d.ts +2 -0
- package/dist/library/src/local/library.d.ts.map +1 -1
- package/dist/library/src/local/local-catalog-source.d.ts +2 -1
- package/dist/library/src/local/local-catalog-source.d.ts.map +1 -1
- package/dist/library/src/local/sidecar-paths.d.ts +4 -4
- package/dist/library/src/local/sidecar-paths.d.ts.map +1 -1
- package/dist/library/src/local/store-paths.d.ts +4 -3
- package/dist/library/src/local/store-paths.d.ts.map +1 -1
- package/dist/library/src/pin-resolver.d.ts.map +1 -1
- package/dist/library/src/preset/apply.d.ts.map +1 -1
- package/dist/library/src/preset/placeholders.d.ts.map +1 -1
- package/dist/library/src/remote/remote-catalog-source.d.ts +7 -0
- package/dist/library/src/remote/remote-catalog-source.d.ts.map +1 -1
- package/dist/library/src/remote/rest-catalog-source.d.ts +7 -0
- package/dist/library/src/remote/rest-catalog-source.d.ts.map +1 -1
- package/dist/library/src/sync/manifest-writeback.d.ts +1 -1
- package/dist/library/src/sync/manifest-writeback.d.ts.map +1 -1
- package/dist/open-library-WYASW4BH.js +22 -0
- package/dist/{open-library-67FSSQWE.js.map → open-library-WYASW4BH.js.map} +1 -1
- package/dist/paths-BMW6JYW6.js +15 -0
- package/dist/{paths-FKKGS6BA.js.map → paths-BMW6JYW6.js.map} +1 -1
- package/dist/{plugin-store-IZ5SCRAV.js → plugin-store-O5VR45CA.js} +9 -8
- package/dist/plugin-store-O5VR45CA.js.map +1 -0
- package/dist/plugins/src/asset-kind-provider.d.ts +1 -1
- package/dist/plugins/src/catalog-source.d.ts +13 -0
- package/dist/plugins/src/catalog-source.d.ts.map +1 -1
- package/dist/resolver/index.js +1 -1
- package/dist/resolver/src/parser.d.ts.map +1 -1
- package/dist/runner/index.js +20 -19
- package/dist/runner/src/capability-registry.d.ts +1 -1
- package/dist/runner/src/capability-registry.d.ts.map +1 -1
- package/dist/runner/src/external-mcp.d.ts +112 -0
- package/dist/runner/src/external-mcp.d.ts.map +1 -0
- package/dist/runner/src/resource-handler.d.ts.map +1 -1
- package/dist/runner/src/resources.d.ts +10 -2
- package/dist/runner/src/resources.d.ts.map +1 -1
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/runner/src/session-builder.d.ts +12 -0
- package/dist/runner/src/session-builder.d.ts.map +1 -1
- package/dist/runner/src/workspace-migration.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +11 -10
- package/dist/sdk/bridge.js +4 -4
- package/dist/sdk/core.js +7 -6
- package/dist/sdk/flow.js +12 -1
- package/dist/sdk/index.js +23 -22
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/resolver.js +1 -1
- package/dist/sdk/runner.js +20 -19
- package/dist/sdk/session.js +1 -1
- package/dist/sdk/src/flow/index.d.ts +1 -1
- package/dist/sdk/src/flow/index.d.ts.map +1 -1
- package/dist/sdk/src/workspace.d.ts +3 -2
- package/dist/sdk/src/workspace.d.ts.map +1 -1
- package/dist/sdk/telemetry.js +1 -1
- package/dist/secrets/index.js +1 -1
- package/dist/secrets/src/providers/env.d.ts.map +1 -1
- package/dist/secrets/src/providers/local.d.ts.map +1 -1
- package/dist/session/index.js +1 -1
- package/dist/session/src/mentions.d.ts.map +1 -1
- package/dist/{setup-J7CYEQOF.js → setup-YNLFR5GB.js} +13 -12
- package/dist/setup-YNLFR5GB.js.map +1 -0
- package/dist/skills-6HJ3WINN.js +7 -0
- package/dist/{skills-CRL3VJNN.js.map → skills-6HJ3WINN.js.map} +1 -1
- package/dist/store-client-CENBEASX.js +15 -0
- package/dist/{store-client-AEI6Y3KD.js.map → store-client-CENBEASX.js.map} +1 -1
- package/dist/telemetry/index.js +1 -1
- package/dist/telemetry/src/config.d.ts +0 -16
- package/dist/telemetry/src/config.d.ts.map +1 -1
- package/dist/tui/index.js +20 -19
- package/dist/tui/index.js.map +1 -1
- package/dist/types/manifests.js +1 -1
- package/dist/types/src/flow.d.ts +2 -2
- 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/manifests/index.d.ts +1 -1
- package/dist/types/src/manifests/skill.d.ts +21 -0
- package/dist/types/src/manifests/skill.d.ts.map +1 -1
- package/dist/workspace-plugin/adapters/mcp.js +4 -4
- package/dist/workspace-plugin/adapters/omp.js +7 -7
- package/dist/workspace-plugin/index.js +1 -1
- package/dist/workspace-plugin/src/tools/flows.d.ts.map +1 -1
- package/package.json +158 -151
- package/dist/asset-feeds-WKIKSZ6Z.js.map +0 -1
- package/dist/base-assets/connectors/deploy/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/deploy.js +0 -21
- package/dist/base-assets/connectors/devserver/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/devserver.js +0 -21
- package/dist/base-assets/connectors/flow/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/adapter.js +0 -21
- package/dist/base-assets/connectors/flow/engine/engine.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine/flow-kind-provider.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine/flow-manifest.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine/index.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine/loader.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine/types.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine.js +0 -4
- package/dist/base-assets/connectors/flow/index.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/prompt-fragments.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/run-flow.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/run-flow.js +0 -24
- package/dist/base-assets/connectors/flow/stimulus-driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/stimulus-driver.js +0 -4
- package/dist/base-assets/connectors/flow.js +0 -21
- package/dist/base-assets/connectors/git/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/git.js +0 -21
- package/dist/base-assets/connectors/gmail/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/gmail.js +0 -21
- package/dist/base-assets/connectors/googledrive/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/googledrive.js +0 -21
- package/dist/base-assets/connectors/local/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/local.js +0 -21
- package/dist/base-assets/connectors/mattermost/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/mattermost.js +0 -21
- package/dist/base-assets/connectors/memory/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/memory.js +0 -21
- package/dist/base-assets/connectors/minio/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/minio.js +0 -21
- package/dist/base-assets/connectors/postgres/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/postgres.js +0 -21
- package/dist/base-assets/connectors/s3/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/s3.js +0 -21
- package/dist/base-assets/connectors/sharepoint/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/sharepoint.js +0 -21
- package/dist/base-assets/connectors/sqlite/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/sqlite.js +0 -21
- package/dist/base-assets/connectors/static-server/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/static-server.js +0 -21
- package/dist/base-assets/connectors/tunnel/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/tunnel.js +0 -21
- package/dist/base-assets/connectors/webdav/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/webdav.js +0 -21
- package/dist/base-assets/connectors/xstate/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/xstate-store/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/xstate-store.js +0 -21
- package/dist/base-assets/connectors/xstate.js +0 -21
- package/dist/base-assets/index.d.ts.map +0 -1
- package/dist/base-assets/index.js.map +0 -1
- package/dist/chunk-2F3RUZXC.js.map +0 -1
- package/dist/chunk-2M3XTMOL.js +0 -23
- package/dist/chunk-2M3XTMOL.js.map +0 -1
- package/dist/chunk-2RFOFHSM.js.map +0 -1
- package/dist/chunk-2XY6732A.js.map +0 -1
- package/dist/chunk-46COM7M5.js.map +0 -1
- package/dist/chunk-542K7SR6.js.map +0 -1
- package/dist/chunk-5ESCS2OS.js.map +0 -1
- package/dist/chunk-D3VO6WNC.js.map +0 -1
- package/dist/chunk-DQWREFRQ.js.map +0 -1
- package/dist/chunk-FVTV7M76.js.map +0 -1
- package/dist/chunk-GCJXPUHG.js.map +0 -1
- package/dist/chunk-GZWJGNNN.js.map +0 -1
- package/dist/chunk-HIIARTRZ.js.map +0 -1
- package/dist/chunk-ICS76R4T.js.map +0 -1
- package/dist/chunk-JDX54X4Y.js.map +0 -1
- package/dist/chunk-JQBHCJ6N.js.map +0 -1
- package/dist/chunk-KLNL7QHN.js.map +0 -1
- package/dist/chunk-KOVLSBXK.js.map +0 -1
- package/dist/chunk-LJ52ZKIU.js.map +0 -1
- package/dist/chunk-M5TE6YI5.js.map +0 -1
- package/dist/chunk-N6TA6RSH.js.map +0 -1
- package/dist/chunk-NELZIQ2E.js.map +0 -1
- package/dist/chunk-OYRW5RCM.js.map +0 -1
- package/dist/chunk-QAVZOJCV.js.map +0 -1
- package/dist/chunk-YX3UWPJ5.js.map +0 -1
- package/dist/chunk-Z3M5K67G.js.map +0 -1
- package/dist/ensure-sources-OJUBGX6Z.js.map +0 -1
- package/dist/open-library-67FSSQWE.js +0 -13
- package/dist/paths-FKKGS6BA.js +0 -4
- package/dist/plugin-store-IZ5SCRAV.js.map +0 -1
- package/dist/setup-J7CYEQOF.js.map +0 -1
- package/dist/skills-CRL3VJNN.js +0 -7
- package/dist/store-client-AEI6Y3KD.js +0 -14
- /package/dist/{base-assets → factory-assets}/connectors/deploy.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/deploy.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/devserver.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/devserver.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/adapter.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine/engine.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine/flow-manifest.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine/index.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine/loader.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine/types.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/index.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/prompt-fragments.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/run-flow.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/stimulus-driver.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/git.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/git.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/gmail.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/gmail.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/googledrive.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/googledrive.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/local.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/local.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/mattermost.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/mattermost.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/memory.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/memory.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/minio.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/minio.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/postgres.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/postgres.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/s3.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/s3.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/sharepoint.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/sharepoint.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/sqlite.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/sqlite.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/static-server.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/static-server.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/tunnel.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/tunnel.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/webdav.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/webdav.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/xstate-store.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/xstate-store.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/xstate.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/xstate.js.map +0 -0
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { AssetKindRegistryFrozenError, AssetKindConflictError, AssetKindPatternConflictError, AssetKindPathAmbiguityError } from './chunk-OKRUTSG7.js';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { decodeSkaileManifest, SKAILE_MANIFEST_FILENAME } from './chunk-IERB3UXJ.js';
|
|
3
|
+
import { parseFrontmatter } from './chunk-2FS4FPZ7.js';
|
|
4
|
+
import { isValidAssetName } from './chunk-IEJ5IOC3.js';
|
|
5
|
+
import { validatePersona, validateRuleset, validateSkill, validateAgent, validateConnector, validateMcpServer, validateContract, validatePrompt, validatePreset } from './chunk-QDJKE557.js';
|
|
4
6
|
import * as fs from 'fs';
|
|
5
7
|
import * as path from 'path';
|
|
6
8
|
import * as z from 'zod';
|
|
@@ -481,8 +483,14 @@ var SyncConfigSchema = z.object({
|
|
|
481
483
|
path: ["poll_interval"]
|
|
482
484
|
});
|
|
483
485
|
var AssetEntrySchema = z.object({
|
|
484
|
-
/**
|
|
486
|
+
/** Asset root directory, relative to the repo. Files are resolved under it. */
|
|
485
487
|
path: z.string().min(1),
|
|
488
|
+
/**
|
|
489
|
+
* Optional recursive root. When set (and `files` absent), the asset spans
|
|
490
|
+
* every file under `<path>` (walked recursively). Mirrors the
|
|
491
|
+
* `skaile.manifest.yaml` `root:` form via `manifestToSourceConfig`.
|
|
492
|
+
*/
|
|
493
|
+
root: z.string().min(1).optional(),
|
|
486
494
|
/** Asset kind — validated against `IAssetKindRegistry` at discovery time. */
|
|
487
495
|
kind: z.string().min(1),
|
|
488
496
|
/** Publisher namespace. Required per entry; overrides publisher_default / _overrides. */
|
|
@@ -496,12 +504,19 @@ var AssetEntrySchema = z.object({
|
|
|
496
504
|
* Optional on write, REQUIRED on Catalog publish (Phase 4).
|
|
497
505
|
*/
|
|
498
506
|
sha256: z.string().regex(/^[a-f0-9]{64}$/, "sha256 must be 64-character hex").optional(),
|
|
499
|
-
/**
|
|
500
|
-
|
|
507
|
+
/**
|
|
508
|
+
* Curated file filter (paths relative to `path:`). At least one entry when
|
|
509
|
+
* present. Optional: a `root`-only entry omits it and is materialised by a
|
|
510
|
+
* recursive walk at discovery time.
|
|
511
|
+
*/
|
|
512
|
+
files: z.array(z.string().min(1)).min(1).optional(),
|
|
501
513
|
/** Author-declared requires-graph entries. */
|
|
502
514
|
requires: z.array(z.string().min(1)).default([]),
|
|
503
515
|
/** Optional passthrough to `AssetDefinition.manifest`. */
|
|
504
516
|
metadata: z.record(z.string(), z.unknown()).optional()
|
|
517
|
+
}).refine((a) => a.root !== void 0 || a.files !== void 0, {
|
|
518
|
+
message: "asset entry must declare either `root` or `files`",
|
|
519
|
+
path: ["files"]
|
|
505
520
|
});
|
|
506
521
|
var SourceConfigSchema = z.object({
|
|
507
522
|
/** Schema version. `1` (glob mode) or `2` (allows `assets:` block). */
|
|
@@ -580,6 +595,91 @@ function collectWarnings(config) {
|
|
|
580
595
|
}
|
|
581
596
|
return warnings;
|
|
582
597
|
}
|
|
598
|
+
function atPublisher(publisher) {
|
|
599
|
+
return publisher.startsWith("@") ? publisher : `@${publisher}`;
|
|
600
|
+
}
|
|
601
|
+
function derivePublisherFromPath(p) {
|
|
602
|
+
const seg = p.split("/").find((s) => s.length > 0 && s !== ".");
|
|
603
|
+
return seg ? `@${seg}` : "@unknown";
|
|
604
|
+
}
|
|
605
|
+
function manifestFilesToStrings(files) {
|
|
606
|
+
if (!Array.isArray(files) || files.length === 0) return void 0;
|
|
607
|
+
const out = files.map((f) => typeof f === "string" ? f : f.path).filter((p) => p.length > 0);
|
|
608
|
+
return out.length > 0 ? out : void 0;
|
|
609
|
+
}
|
|
610
|
+
function manifestEntryMetadata(a, manifest) {
|
|
611
|
+
const meta = {};
|
|
612
|
+
if (a.description !== void 0) meta.description = a.description;
|
|
613
|
+
if (a.keywords !== void 0) meta.keywords = a.keywords;
|
|
614
|
+
if (a.category !== void 0) meta.category = a.category;
|
|
615
|
+
const license = a.license ?? manifest.license;
|
|
616
|
+
if (license !== void 0) meta.license = license;
|
|
617
|
+
const homepage = a.homepage ?? manifest.homepage;
|
|
618
|
+
if (homepage !== void 0) meta.homepage = homepage;
|
|
619
|
+
return Object.keys(meta).length > 0 ? meta : void 0;
|
|
620
|
+
}
|
|
621
|
+
function adaptManifestAssetEntry(a, manifest) {
|
|
622
|
+
const root = typeof a.root === "string" && a.root.length > 0 ? a.root : void 0;
|
|
623
|
+
const assetPath = root ?? ".";
|
|
624
|
+
const files = root ? void 0 : manifestFilesToStrings(a.files);
|
|
625
|
+
const publisher = a.publisher ? atPublisher(a.publisher) : manifest.publisher ? atPublisher(manifest.publisher) : derivePublisherFromPath(assetPath);
|
|
626
|
+
const entry = {
|
|
627
|
+
path: assetPath,
|
|
628
|
+
kind: a.kind,
|
|
629
|
+
publisher,
|
|
630
|
+
name: a.name,
|
|
631
|
+
version: a.version ?? manifest.version ?? "0.1.0",
|
|
632
|
+
requires: a.dependencies ?? []
|
|
633
|
+
};
|
|
634
|
+
if (root) entry.root = root;
|
|
635
|
+
if (files) entry.files = files;
|
|
636
|
+
if (a.sha256) entry.sha256 = a.sha256;
|
|
637
|
+
const metadata = manifestEntryMetadata(a, manifest);
|
|
638
|
+
if (metadata) entry.metadata = metadata;
|
|
639
|
+
return entry;
|
|
640
|
+
}
|
|
641
|
+
function manifestToSourceConfig(manifest) {
|
|
642
|
+
const publisherDefault = manifest.publisher ? atPublisher(manifest.publisher) : "@<domain>";
|
|
643
|
+
const devPaths = manifest.dev_paths ?? [];
|
|
644
|
+
if (!manifest.assets || manifest.assets.length === 0) {
|
|
645
|
+
return {
|
|
646
|
+
version: 1,
|
|
647
|
+
publisher_default: publisherDefault,
|
|
648
|
+
default_ref: "main",
|
|
649
|
+
publisher_overrides: [],
|
|
650
|
+
dev_paths: devPaths
|
|
651
|
+
};
|
|
652
|
+
}
|
|
653
|
+
return {
|
|
654
|
+
version: 2,
|
|
655
|
+
publisher_default: publisherDefault,
|
|
656
|
+
default_ref: "main",
|
|
657
|
+
publisher_overrides: [],
|
|
658
|
+
dev_paths: devPaths,
|
|
659
|
+
assets: manifest.assets.map((a) => adaptManifestAssetEntry(a, manifest))
|
|
660
|
+
};
|
|
661
|
+
}
|
|
662
|
+
function decodeManifestSourceConfig(text) {
|
|
663
|
+
const { manifest, diagnostics } = decodeSkaileManifest(text);
|
|
664
|
+
const fatal = diagnostics.filter((d) => d.severity === "error");
|
|
665
|
+
if (fatal.length > 0) {
|
|
666
|
+
return {
|
|
667
|
+
ok: false,
|
|
668
|
+
errors: fatal.map((d) => ({ path: d.path ?? "", message: d.message }))
|
|
669
|
+
};
|
|
670
|
+
}
|
|
671
|
+
return { ok: true, config: manifestToSourceConfig(manifest) };
|
|
672
|
+
}
|
|
673
|
+
function readManifestSourceConfig(dir) {
|
|
674
|
+
const filePath = path.join(dir, SKAILE_MANIFEST_FILENAME);
|
|
675
|
+
if (!fs.existsSync(filePath)) return void 0;
|
|
676
|
+
try {
|
|
677
|
+
const result = decodeManifestSourceConfig(fs.readFileSync(filePath, "utf-8"));
|
|
678
|
+
return result.ok ? result.config : void 0;
|
|
679
|
+
} catch {
|
|
680
|
+
return void 0;
|
|
681
|
+
}
|
|
682
|
+
}
|
|
583
683
|
function mergeSourceConfigs(base, overlay) {
|
|
584
684
|
if (!base && !overlay) return void 0;
|
|
585
685
|
if (!overlay) return base;
|
|
@@ -638,11 +738,11 @@ function loadMergedSourceConfig(rootPath, sidecarPath) {
|
|
|
638
738
|
return warnings.length > 0 ? { ok: true, config: merged, warnings } : { ok: true, config: merged };
|
|
639
739
|
}
|
|
640
740
|
function loadSourceConfigFromDir(dir) {
|
|
641
|
-
const filePath = path.join(dir,
|
|
741
|
+
const filePath = path.join(dir, SKAILE_MANIFEST_FILENAME);
|
|
642
742
|
if (!fs.existsSync(filePath)) return void 0;
|
|
643
743
|
try {
|
|
644
744
|
const text = fs.readFileSync(filePath, "utf-8");
|
|
645
|
-
return
|
|
745
|
+
return decodeManifestSourceConfig(text);
|
|
646
746
|
} catch (err) {
|
|
647
747
|
return {
|
|
648
748
|
ok: false,
|
|
@@ -718,10 +818,18 @@ function processEntry(rootPath, entry, registry) {
|
|
|
718
818
|
const errors = [];
|
|
719
819
|
const assetRoot = path.resolve(rootPath, entry.path);
|
|
720
820
|
const assetRootRelative = entry.path;
|
|
721
|
-
const
|
|
821
|
+
const files = entry.files ?? expandRootFiles(assetRoot);
|
|
822
|
+
if (entry.files === void 0 && files.length === 0) {
|
|
823
|
+
errors.push({
|
|
824
|
+
path: assetRootRelative,
|
|
825
|
+
error: `ManifestFileMissing: root "${entry.root ?? entry.path}" contains no files`
|
|
826
|
+
});
|
|
827
|
+
return { asset: null, errors };
|
|
828
|
+
}
|
|
829
|
+
const manifestFileRel = pickManifestFile(entry.path, files, entry.kind, registry);
|
|
722
830
|
const manifestAbsPath = path.join(assetRoot, manifestFileRel);
|
|
723
831
|
const missing = [];
|
|
724
|
-
for (const file of
|
|
832
|
+
for (const file of files) {
|
|
725
833
|
if (!fs.existsSync(path.join(assetRoot, file))) {
|
|
726
834
|
missing.push(file);
|
|
727
835
|
}
|
|
@@ -757,7 +865,7 @@ function processEntry(rootPath, entry, registry) {
|
|
|
757
865
|
}
|
|
758
866
|
const { sha256: computedHash, missing: hashMissing } = computeDeterministicHashDetailed(
|
|
759
867
|
assetRoot,
|
|
760
|
-
|
|
868
|
+
files
|
|
761
869
|
);
|
|
762
870
|
if (hashMissing.length > 0) {
|
|
763
871
|
errors.push({
|
|
@@ -800,7 +908,7 @@ function processEntry(rootPath, entry, registry) {
|
|
|
800
908
|
relativePath: path.join(assetRootRelative, manifestFileRel).replace(/\\/g, "/"),
|
|
801
909
|
fileFilter: {
|
|
802
910
|
assetRoot,
|
|
803
|
-
files: [...
|
|
911
|
+
files: [...files].sort()
|
|
804
912
|
},
|
|
805
913
|
sha256: computedHash,
|
|
806
914
|
requires
|
|
@@ -818,26 +926,49 @@ var MANIFEST_FILENAMES = /* @__PURE__ */ new Set([
|
|
|
818
926
|
"RULESET.md"
|
|
819
927
|
]);
|
|
820
928
|
var MANIFEST_SUFFIXES = [".flow.yaml", ".flow.json", ".prompt.md", ".preset.yaml"];
|
|
821
|
-
function pickManifestFile(
|
|
822
|
-
const provider = registry.getProvider(
|
|
929
|
+
function pickManifestFile(assetPath, files, kind, registry) {
|
|
930
|
+
const provider = registry.getProvider(kind);
|
|
823
931
|
if (provider) {
|
|
824
|
-
for (const file of
|
|
825
|
-
if (provider.matchesPath(path.join(
|
|
932
|
+
for (const file of files) {
|
|
933
|
+
if (provider.matchesPath(path.join(assetPath, file).replace(/\\/g, "/"))) {
|
|
826
934
|
return file;
|
|
827
935
|
}
|
|
828
936
|
}
|
|
829
937
|
}
|
|
830
|
-
for (const file of
|
|
938
|
+
for (const file of files) {
|
|
831
939
|
if (MANIFEST_FILENAMES.has(path.basename(file))) return file;
|
|
832
940
|
if (MANIFEST_SUFFIXES.some((s) => file.endsWith(s))) return file;
|
|
833
941
|
}
|
|
834
|
-
return
|
|
942
|
+
return files[0];
|
|
943
|
+
}
|
|
944
|
+
function expandRootFiles(assetRoot) {
|
|
945
|
+
const out = [];
|
|
946
|
+
const walk = (absDir, relDir) => {
|
|
947
|
+
let entries;
|
|
948
|
+
try {
|
|
949
|
+
entries = fs.readdirSync(absDir, { withFileTypes: true });
|
|
950
|
+
} catch {
|
|
951
|
+
return;
|
|
952
|
+
}
|
|
953
|
+
for (const e of entries.sort((a, b) => a.name < b.name ? -1 : 1)) {
|
|
954
|
+
const rel = relDir ? `${relDir}/${e.name}` : e.name;
|
|
955
|
+
if (e.isDirectory()) {
|
|
956
|
+
if (e.name === ".git" || e.name === "node_modules" || e.name === ".skaile") continue;
|
|
957
|
+
walk(path.join(absDir, e.name), rel);
|
|
958
|
+
} else if (e.isFile()) {
|
|
959
|
+
out.push(rel);
|
|
960
|
+
}
|
|
961
|
+
}
|
|
962
|
+
};
|
|
963
|
+
walk(assetRoot, "");
|
|
964
|
+
return out;
|
|
835
965
|
}
|
|
836
966
|
function parseManifest(absPath) {
|
|
837
967
|
try {
|
|
838
968
|
const content = fs.readFileSync(absPath, "utf-8");
|
|
839
969
|
if (absPath.endsWith(".md")) {
|
|
840
970
|
const { data } = parseFrontmatter(content);
|
|
971
|
+
if (!data || Object.keys(data).length === 0) return null;
|
|
841
972
|
return data;
|
|
842
973
|
}
|
|
843
974
|
if (absPath.endsWith(".yaml") || absPath.endsWith(".yml")) {
|
|
@@ -927,7 +1058,7 @@ function discoverAssetsInTree(rootPath, optionsOrSourceConfig) {
|
|
|
927
1058
|
}
|
|
928
1059
|
const publisher = resolvePublisher(relativePath, sourceConfig);
|
|
929
1060
|
const name = deriveName(relativePath, kind, manifest);
|
|
930
|
-
const version =
|
|
1061
|
+
const version = coerceVersion(manifest.version);
|
|
931
1062
|
const ref = `${publisher}/${name}@${version}`;
|
|
932
1063
|
const fileFilter = registry.defaultFileFilter(kind, absPath) ?? {
|
|
933
1064
|
assetRoot: path.dirname(absPath),
|
|
@@ -985,6 +1116,7 @@ function parseManifest2(absPath) {
|
|
|
985
1116
|
const content = fs.readFileSync(absPath, "utf-8");
|
|
986
1117
|
if (absPath.endsWith(".md")) {
|
|
987
1118
|
const { data } = parseFrontmatter(content);
|
|
1119
|
+
if (!data || Object.keys(data).length === 0) return null;
|
|
988
1120
|
return data;
|
|
989
1121
|
}
|
|
990
1122
|
if (absPath.endsWith(".yaml") || absPath.endsWith(".yml")) {
|
|
@@ -1019,8 +1151,13 @@ function resolvePublisher(relativePath, sourceConfig) {
|
|
|
1019
1151
|
}
|
|
1020
1152
|
return template;
|
|
1021
1153
|
}
|
|
1154
|
+
function coerceVersion(version) {
|
|
1155
|
+
if (typeof version === "string") return version;
|
|
1156
|
+
if (typeof version === "number") return String(version);
|
|
1157
|
+
return "0.1.0";
|
|
1158
|
+
}
|
|
1022
1159
|
function deriveName(relativePath, kind, manifest) {
|
|
1023
|
-
if (typeof manifest.name === "string" && manifest.name.length > 0) {
|
|
1160
|
+
if (typeof manifest.name === "string" && manifest.name.length > 0 && isValidAssetName(manifest.name)) {
|
|
1024
1161
|
return manifest.name;
|
|
1025
1162
|
}
|
|
1026
1163
|
const parts = relativePath.split("/");
|
|
@@ -1119,7 +1256,7 @@ async function discoverAssetsInTreeEntries(entries, options) {
|
|
|
1119
1256
|
}
|
|
1120
1257
|
const publisher = resolvePublisher2(relativePath, resolvedSourceConfig);
|
|
1121
1258
|
const name = deriveName2(relativePath, kind, manifest);
|
|
1122
|
-
const version =
|
|
1259
|
+
const version = coerceVersion2(manifest.version);
|
|
1123
1260
|
const ref = `${publisher}/${name}@${version}`;
|
|
1124
1261
|
const fileFilter = computeFileFilter(kind, relativePath, blobByPath);
|
|
1125
1262
|
let sha256;
|
|
@@ -1158,6 +1295,7 @@ function parseManifestText(relativePath, text) {
|
|
|
1158
1295
|
try {
|
|
1159
1296
|
if (relativePath.endsWith(".md")) {
|
|
1160
1297
|
const { data } = parseFrontmatter(text);
|
|
1298
|
+
if (!data || Object.keys(data).length === 0) return null;
|
|
1161
1299
|
return data;
|
|
1162
1300
|
}
|
|
1163
1301
|
if (relativePath.endsWith(".yaml") || relativePath.endsWith(".yml")) {
|
|
@@ -1192,8 +1330,13 @@ function resolvePublisher2(relativePath, sourceConfig) {
|
|
|
1192
1330
|
}
|
|
1193
1331
|
return template;
|
|
1194
1332
|
}
|
|
1333
|
+
function coerceVersion2(version) {
|
|
1334
|
+
if (typeof version === "string") return version;
|
|
1335
|
+
if (typeof version === "number") return String(version);
|
|
1336
|
+
return "0.1.0";
|
|
1337
|
+
}
|
|
1195
1338
|
function deriveName2(relativePath, kind, manifest) {
|
|
1196
|
-
if (typeof manifest.name === "string" && manifest.name.length > 0) {
|
|
1339
|
+
if (typeof manifest.name === "string" && manifest.name.length > 0 && isValidAssetName(manifest.name)) {
|
|
1197
1340
|
return manifest.name;
|
|
1198
1341
|
}
|
|
1199
1342
|
const parts = relativePath.split("/");
|
|
@@ -1335,11 +1478,11 @@ async function fetchAsBuffer(fetchBlob, sha) {
|
|
|
1335
1478
|
}
|
|
1336
1479
|
async function resolveSourceConfigFromTree(explicit, blobByPath, fetchBlob) {
|
|
1337
1480
|
if (explicit) return explicit;
|
|
1338
|
-
const entry = blobByPath.get(
|
|
1481
|
+
const entry = blobByPath.get(SKAILE_MANIFEST_FILENAME);
|
|
1339
1482
|
if (!entry) return void 0;
|
|
1340
1483
|
const bytes = await fetchAsBuffer(fetchBlob, entry.sha);
|
|
1341
1484
|
if (!bytes) return void 0;
|
|
1342
|
-
const result =
|
|
1485
|
+
const result = decodeManifestSourceConfig(bytes.toString("utf-8"));
|
|
1343
1486
|
return result.ok ? result.config : void 0;
|
|
1344
1487
|
}
|
|
1345
1488
|
async function discoverFromManifestTree(sourceConfig, blobByPath, fetchBlob, registry, includeDev = false) {
|
|
@@ -1366,8 +1509,16 @@ async function discoverFromManifestTree(sourceConfig, blobByPath, fetchBlob, reg
|
|
|
1366
1509
|
async function processManifestEntryTree(entry, blobByPath, fetchBlob, registry) {
|
|
1367
1510
|
const errors = [];
|
|
1368
1511
|
const assetRootRelative = entry.path;
|
|
1512
|
+
const files = entry.files ?? expandRootFilesTree(entry.path, blobByPath);
|
|
1513
|
+
if (entry.files === void 0 && files.length === 0) {
|
|
1514
|
+
errors.push({
|
|
1515
|
+
path: assetRootRelative,
|
|
1516
|
+
error: `ManifestFileMissing: root "${entry.root ?? entry.path}" contains no files`
|
|
1517
|
+
});
|
|
1518
|
+
return { asset: null, errors };
|
|
1519
|
+
}
|
|
1369
1520
|
const missing = [];
|
|
1370
|
-
for (const file of
|
|
1521
|
+
for (const file of files) {
|
|
1371
1522
|
const full = joinPosix(entry.path, file);
|
|
1372
1523
|
if (!blobByPath.has(full)) missing.push(file);
|
|
1373
1524
|
}
|
|
@@ -1378,7 +1529,7 @@ async function processManifestEntryTree(entry, blobByPath, fetchBlob, registry)
|
|
|
1378
1529
|
});
|
|
1379
1530
|
return { asset: null, errors };
|
|
1380
1531
|
}
|
|
1381
|
-
const manifestFileRel = pickManifestFileTree(entry, registry);
|
|
1532
|
+
const manifestFileRel = pickManifestFileTree(entry.path, files, entry.kind, registry);
|
|
1382
1533
|
const manifestFull = joinPosix(entry.path, manifestFileRel);
|
|
1383
1534
|
const manifestEntry = blobByPath.get(manifestFull);
|
|
1384
1535
|
let manifestBytes;
|
|
@@ -1422,7 +1573,7 @@ async function processManifestEntryTree(entry, blobByPath, fetchBlob, registry)
|
|
|
1422
1573
|
}
|
|
1423
1574
|
let computedHash;
|
|
1424
1575
|
try {
|
|
1425
|
-
computedHash = await computeManifestHashTree(entry, blobByPath, fetchBlob);
|
|
1576
|
+
computedHash = await computeManifestHashTree(entry.path, files, blobByPath, fetchBlob);
|
|
1426
1577
|
} catch (err) {
|
|
1427
1578
|
errors.push({
|
|
1428
1579
|
path: assetRootRelative,
|
|
@@ -1464,7 +1615,7 @@ async function processManifestEntryTree(entry, blobByPath, fetchBlob, registry)
|
|
|
1464
1615
|
relativePath: manifestFull,
|
|
1465
1616
|
fileFilter: {
|
|
1466
1617
|
assetRoot: entry.path,
|
|
1467
|
-
files: [...
|
|
1618
|
+
files: [...files].sort()
|
|
1468
1619
|
},
|
|
1469
1620
|
sha256: computedHash,
|
|
1470
1621
|
requires
|
|
@@ -1482,25 +1633,38 @@ var MANIFEST_FILENAMES2 = /* @__PURE__ */ new Set([
|
|
|
1482
1633
|
"RULESET.md"
|
|
1483
1634
|
]);
|
|
1484
1635
|
var MANIFEST_SUFFIXES2 = [".flow.yaml", ".flow.json", ".prompt.md", ".preset.yaml"];
|
|
1485
|
-
function pickManifestFileTree(
|
|
1486
|
-
const provider = registry.getProvider(
|
|
1636
|
+
function pickManifestFileTree(assetPath, files, kind, registry) {
|
|
1637
|
+
const provider = registry.getProvider(kind);
|
|
1487
1638
|
if (provider) {
|
|
1488
|
-
for (const file of
|
|
1489
|
-
if (provider.matchesPath(joinPosix(
|
|
1639
|
+
for (const file of files) {
|
|
1640
|
+
if (provider.matchesPath(joinPosix(assetPath, file))) return file;
|
|
1490
1641
|
}
|
|
1491
1642
|
}
|
|
1492
|
-
for (const file of
|
|
1643
|
+
for (const file of files) {
|
|
1493
1644
|
const base = file.split("/").pop() ?? file;
|
|
1494
1645
|
if (MANIFEST_FILENAMES2.has(base)) return file;
|
|
1495
1646
|
if (MANIFEST_SUFFIXES2.some((s) => file.endsWith(s))) return file;
|
|
1496
1647
|
}
|
|
1497
|
-
return
|
|
1648
|
+
return files[0];
|
|
1498
1649
|
}
|
|
1499
|
-
|
|
1650
|
+
function expandRootFilesTree(assetPath, blobByPath) {
|
|
1651
|
+
const out = [];
|
|
1652
|
+
const root = assetPath === "." ? "" : assetPath;
|
|
1653
|
+
for (const blobPath of blobByPath.keys()) {
|
|
1654
|
+
if (!isInDir(blobPath, root)) continue;
|
|
1655
|
+
const rel = root === "" ? blobPath : blobPath.slice(root.length + 1);
|
|
1656
|
+
if (rel.startsWith(".git/") || rel.startsWith("node_modules/") || rel.startsWith(".skaile/") || rel.includes("/.git/") || rel.includes("/node_modules/") || rel.includes("/.skaile/")) {
|
|
1657
|
+
continue;
|
|
1658
|
+
}
|
|
1659
|
+
out.push(rel);
|
|
1660
|
+
}
|
|
1661
|
+
return out.sort();
|
|
1662
|
+
}
|
|
1663
|
+
async function computeManifestHashTree(assetPath, files, blobByPath, fetchBlob) {
|
|
1500
1664
|
const hash = crypto.createHash("sha256");
|
|
1501
|
-
const sorted = [...
|
|
1665
|
+
const sorted = [...files].sort();
|
|
1502
1666
|
for (const file of sorted) {
|
|
1503
|
-
const full = joinPosix(
|
|
1667
|
+
const full = joinPosix(assetPath, file);
|
|
1504
1668
|
const blob = blobByPath.get(full);
|
|
1505
1669
|
if (!blob) continue;
|
|
1506
1670
|
hash.update(file);
|
|
@@ -1523,6 +1687,6 @@ function validateRequiresSyntax2(requires) {
|
|
|
1523
1687
|
// discovery/src/index.ts
|
|
1524
1688
|
var VERSION = "0.0.0";
|
|
1525
1689
|
|
|
1526
|
-
export { AssetKindRegistry, BUILTIN_PROVIDERS, SEMVER_RE, SourceConfigSchema, VERSION, agentProvider, buildRequiresGraph, computeDeterministicHash, computeDeterministicHashDetailed, connectorProvider, contractProvider, createDefaultRegistry, detectCycles, discoverAssetsInTree, discoverAssetsInTreeEntries, discoverFromManifest, extractRequires, isExcludedDevPath, isManifestMode, loadMergedSourceConfig, loadSourceConfig, mcpServerProvider, mergeSourceConfigs, parseSourceConfig, personaProvider, presetProvider, promptProvider, rulesetProvider, skillProvider, validateSourceConfig };
|
|
1527
|
-
//# sourceMappingURL=chunk-
|
|
1528
|
-
//# sourceMappingURL=chunk-
|
|
1690
|
+
export { AssetKindRegistry, BUILTIN_PROVIDERS, SEMVER_RE, SourceConfigSchema, VERSION, agentProvider, buildRequiresGraph, computeDeterministicHash, computeDeterministicHashDetailed, connectorProvider, contractProvider, createDefaultRegistry, decodeManifestSourceConfig, detectCycles, discoverAssetsInTree, discoverAssetsInTreeEntries, discoverFromManifest, extractRequires, isExcludedDevPath, isManifestMode, loadMergedSourceConfig, loadSourceConfig, manifestToSourceConfig, mcpServerProvider, mergeSourceConfigs, parseSourceConfig, personaProvider, presetProvider, promptProvider, readManifestSourceConfig, rulesetProvider, skillProvider, validateSourceConfig };
|
|
1691
|
+
//# sourceMappingURL=chunk-JIQLLZ65.js.map
|
|
1692
|
+
//# sourceMappingURL=chunk-JIQLLZ65.js.map
|