@skaile/workspaces 1.3.0 → 1.4.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 +122 -0
- package/README.md +1 -1
- package/dist/app-sdk/index.d.ts +2 -0
- package/dist/app-sdk/index.js +295 -0
- package/dist/app-sdk/index.js.map +1 -0
- package/dist/app-sdk/src/app.d.ts +101 -0
- package/dist/app-sdk/src/app.d.ts.map +1 -0
- package/dist/app-sdk/src/define-app-capability.d.ts +139 -0
- package/dist/app-sdk/src/define-app-capability.d.ts.map +1 -0
- package/dist/app-sdk/src/index.d.ts +16 -0
- package/dist/app-sdk/src/index.d.ts.map +1 -0
- package/dist/app-sdk/src/logger.d.ts +26 -0
- package/dist/app-sdk/src/logger.d.ts.map +1 -0
- package/dist/app-sdk/src/transport.d.ts +84 -0
- package/dist/app-sdk/src/transport.d.ts.map +1 -0
- package/dist/app-sdk/src/ws-transport.d.ts +63 -0
- package/dist/app-sdk/src/ws-transport.d.ts.map +1 -0
- package/dist/{asset-feeds-NEZKG6YS.js → asset-feeds-NG5TKB3V.js} +8 -8
- package/dist/{asset-feeds-NEZKG6YS.js.map → asset-feeds-NG5TKB3V.js.map} +1 -1
- package/dist/asset-manager/index.js +7 -7
- package/dist/asset-manager/installer.js +6 -6
- package/dist/asset-manager/renderers.js +2 -2
- package/dist/asset-manager/src/index.d.ts +42 -6
- package/dist/asset-manager/src/index.d.ts.map +1 -1
- package/dist/bridge/drivers/claude-sdk.js +2 -2
- package/dist/bridge/drivers/codex.js +1 -1
- package/dist/bridge/drivers/continue.js +2 -2
- package/dist/bridge/drivers/echo.js +1 -1
- package/dist/bridge/drivers/gemini.js +3 -3
- package/dist/bridge/drivers/goose.js +2 -2
- package/dist/bridge/drivers/omp.js +1 -1
- package/dist/bridge/drivers/opencode.js +2 -2
- package/dist/bridge/drivers/qwen.js +3 -3
- package/dist/bridge/index.js +3 -3
- package/dist/{chunk-AZAS3FKN.js → chunk-26YCXWCU.js} +48 -2
- package/dist/chunk-26YCXWCU.js.map +1 -0
- package/dist/{chunk-SKADPHAM.js → chunk-4N5XR5DQ.js} +2 -2
- package/dist/chunk-4N5XR5DQ.js.map +1 -0
- package/dist/{chunk-RHMQPLIK.js → chunk-77OXU44H.js} +6 -6
- package/dist/{chunk-RHMQPLIK.js.map → chunk-77OXU44H.js.map} +1 -1
- package/dist/{chunk-7CNIRF42.js → chunk-AAGD2J4H.js} +20 -11
- package/dist/chunk-AAGD2J4H.js.map +1 -0
- package/dist/{chunk-BZMTR5WW.js → chunk-B6SSXVF2.js} +4 -4
- package/dist/chunk-B6SSXVF2.js.map +1 -0
- package/dist/{chunk-YOPSHV7V.js → chunk-BE5KTS2L.js} +3 -3
- package/dist/{chunk-YOPSHV7V.js.map → chunk-BE5KTS2L.js.map} +1 -1
- package/dist/{chunk-JQMIG7D3.js → chunk-BJHZHNKR.js} +3 -3
- package/dist/{chunk-JQMIG7D3.js.map → chunk-BJHZHNKR.js.map} +1 -1
- package/dist/{chunk-5XS3BFJS.js → chunk-DNFIKRO6.js} +3 -3
- package/dist/{chunk-5XS3BFJS.js.map → chunk-DNFIKRO6.js.map} +1 -1
- package/dist/{chunk-PSMW5HLX.js → chunk-GWDZW44L.js} +4 -4
- package/dist/{chunk-PSMW5HLX.js.map → chunk-GWDZW44L.js.map} +1 -1
- package/dist/{chunk-K5SD7FSF.js → chunk-HKX5VSWQ.js} +3 -3
- package/dist/{chunk-K5SD7FSF.js.map → chunk-HKX5VSWQ.js.map} +1 -1
- package/dist/{chunk-P3MJYPZE.js → chunk-HWTQ6HPO.js} +4 -4
- package/dist/{chunk-P3MJYPZE.js.map → chunk-HWTQ6HPO.js.map} +1 -1
- package/dist/{chunk-XKARS6EE.js → chunk-IEX5YV4R.js} +3 -3
- package/dist/{chunk-XKARS6EE.js.map → chunk-IEX5YV4R.js.map} +1 -1
- package/dist/{chunk-GB4SEEK4.js → chunk-IRORTHGA.js} +10 -4
- package/dist/chunk-IRORTHGA.js.map +1 -0
- package/dist/{chunk-YXEPZ7LP.js → chunk-JZPEEMIM.js} +5 -5
- package/dist/{chunk-YXEPZ7LP.js.map → chunk-JZPEEMIM.js.map} +1 -1
- package/dist/{chunk-WFEPI5LA.js → chunk-LCTRCWBK.js} +5 -5
- package/dist/{chunk-WFEPI5LA.js.map → chunk-LCTRCWBK.js.map} +1 -1
- package/dist/{chunk-QK5JDAFF.js → chunk-NKTFEV7Q.js} +4 -4
- package/dist/{chunk-QK5JDAFF.js.map → chunk-NKTFEV7Q.js.map} +1 -1
- package/dist/{chunk-ETYDLXI5.js → chunk-OSCJRUKM.js} +2 -2
- package/dist/{chunk-ETYDLXI5.js.map → chunk-OSCJRUKM.js.map} +1 -1
- package/dist/{chunk-EVZKWY5J.js → chunk-PK7Q7MC7.js} +5 -4
- package/dist/chunk-PK7Q7MC7.js.map +1 -0
- package/dist/{chunk-RYRJEVQ4.js → chunk-QM2TT2PJ.js} +19 -11
- package/dist/chunk-QM2TT2PJ.js.map +1 -0
- package/dist/{chunk-SUOGVHGJ.js → chunk-TNSCHS4I.js} +2 -2
- package/dist/{chunk-SUOGVHGJ.js.map → chunk-TNSCHS4I.js.map} +1 -1
- package/dist/{chunk-Z5Z3MYDL.js → chunk-UPZGQZEJ.js} +3 -3
- package/dist/{chunk-Z5Z3MYDL.js.map → chunk-UPZGQZEJ.js.map} +1 -1
- package/dist/{chunk-RJ3HUSBC.js → chunk-UQ5FK2AB.js} +3 -3
- package/dist/{chunk-RJ3HUSBC.js.map → chunk-UQ5FK2AB.js.map} +1 -1
- package/dist/{chunk-OBSSORCE.js → chunk-X57AMTAH.js} +72 -9
- package/dist/chunk-X57AMTAH.js.map +1 -0
- package/dist/cli/index.js +766 -185
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/src/commands/preset-apply.d.ts +59 -0
- package/dist/cli/src/commands/preset-apply.d.ts.map +1 -0
- package/dist/cli/src/commands/preset-cmd.d.ts +2 -2
- package/dist/cli/src/commands/preset-cmd.d.ts.map +1 -1
- package/dist/cli/src/commands/preset-export.d.ts +93 -0
- package/dist/cli/src/commands/preset-export.d.ts.map +1 -0
- package/dist/cli/src/commands/source.d.ts.map +1 -1
- package/dist/cli/src/commands/why.d.ts +18 -0
- package/dist/cli/src/commands/why.d.ts.map +1 -1
- package/dist/connectors/config.js +2 -2
- package/dist/connectors/index.js +4 -4
- package/dist/core/index.js +2 -2
- package/dist/core/src/workspace-yaml-editor.d.ts +14 -1
- package/dist/core/src/workspace-yaml-editor.d.ts.map +1 -1
- package/dist/deploy/index.js +2 -2
- package/dist/discovery/index.js +2 -2
- package/dist/{ensure-sources-4BAJGJRK.js → ensure-sources-CHC7X7AJ.js} +10 -10
- package/dist/{ensure-sources-4BAJGJRK.js.map → ensure-sources-CHC7X7AJ.js.map} +1 -1
- package/dist/factory-assets/connectors/box.js +4 -4
- package/dist/factory-assets/connectors/deploy.js +4 -4
- package/dist/factory-assets/connectors/devserver.js +4 -4
- package/dist/factory-assets/connectors/flow/adapter.js +4 -4
- package/dist/factory-assets/connectors/flow/engine/engine.d.ts +4 -1
- package/dist/factory-assets/connectors/flow/engine/engine.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/engine/types.d.ts +41 -6
- package/dist/factory-assets/connectors/flow/engine/types.d.ts.map +1 -1
- package/dist/factory-assets/connectors/flow/engine.js +3 -3
- package/dist/factory-assets/connectors/flow/run-flow.js +5 -5
- package/dist/factory-assets/connectors/flow.js +4 -4
- package/dist/factory-assets/connectors/git.js +4 -4
- package/dist/factory-assets/connectors/gmail.js +4 -4
- package/dist/factory-assets/connectors/googledrive.js +4 -4
- package/dist/factory-assets/connectors/local.js +4 -4
- package/dist/factory-assets/connectors/mattermost.js +4 -4
- package/dist/factory-assets/connectors/memory.js +4 -4
- package/dist/factory-assets/connectors/minio.js +4 -4
- package/dist/factory-assets/connectors/postgres.js +4 -4
- package/dist/factory-assets/connectors/s3.js +4 -4
- package/dist/factory-assets/connectors/sharepoint.js +4 -4
- package/dist/factory-assets/connectors/sqlite.js +4 -4
- package/dist/factory-assets/connectors/static-server.js +4 -4
- package/dist/factory-assets/connectors/tunnel.js +4 -4
- package/dist/factory-assets/connectors/webdav.js +4 -4
- package/dist/factory-assets/connectors/xstate-store.js +4 -4
- package/dist/factory-assets/connectors/xstate.js +4 -4
- package/dist/factory-assets/skills/skaile-author-asset/SKILL.md +1 -1
- package/dist/factory-assets/skills/skaile-manage-workspace/SKILL.md +1 -1
- package/dist/{flows-UFCOGAAM.js → flows-CGOCUNO6.js} +4 -4
- package/dist/{flows-UFCOGAAM.js.map → flows-CGOCUNO6.js.map} +1 -1
- package/dist/{helpers-2OL4FRFB.js → helpers-GWG4CYYC.js} +10 -10
- package/dist/{helpers-2OL4FRFB.js.map → helpers-GWG4CYYC.js.map} +1 -1
- package/dist/library/index.js +6 -6
- package/dist/library/install.js +2 -2
- package/dist/{open-library-RPV2LIKL.js → open-library-37PXN6MK.js} +15 -15
- package/dist/{open-library-RPV2LIKL.js.map → open-library-37PXN6MK.js.map} +1 -1
- package/dist/{paths-ML33B5SB.js → paths-UVOHWUPY.js} +4 -4
- package/dist/{paths-ML33B5SB.js.map → paths-UVOHWUPY.js.map} +1 -1
- package/dist/{plugin-store-G4HKWCTU.js → plugin-store-EIMVEH3O.js} +4 -4
- package/dist/{plugin-store-G4HKWCTU.js.map → plugin-store-EIMVEH3O.js.map} +1 -1
- package/dist/runner/index.js +10 -10
- package/dist/runner/src/capability-registry.d.ts +15 -4
- package/dist/runner/src/capability-registry.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +7 -7
- package/dist/sdk/bridge.js +3 -3
- package/dist/sdk/core.js +2 -2
- package/dist/sdk/flow.js +3 -3
- package/dist/sdk/index.js +10 -10
- package/dist/sdk/runner.js +10 -10
- package/dist/sdk/session.js +2 -2
- package/dist/sdk/types.js +1 -1
- package/dist/session/index.js +2 -2
- package/dist/{setup-WS6PF6JQ.js → setup-DINVR6ZQ.js} +7 -7
- package/dist/{setup-WS6PF6JQ.js.map → setup-DINVR6ZQ.js.map} +1 -1
- package/dist/{source-22U5NOY4.js → source-RXAHIGMD.js} +16 -16
- package/dist/{source-22U5NOY4.js.map → source-RXAHIGMD.js.map} +1 -1
- package/dist/{store-client-YLMBH5MF.js → store-client-T3F663YG.js} +5 -5
- package/dist/{store-client-YLMBH5MF.js.map → store-client-T3F663YG.js.map} +1 -1
- package/dist/tui/index.js +10 -10
- package/dist/types/index.js +1 -1
- package/dist/types/manifests.js +1 -1
- package/dist/types/src/capabilities.d.ts +8 -2
- package/dist/types/src/capabilities.d.ts.map +1 -1
- package/dist/types/src/logging.d.ts +3 -2
- package/dist/types/src/logging.d.ts.map +1 -1
- package/dist/types/src/manifests/_shared.d.ts +4 -4
- package/dist/types/src/manifests/index.d.ts +2 -2
- package/dist/types/src/manifests/index.d.ts.map +1 -1
- package/dist/types/src/manifests/preset.d.ts +10 -0
- package/dist/types/src/manifests/preset.d.ts.map +1 -1
- package/dist/types/src/version.d.ts +11 -1
- package/dist/types/src/version.d.ts.map +1 -1
- package/dist/workspace-plugin/adapters/mcp.js +2 -2
- package/dist/workspace-plugin/adapters/omp.js +3 -3
- package/dist/workspace-plugin/index.js +1 -1
- package/package.json +7 -1
- package/dist/chunk-7CNIRF42.js.map +0 -1
- package/dist/chunk-AZAS3FKN.js.map +0 -1
- package/dist/chunk-BZMTR5WW.js.map +0 -1
- package/dist/chunk-EVZKWY5J.js.map +0 -1
- package/dist/chunk-GB4SEEK4.js.map +0 -1
- package/dist/chunk-OBSSORCE.js.map +0 -1
- package/dist/chunk-RYRJEVQ4.js.map +0 -1
- package/dist/chunk-SKADPHAM.js.map +0 -1
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `skaile preset apply` — pure core: reverse a `.preset.yaml` snapshot back into
|
|
3
|
+
* a workspace's `skaile.yaml` sections (the inverse of `preset export`).
|
|
4
|
+
*
|
|
5
|
+
* These helpers are I/O- and prompt-free so they can be unit-tested in
|
|
6
|
+
* isolation. The Commander action in `preset-cmd.ts` owns file reads, the
|
|
7
|
+
* interactive prompting for non-secret inputs, the editor writes, and the
|
|
8
|
+
* post-apply install.
|
|
9
|
+
*/
|
|
10
|
+
import type { ConnectorDeclaration, McpServerDeclaration, SourceEntry } from "@skaile/workspaces/core";
|
|
11
|
+
import type { Placeholder, PresetManifest } from "@skaile/workspaces/types/manifests";
|
|
12
|
+
/** The workspace sections produced by reversing a preset's items. */
|
|
13
|
+
export interface WorkspaceItems {
|
|
14
|
+
/** Bare dependency refs, copied verbatim from non-connector/mcp items. */
|
|
15
|
+
dependencies: string[];
|
|
16
|
+
/** Connector declarations rebuilt from `connector:<driver>` items. */
|
|
17
|
+
connectors: ConnectorDeclaration[];
|
|
18
|
+
/** MCP server declarations rebuilt from `mcp:<id>` items. */
|
|
19
|
+
mcpServers: McpServerDeclaration[];
|
|
20
|
+
/** Git sources the deps resolve from — registered before install. */
|
|
21
|
+
sources: SourceEntry[];
|
|
22
|
+
/** Secret placeholder keys the user must export as env vars before running. */
|
|
23
|
+
envVarsToSet: string[];
|
|
24
|
+
}
|
|
25
|
+
/** Rejection message for nested preset refs (unsupported by v1 apply). */
|
|
26
|
+
export declare const NESTED_PRESET_UNSUPPORTED = "nested presets are not supported by `preset apply` yet";
|
|
27
|
+
/**
|
|
28
|
+
* Resolve one placeholder to the value that lands in `skaile.yaml`.
|
|
29
|
+
*
|
|
30
|
+
* A secret placeholder NEVER yields its raw value — it resolves to an
|
|
31
|
+
* `env:<KEY>` indirection reference so the credential stays out of the file.
|
|
32
|
+
* A non-secret placeholder resolves to the provided literal (or its declared
|
|
33
|
+
* default); a required non-secret placeholder with neither throws.
|
|
34
|
+
*
|
|
35
|
+
* @param placeholder - The placeholder definition from the preset item.
|
|
36
|
+
* @param providedValue - Value supplied via `--input`/prompt, or `undefined`.
|
|
37
|
+
* @returns `{ envRef }` for secrets, `{ value }` for resolved literals.
|
|
38
|
+
* @throws When a required non-secret placeholder has no value and no default.
|
|
39
|
+
*/
|
|
40
|
+
export declare function resolvePlaceholderValue(placeholder: Placeholder, providedValue: string | undefined): {
|
|
41
|
+
value: string;
|
|
42
|
+
} | {
|
|
43
|
+
envRef: string;
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Reverse a preset's items into additive `skaile.yaml` sections.
|
|
47
|
+
*
|
|
48
|
+
* Items are classified by **`id` presence** (export writes one on connector/mcp
|
|
49
|
+
* items, never on deps), so a bare `mcp:excel` shorthand stays a dependency.
|
|
50
|
+
* Secret tokens resolve to `env:<KEY>` refs (collected into `envVarsToSet`).
|
|
51
|
+
*
|
|
52
|
+
* @param preset - The validated preset manifest.
|
|
53
|
+
* @param values - Resolved non-secret input values, keyed by placeholder key.
|
|
54
|
+
* @returns The workspace sections plus the secret env-var keys to set.
|
|
55
|
+
* @throws When a required non-secret placeholder is unresolved, or a nested
|
|
56
|
+
* preset ref is encountered (unsupported by apply).
|
|
57
|
+
*/
|
|
58
|
+
export declare function presetItemsToWorkspace(preset: PresetManifest, values: Record<string, string>): WorkspaceItems;
|
|
59
|
+
//# sourceMappingURL=preset-apply.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preset-apply.d.ts","sourceRoot":"","sources":["../../../../cli/src/commands/preset-apply.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACpB,WAAW,EACZ,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAc,MAAM,oCAAoC,CAAC;AAElG,qEAAqE;AACrE,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,sEAAsE;IACtE,UAAU,EAAE,oBAAoB,EAAE,CAAC;IACnC,6DAA6D;IAC7D,UAAU,EAAE,oBAAoB,EAAE,CAAC;IACnC,qEAAqE;IACrE,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,+EAA+E;IAC/E,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAKD,0EAA0E;AAC1E,eAAO,MAAM,yBAAyB,2DAA2D,CAAC;AAElG;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,MAAM,GAAG,SAAS,GAChC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAexC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,cAAc,CA+BhB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* skaile preset — scaffold and
|
|
2
|
+
* skaile preset — scaffold, validate, export, and apply preset YAML files.
|
|
3
3
|
*
|
|
4
|
-
* Subcommands: init, validate.
|
|
4
|
+
* Subcommands: init, validate, export, apply.
|
|
5
5
|
* Delegates to @skaile/library preset module for parsing and validation.
|
|
6
6
|
*/
|
|
7
7
|
import { Command } from "commander";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preset-cmd.d.ts","sourceRoot":"","sources":["../../../../cli/src/commands/preset-cmd.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"preset-cmd.d.ts","sourceRoot":"","sources":["../../../../cli/src/commands/preset-cmd.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoBpC;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CA0E3C"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `skaile preset export` — pure core: turn a project's own `skaile.yaml`
|
|
3
|
+
* (`SkWorkspaceConfig`) into a shareable `PresetManifest`, with first-class
|
|
4
|
+
* detection and redaction of inline secrets.
|
|
5
|
+
*
|
|
6
|
+
* These helpers are intentionally free of I/O and prompting so they can be
|
|
7
|
+
* unit-tested in isolation; the Commander action in `preset-cmd.ts` owns file
|
|
8
|
+
* reads/writes, the loud stderr summary, and interactive confirmation.
|
|
9
|
+
*/
|
|
10
|
+
import type { LockFile, SkWorkspaceConfig, SourceEntry } from "@skaile/workspaces/core";
|
|
11
|
+
import type { PresetManifest } from "@skaile/workspaces/types/manifests";
|
|
12
|
+
/** One inline-secret hit: which item, where in its config, and a safe preview. */
|
|
13
|
+
export interface SecretFinding {
|
|
14
|
+
/** `id` of the offending preset item (connector/mcp id). */
|
|
15
|
+
itemId: string;
|
|
16
|
+
/** Dotted path into the item's `config`, e.g. `options.dsn` or `env.TOKEN`. */
|
|
17
|
+
path: string;
|
|
18
|
+
/** Value with its secret portion masked, safe to print to a terminal. */
|
|
19
|
+
maskedValue: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Build a self-consistent {@link PresetManifest} from a workspace config.
|
|
23
|
+
*
|
|
24
|
+
* Mapping (a future `preset apply` reverses this):
|
|
25
|
+
* - `dependencies[]` → `{ ref }` items, ref copied VERBATIM (no re-pinning).
|
|
26
|
+
* - `connectors[]` → `{ id, ref: "connector:<driver>", config }` items.
|
|
27
|
+
* - `mcp_servers[]` → `{ id, ref: "mcp:<id>", config }` items.
|
|
28
|
+
*
|
|
29
|
+
* `agent_config` is deliberately NOT exported — it is personal/machine-specific
|
|
30
|
+
* (driver, model, API-cloud transport) and does not belong in a shared preset.
|
|
31
|
+
*
|
|
32
|
+
* @param config - The project-own `skaile.yaml` (NOT the merged/global config).
|
|
33
|
+
* @param name - Preset name; also the default output filename stem.
|
|
34
|
+
* @param sources - Git sources the dep items resolve from (see {@link neededSources}).
|
|
35
|
+
* @returns A manifest that passes `validatePreset` whenever it has ≥1 item.
|
|
36
|
+
*/
|
|
37
|
+
export declare function buildPresetFromWorkspace(config: SkWorkspaceConfig, name: string, sources?: SourceEntry[]): PresetManifest;
|
|
38
|
+
/**
|
|
39
|
+
* The subset of `config.sources` a cross-repo apply must register before install.
|
|
40
|
+
*
|
|
41
|
+
* The lock's top-level `sources` list is the full **transitive** closure of every
|
|
42
|
+
* source that contributed a resolved asset, so filtering `config.sources` to it
|
|
43
|
+
* (minus the always-available factory source) captures direct + transitive deps
|
|
44
|
+
* with no drop risk. With no lock (provenance unknown), every non-factory source
|
|
45
|
+
* is kept so apply still resolves. Connectors/mcp carry no source.
|
|
46
|
+
*/
|
|
47
|
+
export declare function neededSources(config: SkWorkspaceConfig, lock: LockFile | null): SourceEntry[];
|
|
48
|
+
/**
|
|
49
|
+
* True when `value` is a secret *reference* (indirection) rather than an inline
|
|
50
|
+
* secret — e.g. `env:DATABASE_URL`, `forge:api-key`, `pat:env:GH_TOKEN`. Such
|
|
51
|
+
* values are safe to publish and are never flagged.
|
|
52
|
+
*/
|
|
53
|
+
export declare function isSecretReference(value: string): boolean;
|
|
54
|
+
/** True when a source URL embeds `user:pass@` credentials (private-HTTPS auth form). */
|
|
55
|
+
export declare function urlHasCredentials(url: string): boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Strip `user:pass@` userinfo from a URL. The repo is fully identified without it
|
|
58
|
+
* (git auth on apply uses the target's own credential helper / ssh key), so an
|
|
59
|
+
* exported source URL must never carry the token into a shared preset.
|
|
60
|
+
*/
|
|
61
|
+
export declare function stripUrlCredentials(url: string): string;
|
|
62
|
+
/**
|
|
63
|
+
* Scan every string inside each item's `config` and return inline secrets.
|
|
64
|
+
*
|
|
65
|
+
* A string is flagged when it is NOT a {@link isSecretReference} AND sits in a
|
|
66
|
+
* credential context: the inherent `auth` field, a suspicious key name, a
|
|
67
|
+
* `proto://user:pass@` URL, or a long high-entropy blob. Items without a `config`
|
|
68
|
+
* (bare deps) are skipped.
|
|
69
|
+
*
|
|
70
|
+
* Detection is **heuristic / best-effort**, not exhaustive: a short, low-entropy
|
|
71
|
+
* secret under an innocuous key name can slip through. A clean scan is not a
|
|
72
|
+
* guarantee — treat it as a safety net, not proof the file holds no secrets.
|
|
73
|
+
*/
|
|
74
|
+
export declare function scanInlineSecrets(preset: PresetManifest): SecretFinding[];
|
|
75
|
+
/**
|
|
76
|
+
* Replace each flagged inline value with a `${INPUT:<KEY>}` placeholder and add
|
|
77
|
+
* a matching `secret` placeholder entry to the owning item. Returns a NEW preset
|
|
78
|
+
* (the input is not mutated) plus the generated placeholder keys.
|
|
79
|
+
*
|
|
80
|
+
* `<KEY>` is `<itemId>_<path>` upper-snake-cased so it is stable and readable.
|
|
81
|
+
*/
|
|
82
|
+
export declare function redactSecrets(preset: PresetManifest, findings: SecretFinding[]): {
|
|
83
|
+
preset: PresetManifest;
|
|
84
|
+
keys: string[];
|
|
85
|
+
};
|
|
86
|
+
/** Exact wording written into the file when unresolved inline secrets remain. */
|
|
87
|
+
export declare const INLINE_SECRETS_HEADER = "# \u26A0\uFE0F CONTAINS INLINE SECRETS \u2014 replace with placeholders before sharing or publishing";
|
|
88
|
+
/**
|
|
89
|
+
* Header comment for a preset that still holds unresolved inline secrets, or
|
|
90
|
+
* `null` when `findings` is empty (nothing left to warn about).
|
|
91
|
+
*/
|
|
92
|
+
export declare function secretHeaderComment(findings: SecretFinding[]): string | null;
|
|
93
|
+
//# sourceMappingURL=preset-export.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preset-export.d.ts","sourceRoot":"","sources":["../../../../cli/src/commands/preset-export.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACxF,OAAO,KAAK,EAA2B,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAElG,kFAAkF;AAClF,MAAM,WAAW,aAAa;IAC5B,4DAA4D;IAC5D,MAAM,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,IAAI,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,WAAW,EAAE,MAAM,CAAC;CACrB;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,iBAAiB,EACzB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,WAAW,EAAO,GAC1B,cAAc,CAoDhB;AAID;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,QAAQ,GAAG,IAAI,GAAG,WAAW,EAAE,CAM7F;AAmBD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAExD;AAkBD,wFAAwF;AACxF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEvD;AAiBD;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,aAAa,EAAE,CASzE;AAwDD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,aAAa,EAAE,GACxB;IAAE,MAAM,EAAE,cAAc,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CA+B5C;AAwBD,iFAAiF;AACjF,eAAO,MAAM,qBAAqB,yGACuD,CAAC;AAE1F;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,GAAG,IAAI,CAE5E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../../../cli/src/commands/source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,OAAO,EAGL,KAAK,WAAW,EAKjB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEnD;AAKD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,OAAO,CAEzE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAYvE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOxD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAIzE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,WAAW,EAAE,EACtB,GAAG,EAAE,MAAM,GACV,WAAW,GAAG,SAAS,CAGzB;
|
|
1
|
+
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../../../cli/src/commands/source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,OAAO,EAGL,KAAK,WAAW,EAKjB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEnD;AAKD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,OAAO,CAEzE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAYvE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOxD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAIzE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,WAAW,EAAE,EACtB,GAAG,EAAE,MAAM,GACV,WAAW,GAAG,SAAS,CAGzB;AA8FD;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAQ5E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAO,GAC3B,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAsC5D;AAoBD,wBAAgB,iBAAiB,IAAI,OAAO,CAsR3C"}
|
|
@@ -1,4 +1,22 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
+
/**
|
|
3
|
+
* Pick the right message when `am.why(ref)` returns an empty chain. Two
|
|
4
|
+
* distinct causes need different guidance:
|
|
5
|
+
*
|
|
6
|
+
* - The ref **is** a declared dependency (matches `declared` by kind+name) but
|
|
7
|
+
* isn't in the lock file yet → tell the user to run `skaile install`.
|
|
8
|
+
* - The ref is **not** declared at all → `skaile install` cannot help, so say
|
|
9
|
+
* plainly that nothing in `skaile.yaml` requires it.
|
|
10
|
+
*
|
|
11
|
+
* Pure and terminal-free so it can be unit-tested; the command wires the
|
|
12
|
+
* returned string into `logErr`.
|
|
13
|
+
*
|
|
14
|
+
* @param declared - Declared deps exposing `.kind` + `.name` (from `listDeclared`).
|
|
15
|
+
*/
|
|
16
|
+
export declare function whyEmptyMessage(ref: string, declared: Array<{
|
|
17
|
+
kind: string;
|
|
18
|
+
name: string;
|
|
19
|
+
}>): string;
|
|
2
20
|
/**
|
|
3
21
|
* Creates the `skaile why` command.
|
|
4
22
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"why.d.ts","sourceRoot":"","sources":["../../../../cli/src/commands/why.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"why.d.ts","sourceRoot":"","sources":["../../../../cli/src/commands/why.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA0BpC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,GAC9C,MAAM,CASR;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAuCxC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { LegacyAuthGrammarError, createCliSecretProviderChain, createForgeSecretProviderChain, loadConnectorDeclarations, resolveAuthRef, resolveBackendAuthFor } from '../chunk-BDUANIAR.js';
|
|
2
|
-
import '../chunk-
|
|
2
|
+
import '../chunk-26YCXWCU.js';
|
|
3
|
+
import '../chunk-ZAP2BDHG.js';
|
|
3
4
|
import '../chunk-TJRWGMD2.js';
|
|
4
5
|
import '../chunk-OUWNTFDG.js';
|
|
5
6
|
import '../chunk-DZCK7GRW.js';
|
|
@@ -8,7 +9,6 @@ import '../chunk-GEEW6SY2.js';
|
|
|
8
9
|
import '../chunk-F3HNW354.js';
|
|
9
10
|
import '../chunk-MENCWIHW.js';
|
|
10
11
|
import '../chunk-K5GBV4SA.js';
|
|
11
|
-
import '../chunk-ZAP2BDHG.js';
|
|
12
12
|
import '../chunk-JB35MVBN.js';
|
|
13
13
|
import '../chunk-NSBPE2FW.js';
|
|
14
14
|
//# sourceMappingURL=config.js.map
|
package/dist/connectors/index.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
export { AbstractConnector, BUILTIN_CONNECTOR_CATALOG, ConnectorFieldMissingError, ConnectorManager, ConnectorStartupError, FlowAdapter, LogBuffer, ManagedGitconfigCollisionError, PortPool, atomicReplaceCredential, buildConnectorPromptSection, buildSdkConnectorTools, createFsWatcher, createWorktree, defaultSpawn, ensureDirMode, ensureFleetMounted, findGitRoot, findMissingPackages, getConnector, installNpmPackages, isFleetManaged, isPackageResolvable, listConnectors, listWorktrees, registerBuiltinConnectors, removeMountBlock, renderCredentialHelperScript, tryGetConnector, worktreeRegistry, writeHelperScript, writeMountBlock } from '../chunk-
|
|
1
|
+
export { AbstractConnector, BUILTIN_CONNECTOR_CATALOG, ConnectorFieldMissingError, ConnectorManager, ConnectorStartupError, FlowAdapter, LogBuffer, ManagedGitconfigCollisionError, PortPool, atomicReplaceCredential, buildConnectorPromptSection, buildSdkConnectorTools, createFsWatcher, createWorktree, defaultSpawn, ensureDirMode, ensureFleetMounted, findGitRoot, findMissingPackages, getConnector, installNpmPackages, isFleetManaged, isPackageResolvable, listConnectors, listWorktrees, registerBuiltinConnectors, removeMountBlock, renderCredentialHelperScript, tryGetConnector, worktreeRegistry, writeHelperScript, writeMountBlock } from '../chunk-GWDZW44L.js';
|
|
2
2
|
export { EnvSecretProvider, ForgeSecretProvider, InMemorySecretProvider, LegacyAuthGrammarError, LockedSecretProvider, OAuthRequiredError, PreMintedSecretProvider, SecretProviderChain, createCliSecretProviderChain, createForgeSecretProviderChain, deriveSingleMaterializedConnectorDeclaration, fromMaterializedConnectorMd, loadConnectorDeclarations, loadMaterializedConnectorDeclarations, resolveAuthRef, resolveBackendAuthFor } from '../chunk-BDUANIAR.js';
|
|
3
3
|
import '../chunk-6E6PKKAD.js';
|
|
4
|
-
import '../chunk-
|
|
4
|
+
import '../chunk-4N5XR5DQ.js';
|
|
5
5
|
import '../chunk-DEYYRFQU.js';
|
|
6
6
|
import '../chunk-IFGTRL2I.js';
|
|
7
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-26YCXWCU.js';
|
|
8
|
+
import '../chunk-ZAP2BDHG.js';
|
|
8
9
|
import '../chunk-TJRWGMD2.js';
|
|
9
10
|
import '../chunk-OUWNTFDG.js';
|
|
10
11
|
import '../chunk-DZCK7GRW.js';
|
|
@@ -13,7 +14,6 @@ import '../chunk-GEEW6SY2.js';
|
|
|
13
14
|
import '../chunk-F3HNW354.js';
|
|
14
15
|
import '../chunk-MENCWIHW.js';
|
|
15
16
|
import '../chunk-K5GBV4SA.js';
|
|
16
|
-
import '../chunk-ZAP2BDHG.js';
|
|
17
17
|
import '../chunk-JB35MVBN.js';
|
|
18
18
|
import '../chunk-NSBPE2FW.js';
|
|
19
19
|
//# sourceMappingURL=index.js.map
|
package/dist/core/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export { ALL_PROVIDERS, ManifestYamlEditor, SETTINGS_DEFAULTS, WorkspaceYamlEditor, applyPatch, buildLockFile, checkAgentSkillConformance, computeHash, detectEnvApiKeys, extractForPatch, generatePatch, globalSettingsPath, listPatches, loadSettings, mapLegacyFields, maskApiKey, migrateSettings, portableSpawn, portableSpawnSync, projectSettingsPath, providerEnvKey, readLock, readPatch, readPluginsLockSlice, resolveAllKeys, resolveApiKey, resolveSettings, savePatch, saveSettings, verifyLock, walkForSettings, writeLock, writePluginsLockSlice } from '../chunk-
|
|
1
|
+
export { ALL_PROVIDERS, ManifestYamlEditor, SETTINGS_DEFAULTS, WorkspaceYamlEditor, applyPatch, buildLockFile, checkAgentSkillConformance, computeHash, detectEnvApiKeys, extractForPatch, generatePatch, globalSettingsPath, listPatches, loadSettings, mapLegacyFields, maskApiKey, migrateSettings, portableSpawn, portableSpawnSync, projectSettingsPath, providerEnvKey, readLock, readPatch, readPluginsLockSlice, resolveAllKeys, resolveApiKey, resolveSettings, savePatch, saveSettings, verifyLock, walkForSettings, writeLock, writePluginsLockSlice } from '../chunk-26YCXWCU.js';
|
|
2
|
+
export { ASSET_KIND_DIRS, assetSearchDirs, detectAiResources, detectDomains, detectMonorepoRoot } from '../chunk-ZAP2BDHG.js';
|
|
2
3
|
export { FACTORY_ASSETS_REPO_NAME, factoryAssetRoots, resolveFactoryAssetsRoot, resolveFactoryAssetsRootOrNull, resolvePackagedAssetsDir, resolveRuntimeAssets, resolveWorkspacesPackageRoot } from '../chunk-TJRWGMD2.js';
|
|
3
4
|
export { COMPACTION_DEFAULTS, CanonicalRefConflictError, DEFAULT_RECIPE_ATTR, SKAILE_YAML_DEFAULT, SK_WORKSPACE_DEFAULT_NAME, SK_WORKSPACE_SUFFIX, __resetCacheMigrationMemo, buildProvenanceIndex, checkRepoStatus, checkoutPin, cloneRepo, cloudConfigFromProfile, decodeSkaileYaml, deriveSingleMaterializedMcpDeclaration, encodeSkaileYaml, ensureRepo, findWorkspaceRoot, getGlobalCacheDir, getRepoCommit, globalCacheRoot, globalSkaileDir, linkRepo, listSkWorkspaceConfigs, loadMcpServerDeclarations, loadSkWorkspaceConfig, mergeLegacyEntriesInto, mergeSkWorkspaceConfigs, migrateLegacyDir, normalizeConfig, pullRepo, readLinks, resolveAgentDir, resolveAll, resolveAsset, resolveGlobalBackends, resolveGlobalSkWorkspaceConfig, resolveSkWorkspaceConfig, resolveSourcePublisher, saveSkWorkspaceConfig, scanRepo, sourceCacheKey, sourceShortName, stageMaterializedSkills, unlinkRepo, validateAssetRecipeAttr, validateAssetRecipeFlake, workspaceConfigFilename, writeLinks } from '../chunk-OUWNTFDG.js';
|
|
4
5
|
export { SKAILE_MANIFEST_FILENAME, decodeSkaileManifest, encodeSkaileManifest, loadSkPublishManifest, saveSkPublishManifest } from '../chunk-DZCK7GRW.js';
|
|
@@ -7,7 +8,6 @@ export { ASSET_KINDS, ASSET_NAME_HINT, INDIVIDUAL_KINDS, assetRefToDep, assetRef
|
|
|
7
8
|
export { deployedBase, deployedDir, isDeployed } from '../chunk-F3HNW354.js';
|
|
8
9
|
export { DRIVER_TARGETS, SUPPORTED_DRIVER_TARGETS, globalBackendRoot } from '../chunk-MENCWIHW.js';
|
|
9
10
|
export { DRIVER_DEFAULTS, resolveDriverPaths } from '../chunk-K5GBV4SA.js';
|
|
10
|
-
export { ASSET_KIND_DIRS, assetSearchDirs, detectAiResources, detectDomains, detectMonorepoRoot } from '../chunk-ZAP2BDHG.js';
|
|
11
11
|
export { LogStore, LogStoreDisabledError, NoOpSink, OnLogBridgeSink, SqliteSink, StdoutSink, WsLogSink, createLogStoreFromConfig, createLogger, getLogStore, normalizeError, openSqlite, registerLogStore, resetLogStore, resolveLogStoreConfig, sanitizeData } from '../chunk-JB35MVBN.js';
|
|
12
12
|
import '../chunk-NSBPE2FW.js';
|
|
13
13
|
//# sourceMappingURL=index.js.map
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* editor.save()
|
|
16
16
|
*/
|
|
17
17
|
import { Document } from "yaml";
|
|
18
|
-
import type { AgentConfigProfile, ConnectorDeclaration, OverrideEntry, SourceEntry, StoreEntry } from "./workspace-config.js";
|
|
18
|
+
import type { AgentConfigProfile, ConnectorDeclaration, McpServerDeclaration, OverrideEntry, SourceEntry, StoreEntry } from "./workspace-config.js";
|
|
19
19
|
/**
|
|
20
20
|
* Comment-preserving editor for `skaile.yaml` files.
|
|
21
21
|
* Uses the `yaml` library's Document AST so untouched sections remain byte-identical.
|
|
@@ -59,6 +59,19 @@ export declare class WorkspaceYamlEditor {
|
|
|
59
59
|
setConnector(connector: ConnectorDeclaration): void;
|
|
60
60
|
/** Remove a connector by id. */
|
|
61
61
|
removeConnector(id: string): boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Add or replace an mcp server entry, matched by `id`.
|
|
64
|
+
* Mirrors {@link setConnector}: an existing entry with the same `id` is
|
|
65
|
+
* replaced in place; otherwise the declaration is appended.
|
|
66
|
+
*/
|
|
67
|
+
setMcpServer(mcp: McpServerDeclaration): void;
|
|
68
|
+
/**
|
|
69
|
+
* Append a dependency ref to `dependencies:`, deduped by exact ref string.
|
|
70
|
+
*
|
|
71
|
+
* @param ref - Canonical dependency ref (e.g. `skill:@skaile/foo#1.0.0`).
|
|
72
|
+
* @returns `true` when the ref was newly added, `false` when it was already present.
|
|
73
|
+
*/
|
|
74
|
+
addDependency(ref: string): boolean;
|
|
62
75
|
/** Get all `plugins:` specifiers. */
|
|
63
76
|
getPlugins(): string[];
|
|
64
77
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-yaml-editor.d.ts","sourceRoot":"","sources":["../../../core/src/workspace-yaml-editor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,QAAQ,EAA6C,MAAM,MAAM,CAAC;AAC3E,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,UAAU,EACX,MAAM,uBAAuB,CAAC;AAE/B;;;;;GAKG;AACH,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,GAAG,CAAW;IAEtB,OAAO;IAKP,yCAAyC;IACzC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB;IASlD,qEAAqE;IACrE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB;IAKpD,2EAA2E;IAC3E,IAAI,IAAI,IAAI;IAIZ,iEAAiE;IACjE,QAAQ,IAAI,MAAM;IAMlB,wDAAwD;IACxD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,SAAS;IAKpD,oCAAoC;IACpC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAMrD;;;OAGG;IACH,cAAc,CAAC,OAAO,SAAY,GAAG,kBAAkB,GAAG,SAAS;IAOnE;;;OAGG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,IAAI;IAoB1E;;OAEG;IACH,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAS5D,OAAO,CAAC,sBAAsB;IAQ9B,0BAA0B;IAC1B,aAAa,IAAI,oBAAoB,EAAE;IAMvC,uCAAuC;IACvC,YAAY,CAAC,SAAS,EAAE,oBAAoB,GAAG,IAAI;IAwBnD,gCAAgC;IAChC,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAiBpC,qCAAqC;IACrC,UAAU,IAAI,MAAM,EAAE;IAWtB;;;;;;;;OAQG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO;IAoB/D;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO;IAiBlE,8CAA8C;IAC9C,UAAU,IAAI,WAAW,EAAE;IAM3B;;;OAGG;IACH,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAkBnC,4EAA4E;IAC5E,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAelC,uCAAuC;IACvC,SAAS,IAAI,UAAU,EAAE;IAMzB,qDAAqD;IACrD,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAkBjC,2EAA2E;IAC3E,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAejC,0DAA0D;IAC1D,YAAY,IAAI,aAAa,EAAE;IAM/B,yDAAyD;IACzD,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAkBvC,+EAA+E;IAC/E,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAepC,kEAAkE;IAClE,IAAI,QAAQ,IAAI,QAAQ,CAEvB;CACF"}
|
|
1
|
+
{"version":3,"file":"workspace-yaml-editor.d.ts","sourceRoot":"","sources":["../../../core/src/workspace-yaml-editor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,QAAQ,EAA6C,MAAM,MAAM,CAAC;AAC3E,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,UAAU,EACX,MAAM,uBAAuB,CAAC;AAE/B;;;;;GAKG;AACH,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,GAAG,CAAW;IAEtB,OAAO;IAKP,yCAAyC;IACzC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB;IASlD,qEAAqE;IACrE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB;IAKpD,2EAA2E;IAC3E,IAAI,IAAI,IAAI;IAIZ,iEAAiE;IACjE,QAAQ,IAAI,MAAM;IAMlB,wDAAwD;IACxD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,SAAS;IAKpD,oCAAoC;IACpC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAMrD;;;OAGG;IACH,cAAc,CAAC,OAAO,SAAY,GAAG,kBAAkB,GAAG,SAAS;IAOnE;;;OAGG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,IAAI;IAoB1E;;OAEG;IACH,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAS5D,OAAO,CAAC,sBAAsB;IAQ9B,0BAA0B;IAC1B,aAAa,IAAI,oBAAoB,EAAE;IAMvC,uCAAuC;IACvC,YAAY,CAAC,SAAS,EAAE,oBAAoB,GAAG,IAAI;IAwBnD,gCAAgC;IAChC,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAiBpC;;;;OAIG;IACH,YAAY,CAAC,GAAG,EAAE,oBAAoB,GAAG,IAAI;IA0B7C;;;;;OAKG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAgBnC,qCAAqC;IACrC,UAAU,IAAI,MAAM,EAAE;IAWtB;;;;;;;;OAQG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO;IAoB/D;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO;IAiBlE,8CAA8C;IAC9C,UAAU,IAAI,WAAW,EAAE;IAM3B;;;OAGG;IACH,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAkBnC,4EAA4E;IAC5E,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAelC,uCAAuC;IACvC,SAAS,IAAI,UAAU,EAAE;IAMzB,qDAAqD;IACrD,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAkBjC,2EAA2E;IAC3E,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAejC,0DAA0D;IAC1D,YAAY,IAAI,aAAa,EAAE;IAM/B,yDAAyD;IACzD,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAkBvC,+EAA+E;IAC/E,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAepC,kEAAkE;IAClE,IAAI,QAAQ,IAAI,QAAQ,CAEvB;CACF"}
|
package/dist/deploy/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { makeDeployHandle, pluginRegistry } from '../chunk-6E6PKKAD.js';
|
|
2
|
-
import { portableSpawnSync, portableSpawn } from '../chunk-
|
|
2
|
+
import { portableSpawnSync, portableSpawn } from '../chunk-26YCXWCU.js';
|
|
3
|
+
import '../chunk-ZAP2BDHG.js';
|
|
3
4
|
import '../chunk-TJRWGMD2.js';
|
|
4
5
|
import '../chunk-OUWNTFDG.js';
|
|
5
6
|
import '../chunk-DZCK7GRW.js';
|
|
@@ -8,7 +9,6 @@ import '../chunk-GEEW6SY2.js';
|
|
|
8
9
|
import '../chunk-F3HNW354.js';
|
|
9
10
|
import '../chunk-MENCWIHW.js';
|
|
10
11
|
import '../chunk-K5GBV4SA.js';
|
|
11
|
-
import '../chunk-ZAP2BDHG.js';
|
|
12
12
|
import '../chunk-JB35MVBN.js';
|
|
13
13
|
import '../chunk-NSBPE2FW.js';
|
|
14
14
|
import * as z from 'zod';
|
package/dist/discovery/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { AGENT_COMPANION_DIRS, AssetKindRegistry, BUILTIN_PROVIDERS, DEFAULT_ATOMIZATION_POLICY, DOMAIN_MD_FILENAME, SEMVER_RE, SKILL_COMPANION_DIRS, SourceConfigSchema, VERSION, agentProvider, assignDomain, buildDomainIndex, buildRequiresGraph, closeOverReferences, computeDeterministicHash, computeDeterministicHashDetailed, connectorProvider, contractProvider, createDefaultRegistry, createNodeAssetFs, decodeManifestSourceConfig, detectCycles, discoverAssetsInTree, discoverAssetsInTreeEntries, discoverFromManifest, extractPathCandidates, extractRequires, extractSlashCommands, isDomainMdPath, isExcludedDevPath, isManifestMode, lintUncoveredReferences, loadMergedSourceConfig, loadSourceConfig, manifestToSourceConfig, mcpServerProvider, mergeSourceConfigs, parseDomainMd, parseSourceConfig, personaProvider, presetProvider, promptProvider, readManifestSourceConfig, rulesetProvider, scanAssetReferences, scanSlashCommandNames, skillProvider, validateDomains, validateSourceConfig } from '../chunk-
|
|
1
|
+
export { AGENT_COMPANION_DIRS, AssetKindRegistry, BUILTIN_PROVIDERS, DEFAULT_ATOMIZATION_POLICY, DOMAIN_MD_FILENAME, SEMVER_RE, SKILL_COMPANION_DIRS, SourceConfigSchema, VERSION, agentProvider, assignDomain, buildDomainIndex, buildRequiresGraph, closeOverReferences, computeDeterministicHash, computeDeterministicHashDetailed, connectorProvider, contractProvider, createDefaultRegistry, createNodeAssetFs, decodeManifestSourceConfig, detectCycles, discoverAssetsInTree, discoverAssetsInTreeEntries, discoverFromManifest, extractPathCandidates, extractRequires, extractSlashCommands, isDomainMdPath, isExcludedDevPath, isManifestMode, lintUncoveredReferences, loadMergedSourceConfig, loadSourceConfig, manifestToSourceConfig, mcpServerProvider, mergeSourceConfigs, parseDomainMd, parseSourceConfig, personaProvider, presetProvider, promptProvider, readManifestSourceConfig, rulesetProvider, scanAssetReferences, scanSlashCommandNames, skillProvider, validateDomains, validateSourceConfig } from '../chunk-B6SSXVF2.js';
|
|
2
2
|
import '../chunk-JXT46QFC.js';
|
|
3
3
|
import '../chunk-DZCK7GRW.js';
|
|
4
4
|
import '../chunk-BQCGFPHW.js';
|
|
5
5
|
import '../chunk-GEEW6SY2.js';
|
|
6
|
-
import '../chunk-
|
|
6
|
+
import '../chunk-IRORTHGA.js';
|
|
7
7
|
import '../chunk-NSBPE2FW.js';
|
|
8
8
|
//# sourceMappingURL=index.js.map
|
|
9
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import { logErr, logOk, logInfo } from './chunk-
|
|
2
|
-
import './chunk-
|
|
3
|
-
import './chunk-
|
|
4
|
-
import
|
|
1
|
+
import { logErr, logOk, logInfo } from './chunk-DNFIKRO6.js';
|
|
2
|
+
import './chunk-X57AMTAH.js';
|
|
3
|
+
import './chunk-LCTRCWBK.js';
|
|
4
|
+
import './chunk-CGYEHQOX.js';
|
|
5
|
+
import { WorkspaceYamlEditor } from './chunk-26YCXWCU.js';
|
|
6
|
+
import './chunk-ZAP2BDHG.js';
|
|
5
7
|
import './chunk-TJRWGMD2.js';
|
|
6
8
|
import { sourceCacheKey, sourceShortName, getGlobalCacheDir } from './chunk-OUWNTFDG.js';
|
|
7
9
|
import './chunk-DZCK7GRW.js';
|
|
@@ -10,13 +12,11 @@ import './chunk-GEEW6SY2.js';
|
|
|
10
12
|
import './chunk-F3HNW354.js';
|
|
11
13
|
import './chunk-MENCWIHW.js';
|
|
12
14
|
import './chunk-K5GBV4SA.js';
|
|
13
|
-
import './chunk-ZAP2BDHG.js';
|
|
14
15
|
import './chunk-JB35MVBN.js';
|
|
15
16
|
import './chunk-KTBKW2FI.js';
|
|
16
17
|
import './chunk-UQ6LFBPZ.js';
|
|
17
|
-
import './chunk-
|
|
18
|
-
import './chunk-
|
|
19
|
-
import './chunk-CGYEHQOX.js';
|
|
18
|
+
import './chunk-IEX5YV4R.js';
|
|
19
|
+
import './chunk-IRORTHGA.js';
|
|
20
20
|
import './chunk-NSBPE2FW.js';
|
|
21
21
|
import { spawnSync } from 'child_process';
|
|
22
22
|
import { existsSync, mkdirSync } from 'fs';
|
|
@@ -80,5 +80,5 @@ function ensureSourcesCloned(projectDir, opts = {}) {
|
|
|
80
80
|
}
|
|
81
81
|
|
|
82
82
|
export { ensureSourcesCloned };
|
|
83
|
-
//# sourceMappingURL=ensure-sources-
|
|
84
|
-
//# sourceMappingURL=ensure-sources-
|
|
83
|
+
//# sourceMappingURL=ensure-sources-CHC7X7AJ.js.map
|
|
84
|
+
//# sourceMappingURL=ensure-sources-CHC7X7AJ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../cli/src/ensure-sources.ts"],"names":[],"mappings":"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","file":"ensure-sources-
|
|
1
|
+
{"version":3,"sources":["../cli/src/ensure-sources.ts"],"names":[],"mappings":"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","file":"ensure-sources-CHC7X7AJ.js","sourcesContent":["/**\n * ensure-sources.ts — hydrate the `~/.skaile/cache/sources/` clone cache from a\n * project's `skaile.yaml` `sources:` entries.\n *\n * Called by `skaile init` (idempotent: no-op when no sources declared) and\n * `skaile install` so checking out a project pulls its source clones onto\n * the local machine.\n */\n\nimport { spawnSync } from \"node:child_process\";\nimport { existsSync, mkdirSync } from \"node:fs\";\nimport * as path from \"node:path\";\nimport {\n getGlobalCacheDir,\n type SourceEntry,\n sourceCacheKey,\n sourceShortName,\n WorkspaceYamlEditor,\n} from \"@skaile/workspaces/core\";\nimport { logErr, logInfo, logOk } from \"./helpers.ts\";\n\nfunction sourceClonePath(key: string): string {\n return path.join(getGlobalCacheDir(), key);\n}\n\nexport interface EnsureResult {\n cloned: string[];\n cached: string[];\n failed: string[];\n}\n\n/** Load `sources:` from a project's `skaile.yaml`, or `null` when unavailable. */\nfunction loadProjectSources(yamlPath: string, quiet: boolean): SourceEntry[] | null {\n try {\n return WorkspaceYamlEditor.load(yamlPath).getSources();\n } catch (err) {\n if (!quiet) {\n logErr(`Could not read ${yamlPath}: ${err instanceof Error ? err.message : String(err)}`);\n }\n return null;\n }\n}\n\n/**\n * Hydrate a single source entry into `result`: skip when already cached,\n * otherwise clone and record success/failure. Mutates `result` in place.\n */\nfunction hydrateSourceEntry(entry: SourceEntry, quiet: boolean, result: EnsureResult): void {\n const key = sourceCacheKey(entry.url);\n const slug = sourceShortName(entry.url);\n const dest = sourceClonePath(key);\n if (existsSync(dest)) {\n result.cached.push(slug);\n return;\n }\n mkdirSync(path.dirname(dest), { recursive: true });\n const args = [\"clone\", entry.url, dest];\n if (entry.pin) args.splice(1, 0, \"--branch\", entry.pin);\n const clone = spawnSync(\"git\", args, { stdio: quiet ? \"pipe\" : \"inherit\" });\n if (clone.status !== 0) {\n result.failed.push(slug);\n if (quiet) {\n logErr(`git clone failed for ${entry.url}`);\n }\n return;\n }\n result.cloned.push(slug);\n}\n\n/** Log a full-hydrate summary of cloned + reused-cached entries. */\nfunction logHydrateSummary(result: EnsureResult): void {\n for (const n of result.cloned) logOk(`Cloned source \"${n}\".`);\n if (result.cached.length > 0) {\n logInfo(`Reused cached clones: ${result.cached.join(\", \")}`);\n }\n}\n\n/**\n * Walk `projectDir/skaile.yaml` `sources:` and clone any entries whose\n * clone directory does not yet exist under `~/.skaile/cache/sources/`. Existing\n * clones are left untouched — this is hydration, not sync.\n *\n * Quiet by default: when `quiet: true` the helper only prints failures.\n * On full hydrate (`quiet: false`) it logs each cloned/cached entry.\n */\nexport function ensureSourcesCloned(\n projectDir: string,\n opts: { quiet?: boolean } = {},\n): EnsureResult {\n const result: EnsureResult = { cloned: [], cached: [], failed: [] };\n const yamlPath = path.join(projectDir, \"skaile.yaml\");\n if (!existsSync(yamlPath)) return result;\n\n const quiet = opts.quiet ?? false;\n const sources = loadProjectSources(yamlPath, quiet);\n if (sources === null) return result;\n if (sources.length === 0) return result;\n\n for (const entry of sources) {\n hydrateSourceEntry(entry, quiet, result);\n }\n\n if (!quiet) {\n logHydrateSummary(result);\n }\n\n return result;\n}\n"]}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
export { BoxConnector, createConnector4 as createConnector } from '../../chunk-
|
|
1
|
+
export { BoxConnector, createConnector4 as createConnector } from '../../chunk-GWDZW44L.js';
|
|
2
2
|
import '../../chunk-BDUANIAR.js';
|
|
3
3
|
import '../../chunk-6E6PKKAD.js';
|
|
4
|
-
import '../../chunk-
|
|
4
|
+
import '../../chunk-4N5XR5DQ.js';
|
|
5
5
|
import '../../chunk-DEYYRFQU.js';
|
|
6
6
|
import '../../chunk-IFGTRL2I.js';
|
|
7
|
-
import '../../chunk-
|
|
7
|
+
import '../../chunk-26YCXWCU.js';
|
|
8
|
+
import '../../chunk-ZAP2BDHG.js';
|
|
8
9
|
import '../../chunk-TJRWGMD2.js';
|
|
9
10
|
import '../../chunk-OUWNTFDG.js';
|
|
10
11
|
import '../../chunk-DZCK7GRW.js';
|
|
@@ -13,7 +14,6 @@ import '../../chunk-GEEW6SY2.js';
|
|
|
13
14
|
import '../../chunk-F3HNW354.js';
|
|
14
15
|
import '../../chunk-MENCWIHW.js';
|
|
15
16
|
import '../../chunk-K5GBV4SA.js';
|
|
16
|
-
import '../../chunk-ZAP2BDHG.js';
|
|
17
17
|
import '../../chunk-JB35MVBN.js';
|
|
18
18
|
import '../../chunk-NSBPE2FW.js';
|
|
19
19
|
//# sourceMappingURL=box.js.map
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
export { DeployConnector, createConnector2 as createConnector } from '../../chunk-
|
|
1
|
+
export { DeployConnector, createConnector2 as createConnector } from '../../chunk-GWDZW44L.js';
|
|
2
2
|
import '../../chunk-BDUANIAR.js';
|
|
3
3
|
import '../../chunk-6E6PKKAD.js';
|
|
4
|
-
import '../../chunk-
|
|
4
|
+
import '../../chunk-4N5XR5DQ.js';
|
|
5
5
|
import '../../chunk-DEYYRFQU.js';
|
|
6
6
|
import '../../chunk-IFGTRL2I.js';
|
|
7
|
-
import '../../chunk-
|
|
7
|
+
import '../../chunk-26YCXWCU.js';
|
|
8
|
+
import '../../chunk-ZAP2BDHG.js';
|
|
8
9
|
import '../../chunk-TJRWGMD2.js';
|
|
9
10
|
import '../../chunk-OUWNTFDG.js';
|
|
10
11
|
import '../../chunk-DZCK7GRW.js';
|
|
@@ -13,7 +14,6 @@ import '../../chunk-GEEW6SY2.js';
|
|
|
13
14
|
import '../../chunk-F3HNW354.js';
|
|
14
15
|
import '../../chunk-MENCWIHW.js';
|
|
15
16
|
import '../../chunk-K5GBV4SA.js';
|
|
16
|
-
import '../../chunk-ZAP2BDHG.js';
|
|
17
17
|
import '../../chunk-JB35MVBN.js';
|
|
18
18
|
import '../../chunk-NSBPE2FW.js';
|
|
19
19
|
//# sourceMappingURL=deploy.js.map
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
export { DevServerConnector, createConnector3 as createConnector } from '../../chunk-
|
|
1
|
+
export { DevServerConnector, createConnector3 as createConnector } from '../../chunk-GWDZW44L.js';
|
|
2
2
|
import '../../chunk-BDUANIAR.js';
|
|
3
3
|
import '../../chunk-6E6PKKAD.js';
|
|
4
|
-
import '../../chunk-
|
|
4
|
+
import '../../chunk-4N5XR5DQ.js';
|
|
5
5
|
import '../../chunk-DEYYRFQU.js';
|
|
6
6
|
import '../../chunk-IFGTRL2I.js';
|
|
7
|
-
import '../../chunk-
|
|
7
|
+
import '../../chunk-26YCXWCU.js';
|
|
8
|
+
import '../../chunk-ZAP2BDHG.js';
|
|
8
9
|
import '../../chunk-TJRWGMD2.js';
|
|
9
10
|
import '../../chunk-OUWNTFDG.js';
|
|
10
11
|
import '../../chunk-DZCK7GRW.js';
|
|
@@ -13,7 +14,6 @@ import '../../chunk-GEEW6SY2.js';
|
|
|
13
14
|
import '../../chunk-F3HNW354.js';
|
|
14
15
|
import '../../chunk-MENCWIHW.js';
|
|
15
16
|
import '../../chunk-K5GBV4SA.js';
|
|
16
|
-
import '../../chunk-ZAP2BDHG.js';
|
|
17
17
|
import '../../chunk-JB35MVBN.js';
|
|
18
18
|
import '../../chunk-NSBPE2FW.js';
|
|
19
19
|
//# sourceMappingURL=devserver.js.map
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
export { FlowAdapter, createConnector } from '../../../chunk-
|
|
1
|
+
export { FlowAdapter, createConnector } from '../../../chunk-GWDZW44L.js';
|
|
2
2
|
import '../../../chunk-BDUANIAR.js';
|
|
3
3
|
import '../../../chunk-6E6PKKAD.js';
|
|
4
|
-
export { isBlocking } from '../../../chunk-
|
|
4
|
+
export { isBlocking } from '../../../chunk-4N5XR5DQ.js';
|
|
5
5
|
import '../../../chunk-DEYYRFQU.js';
|
|
6
6
|
import '../../../chunk-IFGTRL2I.js';
|
|
7
|
-
import '../../../chunk-
|
|
7
|
+
import '../../../chunk-26YCXWCU.js';
|
|
8
|
+
import '../../../chunk-ZAP2BDHG.js';
|
|
8
9
|
import '../../../chunk-TJRWGMD2.js';
|
|
9
10
|
import '../../../chunk-OUWNTFDG.js';
|
|
10
11
|
import '../../../chunk-DZCK7GRW.js';
|
|
@@ -13,7 +14,6 @@ import '../../../chunk-GEEW6SY2.js';
|
|
|
13
14
|
import '../../../chunk-F3HNW354.js';
|
|
14
15
|
import '../../../chunk-MENCWIHW.js';
|
|
15
16
|
import '../../../chunk-K5GBV4SA.js';
|
|
16
|
-
import '../../../chunk-ZAP2BDHG.js';
|
|
17
17
|
import '../../../chunk-JB35MVBN.js';
|
|
18
18
|
import '../../../chunk-NSBPE2FW.js';
|
|
19
19
|
//# sourceMappingURL=adapter.js.map
|
|
@@ -82,7 +82,10 @@ export declare function isBlocking(status: NodeStatus): boolean;
|
|
|
82
82
|
* @param completedIds - Set of node IDs already known to be complete before this call.
|
|
83
83
|
* @param skippedIds - Set of node IDs that were explicitly skipped. Defaults to an empty set.
|
|
84
84
|
* @returns Array of node IDs whose hard dependencies are now fully satisfied and that
|
|
85
|
-
* were not already available before `justCompleted` finished.
|
|
85
|
+
* were not already available before `justCompleted` finished. Unlike {@link skillNodes}-based
|
|
86
|
+
* helpers, this walks raw edge targets and does not filter by node type — if a `group`,
|
|
87
|
+
* `sub-flow`, or `router` node is a direct successor, its ID can appear here. Callers that
|
|
88
|
+
* dispatch these IDs as runnable skill nodes are responsible for filtering non-`'skill'` IDs.
|
|
86
89
|
* @docLink packages/flow-engine/concepts#resolve-next-nodes
|
|
87
90
|
*/
|
|
88
91
|
export declare function resolveNextNodes(flow: FlowDefinition, justCompleted: string, completedIds: Set<string>, skippedIds?: Set<string>): string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/engine/engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAGd,SAAS,EACT,qBAAqB,EAErB,UAAU,EACX,MAAM,YAAY,CAAC;AA+BpB;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,cAAc,EACpB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,UAAU,GAAE,GAAG,CAAC,MAAM,CAAa,EACnC,UAAU,GAAE,GAAG,CAAC,MAAM,CAAa,GAClC,SAAS,CA+EX;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,cAAc,EACpB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAC5C,SAAS,CA6DX;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAEtD;AAED
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/engine/engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAGd,SAAS,EACT,qBAAqB,EAErB,UAAU,EACX,MAAM,YAAY,CAAC;AA+BpB;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,cAAc,EACpB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,UAAU,GAAE,GAAG,CAAC,MAAM,CAAa,EACnC,UAAU,GAAE,GAAG,CAAC,MAAM,CAAa,GAClC,SAAS,CA+EX;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,cAAc,EACpB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAC5C,SAAS,CA6DX;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAEtD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,cAAc,EACpB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,UAAU,GAAE,GAAG,CAAC,MAAM,CAAa,GAClC,MAAM,EAAE,CAmBV;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAgB1F"}
|
|
@@ -14,8 +14,26 @@ export type EdgeType = "flow" | "parallel" | "optional";
|
|
|
14
14
|
/**
|
|
15
15
|
* A single node in a flow definition.
|
|
16
16
|
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
17
|
+
* Four node kinds exist:
|
|
18
|
+
* - `'skill'` — executed: the runner invokes `data.skill`; completion is reported via
|
|
19
|
+
* the standard `complete_node` tool call. The only kind the engine tracks
|
|
20
|
+
* in {@link NodeState} today (see below).
|
|
21
|
+
* - `'sub-flow'` — non-executable: no skill runs. Conceptually completes when the delegated
|
|
22
|
+
* flow named by `data.flow` finishes — driving that nested run is entirely
|
|
23
|
+
* a host/orchestrator concern, not something this package implements.
|
|
24
|
+
* - `'router'` — non-executable: no skill runs. Conceptually completes when a route from
|
|
25
|
+
* `data.routes` is chosen. `data.routes` is evaluated in order — the first
|
|
26
|
+
* entry whose `condition` holds wins; `condition: "default"` is a
|
|
27
|
+
* catch-all; `target: null` means "choose to skip".
|
|
28
|
+
* - `'group'` — visual only: a canvas container used by the flow editor.
|
|
29
|
+
*
|
|
30
|
+
* Today the engine (`computeFlowState`, `computeFlowStateFromSnapshots`,
|
|
31
|
+
* `computeSkippable`) tracks only `'skill'` nodes — `'sub-flow'`, `'router'`, and `'group'`
|
|
32
|
+
* are all excluded from {@link NodeState}, edge computation, and dependency blocking, the
|
|
33
|
+
* same as pure visual containers. `'sub-flow'` and `'router'` are recognized node kinds so
|
|
34
|
+
* consumers don't need to cast around the type, and their intended completion semantics are
|
|
35
|
+
* documented here, but wiring them into the engine's dependency graph (so dependents
|
|
36
|
+
* actually wait on them) is downstream/future work.
|
|
19
37
|
*
|
|
20
38
|
* Note: `node.id` is the canvas identifier; `node.data.skill` is the skill that runs.
|
|
21
39
|
* They may differ when the same skill is aliased to multiple canvas positions.
|
|
@@ -26,10 +44,11 @@ export interface FlowNode {
|
|
|
26
44
|
/** Canvas-unique node identifier. Used as the key in completed/running/skipped sets. */
|
|
27
45
|
id: string;
|
|
28
46
|
/**
|
|
29
|
-
* Node kind
|
|
30
|
-
*
|
|
47
|
+
* Node kind — see the type-level doc above for the full semantics of each kind. Only
|
|
48
|
+
* `'skill'` is tracked by the engine today; `'sub-flow'`, `'router'`, and `'group'` are
|
|
49
|
+
* all ignored by `computeFlowState` / `computeFlowStateFromSnapshots` / `computeSkippable`.
|
|
31
50
|
*/
|
|
32
|
-
type: "skill" | "group";
|
|
51
|
+
type: "skill" | "group" | "sub-flow" | "router";
|
|
33
52
|
/** ID of the parent group node when this node is nested inside a group container. */
|
|
34
53
|
parentNode?: string;
|
|
35
54
|
/** Visual position on the canvas — not used by the engine. */
|
|
@@ -70,6 +89,22 @@ export interface FlowNode {
|
|
|
70
89
|
/** File paths to skip checking (guaranteed by prior nodes in this flow). */
|
|
71
90
|
skip_checks?: string[];
|
|
72
91
|
};
|
|
92
|
+
/** `'sub-flow'` nodes only: ID of the delegated flow whose completion completes this node. */
|
|
93
|
+
flow?: string;
|
|
94
|
+
/**
|
|
95
|
+
* `'router'` nodes only: ordered routing table. Evaluated top to bottom — the first
|
|
96
|
+
* entry whose `condition` holds is taken. `condition: "default"` matches unconditionally
|
|
97
|
+
* (a catch-all, conventionally placed last). `target: null` means the route resolves to
|
|
98
|
+
* "skip" rather than to another node. This package does not itself parse or evaluate
|
|
99
|
+
* `condition` — it is an opaque string whose format (expression language, predicate
|
|
100
|
+
* syntax, or named enum value) is defined by whichever host/orchestrator evaluates
|
|
101
|
+
* routes. See `docs/flow-execution.md#node-types` — concept-forge's
|
|
102
|
+
* `shared/flow-extended.ts` is a reference implementation.
|
|
103
|
+
*/
|
|
104
|
+
routes?: Array<{
|
|
105
|
+
condition: string;
|
|
106
|
+
target: string | null;
|
|
107
|
+
}>;
|
|
73
108
|
[key: string]: any;
|
|
74
109
|
};
|
|
75
110
|
}
|
|
@@ -278,7 +313,7 @@ export interface NodeState {
|
|
|
278
313
|
export interface FlowState {
|
|
279
314
|
/** ID of the flow this state was computed from (`FlowDefinition.id`). */
|
|
280
315
|
flowId: string;
|
|
281
|
-
/** Per-node state for every skill node in the flow (group nodes excluded). */
|
|
316
|
+
/** Per-node state for every skill node in the flow (group, sub-flow, and router nodes excluded). */
|
|
282
317
|
nodes: NodeState[];
|
|
283
318
|
/** IDs of nodes whose status is `'available'` — ready to be dispatched by the runner. */
|
|
284
319
|
available: string[];
|