@relayflows/surface 2.0.8 → 2.0.10
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/README.md +3 -2
- package/dist/completion.d.ts +2 -0
- package/dist/completion.d.ts.map +1 -1
- package/dist/context.d.ts +29 -4
- package/dist/context.d.ts.map +1 -1
- package/dist/effect-transport.d.ts +22 -0
- package/dist/effect-transport.d.ts.map +1 -0
- package/dist/effect-transport.js +42 -0
- package/dist/effect-transport.js.map +1 -0
- package/dist/flow.d.ts +30 -5
- package/dist/flow.d.ts.map +1 -1
- package/dist/flow.js +58 -9
- package/dist/flow.js.map +1 -1
- package/dist/helper-clients.d.ts +86 -0
- package/dist/helper-clients.d.ts.map +1 -0
- package/dist/helper-clients.js +30 -0
- package/dist/helper-clients.js.map +1 -0
- package/dist/helpers/airtable.d.ts +4 -0
- package/dist/helpers/airtable.d.ts.map +1 -0
- package/dist/helpers/airtable.js +5 -0
- package/dist/helpers/airtable.js.map +1 -0
- package/dist/helpers/asana.d.ts +5 -0
- package/dist/helpers/asana.d.ts.map +1 -0
- package/dist/helpers/asana.js +6 -0
- package/dist/helpers/asana.js.map +1 -0
- package/dist/helpers/azure-blob.d.ts +5 -0
- package/dist/helpers/azure-blob.d.ts.map +1 -0
- package/dist/helpers/azure-blob.js +6 -0
- package/dist/helpers/azure-blob.js.map +1 -0
- package/dist/helpers/box.d.ts +5 -0
- package/dist/helpers/box.d.ts.map +1 -0
- package/dist/helpers/box.js +6 -0
- package/dist/helpers/box.js.map +1 -0
- package/dist/helpers/calendly.d.ts +5 -0
- package/dist/helpers/calendly.d.ts.map +1 -0
- package/dist/helpers/calendly.js +6 -0
- package/dist/helpers/calendly.js.map +1 -0
- package/dist/helpers/clickup.d.ts +5 -0
- package/dist/helpers/clickup.d.ts.map +1 -0
- package/dist/helpers/clickup.js +6 -0
- package/dist/helpers/clickup.js.map +1 -0
- package/dist/helpers/clients.d.ts +3 -0
- package/dist/helpers/clients.d.ts.map +1 -0
- package/dist/helpers/clients.js +46 -0
- package/dist/helpers/clients.js.map +1 -0
- package/dist/helpers/cloudflare.d.ts +5 -0
- package/dist/helpers/cloudflare.d.ts.map +1 -0
- package/dist/helpers/cloudflare.js +6 -0
- package/dist/helpers/cloudflare.js.map +1 -0
- package/dist/helpers/confluence.d.ts +5 -0
- package/dist/helpers/confluence.d.ts.map +1 -0
- package/dist/helpers/confluence.js +6 -0
- package/dist/helpers/confluence.js.map +1 -0
- package/dist/helpers/daytona.d.ts +5 -0
- package/dist/helpers/daytona.d.ts.map +1 -0
- package/dist/helpers/daytona.js +6 -0
- package/dist/helpers/daytona.js.map +1 -0
- package/dist/helpers/docker-hub.d.ts +4 -0
- package/dist/helpers/docker-hub.d.ts.map +1 -0
- package/dist/helpers/docker-hub.js +5 -0
- package/dist/helpers/docker-hub.js.map +1 -0
- package/dist/helpers/dropbox.d.ts +5 -0
- package/dist/helpers/dropbox.d.ts.map +1 -0
- package/dist/helpers/dropbox.js +6 -0
- package/dist/helpers/dropbox.js.map +1 -0
- package/dist/helpers/fathom.d.ts +4 -0
- package/dist/helpers/fathom.d.ts.map +1 -0
- package/dist/helpers/fathom.js +5 -0
- package/dist/helpers/fathom.js.map +1 -0
- package/dist/helpers/gcp.d.ts +4 -0
- package/dist/helpers/gcp.d.ts.map +1 -0
- package/dist/helpers/gcp.js +5 -0
- package/dist/helpers/gcp.js.map +1 -0
- package/dist/helpers/gcs.d.ts +5 -0
- package/dist/helpers/gcs.d.ts.map +1 -0
- package/dist/helpers/gcs.js +6 -0
- package/dist/helpers/gcs.js.map +1 -0
- package/dist/helpers/github.d.ts +5 -0
- package/dist/helpers/github.d.ts.map +1 -0
- package/dist/helpers/github.js +6 -0
- package/dist/helpers/github.js.map +1 -0
- package/dist/helpers/gitlab.d.ts +5 -0
- package/dist/helpers/gitlab.d.ts.map +1 -0
- package/dist/helpers/gitlab.js +6 -0
- package/dist/helpers/gitlab.js.map +1 -0
- package/dist/helpers/gmail.d.ts +5 -0
- package/dist/helpers/gmail.d.ts.map +1 -0
- package/dist/helpers/gmail.js +6 -0
- package/dist/helpers/gmail.js.map +1 -0
- package/dist/helpers/google-calendar.d.ts +5 -0
- package/dist/helpers/google-calendar.d.ts.map +1 -0
- package/dist/helpers/google-calendar.js +6 -0
- package/dist/helpers/google-calendar.js.map +1 -0
- package/dist/helpers/google-drive.d.ts +5 -0
- package/dist/helpers/google-drive.d.ts.map +1 -0
- package/dist/helpers/google-drive.js +6 -0
- package/dist/helpers/google-drive.js.map +1 -0
- package/dist/helpers/granola.d.ts +5 -0
- package/dist/helpers/granola.d.ts.map +1 -0
- package/dist/helpers/granola.js +6 -0
- package/dist/helpers/granola.js.map +1 -0
- package/dist/helpers/hubspot.d.ts +5 -0
- package/dist/helpers/hubspot.d.ts.map +1 -0
- package/dist/helpers/hubspot.js +6 -0
- package/dist/helpers/hubspot.js.map +1 -0
- package/dist/helpers/index.d.ts +155 -0
- package/dist/helpers/index.d.ts.map +1 -0
- package/dist/helpers/index.js +105 -0
- package/dist/helpers/index.js.map +1 -0
- package/dist/helpers/intercom.d.ts +5 -0
- package/dist/helpers/intercom.d.ts.map +1 -0
- package/dist/helpers/intercom.js +6 -0
- package/dist/helpers/intercom.js.map +1 -0
- package/dist/helpers/jira.d.ts +5 -0
- package/dist/helpers/jira.d.ts.map +1 -0
- package/dist/helpers/jira.js +6 -0
- package/dist/helpers/jira.js.map +1 -0
- package/dist/helpers/linear.d.ts +5 -0
- package/dist/helpers/linear.d.ts.map +1 -0
- package/dist/helpers/linear.js +6 -0
- package/dist/helpers/linear.js.map +1 -0
- package/dist/helpers/mailgun.d.ts +5 -0
- package/dist/helpers/mailgun.d.ts.map +1 -0
- package/dist/helpers/mailgun.js +6 -0
- package/dist/helpers/mailgun.js.map +1 -0
- package/dist/helpers/mixpanel.d.ts +5 -0
- package/dist/helpers/mixpanel.d.ts.map +1 -0
- package/dist/helpers/mixpanel.js +6 -0
- package/dist/helpers/mixpanel.js.map +1 -0
- package/dist/helpers/neon.d.ts +4 -0
- package/dist/helpers/neon.d.ts.map +1 -0
- package/dist/helpers/neon.js +5 -0
- package/dist/helpers/neon.js.map +1 -0
- package/dist/helpers/notion.d.ts +5 -0
- package/dist/helpers/notion.d.ts.map +1 -0
- package/dist/helpers/notion.js +6 -0
- package/dist/helpers/notion.js.map +1 -0
- package/dist/helpers/onedrive.d.ts +5 -0
- package/dist/helpers/onedrive.d.ts.map +1 -0
- package/dist/helpers/onedrive.js +6 -0
- package/dist/helpers/onedrive.js.map +1 -0
- package/dist/helpers/pipedrive.d.ts +5 -0
- package/dist/helpers/pipedrive.d.ts.map +1 -0
- package/dist/helpers/pipedrive.js +6 -0
- package/dist/helpers/pipedrive.js.map +1 -0
- package/dist/helpers/postgres.d.ts +5 -0
- package/dist/helpers/postgres.d.ts.map +1 -0
- package/dist/helpers/postgres.js +6 -0
- package/dist/helpers/postgres.js.map +1 -0
- package/dist/helpers/posthog.d.ts +4 -0
- package/dist/helpers/posthog.d.ts.map +1 -0
- package/dist/helpers/posthog.js +5 -0
- package/dist/helpers/posthog.js.map +1 -0
- package/dist/helpers/providers.d.ts +252 -0
- package/dist/helpers/providers.d.ts.map +1 -0
- package/dist/helpers/providers.js +305 -0
- package/dist/helpers/providers.js.map +1 -0
- package/dist/helpers/ramp.d.ts +7 -0
- package/dist/helpers/ramp.d.ts.map +1 -0
- package/dist/helpers/ramp.js +7 -0
- package/dist/helpers/ramp.js.map +1 -0
- package/dist/helpers/recall.d.ts +5 -0
- package/dist/helpers/recall.d.ts.map +1 -0
- package/dist/helpers/recall.js +6 -0
- package/dist/helpers/recall.js.map +1 -0
- package/dist/helpers/reddit.d.ts +5 -0
- package/dist/helpers/reddit.d.ts.map +1 -0
- package/dist/helpers/reddit.js +6 -0
- package/dist/helpers/reddit.js.map +1 -0
- package/dist/helpers/redis.d.ts +5 -0
- package/dist/helpers/redis.d.ts.map +1 -0
- package/dist/helpers/redis.js +6 -0
- package/dist/helpers/redis.js.map +1 -0
- package/dist/helpers/s3.d.ts +5 -0
- package/dist/helpers/s3.d.ts.map +1 -0
- package/dist/helpers/s3.js +6 -0
- package/dist/helpers/s3.js.map +1 -0
- package/dist/helpers/salesforce.d.ts +5 -0
- package/dist/helpers/salesforce.d.ts.map +1 -0
- package/dist/helpers/salesforce.js +6 -0
- package/dist/helpers/salesforce.js.map +1 -0
- package/dist/helpers/segment.d.ts +4 -0
- package/dist/helpers/segment.d.ts.map +1 -0
- package/dist/helpers/segment.js +5 -0
- package/dist/helpers/segment.js.map +1 -0
- package/dist/helpers/sendgrid.d.ts +5 -0
- package/dist/helpers/sendgrid.d.ts.map +1 -0
- package/dist/helpers/sendgrid.js +6 -0
- package/dist/helpers/sendgrid.js.map +1 -0
- package/dist/helpers/sharepoint.d.ts +5 -0
- package/dist/helpers/sharepoint.d.ts.map +1 -0
- package/dist/helpers/sharepoint.js +6 -0
- package/dist/helpers/sharepoint.js.map +1 -0
- package/dist/helpers/shopify.d.ts +4 -0
- package/dist/helpers/shopify.d.ts.map +1 -0
- package/dist/helpers/shopify.js +5 -0
- package/dist/helpers/shopify.js.map +1 -0
- package/dist/helpers/shortcut.d.ts +5 -0
- package/dist/helpers/shortcut.d.ts.map +1 -0
- package/dist/helpers/shortcut.js +6 -0
- package/dist/helpers/shortcut.js.map +1 -0
- package/dist/helpers/slack.d.ts +17 -0
- package/dist/helpers/slack.d.ts.map +1 -0
- package/dist/helpers/slack.js +4 -0
- package/dist/helpers/slack.js.map +1 -0
- package/dist/helpers/stripe.d.ts +5 -0
- package/dist/helpers/stripe.d.ts.map +1 -0
- package/dist/helpers/stripe.js +6 -0
- package/dist/helpers/stripe.js.map +1 -0
- package/dist/helpers/teams.d.ts +5 -0
- package/dist/helpers/teams.d.ts.map +1 -0
- package/dist/helpers/teams.js +6 -0
- package/dist/helpers/teams.js.map +1 -0
- package/dist/helpers/telegram.d.ts +5 -0
- package/dist/helpers/telegram.d.ts.map +1 -0
- package/dist/helpers/telegram.js +6 -0
- package/dist/helpers/telegram.js.map +1 -0
- package/dist/helpers/webhook-server.d.ts +4 -0
- package/dist/helpers/webhook-server.d.ts.map +1 -0
- package/dist/helpers/webhook-server.js +5 -0
- package/dist/helpers/webhook-server.js.map +1 -0
- package/dist/helpers/x.d.ts +4 -0
- package/dist/helpers/x.d.ts.map +1 -0
- package/dist/helpers/x.js +5 -0
- package/dist/helpers/x.js.map +1 -0
- package/dist/helpers/zendesk.d.ts +5 -0
- package/dist/helpers/zendesk.d.ts.map +1 -0
- package/dist/helpers/zendesk.js +6 -0
- package/dist/helpers/zendesk.js.map +1 -0
- package/dist/index.d.ts +11 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/memory.d.ts +19 -0
- package/dist/memory.d.ts.map +1 -0
- package/dist/memory.js +2 -0
- package/dist/memory.js.map +1 -0
- package/dist/plugin-contract.d.ts +5 -0
- package/dist/plugin-contract.d.ts.map +1 -0
- package/dist/plugin-contract.js +2 -0
- package/dist/plugin-contract.js.map +1 -0
- package/dist/provider-trigger.d.ts +13 -0
- package/dist/provider-trigger.d.ts.map +1 -0
- package/dist/provider-trigger.js +18 -0
- package/dist/provider-trigger.js.map +1 -0
- package/dist/runtime.d.ts +6 -1
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +5 -0
- package/dist/runtime.js.map +1 -1
- package/dist/slack.d.ts +34 -0
- package/dist/slack.d.ts.map +1 -0
- package/dist/slack.js +17 -0
- package/dist/slack.js.map +1 -0
- package/dist/step.d.ts +43 -1
- package/dist/step.d.ts.map +1 -1
- package/dist/triggers/github.d.ts +8 -0
- package/dist/triggers/github.d.ts.map +1 -0
- package/dist/triggers/github.js +17 -0
- package/dist/triggers/github.js.map +1 -0
- package/dist/triggers/index.d.ts +8 -0
- package/dist/triggers/index.d.ts.map +1 -0
- package/dist/triggers/index.js +9 -0
- package/dist/triggers/index.js.map +1 -0
- package/dist/triggers/slack.d.ts +8 -0
- package/dist/triggers/slack.d.ts.map +1 -0
- package/dist/triggers/slack.js +17 -0
- package/dist/triggers/slack.js.map +1 -0
- package/dist/triggers.d.ts +15 -0
- package/dist/triggers.d.ts.map +1 -0
- package/dist/triggers.js +43 -0
- package/dist/triggers.js.map +1 -0
- package/package.json +21 -2
- package/src/completion.ts +3 -0
- package/src/context.ts +28 -4
- package/src/effect-transport.ts +59 -0
- package/src/flow.ts +77 -15
- package/src/helper-clients.ts +30 -0
- package/src/helpers/README.md +42 -0
- package/src/helpers/airtable.ts +9 -0
- package/src/helpers/asana.ts +10 -0
- package/src/helpers/azure-blob.ts +10 -0
- package/src/helpers/box.ts +10 -0
- package/src/helpers/calendly.ts +10 -0
- package/src/helpers/clickup.ts +10 -0
- package/src/helpers/clients.ts +48 -0
- package/src/helpers/cloudflare.ts +10 -0
- package/src/helpers/confluence.ts +10 -0
- package/src/helpers/daytona.ts +10 -0
- package/src/helpers/docker-hub.ts +9 -0
- package/src/helpers/dropbox.ts +10 -0
- package/src/helpers/fathom.ts +9 -0
- package/src/helpers/gcp.ts +9 -0
- package/src/helpers/gcs.ts +10 -0
- package/src/helpers/github.ts +10 -0
- package/src/helpers/gitlab.ts +10 -0
- package/src/helpers/gmail.ts +10 -0
- package/src/helpers/google-calendar.ts +10 -0
- package/src/helpers/google-drive.ts +10 -0
- package/src/helpers/granola.ts +10 -0
- package/src/helpers/hubspot.ts +10 -0
- package/src/helpers/index.ts +212 -0
- package/src/helpers/intercom.ts +10 -0
- package/src/helpers/jira.ts +10 -0
- package/src/helpers/linear.ts +10 -0
- package/src/helpers/mailgun.ts +10 -0
- package/src/helpers/mixpanel.ts +10 -0
- package/src/helpers/neon.ts +9 -0
- package/src/helpers/notion.ts +10 -0
- package/src/helpers/onedrive.ts +10 -0
- package/src/helpers/pipedrive.ts +10 -0
- package/src/helpers/postgres.ts +10 -0
- package/src/helpers/posthog.ts +9 -0
- package/src/helpers/providers.ts +305 -0
- package/src/helpers/ramp.ts +12 -0
- package/src/helpers/recall.ts +10 -0
- package/src/helpers/reddit.ts +10 -0
- package/src/helpers/redis.ts +10 -0
- package/src/helpers/s3.ts +10 -0
- package/src/helpers/salesforce.ts +10 -0
- package/src/helpers/segment.ts +9 -0
- package/src/helpers/sendgrid.ts +10 -0
- package/src/helpers/sharepoint.ts +10 -0
- package/src/helpers/shopify.ts +9 -0
- package/src/helpers/shortcut.ts +10 -0
- package/src/helpers/slack.ts +16 -0
- package/src/helpers/stripe.ts +10 -0
- package/src/helpers/teams.ts +10 -0
- package/src/helpers/telegram.ts +10 -0
- package/src/helpers/webhook-server.ts +9 -0
- package/src/helpers/x.ts +9 -0
- package/src/helpers/zendesk.ts +10 -0
- package/src/index.ts +26 -2
- package/src/memory.ts +20 -0
- package/src/plugin-contract.ts +5 -0
- package/src/provider-trigger.ts +26 -0
- package/src/runtime.ts +8 -0
- package/src/slack.ts +47 -0
- package/src/step.ts +52 -1
- package/src/triggers/README.md +75 -0
- package/src/triggers/github.ts +19 -0
- package/src/triggers/index.ts +10 -0
- package/src/triggers/slack.ts +19 -0
- package/src/triggers.ts +49 -0
package/README.md
CHANGED
|
@@ -26,8 +26,9 @@ lifecycle contract are in `docs/SURFACE.md`, "The authored operation lifecycle".
|
|
|
26
26
|
This is an in-repository foundation, not a registry-published package. The
|
|
27
27
|
repository's `flows run` command can execute a directly authored `.flow.ts`
|
|
28
28
|
with required JSON input. Durable authored-root resume remains tracked in issue
|
|
29
|
-
#132.
|
|
30
|
-
|
|
29
|
+
#132. `flow.on(...)` records webhook and generated provider subscriptions.
|
|
30
|
+
See [provider event triggers](src/triggers/README.md) for declarations, inbox
|
|
31
|
+
envelopes, and executor bindings; deploying handler bodies is tracked in #301.
|
|
31
32
|
|
|
32
33
|
The repository pins Bun through `surface/bun.lock`. From a fresh checkout:
|
|
33
34
|
|
package/dist/completion.d.ts
CHANGED
|
@@ -4,4 +4,6 @@ export type CompletionReason = (typeof COMPLETION_REASONS)[number];
|
|
|
4
4
|
/** The closed run completion vocabulary from the journal protocol. */
|
|
5
5
|
export declare const RUN_COMPLETION_REASONS: readonly ["success", "step_failed", "canceled", "budget_exceeded"];
|
|
6
6
|
export type RunCompletionReason = (typeof RUN_COMPLETION_REASONS)[number];
|
|
7
|
+
/** Authored outcomes include a human handoff; it is not a kernel terminal reason. */
|
|
8
|
+
export type FlowCompletionReason = RunCompletionReason | 'needs_human';
|
|
7
9
|
//# sourceMappingURL=completion.d.ts.map
|
package/dist/completion.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../src/completion.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,eAAO,MAAM,kBAAkB,wJAUrB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,sEAAsE;AACtE,eAAO,MAAM,sBAAsB,oEAKzB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../src/completion.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,eAAO,MAAM,kBAAkB,wJAUrB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,sEAAsE;AACtE,eAAO,MAAM,sBAAsB,oEAKzB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E,qFAAqF;AACrF,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,GAAG,aAAa,CAAC"}
|
package/dist/context.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import type { Helpers } from "./helpers/index.js";
|
|
2
|
+
import type { MemoryHelper } from "./memory.js";
|
|
1
3
|
import type { CloudHelper } from "./cloud.js";
|
|
2
|
-
import type {
|
|
4
|
+
import type { FlowCompletionReason } from "./completion.js";
|
|
3
5
|
import type { Step } from "./step.js";
|
|
4
6
|
export interface AgentResult {
|
|
5
7
|
summary: string;
|
|
@@ -8,6 +10,22 @@ export interface AgentResult {
|
|
|
8
10
|
export interface AgentOptions {
|
|
9
11
|
task: string;
|
|
10
12
|
workspace?: string;
|
|
13
|
+
cli?: string;
|
|
14
|
+
model?: string;
|
|
15
|
+
/** Working directory for the CLI subprocess; defaults to the flow-runner's cwd. */
|
|
16
|
+
cwd?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Dispatch transport (flows#385). `'direct'` (default) spawns the CLI as a
|
|
19
|
+
* local subprocess. `'relay'` posts to agent-relay so the agent registers
|
|
20
|
+
* as a first-class workspace participant that DMs can steer.
|
|
21
|
+
*/
|
|
22
|
+
transport?: 'direct' | 'relay';
|
|
23
|
+
}
|
|
24
|
+
export interface LlmOptions {
|
|
25
|
+
/** JSON Schema checked before the result is accepted by the journal. */
|
|
26
|
+
output: Record<string, unknown>;
|
|
27
|
+
cli?: string;
|
|
28
|
+
model?: string;
|
|
11
29
|
}
|
|
12
30
|
/**
|
|
13
31
|
* The context a journal-backed runtime injects into a flow body.
|
|
@@ -15,15 +33,22 @@ export interface AgentOptions {
|
|
|
15
33
|
* This package declares the authoring contract only. It cannot construct a
|
|
16
34
|
* context or execute a step, so all effects remain behind the journal client.
|
|
17
35
|
*/
|
|
18
|
-
export interface Ctx {
|
|
19
|
-
|
|
36
|
+
export interface Ctx extends Helpers {
|
|
37
|
+
readonly mcp: Readonly<Record<string, Readonly<Record<string, (args: unknown) => Step<unknown>>>>>;
|
|
38
|
+
/** Command lease: milliseconds or a duration such as "5m"; default 30s, maximum 15m. */
|
|
39
|
+
run(command: string, options?: {
|
|
40
|
+
timeout?: string | number;
|
|
41
|
+
}): Step<string>;
|
|
20
42
|
llm(strings: TemplateStringsArray, ...values: unknown[]): Step<string>;
|
|
43
|
+
/** JSON Schema validates the value at runtime; narrow unknown in author code. */
|
|
44
|
+
llm(prompt: string, options: LlmOptions): Step<unknown>;
|
|
21
45
|
agent(name: string, options: AgentOptions): Step<AgentResult>;
|
|
22
46
|
human(question: string, options: {
|
|
23
47
|
to: string;
|
|
24
48
|
}): Promise<boolean>;
|
|
25
49
|
dispatch<T>(flow: string, input: unknown): Promise<T>;
|
|
26
|
-
done(reason:
|
|
50
|
+
done(reason: FlowCompletionReason): void;
|
|
27
51
|
cloud: CloudHelper;
|
|
52
|
+
memory: MemoryHelper;
|
|
28
53
|
}
|
|
29
54
|
//# sourceMappingURL=context.d.ts.map
|
package/dist/context.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mFAAmF;IACnF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,SAAS,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,UAAU;IACzB,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,MAAM,WAAW,GAAI,SAAQ,OAAO;IAClC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnG,wFAAwF;IACxF,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5E,GAAG,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IACvE,iFAAiF;IACjF,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IACxD,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9D,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtD,IAAI,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACzC,KAAK,EAAE,WAAW,CAAC;IACnB,MAAM,EAAE,YAAY,CAAC;CACtB"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { RelayClientOptions, RelayTransport } from '@relayfile/relay-helpers/transport';
|
|
2
|
+
import type { Step } from './step.js';
|
|
3
|
+
/** Promise-returning client verbs become lazy, journal-owned steps. */
|
|
4
|
+
export type JournalHelper<T> = {
|
|
5
|
+
[K in keyof T]: T[K] extends (...args: infer A) => Promise<infer R> ? (...args: A) => Step<R> : T[K] extends (...args: infer A) => infer R ? (...args: A) => R : T[K] extends object ? JournalHelper<T[K]> : T[K];
|
|
6
|
+
};
|
|
7
|
+
export interface HelperCall {
|
|
8
|
+
type: 'effect';
|
|
9
|
+
provider: string;
|
|
10
|
+
verb: string;
|
|
11
|
+
args: unknown[];
|
|
12
|
+
}
|
|
13
|
+
export type EffectDispatcher = <T>(call: HelperCall) => Step<T>;
|
|
14
|
+
export interface UnavailableHelper {
|
|
15
|
+
readonly available: false;
|
|
16
|
+
}
|
|
17
|
+
export type HelperFactory = (options: RelayClientOptions) => object;
|
|
18
|
+
export declare function bindHelper<T extends object>(provider: string, factory: (options: RelayClientOptions) => T, dispatch: EffectDispatcher): JournalHelper<T>;
|
|
19
|
+
export declare function bindHelper(provider: string, factory: undefined, dispatch: EffectDispatcher): UnavailableHelper;
|
|
20
|
+
/** Resolve only own, generated client methods; never arbitrary prototype members. */
|
|
21
|
+
export declare function invokeHelper(factory: HelperFactory, call: HelperCall, transport: RelayTransport): Promise<unknown>;
|
|
22
|
+
//# sourceMappingURL=effect-transport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"effect-transport.d.ts","sourceRoot":"","sources":["../src/effect-transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAC7F,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEtC,uEAAuE;AACvE,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;KAC5B,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,GAC/D,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GACvB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,GAC9D,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACrD,CAAC;AACF,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,EAAE,CAAC;CACjB;AACD,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;AAChE,MAAM,WAAW,iBAAiB;IAAG,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAA;CAAE;AAChE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,kBAAkB,KAAK,MAAM,CAAC;AAQpE,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,CAAC,EAAE,QAAQ,EAAE,gBAAgB,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;AAC1J,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,gBAAgB,GAAG,iBAAiB,CAAC;AAkBhH,qFAAqF;AACrF,wBAAsB,YAAY,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAYxH"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
const unavailableTransport = {
|
|
2
|
+
async read() { throw new Error('Helper I/O requires a journaled step'); },
|
|
3
|
+
async list() { throw new Error('Helper I/O requires a journaled step'); },
|
|
4
|
+
async write() { throw new Error('Helper I/O requires a journaled step'); },
|
|
5
|
+
};
|
|
6
|
+
export function bindHelper(provider, factory, dispatch) {
|
|
7
|
+
if (!factory)
|
|
8
|
+
return Object.freeze({ available: false });
|
|
9
|
+
function wrap(client, prefix = '') {
|
|
10
|
+
return Object.fromEntries(Object.entries(client).map(([key, value]) => {
|
|
11
|
+
const verb = `${prefix}${key}`;
|
|
12
|
+
if (typeof value === 'function')
|
|
13
|
+
return [key, key === 'path'
|
|
14
|
+
? value.bind(client)
|
|
15
|
+
: (...args) => {
|
|
16
|
+
while (args.length && args.at(-1) === undefined)
|
|
17
|
+
args.pop();
|
|
18
|
+
return dispatch({ type: 'effect', provider, verb, args });
|
|
19
|
+
}];
|
|
20
|
+
return [key, value && typeof value === 'object' ? wrap(value, `${verb}.`) : value];
|
|
21
|
+
}));
|
|
22
|
+
}
|
|
23
|
+
return wrap(factory({ transport: unavailableTransport }));
|
|
24
|
+
}
|
|
25
|
+
/** Resolve only own, generated client methods; never arbitrary prototype members. */
|
|
26
|
+
export async function invokeHelper(factory, call, transport) {
|
|
27
|
+
let target = factory({ transport });
|
|
28
|
+
const parts = call.verb.split('.');
|
|
29
|
+
for (const part of parts.slice(0, -1)) {
|
|
30
|
+
if (!target || typeof target !== 'object' || !Object.hasOwn(target, part))
|
|
31
|
+
throw new Error('Unknown helper resource');
|
|
32
|
+
target = target[part];
|
|
33
|
+
}
|
|
34
|
+
const verb = parts.at(-1);
|
|
35
|
+
if (!target || typeof target !== 'object' || !Object.hasOwn(target, verb) || verb === 'path')
|
|
36
|
+
throw new Error('Unknown helper verb');
|
|
37
|
+
const method = target[verb];
|
|
38
|
+
if (typeof method !== 'function')
|
|
39
|
+
throw new Error('Unknown helper verb');
|
|
40
|
+
return await method.apply(target, call.args) ?? null;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=effect-transport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"effect-transport.js","sourceRoot":"","sources":["../src/effect-transport.ts"],"names":[],"mappings":"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"}
|
package/dist/flow.d.ts
CHANGED
|
@@ -1,13 +1,22 @@
|
|
|
1
|
+
import type { Helpers } from "./helpers/index.js";
|
|
2
|
+
type HelperTools = Partial<Record<keyof Helpers, boolean>>;
|
|
1
3
|
import type { Ctx } from "./context.js";
|
|
4
|
+
import { type TriggerSource } from "./triggers.js";
|
|
2
5
|
/** Optional escalation header; the empty header is the common case. */
|
|
3
6
|
export interface FlowHeader {
|
|
7
|
+
/** Relative paths to reusable authored flows composed by this body. */
|
|
8
|
+
use?: string[];
|
|
4
9
|
identity?: string;
|
|
5
10
|
memory?: {
|
|
6
11
|
script?: boolean;
|
|
7
12
|
agent?: boolean;
|
|
8
13
|
};
|
|
9
|
-
budget?: string
|
|
10
|
-
|
|
14
|
+
budget?: string | {
|
|
15
|
+
tokens?: number;
|
|
16
|
+
dollars?: number;
|
|
17
|
+
wallclock?: string;
|
|
18
|
+
};
|
|
19
|
+
tools?: HelperTools & {
|
|
11
20
|
relayfile?: string[];
|
|
12
21
|
mcp?: string[];
|
|
13
22
|
};
|
|
@@ -15,13 +24,19 @@ export interface FlowHeader {
|
|
|
15
24
|
}
|
|
16
25
|
export type FlowBody<Input = unknown> = (f: Ctx, input: Input) => Promise<void>;
|
|
17
26
|
export interface ReadonlyFlowHeader {
|
|
27
|
+
readonly use?: readonly string[];
|
|
18
28
|
readonly identity?: string;
|
|
19
29
|
readonly memory?: Readonly<{
|
|
20
30
|
script?: boolean;
|
|
21
31
|
agent?: boolean;
|
|
22
32
|
}>;
|
|
23
|
-
readonly budget?: string
|
|
24
|
-
|
|
33
|
+
readonly budget?: string | Readonly<{
|
|
34
|
+
tokens?: number;
|
|
35
|
+
dollars?: number;
|
|
36
|
+
wallclock?: string;
|
|
37
|
+
}>;
|
|
38
|
+
readonly tools?: Readonly<HelperTools & {
|
|
39
|
+
slack?: boolean;
|
|
25
40
|
relayfile?: readonly string[];
|
|
26
41
|
mcp?: readonly string[];
|
|
27
42
|
}>;
|
|
@@ -32,16 +47,26 @@ export interface AuthoredFlowDefinition<Input = unknown> {
|
|
|
32
47
|
readonly name: string;
|
|
33
48
|
readonly header: ReadonlyFlowHeader;
|
|
34
49
|
readonly body: FlowBody<Input>;
|
|
50
|
+
readonly handlers: readonly TriggerHandler[];
|
|
51
|
+
}
|
|
52
|
+
export interface TriggerHandler {
|
|
53
|
+
readonly trigger: TriggerSource;
|
|
54
|
+
readonly body: FlowBody;
|
|
35
55
|
}
|
|
36
56
|
/** Opaque authored-flow handle. Execution stays behind the journal runtime. */
|
|
37
57
|
export interface FlowHandle {
|
|
38
58
|
readonly name: string;
|
|
59
|
+
on<Event = Record<string, unknown>>(trigger: TriggerSource, body: FlowBody<Event>): TriggeredFlowHandle;
|
|
60
|
+
}
|
|
61
|
+
export interface TriggeredFlowHandle extends FlowHandle {
|
|
39
62
|
}
|
|
63
|
+
export declare function flow(name: string, header?: FlowHeader): FlowHandle;
|
|
40
64
|
export declare function flow<Input = unknown>(name: string, body: FlowBody<Input>): FlowHandle;
|
|
41
65
|
export declare function flow<Input = unknown>(name: string, header: FlowHeader, body: FlowBody<Input>): FlowHandle;
|
|
42
66
|
/**
|
|
43
67
|
* Runtime bridge used by the SDK after it imports an authored `.flow.ts`.
|
|
44
68
|
* The root package deliberately does not re-export this accessor.
|
|
45
69
|
*/
|
|
46
|
-
export declare function getFlowDefinition<Input = unknown>(handle: FlowHandle): AuthoredFlowDefinition<Input>;
|
|
70
|
+
export declare function getFlowDefinition<Input = unknown>(handle: Pick<FlowHandle, "name">): AuthoredFlowDefinition<Input>;
|
|
71
|
+
export {};
|
|
47
72
|
//# sourceMappingURL=flow.d.ts.map
|
package/dist/flow.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"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"}
|
package/dist/flow.js
CHANGED
|
@@ -1,20 +1,42 @@
|
|
|
1
|
+
import { helperProviders } from "./helpers/providers.js";
|
|
2
|
+
import { webhook } from "./triggers.js";
|
|
1
3
|
const definitions = new WeakMap();
|
|
2
|
-
export function flow(name, headerOrBody, body) {
|
|
4
|
+
export function flow(name, headerOrBody = {}, body) {
|
|
3
5
|
const flowBody = typeof headerOrBody === "function" ? headerOrBody : body;
|
|
4
6
|
const header = typeof headerOrBody === "function" ? {} : headerOrBody;
|
|
5
7
|
if (name.trim().length === 0) {
|
|
6
8
|
throw new TypeError("flow name must not be empty");
|
|
7
9
|
}
|
|
8
|
-
if (typeof flowBody !== "function") {
|
|
10
|
+
if (flowBody !== undefined && typeof flowBody !== "function") {
|
|
9
11
|
throw new TypeError(`flow "${name}" requires a body`);
|
|
10
12
|
}
|
|
11
13
|
assertFlowHeader(header, name);
|
|
12
14
|
const definition = Object.freeze({
|
|
13
15
|
name,
|
|
14
16
|
header: freezeHeader(header),
|
|
15
|
-
body: flowBody,
|
|
17
|
+
body: flowBody ?? (async () => { throw new TypeError(`flow "${name}" has no direct-run body`); }),
|
|
18
|
+
handlers: Object.freeze([]),
|
|
16
19
|
});
|
|
17
|
-
|
|
20
|
+
return makeHandle(definition);
|
|
21
|
+
}
|
|
22
|
+
function makeHandle(definition) {
|
|
23
|
+
const handle = { name: definition.name };
|
|
24
|
+
Object.defineProperty(handle, "on", {
|
|
25
|
+
value: (trigger, body) => {
|
|
26
|
+
if (typeof body !== "function")
|
|
27
|
+
throw new TypeError("trigger handler requires a body");
|
|
28
|
+
assertHeaderObject(trigger, "trigger");
|
|
29
|
+
assertKnownKeys(trigger, ["kind", "name", "filter"], "trigger");
|
|
30
|
+
if (trigger.kind !== "webhook")
|
|
31
|
+
throw new TypeError("unsupported trigger kind");
|
|
32
|
+
const source = webhook(trigger.name, trigger.filter);
|
|
33
|
+
return makeHandle(Object.freeze({
|
|
34
|
+
...definition,
|
|
35
|
+
handlers: Object.freeze([...definition.handlers, Object.freeze({ trigger: source, body: body })]),
|
|
36
|
+
}));
|
|
37
|
+
},
|
|
38
|
+
});
|
|
39
|
+
Object.freeze(handle);
|
|
18
40
|
// One map holds definitions of many input types, so it is stored at the
|
|
19
41
|
// default parameterisation and `getFlowDefinition<Input>` re-parameterises on
|
|
20
42
|
// the way out. The cast is needed because `body` puts `Input` in a parameter
|
|
@@ -57,6 +79,7 @@ function isStoredDefinition(value, handleName) {
|
|
|
57
79
|
}
|
|
58
80
|
function freezeHeader(header) {
|
|
59
81
|
const unknownFields = Object.keys(header).filter((field) => ![
|
|
82
|
+
"use",
|
|
60
83
|
"identity",
|
|
61
84
|
"memory",
|
|
62
85
|
"budget",
|
|
@@ -72,6 +95,8 @@ function freezeHeader(header) {
|
|
|
72
95
|
const tools = header.tools === undefined
|
|
73
96
|
? undefined
|
|
74
97
|
: Object.freeze({
|
|
98
|
+
...Object.fromEntries(helperProviders.filter(p => header.tools?.[p.namespace] !== undefined)
|
|
99
|
+
.map(p => [p.namespace, header.tools[p.namespace]])),
|
|
75
100
|
...(header.tools.relayfile === undefined
|
|
76
101
|
? {}
|
|
77
102
|
: { relayfile: Object.freeze([...header.tools.relayfile]) }),
|
|
@@ -80,9 +105,10 @@ function freezeHeader(header) {
|
|
|
80
105
|
: { mcp: Object.freeze([...header.tools.mcp]) }),
|
|
81
106
|
});
|
|
82
107
|
return Object.freeze({
|
|
108
|
+
...(header.use === undefined ? {} : { use: Object.freeze([...header.use]) }),
|
|
83
109
|
...(header.identity === undefined ? {} : { identity: header.identity }),
|
|
84
110
|
...(memory === undefined ? {} : { memory }),
|
|
85
|
-
...(header.budget === undefined ? {} : { budget: header.budget }),
|
|
111
|
+
...(header.budget === undefined ? {} : { budget: typeof header.budget === "string" ? header.budget : Object.freeze({ ...header.budget }) }),
|
|
86
112
|
...(tools === undefined ? {} : { tools }),
|
|
87
113
|
...(header.workspace === undefined ? {} : { workspace: header.workspace }),
|
|
88
114
|
});
|
|
@@ -90,10 +116,26 @@ function freezeHeader(header) {
|
|
|
90
116
|
function assertFlowHeader(value, flowName) {
|
|
91
117
|
const at = `unsupported_header: flow "${flowName}" header`;
|
|
92
118
|
assertHeaderObject(value, at);
|
|
93
|
-
assertKnownKeys(value, ["identity", "memory", "budget", "tools", "workspace"], at);
|
|
119
|
+
assertKnownKeys(value, ["use", "identity", "memory", "budget", "tools", "workspace"], at);
|
|
94
120
|
assertOptionalString(value, "identity", at);
|
|
95
|
-
|
|
121
|
+
if (value.budget !== undefined && typeof value.budget !== "string") {
|
|
122
|
+
assertHeaderObject(value.budget, `${at}.budget`);
|
|
123
|
+
assertKnownKeys(value.budget, ["tokens", "dollars", "wallclock"], `${at}.budget`);
|
|
124
|
+
assertOptionalString(value.budget, "wallclock", at);
|
|
125
|
+
for (const key of ["tokens", "dollars"]) {
|
|
126
|
+
if (value.budget[key] !== undefined && typeof value.budget[key] !== "number")
|
|
127
|
+
throw new TypeError(`budget_syntax_invalid: ${key} must be a number`);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
96
130
|
assertOptionalString(value, "workspace", at);
|
|
131
|
+
assertOptionalStringArray(value, "use", at);
|
|
132
|
+
if (value.use !== undefined) {
|
|
133
|
+
for (const path of value.use) {
|
|
134
|
+
if (!/^(?:\.\/|\.\.\/).+\.flow\.ts$/.test(path) || /[?#\\\\]/.test(path)) {
|
|
135
|
+
throw new TypeError(`${at}.use: expected relative .flow.ts paths`);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
97
139
|
if (value.memory !== undefined) {
|
|
98
140
|
assertHeaderObject(value.memory, `${at}.memory`);
|
|
99
141
|
assertKnownKeys(value.memory, ["script", "agent"], `${at}.memory`);
|
|
@@ -102,7 +144,9 @@ function assertFlowHeader(value, flowName) {
|
|
|
102
144
|
}
|
|
103
145
|
if (value.tools !== undefined) {
|
|
104
146
|
assertHeaderObject(value.tools, `${at}.tools`);
|
|
105
|
-
assertKnownKeys(value.tools, ["relayfile", "mcp"], `${at}.tools`);
|
|
147
|
+
assertKnownKeys(value.tools, ["relayfile", "mcp", ...helperProviders.map(p => p.namespace)], `${at}.tools`);
|
|
148
|
+
for (const { namespace } of helperProviders)
|
|
149
|
+
assertOptionalBoolean(value.tools, namespace, `${at}.tools`);
|
|
106
150
|
assertOptionalStringArray(value.tools, "relayfile", `${at}.tools`);
|
|
107
151
|
assertOptionalStringArray(value.tools, "mcp", `${at}.tools`);
|
|
108
152
|
}
|
|
@@ -141,8 +185,13 @@ function assertOptionalBoolean(value, key, at) {
|
|
|
141
185
|
function assertOptionalStringArray(value, key, at) {
|
|
142
186
|
const candidate = value[key];
|
|
143
187
|
if (candidate !== undefined
|
|
144
|
-
&& (!Array.isArray(candidate) || candidate.some((item) => typeof item !== "string"))) {
|
|
188
|
+
&& (!Array.isArray(candidate) || Array.from(candidate).some((item) => typeof item !== "string"))) {
|
|
145
189
|
throw new TypeError(`${at}.${key}: expected an array of strings`);
|
|
146
190
|
}
|
|
191
|
+
if (key === "use" && Array.isArray(candidate)
|
|
192
|
+
&& (candidate.some((item) => item.trim().length === 0)
|
|
193
|
+
|| new Set(candidate).size !== candidate.length)) {
|
|
194
|
+
throw new TypeError(`${at}.${key}: expected unique nonempty paths`);
|
|
195
|
+
}
|
|
147
196
|
}
|
|
148
197
|
//# sourceMappingURL=flow.js.map
|
package/dist/flow.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAIzD,OAAO,EAAE,OAAO,EAAsB,MAAM,eAAe,CAAC;AAiD5D,MAAM,WAAW,GAAG,IAAI,OAAO,EAAkC,CAAC;AASlE,MAAM,UAAU,IAAI,CAClB,IAAY,EACZ,eAA6C,EAAE,EAC/C,IAAsB;IAEtB,MAAM,QAAQ,GAAG,OAAO,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1E,MAAM,MAAM,GAAG,OAAO,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;IAEtE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,SAAS,CAAC,6BAA6B,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,QAAQ,KAAK,SAAS,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;QAC7D,MAAM,IAAI,SAAS,CAAC,SAAS,IAAI,mBAAmB,CAAC,CAAC;IACxD,CAAC;IACD,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE/B,MAAM,UAAU,GAAkC,MAAM,CAAC,MAAM,CAAC;QAC9D,IAAI;QACJ,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC;QAC5B,IAAI,EAAE,QAAQ,IAAI,CAAC,KAAK,IAAI,EAAE,GAAG,MAAM,IAAI,SAAS,CAAC,SAAS,IAAI,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC;QACjG,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;KAC5B,CAAC,CAAC;IACH,OAAO,UAAU,CAAC,UAAoC,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,UAAU,CAAC,UAAkC;IACpD,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAgB,CAAC;IACvD,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE;QAClC,KAAK,EAAE,CAAQ,OAAsB,EAAE,IAAqB,EAAuB,EAAE;YACnF,IAAI,OAAO,IAAI,KAAK,UAAU;gBAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;YACvF,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YACvC,eAAe,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;YAChE,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,MAAM,IAAI,SAAS,CAAC,0BAA0B,CAAC,CAAC;YAChF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YACrD,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;gBAC9B,GAAG,UAAU;gBACb,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAgB,EAAE,CAAC,CAAC,CAAC;aAC9G,CAAC,CAAC,CAAC;QACN,CAAC;KACF,CAAC,CAAC;IACH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtB,wEAAwE;IACxE,8EAA8E;IAC9E,6EAA6E;IAC7E,8EAA8E;IAC9E,yEAAyE;IACzE,8EAA8E;IAC9E,qEAAqE;IACrE,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACpC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAkB,MAAgC;IACjF,IAAI,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,UAAU,CAAC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpF,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,IACE,UAAU,KAAK,SAAS;WACrB,CAAC,kBAAkB,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC;WAChD,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,EAClC,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAc,EACd,UAAmB;IAEnB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,SAAS,GAAG,KAAwC,CAAC;IAC3D,OAAO,OAAO,UAAU,KAAK,QAAQ;WAChC,SAAS,CAAC,IAAI,KAAK,UAAU;WAC7B,OAAO,SAAS,CAAC,IAAI,KAAK,UAAU;WACpC,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ;WACpC,SAAS,CAAC,MAAM,KAAK,IAAI;WACzB,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;WAChC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC;WACjC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,YAAY,CAAC,MAAkB;IACtC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC3D,KAAK;QACL,UAAU;QACV,QAAQ;QACR,QAAQ;QACR,OAAO;QACP,WAAW;KACZ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACnB,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,SAAS,CAAC,mCAAmC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrF,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,KAAK,SAAS;QACxC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,KAAK,SAAS;QACtC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;YACZ,GAAG,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC;iBACzF,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,KAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACvD,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS;gBACtC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS;gBAChC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;SACnD,CAAC,CAAC;IACP,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,CAAC,MAAM,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC5E,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3C,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QAC3I,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;QACzC,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;KAC3E,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc,EAAE,QAAgB;IACxD,MAAM,EAAE,GAAG,6BAA6B,QAAQ,UAAU,CAAC;IAC3D,kBAAkB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC9B,eAAe,CACb,KAAK,EACL,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,EAC7D,EAAE,CACH,CAAC;IACF,oBAAoB,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;IAC5C,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACnE,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QACjD,eAAe,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QAClF,oBAAoB,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;QACpD,KAAK,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;YACxC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ;gBAAE,MAAM,IAAI,SAAS,CAAC,0BAA0B,GAAG,mBAAmB,CAAC,CAAC;QACtJ,CAAC;IACH,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;IAC7C,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5C,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAC5B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,GAAe,EAAE,CAAC;YACzC,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzE,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,wCAAwC,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/B,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QACjD,eAAe,CACb,KAAK,CAAC,MAAM,EACZ,CAAC,QAAQ,EAAE,OAAO,CAAC,EACnB,GAAG,EAAE,SAAS,CACf,CAAC;QACF,qBAAqB,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QAC9D,qBAAqB,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9B,kBAAkB,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC/C,eAAe,CACb,KAAK,CAAC,KAAK,EACX,CAAC,WAAW,EAAE,KAAK,EAAE,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAC9D,GAAG,EAAE,QAAQ,CACd,CAAC;QACF,KAAK,MAAM,EAAE,SAAS,EAAE,IAAI,eAAe;YAAE,qBAAqB,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC1G,yBAAyB,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QACnE,yBAAyB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAc,EACd,EAAU;IAEV,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;IACnD,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,SAAS,KAAK,MAAM,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACzD,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CACtB,KAA8B,EAC9B,OAA0B,EAC1B,EAAU;IAEV,MAAM,WAAW,GAAG,IAAI,GAAG,CAAc,OAAO,CAAC,CAAC;IAClD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,mBAAmB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC/D,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,IAAI,UAAU,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,IAAI,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAA8B,EAC9B,GAAW,EACX,EAAU;IAEV,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC/D,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,IAAI,GAAG,qBAAqB,CAAC,CAAC;IACzD,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAC5B,KAA8B,EAC9B,GAAW,EACX,EAAU;IAEV,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;QAChE,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,IAAI,GAAG,sBAAsB,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAChC,KAA8B,EAC9B,GAAW,EACX,EAAU;IAEV,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IACE,SAAS,KAAK,SAAS;WACpB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,EAChG,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,IAAI,GAAG,gCAAgC,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,GAAG,KAAK,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;WACxC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC;eACjD,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,IAAI,GAAG,kCAAkC,CAAC,CAAC;IACtE,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import type { RelayClientOptions } from '@relayfile/relay-helpers/transport';
|
|
2
|
+
/** Accept the conventional owner/repo shorthand as well as upstream arguments. */
|
|
3
|
+
export declare function githubClient(options: RelayClientOptions): {
|
|
4
|
+
createIssue(args: {
|
|
5
|
+
owner?: string;
|
|
6
|
+
repo: string;
|
|
7
|
+
title: string;
|
|
8
|
+
body: string;
|
|
9
|
+
labels?: string[];
|
|
10
|
+
}): Promise<import("@relayfile/relay-helpers").CreatedResult>;
|
|
11
|
+
comment(target: import("@relayfile/relay-helpers").GithubTarget, body: string): Promise<import("@relayfile/relay-helpers").CreatedResult>;
|
|
12
|
+
createPullRequest(args: {
|
|
13
|
+
owner: string;
|
|
14
|
+
repo: string;
|
|
15
|
+
title: string;
|
|
16
|
+
head: string;
|
|
17
|
+
base: string;
|
|
18
|
+
body?: string;
|
|
19
|
+
draft?: boolean;
|
|
20
|
+
author?: "app" | "user";
|
|
21
|
+
}): Promise<import("@relayfile/relay-helpers").CreatedResult>;
|
|
22
|
+
pushRef(args: {
|
|
23
|
+
owner: string;
|
|
24
|
+
repo: string;
|
|
25
|
+
ref: string;
|
|
26
|
+
sha: string;
|
|
27
|
+
}): Promise<void>;
|
|
28
|
+
updateRef(args: {
|
|
29
|
+
owner: string;
|
|
30
|
+
repo: string;
|
|
31
|
+
ref: string;
|
|
32
|
+
sha: string;
|
|
33
|
+
force?: boolean;
|
|
34
|
+
}): Promise<void>;
|
|
35
|
+
closePullRequest(target: import("@relayfile/relay-helpers").GithubTarget): Promise<void>;
|
|
36
|
+
mergePullRequest(args: {
|
|
37
|
+
owner: string;
|
|
38
|
+
repo: string;
|
|
39
|
+
number: number;
|
|
40
|
+
method?: "merge" | "squash" | "rebase";
|
|
41
|
+
commitTitle?: string;
|
|
42
|
+
commitMessage?: string;
|
|
43
|
+
sha?: string;
|
|
44
|
+
}): Promise<{
|
|
45
|
+
merged: boolean;
|
|
46
|
+
sha?: string;
|
|
47
|
+
}>;
|
|
48
|
+
review(target: import("@relayfile/relay-helpers").GithubTarget, args: {
|
|
49
|
+
body: string;
|
|
50
|
+
event: "COMMENT" | "APPROVE" | "REQUEST_CHANGES";
|
|
51
|
+
comments?: Array<{
|
|
52
|
+
path: string;
|
|
53
|
+
line: number;
|
|
54
|
+
body: string;
|
|
55
|
+
}>;
|
|
56
|
+
}): Promise<void>;
|
|
57
|
+
"close-pull-request": import("@relayfile/relay-helpers").ResourceClient;
|
|
58
|
+
"issue-comments": import("@relayfile/relay-helpers").ResourceClient;
|
|
59
|
+
issues: import("@relayfile/relay-helpers").ResourceClient;
|
|
60
|
+
merge: import("@relayfile/relay-helpers").ResourceClient;
|
|
61
|
+
"pull-requests": import("@relayfile/relay-helpers").ResourceClient;
|
|
62
|
+
refs: import("@relayfile/relay-helpers").ResourceClient;
|
|
63
|
+
replies: import("@relayfile/relay-helpers").ResourceClient;
|
|
64
|
+
reviews: import("@relayfile/relay-helpers").ResourceClient;
|
|
65
|
+
};
|
|
66
|
+
export declare function stripeClient(options: RelayClientOptions): {
|
|
67
|
+
createInvoice(args: {
|
|
68
|
+
customer: string;
|
|
69
|
+
auto_advance?: boolean;
|
|
70
|
+
collection_method?: "charge_automatically" | "send_invoice";
|
|
71
|
+
days_until_due?: number;
|
|
72
|
+
description?: string;
|
|
73
|
+
metadata?: Record<string, string>;
|
|
74
|
+
}): Promise<import("@relayfile/relay-helpers").CreatedResult>;
|
|
75
|
+
};
|
|
76
|
+
export declare function notionClient(options: RelayClientOptions): {
|
|
77
|
+
appendBlock(args: {
|
|
78
|
+
pageId: string;
|
|
79
|
+
block: Record<string, unknown>;
|
|
80
|
+
}): Promise<import("@relayfile/relay-helpers").CreatedResult>;
|
|
81
|
+
comments: import("@relayfile/relay-helpers").ResourceClient;
|
|
82
|
+
pages: import("@relayfile/relay-helpers").ResourceClient;
|
|
83
|
+
content: import("@relayfile/relay-helpers").ResourceClient;
|
|
84
|
+
properties: import("@relayfile/relay-helpers").ResourceClient;
|
|
85
|
+
};
|
|
86
|
+
//# sourceMappingURL=helper-clients.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helper-clients.d.ts","sourceRoot":"","sources":["../src/helper-clients.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,kFAAkF;AAClF,wBAAgB,YAAY,CAAC,OAAO,EAAE,kBAAkB;sBAEhB;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE;;;;;;;;YAOhE,CAAC;aACrC,CAAC;cAAyB,CAAC;;;;;;;;;;;;;aAO3B,CAAC;;;;;;;cAKH,CAAC;mBAAoD,CAAC;qBACtD,CAAC;WAAqB,CAAC;;;WAAgE,CAAC;;;;;gBAG4C,CAAC;;;;;;;;;;;;;;EAnBtJ;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,kBAAkB;wBACzB;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAC;QAAC,iBAAiB,CAAC,EAAE,sBAAsB,GAAG,cAAc,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE;EAKzN;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,kBAAkB;sBACO;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE;;;;;EAOhH"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { githubClient as upstreamGithub, notionClient as upstreamNotion, created } from '@relayfile/relay-helpers';
|
|
2
|
+
/** Accept the conventional owner/repo shorthand as well as upstream arguments. */
|
|
3
|
+
export function githubClient(options) {
|
|
4
|
+
const client = upstreamGithub(options);
|
|
5
|
+
return { ...client, createIssue(args) {
|
|
6
|
+
const [owner, repo, extra] = args.repo.split('/');
|
|
7
|
+
if (!args.owner && (!owner || !repo || extra))
|
|
8
|
+
throw new Error('github.createIssue requires repo: "owner/repo" or an explicit owner');
|
|
9
|
+
return client.createIssue({ ...args, owner: args.owner ?? owner, repo: args.owner ? args.repo : repo });
|
|
10
|
+
} };
|
|
11
|
+
}
|
|
12
|
+
export function stripeClient(options) {
|
|
13
|
+
return { createInvoice(args) {
|
|
14
|
+
if (!options.transport)
|
|
15
|
+
throw new Error('Stripe requires a journal transport');
|
|
16
|
+
return created(options.transport.write({ provider: 'stripe', resource: 'invoices',
|
|
17
|
+
parameters: {}, path: '/stripe/invoices', body: args }));
|
|
18
|
+
} };
|
|
19
|
+
}
|
|
20
|
+
export function notionClient(options) {
|
|
21
|
+
return { ...upstreamNotion(options), async appendBlock(args) {
|
|
22
|
+
if (!options.transport)
|
|
23
|
+
throw new Error('Notion requires a journal transport');
|
|
24
|
+
// The adapter does not yet support this route. The runtime refuses it in
|
|
25
|
+
// mount mode, while mock mode can exercise authoring and effect lowering.
|
|
26
|
+
return created(options.transport.write({ provider: 'notion', resource: 'blocks',
|
|
27
|
+
parameters: { pageId: args.pageId }, path: `/notion/pages/${encodeURIComponent(args.pageId)}/blocks`, body: { children: [args.block] } }));
|
|
28
|
+
} };
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=helper-clients.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helper-clients.js","sourceRoot":"","sources":["../src/helper-clients.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,cAAc,EAAE,YAAY,IAAI,cAAc,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAGnH,kFAAkF;AAClF,MAAM,UAAU,YAAY,CAAC,OAA2B;IACtD,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACvC,OAAO,EAAE,GAAG,MAAM,EAAE,WAAW,CAAC,IAAsF;YACpH,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClD,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;YACtI,OAAO,MAAM,CAAC,WAAW,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAM,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAK,EAAE,CAAC,CAAC;QAC5G,CAAC,EAAE,CAAC;AACN,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAA2B;IACtD,OAAO,EAAE,aAAa,CAAC,IAAiM;YACtN,IAAI,CAAC,OAAO,CAAC,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;YAC/E,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU;gBAC/E,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7D,CAAC,EAAE,CAAC;AACN,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAA2B;IACtD,OAAO,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,IAAwD;YAC7G,IAAI,CAAC,OAAO,CAAC,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;YAC/E,yEAAyE;YACzE,0EAA0E;YAC1E,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ;gBAC7E,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/I,CAAC,EAAE,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"airtable.d.ts","sourceRoot":"","sources":["../../src/helpers/airtable.ts"],"names":[],"mappings":"AAGA,OAAO,EAAc,KAAK,gBAAgB,EAAsB,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEvH,MAAM,MAAM,cAAc,GAAG,iBAAiB,CAAC;AAE/C,eAAO,MAAM,oBAAoB,GAAI,UAAU,gBAAgB,KAAG,cACrB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// GENERATED by scripts/generate-helpers.mjs — do not edit.
|
|
2
|
+
// Run `npm run gen --prefix packages/surface` from the repository root.
|
|
3
|
+
import { bindHelper } from "../effect-transport.js";
|
|
4
|
+
export const createAirtableHelper = (dispatch) => bindHelper("airtable", undefined, dispatch);
|
|
5
|
+
//# sourceMappingURL=airtable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"airtable.js","sourceRoot":"","sources":["../../src/helpers/airtable.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,wEAAwE;AAExE,OAAO,EAAE,UAAU,EAAqE,MAAM,wBAAwB,CAAC;AAIvH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,QAA0B,EAAkB,EAAE,CACjF,UAAU,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { asanaClient } from "@relayfile/relay-helpers";
|
|
2
|
+
import { type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
|
|
3
|
+
export type AsanaHelper = JournalHelper<ReturnType<typeof asanaClient>>;
|
|
4
|
+
export declare const createAsanaHelper: (dispatch: EffectDispatcher) => AsanaHelper;
|
|
5
|
+
//# sourceMappingURL=asana.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asana.d.ts","sourceRoot":"","sources":["../../src/helpers/asana.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAc,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE/F,MAAM,MAAM,WAAW,GAAG,aAAa,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC;AAExE,eAAO,MAAM,iBAAiB,GAAI,UAAU,gBAAgB,KAAG,WACnB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// GENERATED by scripts/generate-helpers.mjs — do not edit.
|
|
2
|
+
// Run `npm run gen --prefix packages/surface` from the repository root.
|
|
3
|
+
import { asanaClient } from "@relayfile/relay-helpers";
|
|
4
|
+
import { bindHelper } from "../effect-transport.js";
|
|
5
|
+
export const createAsanaHelper = (dispatch) => bindHelper("asana", asanaClient, dispatch);
|
|
6
|
+
//# sourceMappingURL=asana.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asana.js","sourceRoot":"","sources":["../../src/helpers/asana.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,wEAAwE;AAExE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAA6C,MAAM,wBAAwB,CAAC;AAI/F,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,QAA0B,EAAe,EAAE,CAC3E,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { azureBlobClient } from "@relayfile/relay-helpers";
|
|
2
|
+
import { type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
|
|
3
|
+
export type AzureBlobHelper = JournalHelper<ReturnType<typeof azureBlobClient>>;
|
|
4
|
+
export declare const createAzureBlobHelper: (dispatch: EffectDispatcher) => AzureBlobHelper;
|
|
5
|
+
//# sourceMappingURL=azure-blob.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"azure-blob.d.ts","sourceRoot":"","sources":["../../src/helpers/azure-blob.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAc,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE/F,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC;AAEhF,eAAO,MAAM,qBAAqB,GAAI,UAAU,gBAAgB,KAAG,eACd,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// GENERATED by scripts/generate-helpers.mjs — do not edit.
|
|
2
|
+
// Run `npm run gen --prefix packages/surface` from the repository root.
|
|
3
|
+
import { azureBlobClient } from "@relayfile/relay-helpers";
|
|
4
|
+
import { bindHelper } from "../effect-transport.js";
|
|
5
|
+
export const createAzureBlobHelper = (dispatch) => bindHelper("azure-blob", azureBlobClient, dispatch);
|
|
6
|
+
//# sourceMappingURL=azure-blob.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"azure-blob.js","sourceRoot":"","sources":["../../src/helpers/azure-blob.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,wEAAwE;AAExE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAA6C,MAAM,wBAAwB,CAAC;AAI/F,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAA0B,EAAmB,EAAE,CACnF,UAAU,CAAC,YAAY,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC"}
|