@skaile/workspaces 0.25.0 → 0.27.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 +271 -0
- package/README.md +2 -2
- package/dist/{asset-feeds-77KLWCBP.js → asset-feeds-DGZO27M7.js} +20 -12
- package/dist/asset-feeds-DGZO27M7.js.map +1 -0
- package/dist/asset-manager/index.js +12 -11
- package/dist/asset-manager/installer.js +11 -10
- 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/continue.d.ts +2 -0
- package/dist/bridge/drivers/continue.js +103 -0
- package/dist/bridge/drivers/continue.js.map +1 -0
- package/dist/bridge/drivers/echo.js +1 -1
- package/dist/bridge/drivers/gemini.d.ts +2 -0
- package/dist/bridge/drivers/gemini.js +10 -0
- package/dist/bridge/drivers/gemini.js.map +1 -0
- package/dist/bridge/drivers/goose.d.ts +2 -0
- package/dist/bridge/drivers/goose.js +88 -0
- package/dist/bridge/drivers/goose.js.map +1 -0
- package/dist/bridge/drivers/omp.js +64 -50
- package/dist/bridge/drivers/omp.js.map +1 -1
- package/dist/bridge/drivers/opencode.d.ts +2 -0
- package/dist/bridge/drivers/opencode.js +99 -0
- package/dist/bridge/drivers/opencode.js.map +1 -0
- package/dist/bridge/drivers/qwen.d.ts +2 -0
- package/dist/bridge/drivers/qwen.js +57 -0
- package/dist/bridge/drivers/qwen.js.map +1 -0
- package/dist/bridge/index.js +4 -4
- package/dist/bridge/src/drivers/_subprocess-cli.d.ts +136 -0
- package/dist/bridge/src/drivers/_subprocess-cli.d.ts.map +1 -0
- 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/continue.d.ts +43 -0
- package/dist/bridge/src/drivers/continue.d.ts.map +1 -0
- package/dist/bridge/src/drivers/gemini.d.ts +55 -0
- package/dist/bridge/src/drivers/gemini.d.ts.map +1 -0
- package/dist/bridge/src/drivers/goose.d.ts +42 -0
- package/dist/bridge/src/drivers/goose.d.ts.map +1 -0
- 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/drivers/opencode.d.ts +43 -0
- package/dist/bridge/src/drivers/opencode.d.ts.map +1 -0
- package/dist/bridge/src/drivers/qwen.d.ts +39 -0
- package/dist/bridge/src/drivers/qwen.d.ts.map +1 -0
- 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/registry.d.ts.map +1 -1
- package/dist/bridge/src/validation.d.ts +1 -1
- package/dist/bridge/src/validation.d.ts.map +1 -1
- package/dist/{chunk-GL45UNVS.js → chunk-2FS4FPZ7.js} +3 -3
- package/dist/{chunk-GL45UNVS.js.map → chunk-2FS4FPZ7.js.map} +1 -1
- package/dist/{chunk-4FJE6BI6.js → chunk-2NOE4AGD.js} +3 -3
- package/dist/{chunk-4FJE6BI6.js.map → chunk-2NOE4AGD.js.map} +1 -1
- package/dist/{chunk-3QTZWPGH.js → chunk-3QQSSRYN.js} +168 -90
- package/dist/chunk-3QQSSRYN.js.map +1 -0
- package/dist/{chunk-4FADEVBN.js → chunk-3ZER5DST.js} +6 -6
- package/dist/chunk-3ZER5DST.js.map +1 -0
- package/dist/chunk-5RBPPBEK.js +110 -0
- package/dist/chunk-5RBPPBEK.js.map +1 -0
- package/dist/chunk-5V5KZQIC.js +445 -0
- package/dist/chunk-5V5KZQIC.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-B4ZXBH57.js → chunk-A4ASAIKK.js} +59 -13
- package/dist/chunk-A4ASAIKK.js.map +1 -0
- package/dist/{chunk-M5TE6YI5.js → chunk-AKSR434V.js} +10 -52
- package/dist/chunk-AKSR434V.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-FJFHJBGS.js → chunk-BUL5H6J7.js} +9 -9
- package/dist/chunk-BUL5H6J7.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-SETTLPBD.js → chunk-DGM74UP4.js} +3 -3
- package/dist/{chunk-SETTLPBD.js.map → chunk-DGM74UP4.js.map} +1 -1
- package/dist/{chunk-UD4ZLXGS.js → chunk-FWHOU3CX.js} +67 -35
- package/dist/chunk-FWHOU3CX.js.map +1 -0
- package/dist/{chunk-WSZAFRQL.js → chunk-GYPA2Q7F.js} +6 -5
- package/dist/chunk-GYPA2Q7F.js.map +1 -0
- package/dist/{chunk-WIAHJOMG.js → chunk-IEJ5IOC3.js} +10 -2
- 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-KT3CK26V.js → chunk-JIQLLZ65.js} +203 -39
- package/dist/chunk-JIQLLZ65.js.map +1 -0
- package/dist/{chunk-XVL22AWE.js → chunk-M4KLIEIJ.js} +114 -63
- package/dist/chunk-M4KLIEIJ.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-BJWUSHC4.js → chunk-MZDXEFXF.js} +30 -20
- package/dist/chunk-MZDXEFXF.js.map +1 -0
- 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-NELZIQ2E.js → chunk-QDJKE557.js} +20 -3
- package/dist/chunk-QDJKE557.js.map +1 -0
- package/dist/{chunk-QXC62DOF.js → chunk-SF4GWVR5.js} +21 -9
- package/dist/chunk-SF4GWVR5.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-4QVFQEY2.js → chunk-UAW7VRAL.js} +2 -2
- package/dist/{chunk-4QVFQEY2.js.map → chunk-UAW7VRAL.js.map} +1 -1
- package/dist/chunk-UBCZVONU.js +28 -0
- package/dist/chunk-UBCZVONU.js.map +1 -0
- package/dist/{chunk-2XY6732A.js → chunk-UIZKIUC6.js} +6 -6
- package/dist/chunk-UIZKIUC6.js.map +1 -0
- package/dist/{chunk-ICS76R4T.js → chunk-W7W66MDZ.js} +10 -8
- package/dist/chunk-W7W66MDZ.js.map +1 -0
- package/dist/{chunk-DCAWIRD6.js → chunk-WRRYESHC.js} +152 -187
- package/dist/chunk-WRRYESHC.js.map +1 -0
- package/dist/{chunk-XMP6XTMF.js → chunk-XHBPQ7QP.js} +450 -207
- package/dist/chunk-XHBPQ7QP.js.map +1 -0
- package/dist/chunk-Z3XXKR5E.js +88 -0
- package/dist/chunk-Z3XXKR5E.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-6VTG73UY.js → chunk-ZEKWHJBB.js} +52 -2
- package/dist/chunk-ZEKWHJBB.js.map +1 -0
- package/dist/{chunk-GCJXPUHG.js → chunk-ZONCCO5N.js} +9 -4
- package/dist/chunk-ZONCCO5N.js.map +1 -0
- package/dist/cli/index.js +618 -482
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/src/asset-feeds.d.ts +14 -1
- package/dist/cli/src/asset-feeds.d.ts.map +1 -1
- package/dist/cli/src/commands/complete-resolvers.d.ts.map +1 -1
- package/dist/cli/src/commands/config.d.ts.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/manage.d.ts +46 -23
- package/dist/cli/src/commands/manage.d.ts.map +1 -1
- package/dist/cli/src/commands/npx.d.ts.map +1 -1
- package/dist/cli/src/commands/run.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/helpers.d.ts +10 -1
- package/dist/cli/src/helpers.d.ts.map +1 -1
- 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 +9 -8
- package/dist/connectors/index.js +14 -13
- 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 +8 -7
- 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 +8 -5
- 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 +6 -0
- 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 +19 -37
- 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 +51 -80
- 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-7MOOKY3K.js → ensure-sources-KQQEUDKM.js} +15 -13
- package/dist/ensure-sources-KQQEUDKM.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-L3GHQD7F.js} +4 -4
- package/dist/{flows-DYFTPCPM.js.map → flows-L3GHQD7F.js.map} +1 -1
- package/dist/helpers-F4NZ66VD.js +4 -0
- package/dist/{helpers-LTN3HMD3.js.map → helpers-F4NZ66VD.js.map} +1 -1
- package/dist/library/index.js +12 -10
- package/dist/library/install.d.ts +2 -0
- package/dist/library/install.js +16 -0
- package/dist/library/install.js.map +1 -0
- package/dist/library/src/install/index.d.ts +3 -0
- package/dist/library/src/install/index.d.ts.map +1 -0
- 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-I7YTADMD.js +23 -0
- package/dist/{open-library-GW7DWWNZ.js.map → open-library-I7YTADMD.js.map} +1 -1
- package/dist/paths-CE66L3AL.js +15 -0
- package/dist/{paths-FKKGS6BA.js.map → paths-CE66L3AL.js.map} +1 -1
- package/dist/{plugin-store-R32NH7JE.js → plugin-store-GL5VKYUA.js} +10 -9
- package/dist/plugin-store-GL5VKYUA.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/resource-handler.d.ts.map +1 -1
- package/dist/runner/src/resources.d.ts +1 -1
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/runner/src/workspace-migration.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +12 -11
- package/dist/sdk/bridge.js +4 -4
- package/dist/sdk/core.js +8 -7
- 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-SRPBQOHY.js → setup-4YMN2BDU.js} +14 -13
- package/dist/setup-4YMN2BDU.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-BCP5LCAZ.js +15 -0
- package/dist/{store-client-INZD2RYD.js.map → store-client-BCP5LCAZ.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/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 +194 -151
- package/dist/asset-feeds-77KLWCBP.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-2M3XTMOL.js +0 -23
- package/dist/chunk-2M3XTMOL.js.map +0 -1
- package/dist/chunk-2XY6732A.js.map +0 -1
- package/dist/chunk-3QTZWPGH.js.map +0 -1
- package/dist/chunk-4FADEVBN.js.map +0 -1
- package/dist/chunk-6VTG73UY.js.map +0 -1
- package/dist/chunk-B4ZXBH57.js.map +0 -1
- package/dist/chunk-BJWUSHC4.js.map +0 -1
- package/dist/chunk-D3VO6WNC.js.map +0 -1
- package/dist/chunk-DCAWIRD6.js.map +0 -1
- package/dist/chunk-DQWREFRQ.js.map +0 -1
- package/dist/chunk-FJFHJBGS.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-ICS76R4T.js.map +0 -1
- package/dist/chunk-JDX54X4Y.js.map +0 -1
- package/dist/chunk-KLNL7QHN.js.map +0 -1
- package/dist/chunk-KOVLSBXK.js.map +0 -1
- package/dist/chunk-KT3CK26V.js.map +0 -1
- package/dist/chunk-M5TE6YI5.js.map +0 -1
- package/dist/chunk-NELZIQ2E.js.map +0 -1
- package/dist/chunk-QAVZOJCV.js.map +0 -1
- package/dist/chunk-QXC62DOF.js.map +0 -1
- package/dist/chunk-UD4ZLXGS.js.map +0 -1
- package/dist/chunk-WIAHJOMG.js.map +0 -1
- package/dist/chunk-WSZAFRQL.js.map +0 -1
- package/dist/chunk-XMP6XTMF.js.map +0 -1
- package/dist/chunk-XVL22AWE.js.map +0 -1
- package/dist/ensure-sources-7MOOKY3K.js.map +0 -1
- package/dist/helpers-LTN3HMD3.js +0 -4
- package/dist/open-library-GW7DWWNZ.js +0 -21
- package/dist/paths-FKKGS6BA.js +0 -4
- package/dist/plugin-store-R32NH7JE.js.map +0 -1
- package/dist/setup-SRPBQOHY.js.map +0 -1
- package/dist/skills-CRL3VJNN.js +0 -7
- package/dist/store-client-INZD2RYD.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
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: webdav
|
|
3
|
+
description: "WebDAV server connector via rclone FUSE."
|
|
4
|
+
version: "0.3.0"
|
|
5
|
+
entry: ./driver.ts
|
|
6
|
+
fields:
|
|
7
|
+
- key: source
|
|
8
|
+
label: "WebDAV server URL"
|
|
9
|
+
required: true
|
|
10
|
+
sensitive: false
|
|
11
|
+
- key: auth
|
|
12
|
+
label: "Credentials (username:password or Bearer token)"
|
|
13
|
+
required: false
|
|
14
|
+
sensitive: true
|
|
15
|
+
- key: options.vendor
|
|
16
|
+
label: "WebDAV vendor (nextcloud | owncloud | sharepoint | fastmail | other). Default: other"
|
|
17
|
+
required: false
|
|
18
|
+
sensitive: false
|
|
19
|
+
- key: options.basePath
|
|
20
|
+
label: "Subfolder appended under the WebDAV URL"
|
|
21
|
+
required: false
|
|
22
|
+
sensitive: false
|
|
23
|
+
- key: options.cacheMaxSize
|
|
24
|
+
label: "rclone VFS cache size cap (e.g. '5G'). Default: 5G"
|
|
25
|
+
required: false
|
|
26
|
+
sensitive: false
|
|
27
|
+
- key: options.cacheMaxAge
|
|
28
|
+
label: "rclone VFS cache age cap (e.g. '168h'). Default: 168h"
|
|
29
|
+
required: false
|
|
30
|
+
sensitive: false
|
|
31
|
+
- key: options.vfsWriteBack
|
|
32
|
+
label: "rclone VFS write-back delay before upload (e.g. '30s', '1m'). Default: 30s"
|
|
33
|
+
required: false
|
|
34
|
+
sensitive: false
|
|
35
|
+
keywords:
|
|
36
|
+
- webdav
|
|
37
|
+
- nextcloud
|
|
38
|
+
- owncloud
|
|
39
|
+
- fastmail
|
|
40
|
+
- rclone
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## WebDAV Connector
|
|
44
|
+
|
|
45
|
+
Exposes a WebDAV server directory via rclone's FUSE backend. The driver
|
|
46
|
+
delegates the entire data plane (enumeration, download, upload, change
|
|
47
|
+
detection, cache management) to an `rclone mount` subprocess managed by
|
|
48
|
+
`RcloneProcessManager`.
|
|
49
|
+
|
|
50
|
+
### Configuration
|
|
51
|
+
|
|
52
|
+
```yaml
|
|
53
|
+
connectors:
|
|
54
|
+
- id: shared-docs
|
|
55
|
+
driver: webdav
|
|
56
|
+
access: read-write
|
|
57
|
+
auth: env:WEBDAV_CREDENTIALS
|
|
58
|
+
mount:
|
|
59
|
+
source: https://cloud.example.com/remote.php/dav/files/user
|
|
60
|
+
options:
|
|
61
|
+
vendor: nextcloud
|
|
62
|
+
basePath: Documents/project
|
|
63
|
+
cacheMaxSize: 5G
|
|
64
|
+
cacheMaxAge: 168h
|
|
65
|
+
vfsWriteBack: 30s
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
`vfsWriteBack` controls rclone's `--vfs-write-back` — how long a dirty file
|
|
69
|
+
sits before upload. Default raised from 5s to 30s so a rapidly-rewritten file
|
|
70
|
+
settles before transfer instead of aborting with `sizes differ`.
|
|
71
|
+
|
|
72
|
+
`mount.source` is the WebDAV endpoint URL. `basePath` is an optional subfolder
|
|
73
|
+
appended to that URL when constructing the rclone remote.
|
|
74
|
+
|
|
75
|
+
### NextCloud / ownCloud
|
|
76
|
+
|
|
77
|
+
NextCloud and ownCloud expose a standard WebDAV endpoint at
|
|
78
|
+
`https://<host>/remote.php/dav/files/<username>`. Set `vendor: nextcloud`
|
|
79
|
+
(or `owncloud`) so rclone uses the right quirks.
|
|
80
|
+
|
|
81
|
+
```yaml
|
|
82
|
+
connectors:
|
|
83
|
+
- id: nextcloud-docs
|
|
84
|
+
driver: webdav
|
|
85
|
+
access: read-write
|
|
86
|
+
auth: env:NEXTCLOUD_CREDENTIALS
|
|
87
|
+
mount:
|
|
88
|
+
source: https://nextcloud.example.com/remote.php/dav/files/alice
|
|
89
|
+
options:
|
|
90
|
+
vendor: nextcloud
|
|
91
|
+
basePath: Documents/project
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Authentication
|
|
95
|
+
|
|
96
|
+
The `auth` field resolves to one of:
|
|
97
|
+
- `username:password` -- Basic/Digest authentication. The first colon
|
|
98
|
+
separates the two parts; passwords containing colons are preserved.
|
|
99
|
+
- A bare token string -- Bearer token authentication (OAuth WebDAV).
|
|
100
|
+
- Empty / undefined -- anonymous WebDAV (no auth header).
|
|
101
|
+
|
|
102
|
+
Plaintext passwords are passed through `rclone obscure` before being written
|
|
103
|
+
into the rclone config — rclone's `pass` field is not plaintext.
|
|
104
|
+
|
|
105
|
+
### Implementation: rclone FUSE
|
|
106
|
+
|
|
107
|
+
- **mount**: Renders an `[skaile-<id>]` rclone config (webdav backend, URL +
|
|
108
|
+
vendor + obscured credentials), spawns `rclone mount` with VFS caching,
|
|
109
|
+
returns once the FUSE mountpoint is confirmed in `/proc/self/mounts`.
|
|
110
|
+
- **VFS cache mode**: `read-only` mounts use `minimal`; `read-write` uses
|
|
111
|
+
`full` so writes are buffered locally before upload.
|
|
112
|
+
- **Cache directory**: `/var/cache/skaile/<mountId>` (the parent
|
|
113
|
+
`/var/cache/skaile` is bind-mounted from the host per session).
|
|
114
|
+
- **sync**: Calls `RcloneProcessManager.flush` (POSTs `/vfs/refresh` then waits
|
|
115
|
+
for the in-use counter to reach zero).
|
|
116
|
+
- **unmount**: `RcloneProcessManager.stop` flushes, sends SIGTERM, falls back
|
|
117
|
+
to SIGKILL + `fusermount3 -u` after a 30s grace.
|
|
118
|
+
- **onHibernate / onSessionClose**: Always flush. Cheap and the right default;
|
|
119
|
+
no opt-out toggles.
|
|
120
|
+
- **Logs**: rclone subprocess JSON log lines are routed through a child
|
|
121
|
+
logger with subkind `webdav+rclone`, alongside the driver's own
|
|
122
|
+
`webdav` entries — both visible via `skaile session logs --kind mount`.
|
|
123
|
+
|
|
124
|
+
### Fleet-managed mode (Phase 7B)
|
|
125
|
+
|
|
126
|
+
When the `SKAILE_FLEET_MANAGED_MOUNTS` env var lists this mount's id, the
|
|
127
|
+
host-side `RcloneFleetService` (in the platform backend) has already
|
|
128
|
+
spawned a shared `rclone mount` process and bind-mounted its FUSE
|
|
129
|
+
mountpoint into the container at the driver's `targetDir`. The driver
|
|
130
|
+
short-circuits its own rclone spawn:
|
|
131
|
+
|
|
132
|
+
- `mount()` verifies the bind mount is live (`stat` + `readdir` poll up
|
|
133
|
+
to 3s), then returns a no-op handle with `state.fleetManaged = true`.
|
|
134
|
+
- `unmount()`, `sync()`, `onHibernate()`, `onSessionClose()` all return
|
|
135
|
+
early — the fleet owns the rclone process and is responsible for
|
|
136
|
+
flushing and teardown.
|
|
137
|
+
|
|
138
|
+
The env var is comma-separated; an empty / unset value preserves the
|
|
139
|
+
per-session behaviour described above.
|
|
@@ -14,7 +14,7 @@ import { AbstractConnector } from "@skaile/workspaces/connectors";
|
|
|
14
14
|
* Fastmail, generic) — delegates the data plane to an `rclone mount` subprocess via
|
|
15
15
|
* `RcloneProcessManager`. Supports fleet-managed mode where the host has pre-mounted
|
|
16
16
|
* the share via `SKAILE_FLEET_MANAGED_MOUNTS`.
|
|
17
|
-
* @docLink packages/
|
|
17
|
+
* @docLink packages/factory-assets/concepts#webdav-connector
|
|
18
18
|
*/
|
|
19
19
|
export declare class WebDAVConnector extends AbstractConnector {
|
|
20
20
|
readonly name = "webdav";
|
|
@@ -29,7 +29,7 @@ export declare class WebDAVConnector extends AbstractConnector {
|
|
|
29
29
|
/**
|
|
30
30
|
* Creates a new WebDAVConnector instance.
|
|
31
31
|
* @returns Configured WebDAVConnector ready to be registered in the connector registry.
|
|
32
|
-
* @docLink packages/
|
|
32
|
+
* @docLink packages/factory-assets/api-reference#webdav-connector-factory
|
|
33
33
|
*/
|
|
34
34
|
export declare function createConnector(): WebDAVConnector;
|
|
35
35
|
//# sourceMappingURL=driver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../../../factory-assets/connectors/webdav/driver.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EACV,cAAc,EACd,oBAAoB,EACpB,eAAe,EACf,cAAc,EAIf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,iBAAiB,EAQlB,MAAM,+BAA+B,CAAC;AAwBvC;;;;;;GAMG;AACH,qBAAa,eAAgB,SAAQ,iBAAiB;IACpD,QAAQ,CAAC,IAAI,YAAY;IAEzB,OAAO,CAAC,MAAM,CAA8B;IAE5C,QAAQ,CAAC,UAAU,EAAE,cAAc,CAKjC;IAEI,OAAO,CAAC,WAAW,EAAE,oBAAoB,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAsGzF,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;YAM1C,KAAK;IAwBJ,WAAW,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAOjE,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CAMpF;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,eAAe,CAEjD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export { WebDAVConnector, createConnector5 as createConnector } from '../../chunk-XHBPQ7QP.js';
|
|
2
|
+
import '../../chunk-OVRSNIKJ.js';
|
|
3
|
+
import '../../chunk-DGM74UP4.js';
|
|
4
|
+
import '../../chunk-QMONOHXT.js';
|
|
5
|
+
import '../../chunk-6E6PKKAD.js';
|
|
6
|
+
import '../../chunk-W7W66MDZ.js';
|
|
7
|
+
import '../../chunk-DEYYRFQU.js';
|
|
8
|
+
import '../../chunk-IFGTRL2I.js';
|
|
9
|
+
import '../../chunk-M4KLIEIJ.js';
|
|
10
|
+
import '../../chunk-FWHOU3CX.js';
|
|
11
|
+
import '../../chunk-3QQSSRYN.js';
|
|
12
|
+
import '../../chunk-IERB3UXJ.js';
|
|
13
|
+
import '../../chunk-2FS4FPZ7.js';
|
|
14
|
+
import '../../chunk-IEJ5IOC3.js';
|
|
15
|
+
import '../../chunk-JKNWJ64A.js';
|
|
16
|
+
import '../../chunk-O4JH3KUE.js';
|
|
17
|
+
import '../../chunk-K5GBV4SA.js';
|
|
18
|
+
import '../../chunk-ZAP2BDHG.js';
|
|
19
|
+
import '../../chunk-24UIWON4.js';
|
|
20
|
+
import '../../chunk-NSBPE2FW.js';
|
|
21
|
+
//# sourceMappingURL=webdav.js.map
|
|
22
|
+
//# sourceMappingURL=webdav.js.map
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: xstate
|
|
3
|
+
description: "Full state machine resource via XState v5"
|
|
4
|
+
version: "0.1.0"
|
|
5
|
+
entry: ./adapter.ts
|
|
6
|
+
npm_deps:
|
|
7
|
+
required:
|
|
8
|
+
- xstate
|
|
9
|
+
optional:
|
|
10
|
+
- yaml
|
|
11
|
+
fields: []
|
|
12
|
+
health_check: null
|
|
13
|
+
keywords:
|
|
14
|
+
- state-machine
|
|
15
|
+
- xstate
|
|
16
|
+
- fsm
|
|
17
|
+
- workflow
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
A state machine connector using XState v5. Provides guarded transitions,
|
|
21
|
+
entry/exit actions, context, and serializable snapshots.
|
|
22
|
+
|
|
23
|
+
Machine definitions can be provided inline via `options.machine` or loaded
|
|
24
|
+
from a YAML/JSON file via `options.definitionPath`.
|
|
25
|
+
|
|
26
|
+
## Operations
|
|
27
|
+
|
|
28
|
+
| Operation | Access | Description |
|
|
29
|
+
|-----------|--------|-------------|
|
|
30
|
+
| `get_state` | read | Get current state, context, and available transitions |
|
|
31
|
+
| `get_definition` | read | Get the machine definition |
|
|
32
|
+
| `history` | read | Get the transition history log |
|
|
33
|
+
| `can` | read | Check if a transition is currently allowed |
|
|
34
|
+
| `send` | write | Send an event to trigger a transition |
|
|
35
|
+
|
|
36
|
+
## Configuration
|
|
37
|
+
|
|
38
|
+
```yaml
|
|
39
|
+
connectors:
|
|
40
|
+
- id: approval
|
|
41
|
+
adapter: xstate
|
|
42
|
+
access: read-write
|
|
43
|
+
options:
|
|
44
|
+
machine:
|
|
45
|
+
id: approval
|
|
46
|
+
initial: draft
|
|
47
|
+
states:
|
|
48
|
+
draft:
|
|
49
|
+
on:
|
|
50
|
+
SUBMIT: review
|
|
51
|
+
review:
|
|
52
|
+
on:
|
|
53
|
+
APPROVE: approved
|
|
54
|
+
REJECT: draft
|
|
55
|
+
approved:
|
|
56
|
+
type: final
|
|
57
|
+
```
|
|
@@ -11,7 +11,7 @@ import type { ConnectContext, ConnectorDeclaration, ConnectorHandle, ToolFace }
|
|
|
11
11
|
* Connector for XState v5 state machines — drives guarded transitions, tracks history, and exposes
|
|
12
12
|
* the current state and context to agents. Machine definitions can be provided inline or loaded
|
|
13
13
|
* from a JSON/YAML file. Requires the `xstate` optional peer dependency.
|
|
14
|
-
* @docLink packages/
|
|
14
|
+
* @docLink packages/factory-assets/concepts#xstate-connector
|
|
15
15
|
*/
|
|
16
16
|
export declare class XStateConnector extends AbstractConnector {
|
|
17
17
|
readonly name = "xstate";
|
|
@@ -47,7 +47,7 @@ export declare class XStateConnector extends AbstractConnector {
|
|
|
47
47
|
/**
|
|
48
48
|
* Creates a new XStateConnector instance.
|
|
49
49
|
* @returns Configured XStateConnector ready to be registered in the connector registry.
|
|
50
|
-
* @docLink packages/
|
|
50
|
+
* @docLink packages/factory-assets/api-reference#xstate-connector-factory
|
|
51
51
|
*/
|
|
52
52
|
export declare function createConnector(): XStateConnector;
|
|
53
53
|
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../factory-assets/connectors/xstate/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,oBAAoB,EACpB,eAAe,EACf,QAAQ,EACT,MAAM,+BAA+B,CAAC;AAmBvC;;;;;GAKG;AACH,qBAAa,eAAgB,SAAQ,iBAAiB;IACpD,QAAQ,CAAC,IAAI,YAAY;IAEzB,KAAK,EAAE,QAAQ,CAAC;;IAaV,OAAO,CAAC,WAAW,EAAE,oBAAoB,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IA8E1F,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAUxD,OAAO,CAAC,CAAC;IAIT;;OAEG;IACH,eAAe,CACb,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC,GAChD,IAAI;IAIP;;OAEG;IACH,cAAc,CACZ,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAClD,IAAI;IAIP;;OAEG;IACH,aAAa,CACX,MAAM,EAAE,eAAe,EACvB,EAAE,EAAE,CAAC,QAAQ,EAAE;QAAE,KAAK,EAAE,GAAG,CAAC;QAAC,OAAO,EAAE,GAAG,CAAA;KAAE,KAAK,IAAI,GACnD,IAAI;YAMO,KAAK;YAcL,KAAK;YAkBL,OAAO;IASrB,OAAO,CAAC,mBAAmB;YA0Db,UAAU;IA+FxB,OAAO,CAAC,kBAAkB;IAS1B,0EAA0E;IAC1E,OAAO,CAAC,YAAY;CAwBrB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,eAAe,CAEjD"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: xstate-store
|
|
3
|
+
description: "Lightweight typed event store via @xstate/store"
|
|
4
|
+
version: "0.1.0"
|
|
5
|
+
entry: ./adapter.ts
|
|
6
|
+
npm_deps:
|
|
7
|
+
required:
|
|
8
|
+
- "@xstate/store"
|
|
9
|
+
optional: []
|
|
10
|
+
fields: []
|
|
11
|
+
health_check: null
|
|
12
|
+
keywords:
|
|
13
|
+
- store
|
|
14
|
+
- state
|
|
15
|
+
- xstate
|
|
16
|
+
- kv
|
|
17
|
+
- reactive
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
A lightweight event-driven store using @xstate/store. Provides a shared
|
|
21
|
+
key-value store between UI and agents with event history.
|
|
22
|
+
|
|
23
|
+
For typed/validated state machines with guards and actions, use the
|
|
24
|
+
`xstate` adapter instead.
|
|
25
|
+
|
|
26
|
+
## Operations
|
|
27
|
+
|
|
28
|
+
| Operation | Access | Description |
|
|
29
|
+
|-----------|--------|-------------|
|
|
30
|
+
| `get` | read | Get full store snapshot |
|
|
31
|
+
| `get_key` | read | Get a single value by key |
|
|
32
|
+
| `history` | read | Get event history log |
|
|
33
|
+
| `set` | write | Set a key to a value |
|
|
34
|
+
| `merge` | write | Merge an object into the store context |
|
|
35
|
+
| `reset` | write | Reset the store to initial context |
|
|
36
|
+
|
|
37
|
+
## Configuration
|
|
38
|
+
|
|
39
|
+
```yaml
|
|
40
|
+
connectors:
|
|
41
|
+
- id: app-state
|
|
42
|
+
adapter: xstate-store
|
|
43
|
+
access: read-write
|
|
44
|
+
options:
|
|
45
|
+
initial:
|
|
46
|
+
theme: dark
|
|
47
|
+
locale: en
|
|
48
|
+
```
|
|
@@ -9,7 +9,7 @@ import { AbstractConnector } from "@skaile/workspaces/connectors";
|
|
|
9
9
|
/**
|
|
10
10
|
* Connector for `@xstate/store` — a lightweight event-driven key-value store shared between agents and UI clients.
|
|
11
11
|
* Provides get, set, merge, and reset operations with an event history log. Requires the `@xstate/store` optional peer dependency.
|
|
12
|
-
* @docLink packages/
|
|
12
|
+
* @docLink packages/factory-assets/concepts#xstate-store-connector
|
|
13
13
|
*/
|
|
14
14
|
export declare class XStateStoreConnector extends AbstractConnector {
|
|
15
15
|
readonly name = "xstate-store";
|
|
@@ -35,7 +35,7 @@ export declare class XStateStoreConnector extends AbstractConnector {
|
|
|
35
35
|
/**
|
|
36
36
|
* Creates a new XStateStoreConnector instance.
|
|
37
37
|
* @returns Configured XStateStoreConnector ready to be registered in the connector registry.
|
|
38
|
-
* @docLink packages/
|
|
38
|
+
* @docLink packages/factory-assets/api-reference#xstate-store-connector-factory
|
|
39
39
|
*/
|
|
40
40
|
export declare function createConnector(): XStateStoreConnector;
|
|
41
41
|
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../factory-assets/connectors/xstate-store/adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,cAAc,EAEd,oBAAoB,EAEpB,eAAe,EAKf,QAAQ,EACT,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAQlE;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,QAAQ,CAAC,IAAI,kBAAkB;IAE/B,KAAK,EAAE,QAAQ,CAAC;;IAeV,OAAO,CAAC,WAAW,EAAE,oBAAoB,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAuC1F,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxD,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,OAAO;IAIf;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,GAAG,IAAI;YAM/E,KAAK;YAWL,MAAM;YAgBN,OAAO;YAQP,KAAK;YAkBL,OAAO;IAiBrB,OAAO,CAAC,mBAAmB;YAiFb,UAAU;IAgFxB,OAAO,CAAC,cAAc;CAKvB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,oBAAoB,CAEtD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export { XStateStoreConnector, createConnector13 as createConnector } from '../../chunk-XHBPQ7QP.js';
|
|
2
|
+
import '../../chunk-OVRSNIKJ.js';
|
|
3
|
+
import '../../chunk-DGM74UP4.js';
|
|
4
|
+
import '../../chunk-QMONOHXT.js';
|
|
5
|
+
import '../../chunk-6E6PKKAD.js';
|
|
6
|
+
import '../../chunk-W7W66MDZ.js';
|
|
7
|
+
import '../../chunk-DEYYRFQU.js';
|
|
8
|
+
import '../../chunk-IFGTRL2I.js';
|
|
9
|
+
import '../../chunk-M4KLIEIJ.js';
|
|
10
|
+
import '../../chunk-FWHOU3CX.js';
|
|
11
|
+
import '../../chunk-3QQSSRYN.js';
|
|
12
|
+
import '../../chunk-IERB3UXJ.js';
|
|
13
|
+
import '../../chunk-2FS4FPZ7.js';
|
|
14
|
+
import '../../chunk-IEJ5IOC3.js';
|
|
15
|
+
import '../../chunk-JKNWJ64A.js';
|
|
16
|
+
import '../../chunk-O4JH3KUE.js';
|
|
17
|
+
import '../../chunk-K5GBV4SA.js';
|
|
18
|
+
import '../../chunk-ZAP2BDHG.js';
|
|
19
|
+
import '../../chunk-24UIWON4.js';
|
|
20
|
+
import '../../chunk-NSBPE2FW.js';
|
|
21
|
+
//# sourceMappingURL=xstate-store.js.map
|
|
22
|
+
//# sourceMappingURL=xstate-store.js.map
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export { XStateConnector, createConnector12 as createConnector } from '../../chunk-XHBPQ7QP.js';
|
|
2
|
+
import '../../chunk-OVRSNIKJ.js';
|
|
3
|
+
import '../../chunk-DGM74UP4.js';
|
|
4
|
+
import '../../chunk-QMONOHXT.js';
|
|
5
|
+
import '../../chunk-6E6PKKAD.js';
|
|
6
|
+
import '../../chunk-W7W66MDZ.js';
|
|
7
|
+
import '../../chunk-DEYYRFQU.js';
|
|
8
|
+
import '../../chunk-IFGTRL2I.js';
|
|
9
|
+
import '../../chunk-M4KLIEIJ.js';
|
|
10
|
+
import '../../chunk-FWHOU3CX.js';
|
|
11
|
+
import '../../chunk-3QQSSRYN.js';
|
|
12
|
+
import '../../chunk-IERB3UXJ.js';
|
|
13
|
+
import '../../chunk-2FS4FPZ7.js';
|
|
14
|
+
import '../../chunk-IEJ5IOC3.js';
|
|
15
|
+
import '../../chunk-JKNWJ64A.js';
|
|
16
|
+
import '../../chunk-O4JH3KUE.js';
|
|
17
|
+
import '../../chunk-K5GBV4SA.js';
|
|
18
|
+
import '../../chunk-ZAP2BDHG.js';
|
|
19
|
+
import '../../chunk-24UIWON4.js';
|
|
20
|
+
import '../../chunk-NSBPE2FW.js';
|
|
21
|
+
//# sourceMappingURL=xstate.js.map
|
|
22
|
+
//# sourceMappingURL=xstate.js.map
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Eagerly loads all built-in connector adapters and mount drivers.
|
|
3
3
|
* Intended for use in environments where lazy loading via subpath imports is not desired.
|
|
4
4
|
* Individual adapters and drivers are normally loaded on demand by the connector and mount registries.
|
|
5
|
-
* @docLink packages/
|
|
5
|
+
* @docLink packages/factory-assets/api-reference#factory-assets
|
|
6
6
|
*/
|
|
7
7
|
export declare function registerAll(): Promise<void>;
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../factory-assets/index.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAEjD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../factory-assets/index.ts"],"names":[],"mappings":";;;AAUA,eAAsB,WAAA,GAA6B;AAEnD","file":"index.js","sourcesContent":["// factory-assets — first-party framework content (built-in connectors + skills + bundles)\n// Subpath imports: @skaile/workspaces/factory-assets/connectors/<name>\n// This root export provides registerAll() for eager loading of all built-in adapters/drivers.\n\n/**\n * Eagerly loads all built-in connector adapters and mount drivers.\n * Intended for use in environments where lazy loading via subpath imports is not desired.\n * Individual adapters and drivers are normally loaded on demand by the connector and mount registries.\n * @docLink packages/factory-assets/api-reference#factory-assets\n */\nexport async function registerAll(): Promise<void> {\n // Populated in Phase 3 after implementations are moved here\n}\n"]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Publication manifest for the workspaces-authoring asset set.
|
|
2
|
+
# This repo IS a source (publication half only). See skills/authoring-skaile-manifests.
|
|
3
|
+
publisher: skaile-ai
|
|
4
|
+
version: 0.1.0
|
|
5
|
+
|
|
6
|
+
assets:
|
|
7
|
+
- kind: skill
|
|
8
|
+
name: authoring-skaile-assets
|
|
9
|
+
root: skills/authoring-skaile-assets
|
|
10
|
+
- kind: skill
|
|
11
|
+
name: authoring-skaile-manifests
|
|
12
|
+
root: skills/authoring-skaile-manifests
|
|
13
|
+
- kind: skill
|
|
14
|
+
name: skaile-author-asset
|
|
15
|
+
root: skills/skaile-author-asset
|
|
16
|
+
- kind: skill
|
|
17
|
+
name: skaile-manage-workspace
|
|
18
|
+
root: skills/skaile-manage-workspace
|
|
19
|
+
- kind: skill
|
|
20
|
+
name: manifest-compliance
|
|
21
|
+
root: skills/manifest-compliance
|
|
22
|
+
- kind: bundle
|
|
23
|
+
name: workspaces-authoring
|
|
24
|
+
files:
|
|
25
|
+
- bundles/workspaces-authoring/workspaces-authoring.bundle.yaml
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: authoring-skaile-assets
|
|
3
|
+
description: "Use when authoring or restructuring an AI-asset repository (skills, agents, prompts, contracts, MCP servers, connectors, flows, bundles) so it resolves cleanly through @skaile/workspaces and any store. Covers file layout, the 11 asset kinds, frontmatter conventions, the requires-vs-dependencies split, and how to test a source locally before publishing."
|
|
4
|
+
metadata:
|
|
5
|
+
version: '0.1.0'
|
|
6
|
+
stage: alpha
|
|
7
|
+
tags:
|
|
8
|
+
- skaile
|
|
9
|
+
- workspaces
|
|
10
|
+
- authoring
|
|
11
|
+
- skill
|
|
12
|
+
- asset
|
|
13
|
+
- source
|
|
14
|
+
- publish
|
|
15
|
+
requires:
|
|
16
|
+
- skill:authoring-skaile-manifests
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
# Authoring assets for `@skaile/workspaces`
|
|
20
|
+
|
|
21
|
+
You are helping an author build or fix an **AI-asset repository** (a "source") so
|
|
22
|
+
that `@skaile/workspaces` — and any store mirroring it — can discover, resolve,
|
|
23
|
+
and deploy its assets. This skill owns the *content* side (files on disk). Its
|
|
24
|
+
companion **[authoring-skaile-manifests]** owns the `skaile.yaml` manifest and
|
|
25
|
+
the dependency grammar; read it before publishing.
|
|
26
|
+
|
|
27
|
+
## Mental model
|
|
28
|
+
|
|
29
|
+
A **source** is a git repo of asset bytes. Identity is the global tuple
|
|
30
|
+
`(publisher, kind, name, version)` and is **asset-intrinsic** — declared in the
|
|
31
|
+
source's own `skaile.yaml`, never chosen by the consuming project. A consumer
|
|
32
|
+
reaches the bytes by cloning the source repo (`sources[]`) or by querying a
|
|
33
|
+
catalog (`stores[]`); both paths are content-hash verified and interchangeable.
|
|
34
|
+
|
|
35
|
+
> Vocabulary: **source** holds bytes (a repo). **library** is a place on the
|
|
36
|
+
> author's machine where they hold/author bytes. **store** is a remote catalog of
|
|
37
|
+
> *manifests* that point at sources — it holds no bytes.
|
|
38
|
+
|
|
39
|
+
## The 11 asset kinds
|
|
40
|
+
|
|
41
|
+
| Kind | Manifest file | Identity name from |
|
|
42
|
+
|---|---|---|
|
|
43
|
+
| `skill` | `SKILL.md` | frontmatter `name:` → else parent dir |
|
|
44
|
+
| `agent` | `AGENT.md` **or** `agent.yaml` | `name:` → else parent dir |
|
|
45
|
+
| `prompt` | `*.prompt.md` | `name:` → else filename stem |
|
|
46
|
+
| `contract` | `CONTRACT.md` | `name:` → else parent dir |
|
|
47
|
+
| `mcp-server` | `MCP.md` | `name:` → else parent dir |
|
|
48
|
+
| `connector` | `CONNECTOR.md` | `name:` → else parent dir |
|
|
49
|
+
| `knowledge` | `knowledge.yaml` | `name:` → else parent dir |
|
|
50
|
+
| `persona` | `SKILL.md` with `type: persona` | `name:` → else parent dir |
|
|
51
|
+
| `ruleset` | `SKILL.md` with `type: ruleset` | `name:` → else parent dir |
|
|
52
|
+
| `flow` | `*.flow.yaml` / `*.flow.json` | `name:`/`id:` → else filename stem |
|
|
53
|
+
| `bundle` | `*.bundle.yaml` | `name:` → else filename stem |
|
|
54
|
+
|
|
55
|
+
`mcp:` is a shorthand alias for `mcp-server:` in refs.
|
|
56
|
+
`persona`/`ruleset` are composition fragments selected via a `SKILL.md`
|
|
57
|
+
`type:` key (they replace the old `SOUL.md`/`RULES.md`).
|
|
58
|
+
|
|
59
|
+
## File layout — two options
|
|
60
|
+
|
|
61
|
+
**A. Explicit (recommended for curated repos).** Put `skaile.yaml` at the repo
|
|
62
|
+
root with an `assets:` list and lay files out however you like; `root:`/`files:`
|
|
63
|
+
point at each asset. See [authoring-skaile-manifests].
|
|
64
|
+
|
|
65
|
+
**B. Convention (zero-config).** Omit `skaile.yaml`; the walker falls back to the
|
|
66
|
+
agentskills.io layout:
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
<repo-root>/<kind-plural>/<name>/<KIND>.md
|
|
70
|
+
skills/audit/SKILL.md
|
|
71
|
+
agents/reviewer/AGENT.md
|
|
72
|
+
mcp-servers/excel/MCP.md
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
> ⚠️ If `skaile.yaml` has a **non-empty `assets:` list, it is exhaustive** — only
|
|
76
|
+
> listed assets are resolvable. Files on disk that you forgot to list still show
|
|
77
|
+
> up in `skaile manage` (the browse scan walks the filesystem) but **fail at
|
|
78
|
+
> install** with `Asset not found`. Keep the list complete, or omit it and rely
|
|
79
|
+
> on convention. This is the #1 authoring footgun.
|
|
80
|
+
|
|
81
|
+
## Frontmatter conventions (`SKILL.md` et al.)
|
|
82
|
+
|
|
83
|
+
Follow the agentskills.io convention: identity at the top level, skaile
|
|
84
|
+
extensions nested under `metadata:` (both locations are read for `version` and
|
|
85
|
+
`requires`, so either works).
|
|
86
|
+
|
|
87
|
+
```markdown
|
|
88
|
+
---
|
|
89
|
+
name: audit # MUST equal the assets[].name in skaile.yaml
|
|
90
|
+
description: "Use when ..." # one line; this is what the model matches on
|
|
91
|
+
metadata:
|
|
92
|
+
version: '1.4.0' # source skaile.yaml is authoritative; this is a hint only
|
|
93
|
+
stage: stable
|
|
94
|
+
tags: [review, quality, ci]
|
|
95
|
+
requires: # peer assets this one needs — kind:name form
|
|
96
|
+
- contract:implementation-contract
|
|
97
|
+
- skill:use-exa
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
# Audit
|
|
101
|
+
...skill body the agent reads at runtime...
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Rules that bite:
|
|
105
|
+
- **`name:` MUST equal the `assets[].name`** in `skaile.yaml`. Mismatch is an
|
|
106
|
+
index-time hard error.
|
|
107
|
+
- `metadata.version` is **ignored for resolution** — the source `skaile.yaml`
|
|
108
|
+
version (or git-tag waterfall) is authoritative. Keep it as documentation only.
|
|
109
|
+
- `description:` is the model-facing trigger. Write it as "Use when …"; it
|
|
110
|
+
decides whether the skill gets surfaced.
|
|
111
|
+
|
|
112
|
+
## `requires:` vs `dependencies:` — don't confuse them
|
|
113
|
+
|
|
114
|
+
| Field | Where | Form | Resolves to |
|
|
115
|
+
|---|---|---|---|
|
|
116
|
+
| `requires:` | content frontmatter (`SKILL.md`, `agent.yaml`) | **`kind:name`** (bare) | a peer asset in the *same source* — publisher inherited |
|
|
117
|
+
| `dependencies:` | a **bundle** manifest, or a *project's* `skaile.yaml` | **full canonical ref** `kind:@publisher/name[#version]` | any asset, cross-source |
|
|
118
|
+
|
|
119
|
+
So a skill that needs a co-located contract writes `requires: [contract:implementation-contract]`.
|
|
120
|
+
A bundle that fans out across publishers writes
|
|
121
|
+
`dependencies: [skill:@skaile-ai/audit#^1.4, skill:@vercel-labs/agent-skills]`.
|
|
122
|
+
The full grammar lives in [authoring-skaile-manifests].
|
|
123
|
+
|
|
124
|
+
## Bundles — group assets for one-shot install
|
|
125
|
+
|
|
126
|
+
A `*.bundle.yaml` lists canonical refs; installing the bundle pulls every member
|
|
127
|
+
(and nested bundles, any depth — cycles are de-duped).
|
|
128
|
+
|
|
129
|
+
```yaml
|
|
130
|
+
name: mvp
|
|
131
|
+
version: 1.0.0
|
|
132
|
+
description: "MVP pipeline: concept → spec → mockup → build."
|
|
133
|
+
dependencies:
|
|
134
|
+
- skill:@skaile-ai/concept-brief
|
|
135
|
+
- skill:@skaile-ai/product-spec-features#^1.0
|
|
136
|
+
- agent:@skaile-ai/impl-build-implement
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
## Authoring checklist
|
|
140
|
+
|
|
141
|
+
1. Pick the kind + name; create the manifest file (`SKILL.md`, `agent.yaml`, …).
|
|
142
|
+
2. Write a sharp `description:` ("Use when …").
|
|
143
|
+
3. Declare same-source peers in `requires:` (`kind:name`).
|
|
144
|
+
4. If publishing as a curated source: add the asset to `skaile.yaml` `assets:`
|
|
145
|
+
and confirm `name:` matches. Run [authoring-skaile-manifests] to author/verify.
|
|
146
|
+
5. Test locally before pushing (below).
|
|
147
|
+
6. Commit; tag a SemVer release (`vX.Y.Z`) so the version waterfall resolves.
|
|
148
|
+
|
|
149
|
+
## Test a source locally — no publish needed
|
|
150
|
+
|
|
151
|
+
```bash
|
|
152
|
+
# In a throwaway consumer project:
|
|
153
|
+
skaile init
|
|
154
|
+
skaile source add <path-or-git-url> # register your repo as a source
|
|
155
|
+
skaile source sync # clone/refresh + rebuild manifest cache
|
|
156
|
+
skaile manage # browse the tree — every asset should appear
|
|
157
|
+
skaile add skill:@<publisher>/<name> # resolve+deploy one asset; watch for "Asset not found"
|
|
158
|
+
skaile catalog test # debug the read protocol (resolve/list)
|
|
159
|
+
skaile install # resolve the full dependency closure
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
If `skaile manage` shows an asset but `skaile add` errors `Asset not found`, the
|
|
163
|
+
asset is on disk but missing from the `assets:` list — see the footgun warning
|
|
164
|
+
above.
|
|
165
|
+
|
|
166
|
+
## Common failures
|
|
167
|
+
|
|
168
|
+
| Symptom | Cause | Fix |
|
|
169
|
+
|---|---|---|
|
|
170
|
+
| `Asset not found` on an asset visible in `manage` | omitted from `assets:` | add it, or drop `assets:` and use convention |
|
|
171
|
+
| `name mismatch` at index time | `SKILL.md` `name:` ≠ `assets[].name` | make them equal |
|
|
172
|
+
| `publisher must be declared` | non-GitHub source URL, no `publisher:` | set `publisher:` in `skaile.yaml` |
|
|
173
|
+
| `publisher required in asset ref` | a dep uses legacy `kind:name@pub` | migrate to `kind:@pub/name` (see [authoring-skaile-manifests]) |
|
|
174
|
+
| dep silently absent at runtime | `requires:` used a full canonical ref | `requires:` is `kind:name` only; full refs go in bundle/project `dependencies:` |
|
|
175
|
+
|
|
176
|
+
[authoring-skaile-manifests]: ../authoring-skaile-manifests/SKILL.md
|