@skaile/workspaces 1.9.1 → 1.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +56 -0
- package/dist/{asset-feeds-LD6QKJ2R.js → asset-feeds-FMV3SJVQ.js} +4 -4
- package/dist/{asset-feeds-LD6QKJ2R.js.map → asset-feeds-FMV3SJVQ.js.map} +1 -1
- package/dist/asset-manager/index.js +1 -1
- package/dist/bridge/drivers/claude-sdk.js +1 -1
- package/dist/bridge/drivers/codex.js +1 -1
- package/dist/bridge/drivers/continue.js +2 -2
- package/dist/bridge/drivers/echo.js +201 -1
- package/dist/bridge/drivers/echo.js.map +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 +2 -2
- package/dist/bridge/src/drivers/echo.d.ts +16 -0
- package/dist/bridge/src/drivers/echo.d.ts.map +1 -1
- package/dist/bridge/src/drivers/flow-script.d.ts +129 -0
- package/dist/bridge/src/drivers/flow-script.d.ts.map +1 -0
- package/dist/bridge/src/types.d.ts +32 -1
- package/dist/bridge/src/types.d.ts.map +1 -1
- package/dist/{chunk-JCKGYBWY.js → chunk-2257NSNY.js} +74 -3
- package/dist/chunk-2257NSNY.js.map +1 -0
- package/dist/{chunk-VWSR6K7C.js → chunk-2ZP6KIIQ.js} +2 -2
- package/dist/{chunk-VWSR6K7C.js.map → chunk-2ZP6KIIQ.js.map} +1 -1
- package/dist/{chunk-NKTFEV7Q.js → chunk-6XQ5QG63.js} +4 -4
- package/dist/{chunk-NKTFEV7Q.js.map → chunk-6XQ5QG63.js.map} +1 -1
- package/dist/{chunk-TNSCHS4I.js → chunk-APHTT5GE.js} +2 -2
- package/dist/{chunk-TNSCHS4I.js.map → chunk-APHTT5GE.js.map} +1 -1
- package/dist/{chunk-5F3GULZT.js → chunk-DEBMR6MK.js} +3 -3
- package/dist/{chunk-5F3GULZT.js.map → chunk-DEBMR6MK.js.map} +1 -1
- package/dist/{chunk-UQ5FK2AB.js → chunk-FRD4NU3W.js} +3 -3
- package/dist/{chunk-UQ5FK2AB.js.map → chunk-FRD4NU3W.js.map} +1 -1
- package/dist/{chunk-A2CDJRRH.js → chunk-GEZMBQ3R.js} +3 -3
- package/dist/{chunk-A2CDJRRH.js.map → chunk-GEZMBQ3R.js.map} +1 -1
- package/dist/{chunk-MBGSJM7H.js → chunk-IFCHOBEF.js} +6 -6
- package/dist/{chunk-MBGSJM7H.js.map → chunk-IFCHOBEF.js.map} +1 -1
- package/dist/{chunk-HKX5VSWQ.js → chunk-LVQO4X4U.js} +3 -3
- package/dist/{chunk-HKX5VSWQ.js.map → chunk-LVQO4X4U.js.map} +1 -1
- package/dist/{chunk-5LPARFB5.js → chunk-PU3FGN4T.js} +2 -2
- package/dist/{chunk-5LPARFB5.js.map → chunk-PU3FGN4T.js.map} +1 -1
- package/dist/{chunk-6Q7CNVU3.js → chunk-SMWXVW6Z.js} +3 -3
- package/dist/{chunk-6Q7CNVU3.js.map → chunk-SMWXVW6Z.js.map} +1 -1
- package/dist/{chunk-SBU73P7R.js → chunk-TR6E5JOF.js} +6 -6
- package/dist/{chunk-SBU73P7R.js.map → chunk-TR6E5JOF.js.map} +1 -1
- package/dist/{chunk-HGLQYLZB.js → chunk-YNEJXDCZ.js} +32 -8
- package/dist/chunk-YNEJXDCZ.js.map +1 -0
- package/dist/{chunk-JPKWPX5Q.js → chunk-ZDRAMXBS.js} +3 -3
- package/dist/{chunk-JPKWPX5Q.js.map → chunk-ZDRAMXBS.js.map} +1 -1
- package/dist/cli/index.js +27 -27
- package/dist/connectors/index.js +1 -1
- package/dist/connectors/src/connector-prompt.d.ts +23 -0
- package/dist/connectors/src/connector-prompt.d.ts.map +1 -1
- package/dist/connectors/src/index.d.ts +1 -1
- package/dist/connectors/src/index.d.ts.map +1 -1
- package/dist/{ensure-sources-S6QBARWF.js → ensure-sources-OJ5GIRZF.js} +4 -4
- package/dist/{ensure-sources-S6QBARWF.js.map → ensure-sources-OJ5GIRZF.js.map} +1 -1
- package/dist/factory-assets/connectors/box.js +1 -1
- package/dist/factory-assets/connectors/deploy.js +1 -1
- package/dist/factory-assets/connectors/devserver.js +1 -1
- package/dist/factory-assets/connectors/flow/adapter.js +1 -1
- package/dist/factory-assets/connectors/flow/run-flow.js +2 -2
- package/dist/factory-assets/connectors/flow.js +1 -1
- package/dist/factory-assets/connectors/git.js +1 -1
- package/dist/factory-assets/connectors/gmail.js +1 -1
- package/dist/factory-assets/connectors/googledrive.js +1 -1
- package/dist/factory-assets/connectors/local.js +1 -1
- package/dist/factory-assets/connectors/mattermost.js +1 -1
- package/dist/factory-assets/connectors/memory.js +1 -1
- package/dist/factory-assets/connectors/minio.js +1 -1
- package/dist/factory-assets/connectors/postgres.js +1 -1
- package/dist/factory-assets/connectors/s3.js +1 -1
- package/dist/factory-assets/connectors/sharepoint.js +1 -1
- package/dist/factory-assets/connectors/sqlite.js +1 -1
- package/dist/factory-assets/connectors/static-server.js +1 -1
- package/dist/factory-assets/connectors/tunnel.js +1 -1
- package/dist/factory-assets/connectors/webdav.js +1 -1
- package/dist/factory-assets/connectors/xstate-store.js +1 -1
- package/dist/factory-assets/connectors/xstate.js +1 -1
- package/dist/{helpers-ZZZY7HUJ.js → helpers-PS37RNFV.js} +4 -4
- package/dist/{helpers-ZZZY7HUJ.js.map → helpers-PS37RNFV.js.map} +1 -1
- package/dist/{library-publish-NCMIFF3V.js → library-publish-CRG7JLDZ.js} +6 -6
- package/dist/{library-publish-NCMIFF3V.js.map → library-publish-CRG7JLDZ.js.map} +1 -1
- package/dist/{open-library-VFS6WIO7.js → open-library-5SRCSBSY.js} +5 -5
- package/dist/{open-library-VFS6WIO7.js.map → open-library-5SRCSBSY.js.map} +1 -1
- package/dist/{project-SC7TVEQ6.js → project-SM2VMQOZ.js} +5 -5
- package/dist/{project-SC7TVEQ6.js.map → project-SM2VMQOZ.js.map} +1 -1
- package/dist/run-group-engine/index.js.map +1 -1
- package/dist/run-group-engine/src/rollup.d.ts +5 -3
- package/dist/run-group-engine/src/rollup.d.ts.map +1 -1
- package/dist/runner/index.js +5 -5
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +1 -1
- package/dist/sdk/bridge.js +2 -2
- package/dist/sdk/index.js +5 -5
- package/dist/sdk/runner.js +5 -5
- package/dist/{setup-ETGRXSZG.js → setup-H3WCLOEH.js} +4 -4
- package/dist/{setup-ETGRXSZG.js.map → setup-H3WCLOEH.js.map} +1 -1
- package/dist/{source-Z5HNLF6J.js → source-Y7ZTBG2U.js} +6 -6
- package/dist/{source-Z5HNLF6J.js.map → source-Y7ZTBG2U.js.map} +1 -1
- package/dist/{source-manifest-publish-FA2KLZJ6.js → source-manifest-publish-SXJ6LF4S.js} +7 -7
- package/dist/{source-manifest-publish-FA2KLZJ6.js.map → source-manifest-publish-SXJ6LF4S.js.map} +1 -1
- package/dist/tui/index.js +5 -5
- package/dist/types/src/run-group.d.ts +2 -2
- package/dist/types/src/run-group.d.ts.map +1 -1
- package/dist/workspace-plugin/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-HGLQYLZB.js.map +0 -1
- package/dist/chunk-JCKGYBWY.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { GeminiDriver, GeminiFamilyDriver, geminiDriverTarget } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
1
|
+
export { GeminiDriver, GeminiFamilyDriver, geminiDriverTarget } from '../../chunk-6XQ5QG63.js';
|
|
2
|
+
import '../../chunk-FRD4NU3W.js';
|
|
3
3
|
import '../../chunk-BMQKMOQY.js';
|
|
4
4
|
import '../../chunk-GAH4YRCI.js';
|
|
5
|
-
import '../../chunk-
|
|
5
|
+
import '../../chunk-APHTT5GE.js';
|
|
6
6
|
import '../../chunk-6E6PKKAD.js';
|
|
7
7
|
import '../../chunk-JB35MVBN.js';
|
|
8
8
|
import '../../chunk-NSBPE2FW.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { SubprocessCliDriver, mapApiKeysToEnv, extractText, extractCost, extractTokens } from '../../chunk-
|
|
1
|
+
import { SubprocessCliDriver, mapApiKeysToEnv, extractText, extractCost, extractTokens } from '../../chunk-FRD4NU3W.js';
|
|
2
2
|
import '../../chunk-GAH4YRCI.js';
|
|
3
|
-
import { BUILTIN_DRIVER_CATALOG, getBridgeLogger } from '../../chunk-
|
|
3
|
+
import { BUILTIN_DRIVER_CATALOG, getBridgeLogger } from '../../chunk-APHTT5GE.js';
|
|
4
4
|
import '../../chunk-6E6PKKAD.js';
|
|
5
5
|
import '../../chunk-JB35MVBN.js';
|
|
6
6
|
import '../../chunk-NSBPE2FW.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { classifyGenericErrorMessage } from '../../chunk-GAH4YRCI.js';
|
|
2
|
-
import { BUILTIN_DRIVER_CATALOG, AgentDriver, getBridgeLogger } from '../../chunk-
|
|
2
|
+
import { BUILTIN_DRIVER_CATALOG, AgentDriver, getBridgeLogger } from '../../chunk-APHTT5GE.js';
|
|
3
3
|
import '../../chunk-6E6PKKAD.js';
|
|
4
4
|
import '../../chunk-JB35MVBN.js';
|
|
5
5
|
import '../../chunk-NSBPE2FW.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { SubprocessCliDriver, mapApiKeysToEnv, extractText, extractCost, extractTokens } from '../../chunk-
|
|
1
|
+
import { SubprocessCliDriver, mapApiKeysToEnv, extractText, extractCost, extractTokens } from '../../chunk-FRD4NU3W.js';
|
|
2
2
|
import '../../chunk-GAH4YRCI.js';
|
|
3
|
-
import { BUILTIN_DRIVER_CATALOG, getBridgeLogger } from '../../chunk-
|
|
3
|
+
import { BUILTIN_DRIVER_CATALOG, getBridgeLogger } from '../../chunk-APHTT5GE.js';
|
|
4
4
|
import '../../chunk-6E6PKKAD.js';
|
|
5
5
|
import '../../chunk-JB35MVBN.js';
|
|
6
6
|
import '../../chunk-NSBPE2FW.js';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { GeminiFamilyDriver } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
1
|
+
import { GeminiFamilyDriver } from '../../chunk-6XQ5QG63.js';
|
|
2
|
+
import '../../chunk-FRD4NU3W.js';
|
|
3
3
|
import { fetchProviderModels } from '../../chunk-BMQKMOQY.js';
|
|
4
4
|
import '../../chunk-GAH4YRCI.js';
|
|
5
|
-
import { BUILTIN_DRIVER_CATALOG, getBridgeLogger } from '../../chunk-
|
|
5
|
+
import { BUILTIN_DRIVER_CATALOG, getBridgeLogger } from '../../chunk-APHTT5GE.js';
|
|
6
6
|
import '../../chunk-6E6PKKAD.js';
|
|
7
7
|
import '../../chunk-JB35MVBN.js';
|
|
8
8
|
import '../../chunk-NSBPE2FW.js';
|
package/dist/bridge/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { BridgeRuntime, EventNormalizer, createRuntime, detectFileChange, detectFileChanges, summarizeToolCall, summarizeToolResult, validateApiKey } from '../chunk-
|
|
1
|
+
export { BridgeRuntime, EventNormalizer, createRuntime, detectFileChange, detectFileChanges, summarizeToolCall, summarizeToolResult, validateApiKey } from '../chunk-LVQO4X4U.js';
|
|
2
2
|
export { CLOUD_SECRET_ENV_KEYS, SUPPORTED_CLOUDS, buildClaudeCloudEnv } from '../chunk-ISQWMBKD.js';
|
|
3
3
|
export { dispatchCapability, filterRenderCapabilities, renderFallback } from '../chunk-RRVQAE5D.js';
|
|
4
4
|
export { STATIC_MODELS, fetchProviderModels, getModels, getStaticModels } from '../chunk-BMQKMOQY.js';
|
|
5
5
|
export { AccountUnavailableError, AuthError, classifyClaudeSdkError, reclassifyAuthAsAccountUnavailable } from '../chunk-GAH4YRCI.js';
|
|
6
|
-
export { AgentDriver, BUILTIN_DRIVER_CATALOG, DRIVER_CATALOG, createDriver, getBridgeLogger, listDrivers, listModelsForDriver, registerBuiltinDrivers } from '../chunk-
|
|
6
|
+
export { AgentDriver, BUILTIN_DRIVER_CATALOG, DRIVER_CATALOG, createDriver, getBridgeLogger, listDrivers, listModelsForDriver, registerBuiltinDrivers } from '../chunk-APHTT5GE.js';
|
|
7
7
|
import '../chunk-6E6PKKAD.js';
|
|
8
8
|
import '../chunk-JB35MVBN.js';
|
|
9
9
|
import '../chunk-NSBPE2FW.js';
|
|
@@ -24,6 +24,13 @@ export declare class EchoDriver extends AgentDriver {
|
|
|
24
24
|
private readonly log;
|
|
25
25
|
private running;
|
|
26
26
|
private readonly config;
|
|
27
|
+
/**
|
|
28
|
+
* Scripted-flow mode state (workspaces#396). Enabled by a `[test-flow]`
|
|
29
|
+
* sentinel chat message; once on, orchestrator-prompt turns are driven
|
|
30
|
+
* deterministically against `config.flowTestDriver`. `null` script ⇒ mode
|
|
31
|
+
* off (default echo behaviour, unchanged).
|
|
32
|
+
*/
|
|
33
|
+
private flowScript;
|
|
27
34
|
constructor(config: AgentConfig);
|
|
28
35
|
/**
|
|
29
36
|
* Test surface: returns the tool list the LLM would see for this turn.
|
|
@@ -52,6 +59,15 @@ export declare class EchoDriver extends AgentDriver {
|
|
|
52
59
|
* keyword above; never wired into normal chat flow.
|
|
53
60
|
*/
|
|
54
61
|
private runCapabilityKeyword;
|
|
62
|
+
/**
|
|
63
|
+
* Scripted-flow turn (workspaces#396). Reads the live flow state via the
|
|
64
|
+
* runner-injected `flowTestDriver` hook and executes the scripted next
|
|
65
|
+
* action(s) until the policy yields or emits a turn-ending action. Each
|
|
66
|
+
* mutation fires the adapter's `onChange` (→ host `state_changed`) and, when
|
|
67
|
+
* the runner wires the stimulus bus, queues the follow-up turn — so the
|
|
68
|
+
* driver advances one step at a time exactly like a real LLM orchestrator.
|
|
69
|
+
*/
|
|
70
|
+
private runScriptedFlowTurn;
|
|
55
71
|
abort(): Promise<void>;
|
|
56
72
|
kill(): void;
|
|
57
73
|
resetSession(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echo.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/echo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAMvE,OAAO,EACL,KAAK,WAAW,EAChB,WAAW,EAEX,KAAK,oBAAoB,EACzB,KAAK,UAAU,EAChB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"echo.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/echo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAMvE,OAAO,EACL,KAAK,WAAW,EAChB,WAAW,EAEX,KAAK,oBAAoB,EACzB,KAAK,UAAU,EAChB,MAAM,aAAa,CAAC;AASrB;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,UAAW,SAAQ,WAAW;IACzC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAK7B;IAEF,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAmC;IACvD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IAErC;;;;;OAKG;IACH,OAAO,CAAC,UAAU,CAA2B;gBAEjC,MAAM,EAAE,WAAW;IAK/B;;;;;OAKG;IACH,mBAAmB,IAAI,oBAAoB,EAAE;IAI7C;;;;;;OAMG;IACG,uBAAuB,CAC3B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,GACb,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,OAAO,CAAA;KAAE,CAAC;IAa9C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtB,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2E5C;;;;;OAKG;YACW,oBAAoB;IAqBlC;;;;;;;OAOG;YACW,mBAAmB;IAoD3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,IAAI,IAAI,IAAI;IAKN,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAInC,IAAI,SAAS,IAAI,OAAO,CAEvB;CACF;AAiHD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,YAAY,CAAC,WAAW,CAStD,CAAC"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scripted-flow decision logic for the echo driver.
|
|
3
|
+
*
|
|
4
|
+
* Pure, deterministic policy that maps a live {@link FlowExecution} snapshot
|
|
5
|
+
* (plus an optional per-node script) to the single next flow-adapter mutation
|
|
6
|
+
* the driver should emit this iteration. The echo driver calls this in a loop
|
|
7
|
+
* per turn (see `echo.ts`), executing each returned action against the
|
|
8
|
+
* runner-injected {@link FlowTestDriverHook} until it yields (`null`) or emits
|
|
9
|
+
* a turn-ending action.
|
|
10
|
+
*
|
|
11
|
+
* The policy mirrors what a real LLM orchestrator would do, but without an
|
|
12
|
+
* LLM: it reacts to state each turn, so a host can drive a flow to `complete`,
|
|
13
|
+
* park it at an approval/input gate, and exercise the reject/recover path
|
|
14
|
+
* simply by applying host mutations (`applyApproval`, `applyInput`, …) between
|
|
15
|
+
* turns. No new protocol, no flow-contract change — it only calls the existing
|
|
16
|
+
* FlowAdapter agent-tool operations.
|
|
17
|
+
*
|
|
18
|
+
* @docLink packages/bridge/drivers#scripted-flow
|
|
19
|
+
* @since 3.6.0
|
|
20
|
+
*/
|
|
21
|
+
import type { FlowExecution } from "@skaile/workspaces/types";
|
|
22
|
+
/**
|
|
23
|
+
* What the scripted driver should do when a node reaches its decision point.
|
|
24
|
+
*
|
|
25
|
+
* - `auto` (default): follow the flow's `autonomousMode` — `complete_node`
|
|
26
|
+
* when autonomous, else `request_approval`.
|
|
27
|
+
* - `complete`: always `complete_node` (autonomous-style, even if the flow's
|
|
28
|
+
* autonomousMode is false — the adapter allows it only when autonomous, so
|
|
29
|
+
* use with autonomous flows).
|
|
30
|
+
* - `approve`: always `request_approval` (park at an approval gate).
|
|
31
|
+
* - `input`: `request_input` once; after the host applies input, fall back to
|
|
32
|
+
* `auto` behaviour.
|
|
33
|
+
* - `skip`: `skip_node` (optional nodes only).
|
|
34
|
+
* - `fail`: `fail_node`. With `recoverable: false` (default) this is terminal.
|
|
35
|
+
* With `recoverable: true` the node returns to `available`; the driver
|
|
36
|
+
* re-emits the recoverable failure `failCount` times (default 1) and then
|
|
37
|
+
* proceeds as `auto` — it never deadlocks on a recoverable fail.
|
|
38
|
+
*/
|
|
39
|
+
export type OnRun = "auto" | "complete" | "approve" | "input" | "skip" | "fail";
|
|
40
|
+
/**
|
|
41
|
+
* What to do when a node returns to `available` after a rejection.
|
|
42
|
+
*
|
|
43
|
+
* - `retry` (default): re-drive it — `start_node` again, then its `onRun`.
|
|
44
|
+
* - `fail`: `fail_node(recoverable: false)` — exercises the terminal path.
|
|
45
|
+
*/
|
|
46
|
+
export type OnReject = "retry" | "fail";
|
|
47
|
+
/** Per-node scripting directive. All fields optional. */
|
|
48
|
+
export interface FlowNodeDirective {
|
|
49
|
+
onRun?: OnRun;
|
|
50
|
+
onReject?: OnReject;
|
|
51
|
+
/** For `onRun: "input"` — the input request shown to the host. */
|
|
52
|
+
input?: {
|
|
53
|
+
prompt?: string;
|
|
54
|
+
schema?: unknown;
|
|
55
|
+
};
|
|
56
|
+
/** For `onRun: "fail"` — whether the failure is recoverable. Default false. */
|
|
57
|
+
recoverable?: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* For `onRun: "fail"` with `recoverable: true` — how many recoverable
|
|
60
|
+
* failures to emit before the node proceeds as `auto`. Default 1. Counted
|
|
61
|
+
* from the node's own `errorHistory`, so the policy stays a pure function of
|
|
62
|
+
* state (no driver-instance bookkeeping) and never deadlocks.
|
|
63
|
+
*/
|
|
64
|
+
failCount?: number;
|
|
65
|
+
/** Summary text used for `complete_node` / `request_approval` / failures. */
|
|
66
|
+
summary?: string;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* A scripted-flow program. Empty (`{}`) means "canonical policy": start each
|
|
70
|
+
* available node, then complete (autonomous) or request approval (interactive)
|
|
71
|
+
* — enough to drive the autonomous-complete, approval-gate, and reject/recover
|
|
72
|
+
* scenarios with no per-node scripting at all.
|
|
73
|
+
*/
|
|
74
|
+
export interface FlowScript {
|
|
75
|
+
/** Per-node overrides, keyed by node id. */
|
|
76
|
+
nodes?: Record<string, FlowNodeDirective>;
|
|
77
|
+
/** Fallback directive for any node without its own entry. */
|
|
78
|
+
default?: FlowNodeDirective;
|
|
79
|
+
}
|
|
80
|
+
/** A single flow-adapter mutation the driver will execute. */
|
|
81
|
+
export type FlowAction = {
|
|
82
|
+
op: "start_node";
|
|
83
|
+
nodeId: string;
|
|
84
|
+
} | {
|
|
85
|
+
op: "complete_node";
|
|
86
|
+
nodeId: string;
|
|
87
|
+
summary: string;
|
|
88
|
+
} | {
|
|
89
|
+
op: "request_approval";
|
|
90
|
+
nodeId: string;
|
|
91
|
+
summary: string;
|
|
92
|
+
} | {
|
|
93
|
+
op: "request_input";
|
|
94
|
+
nodeId: string;
|
|
95
|
+
prompt: string;
|
|
96
|
+
schema: string;
|
|
97
|
+
} | {
|
|
98
|
+
op: "skip_node";
|
|
99
|
+
nodeId: string;
|
|
100
|
+
} | {
|
|
101
|
+
op: "fail_node";
|
|
102
|
+
nodeId: string;
|
|
103
|
+
message: string;
|
|
104
|
+
recoverable: boolean;
|
|
105
|
+
};
|
|
106
|
+
/** Whether an action ends the turn (driver stops looping after emitting it). */
|
|
107
|
+
export declare function isTurnEnding(action: FlowAction): boolean;
|
|
108
|
+
/** Map a {@link FlowAction} to the `executeOp` argument bag the adapter expects. */
|
|
109
|
+
export declare function actionArgs(action: FlowAction): Record<string, unknown>;
|
|
110
|
+
/**
|
|
111
|
+
* Decide the single next flow action for the current state, or `null` to yield
|
|
112
|
+
* (nothing to do this iteration — wait for a host mutation).
|
|
113
|
+
*
|
|
114
|
+
* Priority order: resolve approved gates → advance running nodes → start (or
|
|
115
|
+
* skip / terminally-fail) available nodes. Terminal flow states and gates with
|
|
116
|
+
* no decision / input yet yield.
|
|
117
|
+
*
|
|
118
|
+
* Pure — the fail bookkeeping (how many recoverable failures a node has already
|
|
119
|
+
* emitted) is read from the node's own `errorHistory`, so no external counter is
|
|
120
|
+
* needed and a recoverable `fail` directive can never deadlock.
|
|
121
|
+
*/
|
|
122
|
+
export declare function decideFlowAction(state: FlowExecution, script: FlowScript): FlowAction | null;
|
|
123
|
+
/**
|
|
124
|
+
* Parse a `[test-flow]` sentinel body into a {@link FlowScript}. An empty body
|
|
125
|
+
* yields the canonical (empty) script. Malformed JSON is a hard error so tests
|
|
126
|
+
* fail loudly rather than silently running the wrong policy.
|
|
127
|
+
*/
|
|
128
|
+
export declare function parseFlowScript(body: string): FlowScript;
|
|
129
|
+
//# sourceMappingURL=flow-script.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-script.d.ts","sourceRoot":"","sources":["../../../../bridge/src/drivers/flow-script.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAiB,MAAM,0BAA0B,CAAC;AAE7E;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAEhF;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;AAExC,yDAAyD;AACzD,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,kEAAkE;IAClE,KAAK,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC9C,+EAA+E;IAC/E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC1C,6DAA6D;IAC7D,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B;AAED,8DAA8D;AAC9D,MAAM,MAAM,UAAU,GAClB;IAAE,EAAE,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,EAAE,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACxD;IAAE,EAAE,EAAE,kBAAkB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,EAAE,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACvE;IAAE,EAAE,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,EAAE,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,CAAC;AAS/E,gFAAgF;AAChF,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAExD;AAED,oFAAoF;AACpF,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkBtE;AAMD;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,IAAI,CAoG5F;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAQxD"}
|
|
@@ -1,7 +1,29 @@
|
|
|
1
1
|
import { EventEmitter } from "node:events";
|
|
2
2
|
import type { Span, TelemetryProvider, Trace } from "@skaile/workspaces/telemetry";
|
|
3
|
-
import type { Capability, CredentialMint, RenderInvokedEvent, TokenUsage } from "@skaile/workspaces/types";
|
|
3
|
+
import type { Capability, CredentialMint, FlowExecution, RenderInvokedEvent, TokenUsage } from "@skaile/workspaces/types";
|
|
4
4
|
import type { ModelEntry } from "./models.js";
|
|
5
|
+
/**
|
|
6
|
+
* Test-only hook injected by the runner so a no-LLM driver (the echo driver's
|
|
7
|
+
* scripted-flow mode) can read flow state and drive flow-adapter mutations
|
|
8
|
+
* without an SDK/MCP round-trip. The runner wires this in `createActiveFlow`
|
|
9
|
+
* from the active FlowAdapter + handle.
|
|
10
|
+
*
|
|
11
|
+
* This is an internal runner↔driver interface — NOT part of any wire
|
|
12
|
+
* protocol or flow contract. Production drivers ignore it.
|
|
13
|
+
*
|
|
14
|
+
* @see packages/bridge/drivers/echo — scripted-flow mode
|
|
15
|
+
* @since 3.6.0
|
|
16
|
+
*/
|
|
17
|
+
export interface FlowTestDriverHook {
|
|
18
|
+
/** Current flow execution snapshot, or `null` when no flow is active. */
|
|
19
|
+
getState(): FlowExecution | null;
|
|
20
|
+
/**
|
|
21
|
+
* Execute a flow-adapter operation (`start_node`, `request_approval`,
|
|
22
|
+
* `complete_node`, `request_input`, `skip_node`, `fail_node`, …). Returns
|
|
23
|
+
* the adapter's JSON string result (or rejects on an illegal transition).
|
|
24
|
+
*/
|
|
25
|
+
execute(op: string, args: Record<string, unknown>): Promise<string>;
|
|
26
|
+
}
|
|
5
27
|
/**
|
|
6
28
|
* Minimal LLM tool descriptor used by the capability dispatch path. Mirrors
|
|
7
29
|
* the runner's `LLMTool` shape so drivers can consume registry output without
|
|
@@ -276,6 +298,15 @@ export interface AgentConfig {
|
|
|
276
298
|
onAuthError?: (args: {
|
|
277
299
|
configId: string;
|
|
278
300
|
}) => Promise<CredentialMint>;
|
|
301
|
+
/**
|
|
302
|
+
* Test-only flow driver hook. When present, the echo driver's scripted-flow
|
|
303
|
+
* mode uses it to advance flow nodes deterministically (no LLM). The runner
|
|
304
|
+
* injects it in `createActiveFlow`; every other driver ignores it.
|
|
305
|
+
*
|
|
306
|
+
* @see FlowTestDriverHook
|
|
307
|
+
* @since 3.6.0
|
|
308
|
+
*/
|
|
309
|
+
flowTestDriver?: FlowTestDriverHook;
|
|
279
310
|
}
|
|
280
311
|
/**
|
|
281
312
|
* A single message in an agent conversation.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../bridge/src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../bridge/src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -6079,6 +6079,77 @@ async function buildSdkConnectorTools(manager, options) {
|
|
|
6079
6079
|
}
|
|
6080
6080
|
return sdk.createSdkMcpServer({ name: "skaile-connectors", tools });
|
|
6081
6081
|
}
|
|
6082
|
+
var FLOW_AGENT_OPS = /* @__PURE__ */ new Set([
|
|
6083
|
+
"get_available",
|
|
6084
|
+
"get_state",
|
|
6085
|
+
"build_handoff",
|
|
6086
|
+
"validate_node",
|
|
6087
|
+
"start_node",
|
|
6088
|
+
"request_approval",
|
|
6089
|
+
"request_input",
|
|
6090
|
+
"complete_node",
|
|
6091
|
+
"skip_node",
|
|
6092
|
+
"fail_node"
|
|
6093
|
+
]);
|
|
6094
|
+
async function buildSdkFlowTools(manager, connectorId, options) {
|
|
6095
|
+
let sdk = options?.sdk;
|
|
6096
|
+
if (!sdk) {
|
|
6097
|
+
try {
|
|
6098
|
+
sdk = await import('@anthropic-ai/claude-agent-sdk');
|
|
6099
|
+
} catch {
|
|
6100
|
+
return null;
|
|
6101
|
+
}
|
|
6102
|
+
}
|
|
6103
|
+
const z4 = options?.z ?? zStatic;
|
|
6104
|
+
let ops;
|
|
6105
|
+
try {
|
|
6106
|
+
ops = manager.getOperations(connectorId);
|
|
6107
|
+
} catch {
|
|
6108
|
+
return null;
|
|
6109
|
+
}
|
|
6110
|
+
const agentOps = ops.filter((op) => FLOW_AGENT_OPS.has(op.name));
|
|
6111
|
+
if (agentOps.length === 0) return null;
|
|
6112
|
+
const tools = agentOps.map((op) => ({
|
|
6113
|
+
name: op.name,
|
|
6114
|
+
description: op.description,
|
|
6115
|
+
inputSchema: buildOperationInputSchema(op.args, z4),
|
|
6116
|
+
handler: async (input) => {
|
|
6117
|
+
try {
|
|
6118
|
+
const result = await manager.executeOp(connectorId, op.name, input ?? {});
|
|
6119
|
+
return { content: [{ type: "text", text: result || "(ok)" }] };
|
|
6120
|
+
} catch (err) {
|
|
6121
|
+
return {
|
|
6122
|
+
content: [{ type: "text", text: `Error: ${err.message}` }],
|
|
6123
|
+
isError: true
|
|
6124
|
+
};
|
|
6125
|
+
}
|
|
6126
|
+
}
|
|
6127
|
+
}));
|
|
6128
|
+
return sdk.createSdkMcpServer({ name: "skaile-flow", tools });
|
|
6129
|
+
}
|
|
6130
|
+
function buildOperationInputSchema(args, z4) {
|
|
6131
|
+
const shape = {};
|
|
6132
|
+
for (const arg of args) {
|
|
6133
|
+
let schema;
|
|
6134
|
+
switch (arg.type) {
|
|
6135
|
+
case "boolean":
|
|
6136
|
+
schema = z4.boolean();
|
|
6137
|
+
break;
|
|
6138
|
+
case "number":
|
|
6139
|
+
schema = z4.number();
|
|
6140
|
+
break;
|
|
6141
|
+
case "json":
|
|
6142
|
+
schema = z4.union([z4.string(), z4.record(z4.unknown()), z4.array(z4.unknown())]);
|
|
6143
|
+
break;
|
|
6144
|
+
default:
|
|
6145
|
+
schema = z4.string();
|
|
6146
|
+
}
|
|
6147
|
+
if (arg.description) schema = schema.describe(arg.description);
|
|
6148
|
+
if (!arg.required) schema = schema.optional();
|
|
6149
|
+
shape[arg.name] = schema;
|
|
6150
|
+
}
|
|
6151
|
+
return shape;
|
|
6152
|
+
}
|
|
6082
6153
|
function buildConnectorPromptSection(manager, options) {
|
|
6083
6154
|
const shellAccess = options?.shellAccess ?? true;
|
|
6084
6155
|
const allConnectors = manager.listConnectors();
|
|
@@ -7783,6 +7854,6 @@ function createConnector() {
|
|
|
7783
7854
|
return new FlowAdapter();
|
|
7784
7855
|
}
|
|
7785
7856
|
|
|
7786
|
-
export { AbstractConnector, BUILTIN_CONNECTOR_CATALOG, BoxConnector, ConnectorFieldMissingError, ConnectorManager, ConnectorStartupError, DeployConnector, DevServerConnector, FlowAdapter, GitConnector, GmailConnector, GoogleDriveConnector, LocalConnector, LogBuffer, ManagedGitconfigCollisionError, MattermostConnector, MemoryConnector, MinIOConnector, PortPool, PostgresConnector, S3Connector, SQLiteConnector, SharePointConnector, StaticServerConnector, TunnelConnector, WebDAVConnector, XStateConnector, XStateStoreConnector, __test, atomicReplaceCredential, buildConnectorPromptSection, buildSdkConnectorTools, createConnector, createConnector10, createConnector11, createConnector12, createConnector13, createConnector14, createConnector15, createConnector16, createConnector17, createConnector18, createConnector19, createConnector2, createConnector20, createConnector3, createConnector4, createConnector5, createConnector6, createConnector7, createConnector8, createConnector9, createFsWatcher, createWorktree, defaultSpawn, ensureDirMode, ensureFleetMounted, findGitRoot, findMissingPackages, getConnector, installNpmPackages, isFleetManaged, isPackageResolvable, listConnectors, listWorktrees, readGitSyncStatus, registerBuiltinConnectors, removeMountBlock, renderCredentialHelperScript, tryGetConnector, worktreeRegistry, writeHelperScript, writeMountBlock };
|
|
7787
|
-
//# sourceMappingURL=chunk-
|
|
7788
|
-
//# sourceMappingURL=chunk-
|
|
7857
|
+
export { AbstractConnector, BUILTIN_CONNECTOR_CATALOG, BoxConnector, ConnectorFieldMissingError, ConnectorManager, ConnectorStartupError, DeployConnector, DevServerConnector, FlowAdapter, GitConnector, GmailConnector, GoogleDriveConnector, LocalConnector, LogBuffer, ManagedGitconfigCollisionError, MattermostConnector, MemoryConnector, MinIOConnector, PortPool, PostgresConnector, S3Connector, SQLiteConnector, SharePointConnector, StaticServerConnector, TunnelConnector, WebDAVConnector, XStateConnector, XStateStoreConnector, __test, atomicReplaceCredential, buildConnectorPromptSection, buildSdkConnectorTools, buildSdkFlowTools, createConnector, createConnector10, createConnector11, createConnector12, createConnector13, createConnector14, createConnector15, createConnector16, createConnector17, createConnector18, createConnector19, createConnector2, createConnector20, createConnector3, createConnector4, createConnector5, createConnector6, createConnector7, createConnector8, createConnector9, createFsWatcher, createWorktree, defaultSpawn, ensureDirMode, ensureFleetMounted, findGitRoot, findMissingPackages, getConnector, installNpmPackages, isFleetManaged, isPackageResolvable, listConnectors, listWorktrees, readGitSyncStatus, registerBuiltinConnectors, removeMountBlock, renderCredentialHelperScript, tryGetConnector, worktreeRegistry, writeHelperScript, writeMountBlock };
|
|
7858
|
+
//# sourceMappingURL=chunk-2257NSNY.js.map
|
|
7859
|
+
//# sourceMappingURL=chunk-2257NSNY.js.map
|