@runtypelabs/sdk 9.1.1 → 9.2.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/dist/index.d.cts CHANGED
@@ -594,7 +594,7 @@ interface paths {
594
594
  put?: never;
595
595
  /**
596
596
  * Create agent
597
- * @description Create a new agent with optional capabilities and configuration. Supports runtype, external, and claude_managed agent types.
597
+ * @description Create a new agent with optional capabilities and configuration. Supports runtype, external, and claude_managed agent types. External-agent auth credentials are accepted on write but returned as <redacted>; a configuration copied from a management response must replace that placeholder with the real credential before create.
598
598
  */
599
599
  post: {
600
600
  parameters: {
@@ -978,6 +978,7 @@ interface paths {
978
978
  dashboardUrl?: string;
979
979
  description: string | null;
980
980
  draftVersionId: string | null;
981
+ /** @description External-agent configuration. Configured auth.credentials values are write-only and returned as <redacted>, never plaintext. */
981
982
  externalConfig: {
982
983
  [key: string]: unknown;
983
984
  } | null;
@@ -1597,7 +1598,7 @@ interface paths {
1597
1598
  };
1598
1599
  /**
1599
1600
  * Get agent details
1600
- * @description Get an agent by ID including its capabilities and configuration.
1601
+ * @description Get an agent by ID including its capabilities and configuration. External-agent auth credentials are write-only: a configured externalConfig.auth.credentials value is returned as <redacted>, never plaintext.
1601
1602
  */
1602
1603
  get: {
1603
1604
  parameters: {
@@ -1641,6 +1642,7 @@ interface paths {
1641
1642
  createdAt: string;
1642
1643
  dashboardUrl?: string;
1643
1644
  description: string | null;
1645
+ /** @description External-agent configuration. Configured auth.credentials values are write-only and returned as <redacted>, never plaintext. */
1644
1646
  externalConfig: {
1645
1647
  [key: string]: unknown;
1646
1648
  } | null;
@@ -1712,7 +1714,7 @@ interface paths {
1712
1714
  };
1713
1715
  /**
1714
1716
  * Update agent
1715
- * @description Update an existing agent. Supports partial updates — only provided fields are changed. Both config and externalConfig are merged onto the stored values, so a partial write preserves keys it omits (notably externalConfig.protocol and externalConfig.cachedAgentCard). To REMOVE a value, send it explicitly as null: a null field clears that field, and externalConfig: null clears the whole object. Nested values replace atomically — sending auth replaces the entire auth block, so switching auth type cannot reuse the previous credential. Repointing an external agent (endpoint, agentCardUrl or protocol) discards the cached agent card, which is re-fetched by POST /agents/{id}/refresh-agent-card. Moving externalConfig.endpoint to a different host additionally requires re-sending externalConfig.auth: a stored credential is never carried to a host it was not configured against, so a repoint that omits auth is rejected with 400.
1717
+ * @description Update an existing agent. Supports partial updates — only provided fields are changed. Both config and externalConfig are merged onto the stored values, so a partial write preserves keys it omits (notably externalConfig.protocol and externalConfig.cachedAgentCard). To REMOVE a value, send it explicitly as null: a null field clears that field, and externalConfig: null clears the whole object. Nested values replace atomically — sending auth replaces the entire auth block, so switching auth type cannot reuse the previous credential. Agent management responses return a configured auth.credentials value as <redacted>; echoing that placeholder on an update preserves the stored credential only when auth.type is unchanged. Repointing an external agent (endpoint, agentCardUrl or protocol) discards the cached agent card, which is re-fetched by POST /agents/{id}/refresh-agent-card. Moving externalConfig.endpoint to a different host additionally requires re-sending externalConfig.auth: a stored credential is never carried to a host it was not configured against, so a repoint that omits auth is rejected with 400.
1716
1718
  */
1717
1719
  put: {
1718
1720
  parameters: {
@@ -2073,6 +2075,7 @@ interface paths {
2073
2075
  dashboardUrl?: string;
2074
2076
  description: string | null;
2075
2077
  draftVersionId: string | null;
2078
+ /** @description External-agent configuration. Configured auth.credentials values are write-only and returned as <redacted>, never plaintext. */
2076
2079
  externalConfig: {
2077
2080
  [key: string]: unknown;
2078
2081
  } | null;
@@ -2649,7 +2652,7 @@ interface paths {
2649
2652
  put?: never;
2650
2653
  /**
2651
2654
  * Execute agent
2652
- * @description Execute an agent (Quick Agent mode) with a message array. Streams a Server-Sent Events response when streamResponse is true (default); otherwise returns a JSON result. Send the RFC 7240 `Prefer: respond-async` header to run a Claude Managed durable-lane turn (a saved agent invoked with a conversationId) fire-and-forget: the response is a 202 handle and the turn runs headlessly (reconnect via the executions events stream or poll the runs API).
2655
+ * @description Execute an agent with a message array. Streams a Server-Sent Events response when streamResponse is true (default); otherwise returns a JSON result. Send the RFC 7240 `Prefer: respond-async` header to receive a durable execution handle immediately, then poll its status URL for completion.
2653
2656
  */
2654
2657
  post: {
2655
2658
  parameters: {
@@ -2677,7 +2680,7 @@ interface paths {
2677
2680
  "text/event-stream": unknown;
2678
2681
  };
2679
2682
  };
2680
- /** @description Fire-and-forget handle for a Claude Managed durable-lane turn accepted via `Prefer: respond-async`. The turn runs headlessly; reconnect via the executions events stream or poll the runs API. Carries a `Preference-Applied: respond-async` header. */
2683
+ /** @description Durable fire-and-forget handle accepted via `Prefer: respond-async`. Poll statusUrl for completion. Carries a `Preference-Applied: respond-async` header. */
2681
2684
  202: {
2682
2685
  headers: {
2683
2686
  [name: string]: unknown;
@@ -2749,6 +2752,15 @@ interface paths {
2749
2752
  "application/json": components["schemas"]["Error"];
2750
2753
  };
2751
2754
  };
2755
+ /** @description Asynchronous execution unavailable */
2756
+ 503: {
2757
+ headers: {
2758
+ [name: string]: unknown;
2759
+ };
2760
+ content: {
2761
+ "application/json": components["schemas"]["Error"];
2762
+ };
2763
+ };
2752
2764
  };
2753
2765
  };
2754
2766
  delete?: never;
@@ -3450,7 +3462,9 @@ interface paths {
3450
3462
  };
3451
3463
  /**
3452
3464
  * Export agent for runtime
3453
- * @description Export a fully-resolved, self-contained agent definition that the @runtypelabs/runtime package can consume directly at boot. Capabilities, flows, and nested sub-agents are inlined recursively (up to 3 levels). MCP credential values are replaced with secret-name references.
3465
+ * @description Export a fully-resolved, self-contained agent definition that the @runtypelabs/runtime package can consume directly at boot. Capabilities, flows, and nested sub-agents are inlined recursively (up to 3 levels). MCP credential values and external-agent auth credentials are replaced with secret-name references.
3466
+ *
3467
+ * The response carries `hostDependencies`: the runtime seams the exported artifact needs a host to wire before it can run everything it describes. A durable-class step (`wait-until` or `crawl`) anywhere in the agent's executable closure declares a `durable-pause-host` dependency; a detached-capable dynamic subagent pool or a detached inline subagent tool declares a `background-run-coordinator` dependency. The array is empty when nothing needs wiring.
3454
3468
  */
3455
3469
  get: {
3456
3470
  parameters: {
@@ -3482,6 +3496,7 @@ interface paths {
3482
3496
  externalConfig?: {
3483
3497
  [key: string]: unknown;
3484
3498
  };
3499
+ hostDependencies: components["schemas"]["RuntimeHostDependency"][];
3485
3500
  id: string;
3486
3501
  name: string;
3487
3502
  primaryFlow?: {
@@ -3646,7 +3661,7 @@ interface paths {
3646
3661
  put?: never;
3647
3662
  /**
3648
3663
  * Refresh cached agent card
3649
- * @description Re-fetch the agent card from the configured agentCardUrl (or derived A2A well-known URL) and update the cached copy. Detects skill changes, auto-applies roles to new skills, and returns a change report.
3664
+ * @description Re-fetch the agent card from the configured agentCardUrl (or derived A2A well-known URL) and update the cached copy. Detects skill changes, auto-applies roles to new skills, and returns a change report. External-agent auth credentials remain write-only and are returned as <redacted>.
3650
3665
  */
3651
3666
  post: {
3652
3667
  parameters: {
@@ -5490,6 +5505,10 @@ interface paths {
5490
5505
  content: {
5491
5506
  "application/json": {
5492
5507
  batchExecutionId: string;
5508
+ /** @description Exact raw Runtype-funded provider and hosted-tool cost before account margin, in thousandths of a cent ($1 = 100,000), or null when historical/unpriced rows make the split unavailable. */
5509
+ billedCostThousandthsCent: number | null;
5510
+ /** @description Dollar projection of billedCostThousandthsCent (raw Runtype-funded cost before account margin), or null when the exact split is unavailable. */
5511
+ billedCostUsd: number | null;
5493
5512
  recordId: string;
5494
5513
  /** @description Portion of totalCostUsd asserted by an externally-run agent pushed to /v1/executions/ingest. Unverified: Runtype neither dispatched nor paid for it. 0 unless external runs were ingested. */
5495
5514
  selfReportedCostUsd: number;
@@ -5705,6 +5724,10 @@ interface paths {
5705
5724
  content: {
5706
5725
  "application/json": {
5707
5726
  batchExecutionId: string;
5727
+ /** @description Exact raw Runtype-funded provider and hosted-tool cost before account margin, in thousandths of a cent ($1 = 100,000), or null when historical/unpriced rows make the split unavailable. */
5728
+ billedCostThousandthsCent: number | null;
5729
+ /** @description Dollar projection of billedCostThousandthsCent (raw Runtype-funded cost before account margin), or null when the exact split is unavailable. */
5730
+ billedCostUsd: number | null;
5708
5731
  /** @description Portion of totalCostUsd asserted by an externally-run agent pushed to /v1/executions/ingest. Unverified: Runtype neither dispatched nor paid for it. 0 unless external runs were ingested. */
5709
5732
  selfReportedCostUsd: number;
5710
5733
  totalCostUsd: number;
@@ -10763,7 +10786,7 @@ interface paths {
10763
10786
  put?: never;
10764
10787
  /**
10765
10788
  * Execute a flow or agent
10766
- * @description Main dispatch endpoint for flow and agent execution with record resolution. Supports streaming via SSE or synchronous JSON responses. Send the RFC 7240 `Prefer: respond-async` header to run a Claude Managed durable-lane turn (a saved agent dispatched with a conversationId) fire-and-forget: the response is a 202 handle and the turn runs headlessly (reconnect via the executions events stream or poll the runs API).
10789
+ * @description Main dispatch endpoint for flow and agent execution with record resolution. Supports streaming via SSE or synchronous JSON responses. Send the RFC 7240 `Prefer: respond-async` header to receive a durable execution handle immediately, then poll its status URL for completion.
10767
10790
  */
10768
10791
  post: {
10769
10792
  parameters: {
@@ -10963,7 +10986,7 @@ interface paths {
10963
10986
  provider?: string;
10964
10987
  };
10965
10988
  };
10966
- clientTools?: {
10989
+ clientTools?: ({
10967
10990
  description: string;
10968
10991
  name: string;
10969
10992
  /** @enum {string} */
@@ -10976,7 +10999,13 @@ interface paths {
10976
10999
  [key: string]: unknown;
10977
11000
  };
10978
11001
  untrustedContentHint?: boolean;
10979
- }[];
11002
+ } | {
11003
+ /** @enum {string} */
11004
+ catalog: "runtype-mcp";
11005
+ name: string;
11006
+ /** @enum {string} */
11007
+ origin?: "webmcp";
11008
+ })[];
10980
11009
  clientToolsPolicy?: {
10981
11010
  allowlist?: string[];
10982
11011
  };
@@ -11079,6 +11108,7 @@ interface paths {
11079
11108
  * @enum {string}
11080
11109
  */
11081
11110
  flowMode?: "existing" | "create" | "virtual" | "upsert";
11111
+ /** @description Continuous Flow timeout. Values above 900000 ms require a Flow request detached with Prefer: respond-async; the asynchronous maximum is 1800000 ms. */
11082
11112
  flowTimeoutMs?: number;
11083
11113
  flowVersionId?: string;
11084
11114
  localInference?: {
@@ -11103,6 +11133,7 @@ interface paths {
11103
11133
  executionId: string;
11104
11134
  iteration?: number;
11105
11135
  };
11136
+ /** @description Per-step timeout. Values above 600000 ms require a Flow request detached with Prefer: respond-async; the asynchronous maximum is 1800000 ms. */
11106
11137
  stepTimeoutMs?: number;
11107
11138
  /** @default true */
11108
11139
  storeResults?: boolean;
@@ -11328,7 +11359,7 @@ interface paths {
11328
11359
  provider?: string;
11329
11360
  };
11330
11361
  };
11331
- clientTools?: {
11362
+ clientTools?: ({
11332
11363
  description: string;
11333
11364
  name: string;
11334
11365
  /** @enum {string} */
@@ -11341,7 +11372,13 @@ interface paths {
11341
11372
  [key: string]: unknown;
11342
11373
  };
11343
11374
  untrustedContentHint?: boolean;
11344
- }[];
11375
+ } | {
11376
+ /** @enum {string} */
11377
+ catalog: "runtype-mcp";
11378
+ name: string;
11379
+ /** @enum {string} */
11380
+ origin?: "webmcp";
11381
+ })[];
11345
11382
  clientToolsPolicy?: {
11346
11383
  allowlist?: string[];
11347
11384
  };
@@ -11444,6 +11481,7 @@ interface paths {
11444
11481
  * @enum {string}
11445
11482
  */
11446
11483
  flowMode?: "existing" | "create" | "virtual" | "upsert";
11484
+ /** @description Continuous Flow timeout. Values above 900000 ms require a Flow request detached with Prefer: respond-async; the asynchronous maximum is 1800000 ms. */
11447
11485
  flowTimeoutMs?: number;
11448
11486
  flowVersionId?: string;
11449
11487
  localInference?: {
@@ -11468,6 +11506,7 @@ interface paths {
11468
11506
  executionId: string;
11469
11507
  iteration?: number;
11470
11508
  };
11509
+ /** @description Per-step timeout. Values above 600000 ms require a Flow request detached with Prefer: respond-async; the asynchronous maximum is 1800000 ms. */
11471
11510
  stepTimeoutMs?: number;
11472
11511
  /** @default true */
11473
11512
  storeResults?: boolean;
@@ -11518,7 +11557,7 @@ interface paths {
11518
11557
  "text/event-stream": unknown;
11519
11558
  };
11520
11559
  };
11521
- /** @description Fire-and-forget handle for a Claude Managed durable-lane turn accepted via `Prefer: respond-async`. The turn runs headlessly; reconnect via the executions events stream or poll the runs API. Carries a `Preference-Applied: respond-async` header. */
11560
+ /** @description Durable fire-and-forget handle accepted via `Prefer: respond-async`. Poll statusUrl for completion. Carries a `Preference-Applied: respond-async` header. */
11522
11561
  202: {
11523
11562
  headers: {
11524
11563
  [name: string]: unknown;
@@ -11590,6 +11629,15 @@ interface paths {
11590
11629
  "application/json": components["schemas"]["Error"];
11591
11630
  };
11592
11631
  };
11632
+ /** @description Asynchronous execution unavailable */
11633
+ 503: {
11634
+ headers: {
11635
+ [name: string]: unknown;
11636
+ };
11637
+ content: {
11638
+ "application/json": components["schemas"]["Error"];
11639
+ };
11640
+ };
11593
11641
  };
11594
11642
  };
11595
11643
  delete?: never;
@@ -13904,7 +13952,7 @@ interface paths {
13904
13952
  put?: never;
13905
13953
  /**
13906
13954
  * Submit eval
13907
- * @description Submit a flow or agent for evaluation with model/parameter overrides. Supports both single eval and multi-model eval requests.
13955
+ * @description Submit a flow or agent eval. Hosted targets support overrides and multi-model requests; delegated external agents support one baseline config without overrides and not /eval/stream.
13908
13956
  */
13909
13957
  post: {
13910
13958
  parameters: {
@@ -15814,6 +15862,95 @@ interface paths {
15814
15862
  patch?: never;
15815
15863
  trace?: never;
15816
15864
  };
15865
+ "/v1/executions/{executionId}/status": {
15866
+ parameters: {
15867
+ query?: never;
15868
+ header?: never;
15869
+ path?: never;
15870
+ cookie?: never;
15871
+ };
15872
+ /**
15873
+ * Poll an asynchronous execution
15874
+ * @description Returns lifecycle status and, once terminal, the result of an execution accepted via `Prefer: respond-async`.
15875
+ */
15876
+ get: {
15877
+ parameters: {
15878
+ query?: never;
15879
+ header?: never;
15880
+ path: {
15881
+ executionId: string;
15882
+ };
15883
+ cookie?: never;
15884
+ };
15885
+ requestBody?: never;
15886
+ responses: {
15887
+ /** @description Execution status returned */
15888
+ 200: {
15889
+ headers: {
15890
+ [name: string]: unknown;
15891
+ };
15892
+ content: {
15893
+ "application/json": {
15894
+ createdAt: string;
15895
+ error?: string;
15896
+ executionId: string;
15897
+ httpStatus?: number;
15898
+ result?: unknown;
15899
+ /** @enum {string} */
15900
+ status: "queued" | "running" | "paused" | "completed" | "failed" | "cancelled";
15901
+ targetId?: string;
15902
+ /** @enum {string} */
15903
+ targetKind: "flow" | "agent";
15904
+ underlyingExecutionId?: string;
15905
+ };
15906
+ };
15907
+ };
15908
+ /** @description Unauthorized */
15909
+ 401: {
15910
+ headers: {
15911
+ [name: string]: unknown;
15912
+ };
15913
+ content: {
15914
+ "application/json": components["schemas"]["Error"];
15915
+ };
15916
+ };
15917
+ /** @description Insufficient API key permissions */
15918
+ 403: {
15919
+ headers: {
15920
+ [name: string]: unknown;
15921
+ };
15922
+ content: {
15923
+ "application/json": components["schemas"]["Error"];
15924
+ };
15925
+ };
15926
+ /** @description Execution not found */
15927
+ 404: {
15928
+ headers: {
15929
+ [name: string]: unknown;
15930
+ };
15931
+ content: {
15932
+ "application/json": components["schemas"]["Error"];
15933
+ };
15934
+ };
15935
+ /** @description Internal server error */
15936
+ 500: {
15937
+ headers: {
15938
+ [name: string]: unknown;
15939
+ };
15940
+ content: {
15941
+ "application/json": components["schemas"]["Error"];
15942
+ };
15943
+ };
15944
+ };
15945
+ };
15946
+ put?: never;
15947
+ post?: never;
15948
+ delete?: never;
15949
+ options?: never;
15950
+ head?: never;
15951
+ patch?: never;
15952
+ trace?: never;
15953
+ };
15817
15954
  "/v1/feedback": {
15818
15955
  parameters: {
15819
15956
  query?: never;
@@ -16859,7 +16996,7 @@ interface paths {
16859
16996
  name: string;
16860
16997
  order?: number;
16861
16998
  /** @enum {string} */
16862
- type: "prompt" | "crawl" | "fetch-url" | "retrieve-record" | "get-record" | "list-records" | "api-call" | "transform-data" | "template" | "conditional" | "set-variable" | "upsert-record" | "send-email" | "send-event" | "send-stream" | "update-record" | "search" | "generate-embedding" | "vector-search" | "tool-call" | "wait-until" | "paginate-api" | "store-vector" | "execute-agent" | "store-asset" | "generate-pdf" | "save-memory" | "recall-memory" | "memory-summary";
16999
+ type: "prompt" | "crawl" | "fetch-url" | "retrieve-record" | "get-record" | "list-records" | "api-call" | "transform-data" | "template" | "conditional" | "loop" | "set-variable" | "upsert-record" | "send-email" | "send-event" | "send-stream" | "update-record" | "search" | "generate-embedding" | "vector-search" | "tool-call" | "wait-until" | "paginate-api" | "store-vector" | "execute-agent" | "store-asset" | "generate-pdf" | "save-memory" | "recall-memory" | "memory-summary";
16863
17000
  when?: string;
16864
17001
  }[];
16865
17002
  name: string;
@@ -16871,7 +17008,7 @@ interface paths {
16871
17008
  name: string;
16872
17009
  order?: number;
16873
17010
  /** @enum {string} */
16874
- type: "prompt" | "crawl" | "fetch-url" | "retrieve-record" | "get-record" | "list-records" | "api-call" | "transform-data" | "template" | "conditional" | "set-variable" | "upsert-record" | "send-email" | "send-event" | "send-stream" | "update-record" | "search" | "generate-embedding" | "vector-search" | "tool-call" | "wait-until" | "paginate-api" | "store-vector" | "execute-agent" | "store-asset" | "generate-pdf" | "save-memory" | "recall-memory" | "memory-summary";
17011
+ type: "prompt" | "crawl" | "fetch-url" | "retrieve-record" | "get-record" | "list-records" | "api-call" | "transform-data" | "template" | "conditional" | "loop" | "set-variable" | "upsert-record" | "send-email" | "send-event" | "send-stream" | "update-record" | "search" | "generate-embedding" | "vector-search" | "tool-call" | "wait-until" | "paginate-api" | "store-vector" | "execute-agent" | "store-asset" | "generate-pdf" | "save-memory" | "recall-memory" | "memory-summary";
16875
17012
  when?: string;
16876
17013
  }[];
16877
17014
  };
@@ -17271,7 +17408,7 @@ interface paths {
17271
17408
  name: string;
17272
17409
  order?: number;
17273
17410
  /** @enum {string} */
17274
- type: "prompt" | "crawl" | "fetch-url" | "retrieve-record" | "get-record" | "list-records" | "api-call" | "transform-data" | "template" | "conditional" | "set-variable" | "upsert-record" | "send-email" | "send-event" | "send-stream" | "update-record" | "search" | "generate-embedding" | "vector-search" | "tool-call" | "wait-until" | "paginate-api" | "store-vector" | "execute-agent" | "store-asset" | "generate-pdf" | "save-memory" | "recall-memory" | "memory-summary";
17411
+ type: "prompt" | "crawl" | "fetch-url" | "retrieve-record" | "get-record" | "list-records" | "api-call" | "transform-data" | "template" | "conditional" | "loop" | "set-variable" | "upsert-record" | "send-email" | "send-event" | "send-stream" | "update-record" | "search" | "generate-embedding" | "vector-search" | "tool-call" | "wait-until" | "paginate-api" | "store-vector" | "execute-agent" | "store-asset" | "generate-pdf" | "save-memory" | "recall-memory" | "memory-summary";
17275
17412
  when?: string;
17276
17413
  }[];
17277
17414
  name?: string;
@@ -17449,7 +17586,7 @@ interface paths {
17449
17586
  *
17450
17587
  * Export a fully-resolved, self-contained flow definition that the @runtypelabs/runtime package can consume directly at boot. All step configs are inlined; no live DB queries are needed at execution time.
17451
17588
  *
17452
- * Flows containing a durable-class step (`wait-until` or `crawl`) are rejected with `422 Unprocessable Entity` (code `DURABLE_FLOW_EXPORT_UNSUPPORTED`): those steps park their pause on a Cloudflare Workflow, which cannot run inside an exported runtime artifact, so durable flows run hosted only.
17589
+ * The response carries `hostDependencies`: the runtime seams the exported artifact needs a host to wire before it can run everything it describes. A durable-class step (`wait-until` or `crawl`) anywhere in the flow's executable closure declares a `durable-pause-host` dependency; a detached-capable dynamic subagent pool or a detached inline subagent tool declares a `background-run-coordinator` dependency. The array is empty when nothing needs wiring, and the export is never refused for a declared dependency.
17453
17590
  */
17454
17591
  get: {
17455
17592
  parameters: {
@@ -17478,6 +17615,7 @@ interface paths {
17478
17615
  agentIds?: string[];
17479
17616
  };
17480
17617
  description?: string | null;
17618
+ hostDependencies: components["schemas"]["RuntimeHostDependency"][];
17481
17619
  id: string;
17482
17620
  name: string;
17483
17621
  steps: {
@@ -17522,23 +17660,6 @@ interface paths {
17522
17660
  "application/json": components["schemas"]["Error"];
17523
17661
  };
17524
17662
  };
17525
- /** @description The flow contains durable-class steps and runs hosted only (code `DURABLE_FLOW_EXPORT_UNSUPPORTED`) */
17526
- 422: {
17527
- headers: {
17528
- [name: string]: unknown;
17529
- };
17530
- content: {
17531
- "application/json": {
17532
- /** @enum {string} */
17533
- code: "DURABLE_FLOW_EXPORT_UNSUPPORTED";
17534
- durableSteps: {
17535
- stepId: string;
17536
- stepType: string;
17537
- }[];
17538
- error: string;
17539
- };
17540
- };
17541
- };
17542
17663
  /** @description Internal server error */
17543
17664
  500: {
17544
17665
  headers: {
@@ -19227,6 +19348,15 @@ interface paths {
19227
19348
  "application/json": components["schemas"]["Error"];
19228
19349
  };
19229
19350
  };
19351
+ /** @description Insufficient permissions */
19352
+ 403: {
19353
+ headers: {
19354
+ [name: string]: unknown;
19355
+ };
19356
+ content: {
19357
+ "application/json": components["schemas"]["Error"];
19358
+ };
19359
+ };
19230
19360
  /** @description Surface not found */
19231
19361
  404: {
19232
19362
  headers: {
@@ -19264,7 +19394,7 @@ interface paths {
19264
19394
  put?: never;
19265
19395
  /**
19266
19396
  * Generate Slack app manifest
19267
- * @description Generate the Slack app manifest for a surface, with absolute API URLs (events webhook, interactivity webhook, and OAuth redirect), plus a link to Slack's app-creation page. Paste the manifest into Slack's From a manifest option; Slack no longer accepts a manifest embedded in the URL. The redirect URL matches the OAuth start route byte-for-byte.
19397
+ * @description Generate the Slack app manifest for a surface, with absolute API URLs (events webhook, interactivity webhook, and OAuth redirect), plus a link to Slack's app-creation page and a hosted connect-page handoff for the human credential + OAuth step. Paste the manifest into Slack's From a manifest option; Slack no longer accepts a manifest embedded in the URL. The redirect URL matches the OAuth start route byte-for-byte. When integrationId is omitted a pending Slack integration is reserved automatically (24h TTL) and returned as integrationId. A supplied integrationId must be a live pending reservation; an already-connected, revoked, or expired one is refused with 404, so omit it to get a fresh reservation. Credentials never pass through this route.
19268
19398
  */
19269
19399
  post: {
19270
19400
  parameters: {
@@ -19276,7 +19406,7 @@ interface paths {
19276
19406
  requestBody?: {
19277
19407
  content: {
19278
19408
  "application/json": {
19279
- appName: string;
19409
+ appName?: string;
19280
19410
  includeAssistantFeatures?: boolean;
19281
19411
  integrationId?: string;
19282
19412
  surfaceId: string;
@@ -19291,9 +19421,16 @@ interface paths {
19291
19421
  };
19292
19422
  content: {
19293
19423
  "application/json": {
19424
+ connectHandoff: {
19425
+ expiresAt?: string;
19426
+ /** @enum {string} */
19427
+ type: "url";
19428
+ url: string;
19429
+ };
19294
19430
  createAppUrl: string;
19295
19431
  eventsWebhookUrl: string;
19296
- interactivityWebhookUrl?: string;
19432
+ integrationId: string;
19433
+ interactivityWebhookUrl: string;
19297
19434
  manifestJson: string;
19298
19435
  redirectUrl: string;
19299
19436
  };
@@ -23619,7 +23756,7 @@ interface paths {
23619
23756
  put?: never;
23620
23757
  /**
23621
23758
  * Resume agent handling
23622
- * @description Switch a messaging conversation from human-operator mode back to automatic agent handling.
23759
+ * @description Switch a messaging conversation from human-operator mode back to automatic agent handling. Any operator with write access to the organization may resume, including a conversation another operator took over (supervisor override); the takeover actor is audit attribution, not a lock. Returns 409 if the conversation is already in auto mode.
23623
23760
  */
23624
23761
  post: {
23625
23762
  parameters: {
@@ -23687,13 +23824,13 @@ interface paths {
23687
23824
  "application/json": components["schemas"]["Error"];
23688
23825
  };
23689
23826
  };
23690
- /** @description Conversation already in auto mode */
23827
+ /** @description Conversation is already in auto (agent) mode (ALREADY_AUTO_MODE), or its state changed concurrently and the resume did not apply (STATE_CHANGED, retryable). */
23691
23828
  409: {
23692
23829
  headers: {
23693
23830
  [name: string]: unknown;
23694
23831
  };
23695
23832
  content: {
23696
- "application/json": components["schemas"]["Error"];
23833
+ "application/json": components["schemas"]["MessagingConversationConflictError"];
23697
23834
  };
23698
23835
  };
23699
23836
  /** @description Internal server error */
@@ -23825,13 +23962,22 @@ interface paths {
23825
23962
  "application/json": components["schemas"]["Error"];
23826
23963
  };
23827
23964
  };
23828
- /** @description Conversation or surface cannot be addressed */
23965
+ /** @description Conversation mode changed concurrently: another operator resumed the conversation to automatic agent handling after this request's requireHumanMode precondition was checked but before the send committed (STATE_CHANGED). Nothing is persisted. */
23966
+ 409: {
23967
+ headers: {
23968
+ [name: string]: unknown;
23969
+ };
23970
+ content: {
23971
+ "application/json": components["schemas"]["MessagingConversationConflictError"];
23972
+ };
23973
+ };
23974
+ /** @description Conversation or surface cannot be addressed before anything is sent: no external thread/participant to reply to, or the surface type has no registered outbound channel adapter (UNSUPPORTED_SURFACE_TYPE). Nothing is persisted in either case. */
23829
23975
  422: {
23830
23976
  headers: {
23831
23977
  [name: string]: unknown;
23832
23978
  };
23833
23979
  content: {
23834
- "application/json": components["schemas"]["Error"];
23980
+ "application/json": components["schemas"]["MessagingSendUndeliverableError"];
23835
23981
  };
23836
23982
  };
23837
23983
  /** @description Internal server error */
@@ -23871,7 +24017,7 @@ interface paths {
23871
24017
  put?: never;
23872
24018
  /**
23873
24019
  * Take over conversation
23874
- * @description Switch a messaging conversation into human-operator mode so inbound messages are persisted but agent replies are suppressed.
24020
+ * @description Switch a messaging conversation into human-operator mode so inbound messages are persisted but agent replies are suppressed. The claim is atomic: when two operators take over at once, exactly one succeeds and the other receives 409 carrying the winner's takeoverActorId. A takeover lapses and the agent resumes after the surface's interventionMode.takeoverIdleTimeoutMinutes (default 24h) with no operator send; closing or reopening the conversation also clears it.
23875
24021
  */
23876
24022
  post: {
23877
24023
  parameters: {
@@ -23945,13 +24091,13 @@ interface paths {
23945
24091
  "application/json": components["schemas"]["Error"];
23946
24092
  };
23947
24093
  };
23948
- /** @description Conversation already in human mode */
24094
+ /** @description Conversation is already in human mode (ALREADY_HUMAN_MODE), or its state changed concurrently and the takeover did not apply (STATE_CHANGED, retryable). */
23949
24095
  409: {
23950
24096
  headers: {
23951
24097
  [name: string]: unknown;
23952
24098
  };
23953
24099
  content: {
23954
- "application/json": components["schemas"]["Error"];
24100
+ "application/json": components["schemas"]["MessagingConversationConflictError"];
23955
24101
  };
23956
24102
  };
23957
24103
  /** @description Internal server error */
@@ -39488,6 +39634,8 @@ interface paths {
39488
39634
  };
39489
39635
  content: {
39490
39636
  "application/json": {
39637
+ /** @description Exact average raw Runtype-funded provider and hosted-tool cost before account margin over the same run count, or null when the split is unavailable. */
39638
+ avgBilledCostUsd: number | null;
39491
39639
  avgCostUsd: number | null;
39492
39640
  avgDurationMs: number | null;
39493
39641
  /** @description Portion of avgCostUsd asserted by externally-run agents pushed to /v1/executions/ingest, over the same run count. Unverified: Runtype neither dispatched nor paid for it. 0 unless external runs were ingested. */
@@ -39841,6 +39989,7 @@ interface paths {
39841
39989
  source: {
39842
39990
  description?: string;
39843
39991
  key?: string;
39992
+ keys?: string[];
39844
39993
  productId?: string;
39845
39994
  /** @enum {string} */
39846
39995
  type: "manual" | "secret" | "product";
@@ -39885,6 +40034,7 @@ interface paths {
39885
40034
  source: {
39886
40035
  description?: string;
39887
40036
  key?: string;
40037
+ keys?: string[];
39888
40038
  productId?: string;
39889
40039
  /** @enum {string} */
39890
40040
  type: "manual" | "secret" | "product";
@@ -39983,6 +40133,7 @@ interface paths {
39983
40133
  source: {
39984
40134
  description?: string;
39985
40135
  key?: string;
40136
+ keys?: string[];
39986
40137
  productId?: string;
39987
40138
  /** @enum {string} */
39988
40139
  type: "manual" | "secret" | "product";
@@ -40028,6 +40179,7 @@ interface paths {
40028
40179
  source: {
40029
40180
  description?: string;
40030
40181
  key?: string;
40182
+ keys?: string[];
40031
40183
  productId?: string;
40032
40184
  /** @enum {string} */
40033
40185
  type: "manual" | "secret" | "product";
@@ -43897,6 +44049,7 @@ interface paths {
43897
44049
  email: string | null;
43898
44050
  features: {
43899
44051
  dashboardAssistantModel: string;
44052
+ enableAgentKeyRequests: boolean;
43900
44053
  enableAgentSkills: boolean;
43901
44054
  enableChromeSurface: boolean;
43902
44055
  enableDashboardAssistant: boolean;
@@ -44682,12 +44835,24 @@ interface components {
44682
44835
  AsyncDispatchHandle: {
44683
44836
  /** @description Present only for ephemeral inline-create dispatch. */
44684
44837
  claudeManagedAgentId?: string;
44685
- /** @description The conversation the headless turn belongs to. */
44686
- conversationId: string;
44687
- /** @description The durable execution idreconnect/poll with this. */
44838
+ /** @description Conversation id, when the request belongs to a conversation. */
44839
+ conversationId?: string;
44840
+ /** @description The durable execution handle — poll with this. */
44688
44841
  executionId: string;
44689
- /** @description Lifecycle status at acceptance (e.g. 'running'). */
44690
- status: string;
44842
+ /**
44843
+ * @description Lifecycle status at acceptance.
44844
+ * @enum {string}
44845
+ */
44846
+ status: "queued" | "running";
44847
+ /** @description Relative URL for polling this execution. */
44848
+ statusUrl: string;
44849
+ /** @description Saved flow or agent id, when known. */
44850
+ targetId?: string;
44851
+ /**
44852
+ * @description Kind of execution target.
44853
+ * @enum {string}
44854
+ */
44855
+ targetKind: "flow" | "agent";
44691
44856
  };
44692
44857
  CaptureExecutionPreview: {
44693
44858
  /** @description The recorded tool-call actions in invocation order — the fork-picker rows. */
@@ -45939,6 +46104,20 @@ interface components {
45939
46104
  /** @description 'completed' | 'failed' | 'interrupted'. */
45940
46105
  status: string;
45941
46106
  };
46107
+ MessagingConversationConflictError: components["schemas"]["Error"] & {
46108
+ /**
46109
+ * @description Machine-readable conflict reason. STATE_CHANGED is retryable.
46110
+ * @enum {string}
46111
+ */
46112
+ code: "ALREADY_HUMAN_MODE" | "ALREADY_AUTO_MODE" | "STATE_CHANGED";
46113
+ /** @description Actor holding the conversation, when one does. */
46114
+ takeoverActorId?: string | null;
46115
+ takeoverAt?: string | null;
46116
+ };
46117
+ MessagingSendUndeliverableError: components["schemas"]["Error"] & {
46118
+ /** @description Stable error code, when applicable (e.g. UNSUPPORTED_SURFACE_TYPE). */
46119
+ code?: string;
46120
+ };
45942
46121
  Pagination: {
45943
46122
  currentOffset: number;
45944
46123
  currentPage?: number;
@@ -46136,6 +46315,36 @@ interface components {
46136
46315
  error: string;
46137
46316
  message?: string;
46138
46317
  };
46318
+ RuntimeHostDependency: {
46319
+ interface: string;
46320
+ /** @enum {string} */
46321
+ kind: "durable-pause-host";
46322
+ reason: string;
46323
+ steps: {
46324
+ ownerId?: string;
46325
+ /** @enum {string} */
46326
+ ownerKind: "flow" | "agent" | "capability" | "inline-tool";
46327
+ ownerName?: string;
46328
+ stepId: string;
46329
+ stepType: string;
46330
+ }[];
46331
+ } | {
46332
+ agents: {
46333
+ ownerId?: string;
46334
+ /** @enum {string} */
46335
+ ownerKind: "flow" | "agent" | "capability" | "inline-tool";
46336
+ ownerName?: string;
46337
+ stepId?: string;
46338
+ }[];
46339
+ interface: string;
46340
+ /** @enum {string} */
46341
+ kind: "background-run-coordinator";
46342
+ reason: string;
46343
+ } | {
46344
+ interface: string;
46345
+ kind: string;
46346
+ reason: string;
46347
+ };
46139
46348
  ScheduleEntitlementError: components["schemas"]["Error"] & {
46140
46349
  /** @description Stable error code (e.g. ACTIVE_SCHEDULE_LIMIT, SCHEDULE_FREQUENCY_LIMIT). */
46141
46350
  code?: string;
@@ -46901,6 +47110,21 @@ interface TransformDataStepConfig$1 {
46901
47110
  inputMode?: 'code' | 'variable';
46902
47111
  packageJson?: string;
46903
47112
  persistSandbox?: boolean;
47113
+ /**
47114
+ * Run this step in a named sandbox instead of the per-execution default.
47115
+ *
47116
+ * Sandbox ids are scoped to your organization, and executions that share one
47117
+ * share the CONTAINER: its filesystem, its installed packages, and its
47118
+ * running processes. Left unset, each flow execution gets its own sandbox.
47119
+ *
47120
+ * A CONSTANT value therefore puts every concurrent run of the flow in one
47121
+ * container. That is not isolation: concurrent steps can read each other's
47122
+ * files and processes. They must also agree on their egress. Concurrent
47123
+ * executions sharing a sandbox id must use the same credentials and the same
47124
+ * `networkAccess`, and one that asks for a different posture fails rather
47125
+ * than inheriting the other's. Use a template (for example
47126
+ * `{{_execution.id}}`) to get a distinct sandbox per concurrent run.
47127
+ */
46904
47128
  reuseSandboxId?: string;
46905
47129
  networkAccess?: 'off' | 'on' | {
46906
47130
  allowedHostnames: string[];
@@ -46935,6 +47159,21 @@ interface ConditionalStepConfig$1 {
46935
47159
  /** JavaScript predicate evaluated at runtime. If falsy, the step is skipped. */
46936
47160
  when?: string;
46937
47161
  }
47162
+ /**
47163
+ * A do-while-style bounded loop. The body runs once, then `until` is evaluated;
47164
+ * a truthy result exits and `maxIterations` is the deterministic backstop.
47165
+ */
47166
+ interface LoopStepConfig$1 {
47167
+ name: string;
47168
+ steps: any[];
47169
+ until: string;
47170
+ maxIterations: number;
47171
+ /** Optional variable populated with the current 1-based iteration. */
47172
+ iterationVariable?: string;
47173
+ enabled?: boolean;
47174
+ /** JavaScript predicate evaluated at runtime. If falsy, the step is skipped. */
47175
+ when?: string;
47176
+ }
46938
47177
  interface SearchStepConfig$1 {
46939
47178
  name: string;
46940
47179
  provider: string;
@@ -47474,6 +47713,10 @@ declare class FlowBuilder {
47474
47713
  * Add a conditional step
47475
47714
  */
47476
47715
  conditional(config: ConditionalStepConfig$1): this;
47716
+ /**
47717
+ * Add a bounded do-while loop step.
47718
+ */
47719
+ loop(config: LoopStepConfig$1): this;
47477
47720
  /**
47478
47721
  * Add a search step
47479
47722
  */
@@ -48249,6 +48492,27 @@ interface ClientToolDefinition {
48249
48492
  */
48250
48493
  untrustedContentHint?: boolean;
48251
48494
  }
48495
+ /**
48496
+ * A `clientTools[]` entry that names a tool from Runtype's own MCP catalog
48497
+ * instead of describing one. The API resolves `description` and
48498
+ * `parametersSchema` from its own copy of the catalog and admits the result as
48499
+ * `origin: 'webmcp'`, so the caller neither sends nor keeps those in sync. A
48500
+ * name the catalog does not define is a 400, never a silent drop.
48501
+ *
48502
+ * Accepted on `POST /v1/dispatch` and `POST /v1/agents/:id/execute`. The
48503
+ * client-token routes (`/v1/client/chat`, `/v1/client/resume`) take full
48504
+ * manifests only.
48505
+ */
48506
+ interface CatalogClientToolRef {
48507
+ name: string;
48508
+ catalog: 'runtype-mcp';
48509
+ origin?: 'webmcp';
48510
+ pageOrigin?: string;
48511
+ }
48512
+ /** One `clientTools[]` entry: a full manifest, or a first-party catalog ref. */
48513
+ type ClientToolEntry = ClientToolDefinition | CatalogClientToolRef;
48514
+ /** Narrow a {@link ClientToolEntry} to the name-only catalog-ref arm. */
48515
+ declare function isCatalogClientToolRef(entry: ClientToolEntry): entry is CatalogClientToolRef;
48252
48516
  /**
48253
48517
  * The canonical set of flow step types (e.g. `'prompt'`, `'transform-data'`,
48254
48518
  * `'conditional'`). Spec-derived from `FLOW_STEP_TYPES` in `@runtypelabs/shared`
@@ -48290,6 +48554,10 @@ type DispatchContinuationRequest = NonNullable<paths['/v1/dispatch/continue']['p
48290
48554
  * streaming callers receive `ExecutionStreamEvent` frames instead.
48291
48555
  */
48292
48556
  type DispatchResponse = paths['/v1/dispatch']['post']['responses'][200]['content']['application/json'];
48557
+ /** Durable handle returned by execute routes when `Prefer: respond-async` is applied. */
48558
+ type AsyncExecutionHandle = components['schemas']['AsyncDispatchHandle'];
48559
+ /** Lifecycle response returned by the generic asynchronous execution status route. */
48560
+ type AsyncExecutionStatus = paths['/v1/executions/{executionId}/status']['get']['responses'][200]['content']['application/json'];
48293
48561
  /** Buffered `/v1/dispatch/resume` response for a tool-output continuation. */
48294
48562
  type DispatchResumeResponse = components['schemas']['DispatchToolOutputContinuationJsonResponse'];
48295
48563
  /** Buffered ordinary-approval result (detached approvals use a separate variant). */
@@ -48347,9 +48615,11 @@ type DispatchRequestEnvelope = Omit<CanonicalDispatchRequestEnvelope, 'record' |
48347
48615
  /**
48348
48616
  * Kept on the historical SDK authoring type so schema-builder outputs typed
48349
48617
  * as generic records remain source-compatible. The dispatch boundary checks
48350
- * every schema root before emitting the canonical wire request.
48618
+ * every schema root before emitting the canonical wire request — a
48619
+ * {@link CatalogClientToolRef} carries no schema of its own and is passed
48620
+ * through untouched.
48351
48621
  */
48352
- clientTools?: ClientToolDefinition[];
48622
+ clientTools?: ClientToolEntry[];
48353
48623
  };
48354
48624
  /**
48355
48625
  * Canonical `/v1/dispatch` request body, generated from the API's shared
@@ -48955,6 +49225,13 @@ interface SlackOAuthStartRequest {
48955
49225
  clientId: string;
48956
49226
  clientSecret: string;
48957
49227
  signingSecret: string;
49228
+ /**
49229
+ * Slack surface (`surf_`) this install belongs to. When set, the callback
49230
+ * writes the install onto the surface and activates it server-side, so the
49231
+ * caller does not have to stamp it afterwards. Must be owned by the caller —
49232
+ * a missing or foreign id fails the start call.
49233
+ */
49234
+ surfaceId?: string;
48958
49235
  includeAssistantFeatures?: boolean;
48959
49236
  }
48960
49237
  interface SlackOAuthStartResponse {
@@ -48966,28 +49243,29 @@ interface SlackOAuthStartResponse {
48966
49243
  * OAuth redirect) derived from its own public origin — the manifest is never
48967
49244
  * built client-side, so relative proxy paths can never leak into it.
48968
49245
  */
48969
- interface SlackManifestRequest {
48970
- appName: string;
48971
- /** Surface the events webhook is scoped to. */
48972
- surfaceId: string;
48973
- /** Optional reserved integration id stamps the interactivity webhook URL. */
48974
- integrationId?: string;
48975
- includeAssistantFeatures?: boolean;
48976
- }
48977
- interface SlackManifestResponse {
48978
- /** Slack app manifest as a JSON string (snake_case, per Slack's schema). */
48979
- manifestJson: string;
48980
- /**
48981
- * Link to Slack's app-creation page (`https://api.slack.com/apps?new_app=1`).
48982
- * The manifest is NOT embedded — Slack's create-app modal ignores the
48983
- * `manifest_json` URL parameter, so paste `manifestJson` into the
48984
- * "From a manifest" option instead.
48985
- */
48986
- createAppUrl: string;
48987
- eventsWebhookUrl: string;
48988
- interactivityWebhookUrl?: string;
48989
- redirectUrl: string;
48990
- }
49246
+ /**
49247
+ * Derived from the generated OpenAPI types rather than hand-written, so a route
49248
+ * change cannot leave this interface stale. The hand-written pair previously
49249
+ * drifted: it still required `appName` and was missing `integrationId` /
49250
+ * `connectHandoff`, which made the `{ surfaceId }`-only call untypeable.
49251
+ *
49252
+ * `appName` is optional (defaults server-side to the surface's own name), and
49253
+ * `integrationId` is optional — omit it and the route reserves a pending Slack
49254
+ * integration for you (24h TTL) and returns it as `integrationId`.
49255
+ */
49256
+ type SlackManifestRequest = NonNullable<paths['/v1/integrations/slack/manifest']['post']['requestBody']>['content']['application/json'];
49257
+ /**
49258
+ * `createAppUrl` links to Slack's app-creation page
49259
+ * (`https://api.slack.com/apps?new_app=1`). The manifest is NOT embedded —
49260
+ * Slack's create-app modal ignores the `manifest_json` URL parameter, so paste
49261
+ * `manifestJson` into the "From a manifest" option instead.
49262
+ *
49263
+ * `connectHandoff` is the hosted connect page where a human supplies the Slack
49264
+ * Client ID / Client Secret / Signing Secret and runs "Add to Slack". It is
49265
+ * present only for a pending reservation; an already-active integration is
49266
+ * already connected and gets the manifest without a handoff.
49267
+ */
49268
+ type SlackManifestResponse = paths['/v1/integrations/slack/manifest']['post']['responses'][200]['content']['application/json'];
48991
49269
  interface EndUserUsageQuery {
48992
49270
  productId: string;
48993
49271
  productTenantId?: string;
@@ -49862,6 +50140,7 @@ type Message = Message$1;
49862
50140
  type NamespaceStepConfig<T> = T;
49863
50141
  type FetchUrlNamespaceConfig = NamespaceStepConfig<FetchUrlStepConfig$1>;
49864
50142
  type ConditionalNamespaceConfig = NamespaceStepConfig<ConditionalStepConfig$1>;
50143
+ type LoopNamespaceConfig = NamespaceStepConfig<LoopStepConfig$1>;
49865
50144
  type SendEventNamespaceConfig = NamespaceStepConfig<SendEventStepConfig$1>;
49866
50145
  type PromptStepConfig = NamespaceStepConfig<PromptStepConfig$1>;
49867
50146
  type CrawlStepConfig = NamespaceStepConfig<CrawlStepConfig$1>;
@@ -49881,6 +50160,9 @@ type ConditionalStepConfig = Omit<ConditionalNamespaceConfig, 'trueSteps' | 'fal
49881
50160
  trueSteps?: unknown[];
49882
50161
  falseSteps?: unknown[];
49883
50162
  };
50163
+ type LoopStepConfig = Omit<LoopNamespaceConfig, 'steps'> & {
50164
+ steps: unknown[];
50165
+ };
49884
50166
  type SearchStepConfig = NamespaceStepConfig<SearchStepConfig$1>;
49885
50167
  type SendEmailStepConfig = NamespaceStepConfig<SendEmailStepConfig$1>;
49886
50168
  type SendStreamStepConfig = NamespaceStepConfig<SendStreamStepConfig$1>;
@@ -50057,6 +50339,10 @@ declare class RuntypeFlowBuilder {
50057
50339
  * Add a conditional step
50058
50340
  */
50059
50341
  conditional(config: ConditionalStepConfig): this;
50342
+ /**
50343
+ * Add a bounded do-while loop step.
50344
+ */
50345
+ loop(config: LoopStepConfig): this;
50060
50346
  /**
50061
50347
  * Add a search step
50062
50348
  */
@@ -52040,6 +52326,13 @@ declare class AgentsNamespace {
52040
52326
  private request;
52041
52327
  }
52042
52328
 
52329
+ /** Read-only namespace for durable asynchronous execution handles. */
52330
+ declare class ExecutionsNamespace {
52331
+ private readonly getClient;
52332
+ constructor(getClient: () => RuntypeClient$1);
52333
+ getStatus(executionId: string): Promise<AsyncExecutionStatus>;
52334
+ }
52335
+
52043
52336
  /**
52044
52337
  * Tool config-as-code: `defineTool`, `tools.ensure`, `tools.pull`.
52045
52338
  *
@@ -52802,7 +53095,7 @@ declare class RuntypeClient$1 {
52802
53095
  /**
52803
53096
  * Generic POST request
52804
53097
  */
52805
- post<T>(path: string, data?: unknown): Promise<T>;
53098
+ post<T>(path: string, data?: unknown, extraHeaders?: Record<string, string>): Promise<T>;
52806
53099
  /**
52807
53100
  * Generic PUT request
52808
53101
  */
@@ -52836,6 +53129,9 @@ declare class RuntypeClient$1 {
52836
53129
  * and pins `streamResponse: false` so the server returns buffered JSON.
52837
53130
  */
52838
53131
  dispatchJson<T>(config: unknown): Promise<T>;
53132
+ /** Start a normalized dispatch and return a durable handle immediately. */
53133
+ dispatchAsync(config: unknown): Promise<AsyncExecutionHandle>;
53134
+ getExecutionStatus(executionId: string): Promise<AsyncExecutionStatus>;
52839
53135
  /**
52840
53136
  * Build full URL with query parameters
52841
53137
  */
@@ -53019,6 +53315,8 @@ declare class Runtype {
53019
53315
  * ```
53020
53316
  */
53021
53317
  static get agents(): AgentsNamespace;
53318
+ /** Poll durable handles returned by asynchronous execute operations. */
53319
+ static get executions(): ExecutionsNamespace;
53022
53320
  /**
53023
53321
  * Tools namespace - Tool config-as-code (define / ensure / pull)
53024
53322
  *
@@ -53103,6 +53401,177 @@ declare class Runtype {
53103
53401
  static get surfaces(): SurfacesNamespace;
53104
53402
  }
53105
53403
 
53404
+ /**
53405
+ * Agent API key request types.
53406
+ *
53407
+ * An agent (SDK, CLI, MCP client) FILES a request for a new, narrower Runtype
53408
+ * management API key with its existing credential. Nothing is minted. A human
53409
+ * approves it in a focused dashboard page, can only NARROW the grant, and the
53410
+ * requester then redeems it with its PKCE verifier. The key is minted AT
53411
+ * REDEMPTION and returned exactly once, so an approved-but-unclaimed request
53412
+ * never leaves a live key anywhere and the browser never sees plaintext.
53413
+ *
53414
+ * Note: these types are inlined from the internal shared package
53415
+ * (`packages/shared/src/api-key-requests.ts`, the canonical wire contract)
53416
+ * because this SDK ships with `"dependencies": {}` and must not make consumers
53417
+ * install @runtypelabs/shared — the same reason `types.ts`, `client-token-types.ts`
53418
+ * and `evals-suites.ts` mirror rather than import.
53419
+ *
53420
+ * DRIFT CONTROL — this file is the WEAK form and is meant to be temporary.
53421
+ * The package's stronger convention is to DERIVE the type from the generated
53422
+ * OpenAPI artifact (see `types.ts`: `Flow`, `RuntypeRecord`, `CreateFlowRequest`
53423
+ * are all `paths[...]` aliases), which cannot drift because
53424
+ * `pnpm --filter @runtypelabs/sdk generate:types:check` is part of the repo's
53425
+ * `check:generated` CI gate. That is not possible yet only because
53426
+ * `/v1/api-keys/requests*` does not exist in the committed spec
53427
+ * (`apps/api/openapi/public/v1/openapi.json`) at the time of writing.
53428
+ *
53429
+ * The moment those routes land and `pnpm --filter @runtypelabs/sdk generate:types`
53430
+ * regenerates `src/generated/openapi-types.ts`, REPLACE the three wire-bearing
53431
+ * declarations below with these aliases and delete the hand-written bodies:
53432
+ *
53433
+ * import type { paths } from './generated/openapi-types'
53434
+ *
53435
+ * export type ApiKeyRequest =
53436
+ * paths['/v1/api-keys/requests/{id}']['get']['responses'][200]['content']['application/json']
53437
+ * export type CreateApiKeyRequestInput =
53438
+ * paths['/v1/api-keys/requests']['post']['requestBody']['content']['application/json']
53439
+ * export type CreateApiKeyRequestResponse =
53440
+ * paths['/v1/api-keys/requests']['post']['responses'][201]['content']['application/json']
53441
+ * export type ClaimApiKeyRequestInput =
53442
+ * paths['/v1/api-keys/requests/{id}/claim']['post']['requestBody']['content']['application/json']
53443
+ * export type ClaimApiKeyRequestResponse =
53444
+ * paths['/v1/api-keys/requests/{id}/claim']['post']['responses'][200]['content']['application/json']
53445
+ *
53446
+ * (Adjust the exact status codes / `{id}` spelling to whatever the routes
53447
+ * register.) Until then, any change to `packages/shared/src/api-key-requests.ts`
53448
+ * must be mirrored here by hand.
53449
+ */
53450
+ /** Lifecycle of a request. Terminal: declined, claimed, expired, cancelled. */
53451
+ type ApiKeyRequestStatus = 'pending' | 'approved' | 'declined' | 'claimed' | 'expired' | 'cancelled';
53452
+ type ApiKeyRequestEnvironment = 'live' | 'test';
53453
+ /**
53454
+ * How the requester would like to receive the key. Recorded for the approver to
53455
+ * see; the ACTUAL delivery is chosen at claim time.
53456
+ *
53457
+ * - `secret` — stored as an org Runtype secret; only a `{{secret:KEY}}`
53458
+ * reference comes back. The value never enters a transcript.
53459
+ * - `keyfile` — the CLI writes a 0600 key file and returns only its path.
53460
+ * - `inline` — plaintext returned once from the claim response (SDK/CI).
53461
+ */
53462
+ type ApiKeyRequestDelivery = 'secret' | 'keyfile' | 'inline';
53463
+ /** Browser handoff envelope: where a human goes to decide. */
53464
+ interface ApiKeyRequestHandoff {
53465
+ type: 'url';
53466
+ url: string;
53467
+ expiresAt: string;
53468
+ }
53469
+ /** Requester identity as shown to the approver. Display only, never authorization. */
53470
+ interface ApiKeyRequestRequester {
53471
+ /** `key_…` when the request came from an API key; null for a Clerk session. */
53472
+ apiKeyId: string | null;
53473
+ apiKeyName: string | null;
53474
+ /** From the MCP client-info stash when known. */
53475
+ clientName: string | null;
53476
+ clientVersion: string | null;
53477
+ /** Effective permissions of the requesting credential, for the escalation badge. */
53478
+ permissions: string[];
53479
+ }
53480
+ interface ApiKeyRequest {
53481
+ id: string;
53482
+ organizationId: string;
53483
+ status: ApiKeyRequestStatus;
53484
+ name: string;
53485
+ /**
53486
+ * The requester's own claim about why it needs the key. Attacker-writable
53487
+ * text under prompt injection: display it, never branch on it.
53488
+ */
53489
+ reason: string;
53490
+ requestedPermissions: string[];
53491
+ /** Requested scopes the requesting credential does NOT already hold. */
53492
+ escalatedPermissions: string[];
53493
+ environment: ApiKeyRequestEnvironment;
53494
+ requestedTtlSeconds: number;
53495
+ preferredDelivery: ApiKeyRequestDelivery;
53496
+ requester: ApiKeyRequestRequester;
53497
+ grantedPermissions: string[] | null;
53498
+ grantedExpiresAt: string | null;
53499
+ decidedByUserId: string | null;
53500
+ decidedAt: string | null;
53501
+ declineReason: string | null;
53502
+ claimExpiresAt: string | null;
53503
+ claimedAt: string | null;
53504
+ mintedApiKeyId: string | null;
53505
+ expiresAt: string;
53506
+ createdAt: string;
53507
+ updatedAt: string;
53508
+ }
53509
+ /** Body of `apiKeys.requests.create`. */
53510
+ interface CreateApiKeyRequestInput {
53511
+ name: string;
53512
+ permissions: string[];
53513
+ /** Shown to the approver as the requester's claim. */
53514
+ reason: string;
53515
+ environment?: ApiKeyRequestEnvironment;
53516
+ ttlSeconds?: number;
53517
+ preferredDelivery?: ApiKeyRequestDelivery;
53518
+ /**
53519
+ * PKCE (RFC 7636) S256 challenge: `BASE64URL(SHA256(ASCII(codeVerifier)))`.
53520
+ * Keep the verifier — it is the one-time secret that redeems the request, and
53521
+ * a request id without it is worthless.
53522
+ */
53523
+ codeChallenge: string;
53524
+ codeChallengeMethod?: 'S256';
53525
+ /** Dashboard path to return the approver to after they decide. */
53526
+ returnUrl?: string;
53527
+ }
53528
+ interface CreateApiKeyRequestResponse {
53529
+ request: ApiKeyRequest;
53530
+ handoff: ApiKeyRequestHandoff;
53531
+ pollIntervalMs: number;
53532
+ /** Plain-text instructions for what to do next. Safe to surface verbatim. */
53533
+ nextSteps: string;
53534
+ }
53535
+ /** Body of `apiKeys.requests.claim`. */
53536
+ interface ClaimApiKeyRequestInput {
53537
+ codeVerifier: string;
53538
+ /** Defaults to `inline` server-side. */
53539
+ delivery?: 'inline' | 'secret';
53540
+ /** Key to store under for `secret` delivery. Defaults to `RUNTYPE_API_KEY_<NAME>`. */
53541
+ secretKey?: string;
53542
+ }
53543
+ /** Exactly one of `apiKey` / `secretRef` is present, per `delivery`. */
53544
+ interface ClaimApiKeyRequestResponse {
53545
+ request: ApiKeyRequest;
53546
+ keyId: string;
53547
+ name: string;
53548
+ environment: ApiKeyRequestEnvironment;
53549
+ permissions: string[];
53550
+ expiresAt: string | null;
53551
+ delivery: 'inline' | 'secret';
53552
+ /** Plaintext key. Present once, only for `delivery: 'inline'`. */
53553
+ apiKey?: string;
53554
+ /** `{{secret:KEY}}` reference. Present only for `delivery: 'secret'`. */
53555
+ secretRef?: string;
53556
+ secretKey?: string;
53557
+ nextSteps: string;
53558
+ }
53559
+ /**
53560
+ * `GET /v1/api-keys/requests/{id}` envelope. `handoff` is present only while
53561
+ * the request is still `pending` — once it is decided there is nothing left to
53562
+ * approve. Mirrors `getApiKeyRequestResponseSchema` in `@runtypelabs/shared`.
53563
+ */
53564
+ interface GetApiKeyRequestResponse {
53565
+ request: ApiKeyRequest;
53566
+ handoff?: ApiKeyRequestHandoff;
53567
+ }
53568
+ /** Query params for `apiKeys.requests.list` (Clerk-session surface). */
53569
+ interface ApiKeyRequestListParams {
53570
+ status?: ApiKeyRequestStatus;
53571
+ limit?: number;
53572
+ cursor?: string;
53573
+ }
53574
+
53106
53575
  /**
53107
53576
  * Client Token Types
53108
53577
  *
@@ -53539,7 +54008,7 @@ interface ApiClient {
53539
54008
  get<T>(path: string, params?: {
53540
54009
  [key: string]: any;
53541
54010
  }): Promise<T>;
53542
- post<T>(path: string, data?: any): Promise<T>;
54011
+ post<T>(path: string, data?: any, headers?: Record<string, string>): Promise<T>;
53543
54012
  put<T>(path: string, data?: any): Promise<T>;
53544
54013
  patch<T>(path: string, data?: any): Promise<T>;
53545
54014
  delete<T>(path: string, data?: any): Promise<T>;
@@ -53828,11 +54297,86 @@ declare class CollectionsEndpoint {
53828
54297
  */
53829
54298
  typegen(): Promise<string>;
53830
54299
  }
54300
+ /**
54301
+ * Agent API key REQUESTS — a device-authorization-style grant.
54302
+ *
54303
+ * The requester never mints a key: it files a request with a PKCE challenge, a
54304
+ * human approves it in the dashboard (and can only narrow the grant), and the
54305
+ * requester redeems it with the verifier. Keep the verifier — an approved
54306
+ * request without it is unclaimable, which is what makes a request id safe to
54307
+ * pass around in a URL.
54308
+ *
54309
+ * ```typescript
54310
+ * import { createHash, randomBytes } from 'node:crypto'
54311
+ *
54312
+ * const codeVerifier = randomBytes(32).toString('base64url')
54313
+ * const codeChallenge = createHash('sha256').update(codeVerifier).digest('base64url')
54314
+ *
54315
+ * const { request, handoff } = await client.apiKeys.requests.create({
54316
+ * name: 'deploy-bot',
54317
+ * permissions: ['FLOWS:READ'],
54318
+ * reason: 'Nightly deploy job needs to read flows.',
54319
+ * codeChallenge,
54320
+ * })
54321
+ * console.log(`Approve at ${handoff.url}`)
54322
+ *
54323
+ * // …after a human approves…
54324
+ * const claimed = await client.apiKeys.requests.claim(request.id, { codeVerifier })
54325
+ * ```
54326
+ */
54327
+ declare class ApiKeyRequestsEndpoint {
54328
+ private client;
54329
+ constructor(client: ApiClient);
54330
+ /**
54331
+ * File a request. Nothing is minted; the response carries the request, the
54332
+ * browser handoff a human must complete, and a suggested poll interval.
54333
+ */
54334
+ create(data: CreateApiKeyRequestInput): Promise<CreateApiKeyRequestResponse>;
54335
+ /**
54336
+ * Read one request — poll this for the approval decision.
54337
+ *
54338
+ * The route answers with the `{ request, handoff? }` envelope (the handoff is
54339
+ * present only while a human still has to act), so unwrap it the way `list()`
54340
+ * unwraps `{ requests }`. Returning the envelope raw types as `ApiKeyRequest`
54341
+ * but has no `status`, which silently reads as `undefined` in every caller's
54342
+ * state machine rather than failing anywhere near here.
54343
+ */
54344
+ get(requestId: string): Promise<ApiKeyRequest>;
54345
+ /**
54346
+ * Read one request together with its browser handoff. Same route as `get()`;
54347
+ * use this when re-raising the approval prompt for a request this process did
54348
+ * not file (the handoff is absent once the request leaves `pending`).
54349
+ */
54350
+ getWithHandoff(requestId: string): Promise<GetApiKeyRequestResponse>;
54351
+ /**
54352
+ * List requests for the account. Clerk-session surface (the human review
54353
+ * queue); an API key sees only its own requests.
54354
+ */
54355
+ list(params?: ApiKeyRequestListParams): Promise<ApiKeyRequest[]>;
54356
+ /**
54357
+ * Redeem an approved request. The key is minted here and returned exactly
54358
+ * once: `delivery: 'inline'` (the API default) puts the plaintext in
54359
+ * `apiKey`; `delivery: 'secret'` stores it as a Runtype secret and returns
54360
+ * only a `{{secret:KEY}}` reference in `secretRef`. Claiming twice is a 409.
54361
+ */
54362
+ claim(requestId: string, data: ClaimApiKeyRequestInput): Promise<ClaimApiKeyRequestResponse>;
54363
+ /** Withdraw a pending request you filed. Cannot be undone. */
54364
+ cancel(requestId: string): Promise<{
54365
+ request: ApiKeyRequest;
54366
+ }>;
54367
+ }
53831
54368
  /**
53832
54369
  * API Keys endpoint handlers
53833
54370
  */
53834
54371
  declare class ApiKeysEndpoint {
53835
54372
  private client;
54373
+ /**
54374
+ * Agent key requests (`/v1/api-keys/requests`). Use this instead of
54375
+ * {@link ApiKeysEndpoint.create} when the caller is an agent or automation:
54376
+ * `create` mints immediately and is Clerk-session only, while a request puts
54377
+ * a human in the loop and mints at redemption.
54378
+ */
54379
+ readonly requests: ApiKeyRequestsEndpoint;
53836
54380
  constructor(client: ApiClient);
53837
54381
  /**
53838
54382
  * List all API keys for the authenticated user
@@ -54032,6 +54576,8 @@ declare class DispatchEndpoint {
54032
54576
  * Dispatch: create and/or execute flows on records atomically
54033
54577
  */
54034
54578
  execute(data: DispatchRequest): Promise<any>;
54579
+ /** Start a dispatch and return its durable execution handle immediately. */
54580
+ executeAsync(data: DispatchRequest): Promise<AsyncExecutionHandle>;
54035
54581
  /**
54036
54582
  * Dispatch with streaming response
54037
54583
  */
@@ -54084,6 +54630,12 @@ declare class DispatchEndpoint {
54084
54630
  */
54085
54631
  applyGeneratedRuntimeToolProposal(request: DispatchRequest, proposal: unknown, options?: ApplyGeneratedProposalOptions): ApplyGeneratedProposalResult;
54086
54632
  }
54633
+ /** Generic asynchronous execution lifecycle endpoints. */
54634
+ declare class ExecutionsEndpoint {
54635
+ private client;
54636
+ constructor(client: ApiClient);
54637
+ getStatus(executionId: string): Promise<AsyncExecutionStatus>;
54638
+ }
54087
54639
  /**
54088
54640
  * Chat endpoint handler
54089
54641
  */
@@ -55588,6 +56140,8 @@ declare class AgentsEndpoint {
55588
56140
  * Execute an agent (non-streaming)
55589
56141
  */
55590
56142
  execute(id: string, data: AgentExecuteRequest): Promise<AgentExecuteResponse>;
56143
+ /** Start an agent execution and return its durable handle immediately. */
56144
+ executeAsync(id: string, data: AgentExecuteRequest): Promise<AsyncExecutionHandle>;
55591
56145
  /**
55592
56146
  * Execute an agent with streaming response
55593
56147
  *
@@ -56282,6 +56836,7 @@ declare class RuntypeClient implements ApiClient {
56282
56836
  modelConfigs: ModelConfigsEndpoint;
56283
56837
  providerKeys: ProviderKeysEndpoint;
56284
56838
  dispatch: DispatchEndpoint;
56839
+ executions: ExecutionsEndpoint;
56285
56840
  chat: ChatEndpoint;
56286
56841
  users: UsersEndpoint;
56287
56842
  analytics: AnalyticsEndpoint;
@@ -56355,7 +56910,7 @@ declare class RuntypeClient implements ApiClient {
56355
56910
  /**
56356
56911
  * Generic POST request
56357
56912
  */
56358
- post<T>(path: string, data?: unknown): Promise<T>;
56913
+ post<T>(path: string, data?: unknown, extraHeaders?: Record<string, string>): Promise<T>;
56359
56914
  /**
56360
56915
  * POST request with FormData support for file uploads
56361
56916
  */
@@ -57191,6 +57746,19 @@ declare const STEP_FIELD_REGISTRY: {
57191
57746
  readonly key: "falseSteps";
57192
57747
  readonly format: "value";
57193
57748
  }];
57749
+ readonly loop: readonly [{
57750
+ readonly key: "steps";
57751
+ readonly format: "value";
57752
+ }, {
57753
+ readonly key: "until";
57754
+ readonly format: "template";
57755
+ }, {
57756
+ readonly key: "maxIterations";
57757
+ readonly format: "raw";
57758
+ }, {
57759
+ readonly key: "iterationVariable";
57760
+ readonly format: "json";
57761
+ }];
57194
57762
  readonly search: readonly [{
57195
57763
  readonly key: "provider";
57196
57764
  readonly format: "json";
@@ -57581,6 +58149,7 @@ declare const STEP_TYPE_TO_METHOD: {
57581
58149
  readonly 'transform-data': "transformData";
57582
58150
  readonly template: "template";
57583
58151
  readonly conditional: "conditional";
58152
+ readonly loop: "loop";
57584
58153
  readonly 'set-variable': "setVariable";
57585
58154
  readonly 'upsert-record': "upsertRecord";
57586
58155
  readonly 'update-record': "updateRecord";
@@ -57949,4 +58518,4 @@ declare function getLikelySupportingCandidatePaths(bestCandidatePath: string | u
57949
58518
  declare function getDefaultPlanPath(taskName: string): string;
57950
58519
  declare function sanitizeTaskSlug(taskName: string): string;
57951
58520
 
57952
- export { type AIGrader, type Agent, type AgentApprovalCompleteEvent, type AgentApprovalStartEvent, type AgentCompleteEvent, type AgentDefinition, type AgentDefinitionConfig, AgentDriftError, type AgentElicitation, type AgentElicitationRequest, AgentEnsureConflictError, type AgentErrorEvent, type AgentEvent, type AgentEventType, type AgentExecuteRequest, type AgentExecuteResponse, type AgentIterationCompleteEvent, type AgentIterationStartEvent, type AgentMediaEvent, type AgentMessage, type AgentPausedEvent, type AgentPingEvent, type AgentPullResult, type AgentReflectionEvent, type AgentRuntimeToolDefinition, type AgentStartEvent, type AgentStreamCallbacks, type AgentStreamEvent, type AgentSubagentConfig, type AgentToolCompleteEvent, type AgentToolDeltaEvent, type AgentToolInputCompleteEvent, type AgentToolInputDeltaEvent, type AgentToolStartEvent, type AgentTurnCompleteEvent, type AgentTurnDeltaEvent, type AgentTurnStartEvent, type AgentVersionDetail, type AgentVersionListItem, type AgentVersionPublishResponse, AgentVersionsEndpoint, type AgentVersionsListResponse, AgentsEndpoint, AgentsNamespace, AnalyticsEndpoint, type ApiClient, type ApiKey, ApiKeysEndpoint, type ApiResponse, type ApplyGeneratedProposalOptions, type ApplyGeneratedProposalResult, type AssetReferenceContentPart, type AttachRuntimeToolsOptions, type BaseAgentEvent, BatchBuilder, type BatchClient, type BatchListParams, type BatchOptions, type BatchRequest, type BatchResult, type BatchScheduleConfig, type BatchStatus, BatchesNamespace, BillingEndpoint, type BillingSpendAnalyticsParams, type BindSkillInput, type BuiltInGraderId, type BuiltInTool, type BulkEditCondition, type BulkEditRequest, type BulkEditResponse, type BulkEditResult, type CanonicalDispatchMessageContent, type CanonicalDispatchRequest, type CaseExpected, ChatEndpoint, type CheckGrader, type ClaudeManagedEvalOverrideValues, ClientBatchBuilder, type ClientConfig, type ClientConversation, ClientEvalBuilder, ClientFlowBuilder, type ClientToken, type ClientTokenConfig, type ClientTokenEnvironment, type ClientTokenVersionPin, ClientTokensEndpoint, type ClientToolDefinition, type ClientWidgetTheme, type CollectionMeta, CollectionsEndpoint, type ConditionalGetResult, type ConditionalStepConfig$1 as ConditionalStepConfig, type ContextErrorHandling, type ContextFallback, ContextTemplatesEndpoint, type Conversation, type ConversationListItem, type ConversationListParams, type ConversationMessage, type ConversationSource, ConversationsEndpoint, type ConversationsListResponse, type CreateApiKeyRequest, type CreateClientTokenRequest, type CreateClientTokenResponse, type CreateCollectionRequest, type CreateConversationRequest, type CreateEvalSuiteInput, type CreateFlowRequest, type CreateModelConfigRequest, type CreatePromptData, type CreatePromptRequest, type CreateProviderKeyRequest, type CreateRecordRequest, type CreateScheduleRequest, type CreateSecretRequest, type CreateToolRequest, type CurrentBilledSpendResponse, type CurrentBilledSpendSource, type CustomMCPServer, type CustomMCPServerAuth, type CustomToolConfig, DEFAULT_RECOVERY_AFTER_EMPTY_SESSIONS, DEFAULT_STALL_STOP_AFTER, type DecomposeCriteriaResult, type DefineAgentInput, type DefineEvalCaseInput, type DefineEvalInput, type DefineFlowInput, type DefineProductInput, type DefineSkillInput, type DefineSurfaceInput, type DefineToolInput, type DeployCfSandboxRequest, type DeployCfSandboxResponse, type DeploySandboxRequest, type DeploySandboxResponse, type DiscoveredModel, type DispatchAgentInput, type DispatchApprovalContinuationResponse, type DispatchApproveRequest, type DispatchApproveResponse, type DispatchClient, type DispatchContinuationRequest, type DispatchContinuationResponse, type DispatchDetachedApprovalResponse, DispatchEndpoint, type DispatchEnvironment, type DispatchEvent, type DispatchFlowInput, type DispatchMessageContent, type DispatchOptions$1 as DispatchOptions, type DispatchRequest, type DispatchResponse, type DispatchResumeRequest, type DispatchResumeResponse, type EndUserUsageQuery, type EndUserUsageResponse, type EnsureAgentConverged, type EnsureAgentOptions, type EnsureAgentPlan, type EnsureAgentResult, type EnsureEvalResult, type EnsureFlowConverged, type EnsureFlowOptions, type EnsureFlowPlan, type EnsureFlowResult, type EnsureFpoOptions, type EnsureFpoResult, type EnsureProductConverged, type EnsureProductOptions, type EnsureProductPlan, type EnsureProductResult, type EnsureSkillConverged, type EnsureSkillOptions, type EnsureSkillPlan, type EnsureSkillResult, type EnsureSurfaceConverged, type EnsureSurfaceOptions, type EnsureSurfacePlan, type EnsureSurfaceResult, type EnsureToolConverged, type EnsureToolOptions, type EnsureToolPlan, type EnsureToolResult, type ErrorHandlingMode, EvalBuilder, type EvalCaseDefinition, type EvalCaseInput, type EvalCaseProposal, type EvalCaseProposalAccepted, type EvalCaseProposalListResult, type EvalCasesGenerated, type EvalClient, type EvalDefinition, EvalEndpoint, type EvalListParams, type EvalMessage, type EvalOptions, type EvalOverrideValues, type EvalProposalSource, type EvalProposalStatus, type EvalProposedCase, type EvalPullResult, type EvalRecord, type EvalRequest, type EvalResult, type EvalRunCaseScores, type EvalRunConfig, type EvalRunScores, EvalRunner, type EvalStatus, type EvalSuiteCase, type EvalSuiteCaseInput, type EvalSuiteCoverage, type EvalSuiteDetail, type EvalSuiteLatestRun, type EvalSuiteListResult, type EvalSuiteRunQueued, type EvalSuiteRunResult, type EvalSuiteSummary, EvalSuitesNamespace, type EvalTarget, EvalsNamespace, type ExecuteToolRequest, type ExecuteToolResponse, type ExecutionStreamEvent, type ExternalAgentContext, type ExternalToolConfig, type FallbackFailEvent, type FallbackStartEvent, type FallbackSuccessEvent, type FallbackTrigger, type FallbackTriggerType, type FallbacksExhaustedEvent, type FallbacksInitiatedEvent, type FetchUrlStepConfig$1 as FetchUrlStepConfig, type FieldFormat, type FileContentPart, type Flow, type FlowAttachment, FlowBuilder, type FlowCompleteEvent, type FlowConfig$1 as FlowConfig, type FlowDefinition, type FlowDefinitionStep, FlowDriftError, FlowEnsureConflictError, type FlowErrorEvent, type FlowFallback, type FlowInlineEvalInput, type FlowListItem, type FlowPausedEvent, type FlowPullResult, FlowResult, type FlowStartEvent, type FlowStep, type FlowStepDefinition, type FlowStepType, FlowStepsEndpoint, type FlowStreamEvent, type FlowSummary, type FlowToolConfig, type FlowValidationClient, type FlowValidationIssue, type FlowValidationResult, type FlowVersionDetail, type FlowVersionListItem, type FlowVersionPublishResponse, FlowVersionsEndpoint, type FlowVersionsListResponse, FlowsEndpoint, FlowsNamespace, type FpoEntityOutcome, type FpoInput, type GenerateEmbeddingStepConfig$1 as GenerateEmbeddingStepConfig, type GenerateEvalCasesInput, type GeneratedRuntimeToolGateDecision, type GeneratedRuntimeToolGateOptions, type GetRecordStepConfig$1 as GetRecordStepConfig, type Gradeable, type GraderConfig, type GraderOutcome, type GraderSeverity, type HumanVerdict, type ImageContentPart, type InferCollectionSchemaResponse, type Integration, type IntegrationTool, IntegrationsEndpoint, type IntegrationsListResponse, type JSONSchema, type JsonArray, type JsonObject, type JsonPrimitive, type JsonValue, LEDGER_ARTIFACT_LINE_PREFIX, type ListCollectionsResponse, type ListConversationsResponse, type ListParams, type ListRecordsStepConfig$1 as ListRecordsStepConfig, type LocalToolConfig, type LocalToolDefinition, type LocalToolExecutionCompleteEvent, type LocalToolExecutionLoopSnapshotSlice, type LocalToolExecutionStartEvent, type LogEntry, type LogQueryParams, type LogQueryResponse, type LogQueryResult, type LogStatsParams, type LogStatsResponse, type LogStatsResult, LogsEndpoint, type Message$1 as Message, type MessageContent, type MessageFallback, type Metadata, type ModelConfig, ModelConfigsEndpoint, type ModelFallback, type ModelOverride, type ModelUsageDetail, type ModelUsageQueryParams, type ModelUsageResponse, type ModelUsageSummary, type ModelUsageTimeSeries, type PaginationResponse, type PersistedGraderOutcome, type ProductDefinition, ProductDriftError, ProductEnsureConflictError, type ProductPullResult, ProductsNamespace, type Prompt$1 as Prompt, type PromptErrorHandling, type PromptFallback, type PromptListParams, type PromptStepConfig$1 as PromptStepConfig, PromptsEndpoint, PromptsNamespace, type ProviderApiKey, type ProviderKeyModel, ProviderKeysEndpoint, type PullFpoResult, RUNTYPE_CLIENT_KIND, type ReasoningConfig, type ReasoningContentPart, type ReasoningValue, type RecordCollection, type RecordCollectionWithHistory, type RecordCollections, type RecordConfig$1 as RecordConfig, type RecordCostAggregation, type RecordCostModelBreakdown, type RecordFilter, type RecordFilterCondition, type RecordFilterGroup, type RecordFilterOperator, type RecordListItem, type RecordListParams, type RecordStepResult, type RecordStepResultsParams, type RecordStepResultsResponse, type RecordWriteResponse, RecordsEndpoint, type RetrieveRecordStepConfig$1 as RetrieveRecordStepConfig, type RetryFallback, type RunEvalCaseResult, type RunEvalInput, type RunEvalResult, type RunTaskContextBudgetBreakdown, type RunTaskContextCompactionEvent, type RunTaskContextCompactionStrategy, type RunTaskContextNoticeEvent, type RunTaskContextSummaryEntry, type RunTaskContinuation, type RunTaskOffloadRecorder, type RunTaskOnContextCompaction, type RunTaskOnContextNotice, type RunTaskOnSession, type RunTaskOptions, type RunTaskResult, type RunTaskResumeState, type RunTaskSessionSummary, type RunTaskState, type RunTaskStateSlice, type RunTaskStatus, type RunTaskToolTraceSlice, type RuntimeCustomToolConfig, type RuntimeExternalToolConfig, type RuntimeFlowToolConfig, type RuntimeLocalToolConfig, type RuntimeSubagentToolConfig, type RuntimeTool, type RuntimeToolConfig, Runtype, type AgentSkillBinding as RuntypeAgentSkillBinding, RuntypeApiError, RuntypeClient, type ConditionalStepConfig as RuntypeConditionalStepConfig, type RuntypeConfig, type FetchUrlStepConfig as RuntypeFetchUrlStepConfig, RuntypeFlowBuilder, type FlowConfig as RuntypeFlowConfig, type GenerateEmbeddingStepConfig as RuntypeGenerateEmbeddingStepConfig, type GetRecordStepConfig as RuntypeGetRecordStepConfig, type ListRecordsStepConfig as RuntypeListRecordsStepConfig, type Message as RuntypeMessage, type ModelOverride$1 as RuntypeModelOverride, type Prompt as RuntypePrompt, type PromptStepConfig as RuntypePromptStepConfig, type RuntypeRecord, type RecordConfig as RuntypeRecordConfig, type RetrieveRecordStepConfig as RuntypeRetrieveRecordStepConfig, type SearchStepConfig as RuntypeSearchStepConfig, type SendEmailStepConfig as RuntypeSendEmailStepConfig, type SendEventStepConfig as RuntypeSendEventStepConfig, type SendStreamStepConfig as RuntypeSendStreamStepConfig, type SetVariableStepConfig as RuntypeSetVariableStepConfig, type Skill as RuntypeSkill, type SkillCapabilities as RuntypeSkillCapabilities, type SkillFrontmatter as RuntypeSkillFrontmatter, type SkillManifest as RuntypeSkillManifest, type SkillProposal as RuntypeSkillProposal, type SkillRuntypeExtensions as RuntypeSkillRuntypeExtensions, type SkillVersion as RuntypeSkillVersion, type TransformDataStepConfig as RuntypeTransformDataStepConfig, type UpsertFlowConfig as RuntypeUpsertFlowConfig, type UpsertRecordStepConfig as RuntypeUpsertRecordStepConfig, type VectorSearchStepConfig as RuntypeVectorSearchStepConfig, type WaitUntilStepConfig as RuntypeWaitUntilStepConfig, SDK_USER_AGENT, SDK_VERSION, STEP_FIELD_REGISTRY, STEP_TYPE_TO_METHOD, type Schedule, type ScheduleExecutionOptions, type ScheduleListParams, type ScheduleMessage, type ScheduleMessageSet, type ScheduleMessages, type ScheduleMutationResponse, type ScheduleRun, type ScheduleRunNowResponse, type ScheduleStatusResponse, type ScheduleTarget, type ScheduleTrigger, SchedulesEndpoint, type SearchStepConfig$1 as SearchStepConfig, type Secret, type SecretCheckResponse, type SecretDeleteResponse, type SecretSetupUrlRequest, type SecretSetupUrlResponse, SecretsEndpoint, type SelectOrganizationProviderCredentialRequest, type SelectOrganizationProviderCredentialResponse, type SendEmailStepConfig$1 as SendEmailStepConfig, type SendEventStepConfig$1 as SendEventStepConfig, type SendStreamStepConfig$1 as SendStreamStepConfig, type SetVariableStepConfig$1 as SetVariableStepConfig, type SkillDefinition, SkillDriftError, SkillEnsureConflictError, type SkillListPage, type SkillListPagination, type SkillListParams, type SkillManifestInput, type SkillMarkdownInput, type SkillOrigin, type SkillProposalStatus, SkillProposalsNamespace, type SkillPullResult, type SkillStatus, type SkillTrustLevel, type SkillVersionStatus, type SkillWithVersion, type SkillWriteInput, SkillsNamespace, type SlackInstallRequest, type SlackManifestRequest, type SlackManifestResponse, type SlackOAuthStartRequest, type SlackOAuthStartResponse, type StepCompleteEvent, type StepDeltaEvent, type StepFallback, type StepFieldMeta, type StepStartEvent, type StepWaitingLocalEvent, type StreamCallbacks, type StreamConsumeOptions, type StreamEvent, type StreamEventOf, type SubagentToolConfig, type Surface, type SurfaceDefinition, type SurfaceDefinitionEnvironment, type SurfaceDefinitionStatus, type SurfaceDefinitionType, SurfaceDriftError, SurfaceEnsureConflictError, type SurfaceListParams, type SurfacePullResult, SurfacesEndpoint, SurfacesNamespace, type TextContentPart, type Tool, type ToolApprovalGrant, ToolApprovalGrantsEndpoint, type ToolConfig, type ToolDefinition, type ToolDefinitionType, ToolDriftError, ToolEnsureConflictError, type ToolPullResult, type ToolWithValidation, type ToolsConfig, ToolsEndpoint, ToolsNamespace, type TransformDataStepConfig$1 as TransformDataStepConfig, type TypedCreateRecordRequest, type TypedRecordListItem, type TypedRecordWriteResponse, TypedRecordsScope, type TypedRuntypeRecord, UNIFIED_EVENTS_QUERY, type UpdateClientTokenRequest, type UpdateCollectionRequest, type UpdateCollectionResponse, type UpdateConversationRequest, type UpdateEvalCaseInput, type UpdateEvalSuiteInput, type UpdateFlowRequest, type UpdatePromptData, type UpdateProviderKeyRequest, type UpdateScheduleRequest, type UpdateSecretRequest, type UpdateToolRequest, type UpdatedFlow, type UpsertFlowConfig$1 as UpsertFlowConfig, type UpsertOptions, type UpsertRecordStepConfig$1 as UpsertRecordStepConfig, type UserProfile, UsersEndpoint, type ValidateExistingRecordsResponse, type VectorSearchStepConfig$1 as VectorSearchStepConfig, type VersionType, type WaitUntilStepConfig$1 as WaitUntilStepConfig, type WorkflowCompileDeps, type WorkflowCompletionCriteriaConfig, type WorkflowConfig, type WorkflowConfigFactory, type WorkflowContext, type WorkflowDefinition, type WorkflowHookEntry, type WorkflowHookKind, type WorkflowHookRef, type WorkflowHookSignatures, type WorkflowMilestoneConfig, type WorkflowPhase, type WorkflowPolicyConfig, type WorkflowRecoveryConfig, type WorkflowSlot, type WorkflowStallPolicy, applyGeneratedRuntimeToolProposalToDispatchRequest, attachRuntimeToolsToDispatchRequest, buildEmptySessionNudge, buildGeneratedRuntimeToolGateOutput, buildLedgerOffloadReference, buildPolicyGuidance, buildSendViewOffloadMarker, calledTool, compileWorkflowConfig, completed, computeAgentContentHash, computeEvalContentHash, computeFlowContentHash, computeFpoContentHash, computeProductContentHash, computeSkillContentHash, computeSurfaceContentHash, computeToolContentHash, contains, cost, createAgentEventTranslator, createClient, createExternalTool, createFlowEventTranslator, defaultWorkflow, defaultWorkflowConfig, defineAgent, defineEval, defineFlow, defineFpo, definePlaybook, defineProduct, defineSkill, defineSurface, defineTool, deployWorkflow, ensureDefaultWorkflowHooks, ensureEval, ensureFpo, evaluateGeneratedRuntimeToolProposal, extractDeclaredToolResultChars, gameWorkflow, getDefaultPlanPath, getLikelySupportingCandidatePaths, interpolateWorkflowTemplate, isDiscoveryToolName, isMarathonArtifactPath, isPreservationSensitiveTask, isUnifiedEventType, isWorkflowHookRef, jsonField, judge, judges, latency, length, listWorkflowHooks, matchesExpected, maxToolCalls, noError, normalizeAgentDefinition, normalizeCandidatePath, normalizeFpoDefinition, normalizeProductDefinition, normalizeSkillDefinition, normalizeSurfaceDefinition, normalizeToolDefinition, notCalledTool, notContains, parseFinalBuffer, parseLedgerArtifactRelativePath, parseOffloadedOutputId, parseSSEChunk, processStream, pullEval, pullFpo, ranStep, regex, registerWorkflowHook, resolveStallStopAfter, resolveWorkflowHook, runEvalSuite, sanitizeTaskSlug, shouldInjectEmptySessionNudge, shouldRequestModelEscalation, stepOrder, streamEvents, toolOrder, unregisterWorkflowHook, usedNoTools, validJson, withUnifiedEvents };
58521
+ export { type AIGrader, type Agent, type AgentApprovalCompleteEvent, type AgentApprovalStartEvent, type AgentCompleteEvent, type AgentDefinition, type AgentDefinitionConfig, AgentDriftError, type AgentElicitation, type AgentElicitationRequest, AgentEnsureConflictError, type AgentErrorEvent, type AgentEvent, type AgentEventType, type AgentExecuteRequest, type AgentExecuteResponse, type AgentIterationCompleteEvent, type AgentIterationStartEvent, type AgentMediaEvent, type AgentMessage, type AgentPausedEvent, type AgentPingEvent, type AgentPullResult, type AgentReflectionEvent, type AgentRuntimeToolDefinition, type AgentStartEvent, type AgentStreamCallbacks, type AgentStreamEvent, type AgentSubagentConfig, type AgentToolCompleteEvent, type AgentToolDeltaEvent, type AgentToolInputCompleteEvent, type AgentToolInputDeltaEvent, type AgentToolStartEvent, type AgentTurnCompleteEvent, type AgentTurnDeltaEvent, type AgentTurnStartEvent, type AgentVersionDetail, type AgentVersionListItem, type AgentVersionPublishResponse, AgentVersionsEndpoint, type AgentVersionsListResponse, AgentsEndpoint, AgentsNamespace, AnalyticsEndpoint, type ApiClient, type ApiKey, type ApiKeyRequest, type ApiKeyRequestDelivery, type ApiKeyRequestEnvironment, type ApiKeyRequestHandoff, type ApiKeyRequestListParams, type ApiKeyRequestRequester, type ApiKeyRequestStatus, ApiKeyRequestsEndpoint, ApiKeysEndpoint, type ApiResponse, type ApplyGeneratedProposalOptions, type ApplyGeneratedProposalResult, type AssetReferenceContentPart, type AsyncExecutionHandle, type AsyncExecutionStatus, type AttachRuntimeToolsOptions, type BaseAgentEvent, BatchBuilder, type BatchClient, type BatchListParams, type BatchOptions, type BatchRequest, type BatchResult, type BatchScheduleConfig, type BatchStatus, BatchesNamespace, BillingEndpoint, type BillingSpendAnalyticsParams, type BindSkillInput, type BuiltInGraderId, type BuiltInTool, type BulkEditCondition, type BulkEditRequest, type BulkEditResponse, type BulkEditResult, type CanonicalDispatchMessageContent, type CanonicalDispatchRequest, type CaseExpected, type CatalogClientToolRef, ChatEndpoint, type CheckGrader, type ClaimApiKeyRequestInput, type ClaimApiKeyRequestResponse, type ClaudeManagedEvalOverrideValues, ClientBatchBuilder, type ClientConfig, type ClientConversation, ClientEvalBuilder, ClientFlowBuilder, type ClientToken, type ClientTokenConfig, type ClientTokenEnvironment, type ClientTokenVersionPin, ClientTokensEndpoint, type ClientToolDefinition, type ClientToolEntry, type ClientWidgetTheme, type CollectionMeta, CollectionsEndpoint, type ConditionalGetResult, type ConditionalStepConfig$1 as ConditionalStepConfig, type ContextErrorHandling, type ContextFallback, ContextTemplatesEndpoint, type Conversation, type ConversationListItem, type ConversationListParams, type ConversationMessage, type ConversationSource, ConversationsEndpoint, type ConversationsListResponse, type CreateApiKeyRequest, type CreateApiKeyRequestInput, type CreateApiKeyRequestResponse, type CreateClientTokenRequest, type CreateClientTokenResponse, type CreateCollectionRequest, type CreateConversationRequest, type CreateEvalSuiteInput, type CreateFlowRequest, type CreateModelConfigRequest, type CreatePromptData, type CreatePromptRequest, type CreateProviderKeyRequest, type CreateRecordRequest, type CreateScheduleRequest, type CreateSecretRequest, type CreateToolRequest, type CurrentBilledSpendResponse, type CurrentBilledSpendSource, type CustomMCPServer, type CustomMCPServerAuth, type CustomToolConfig, DEFAULT_RECOVERY_AFTER_EMPTY_SESSIONS, DEFAULT_STALL_STOP_AFTER, type DecomposeCriteriaResult, type DefineAgentInput, type DefineEvalCaseInput, type DefineEvalInput, type DefineFlowInput, type DefineProductInput, type DefineSkillInput, type DefineSurfaceInput, type DefineToolInput, type DeployCfSandboxRequest, type DeployCfSandboxResponse, type DeploySandboxRequest, type DeploySandboxResponse, type DiscoveredModel, type DispatchAgentInput, type DispatchApprovalContinuationResponse, type DispatchApproveRequest, type DispatchApproveResponse, type DispatchClient, type DispatchContinuationRequest, type DispatchContinuationResponse, type DispatchDetachedApprovalResponse, DispatchEndpoint, type DispatchEnvironment, type DispatchEvent, type DispatchFlowInput, type DispatchMessageContent, type DispatchOptions$1 as DispatchOptions, type DispatchRequest, type DispatchResponse, type DispatchResumeRequest, type DispatchResumeResponse, type EndUserUsageQuery, type EndUserUsageResponse, type EnsureAgentConverged, type EnsureAgentOptions, type EnsureAgentPlan, type EnsureAgentResult, type EnsureEvalResult, type EnsureFlowConverged, type EnsureFlowOptions, type EnsureFlowPlan, type EnsureFlowResult, type EnsureFpoOptions, type EnsureFpoResult, type EnsureProductConverged, type EnsureProductOptions, type EnsureProductPlan, type EnsureProductResult, type EnsureSkillConverged, type EnsureSkillOptions, type EnsureSkillPlan, type EnsureSkillResult, type EnsureSurfaceConverged, type EnsureSurfaceOptions, type EnsureSurfacePlan, type EnsureSurfaceResult, type EnsureToolConverged, type EnsureToolOptions, type EnsureToolPlan, type EnsureToolResult, type ErrorHandlingMode, EvalBuilder, type EvalCaseDefinition, type EvalCaseInput, type EvalCaseProposal, type EvalCaseProposalAccepted, type EvalCaseProposalListResult, type EvalCasesGenerated, type EvalClient, type EvalDefinition, EvalEndpoint, type EvalListParams, type EvalMessage, type EvalOptions, type EvalOverrideValues, type EvalProposalSource, type EvalProposalStatus, type EvalProposedCase, type EvalPullResult, type EvalRecord, type EvalRequest, type EvalResult, type EvalRunCaseScores, type EvalRunConfig, type EvalRunScores, EvalRunner, type EvalStatus, type EvalSuiteCase, type EvalSuiteCaseInput, type EvalSuiteCoverage, type EvalSuiteDetail, type EvalSuiteLatestRun, type EvalSuiteListResult, type EvalSuiteRunQueued, type EvalSuiteRunResult, type EvalSuiteSummary, EvalSuitesNamespace, type EvalTarget, EvalsNamespace, type ExecuteToolRequest, type ExecuteToolResponse, type ExecutionStreamEvent, ExecutionsEndpoint, ExecutionsNamespace, type ExternalAgentContext, type ExternalToolConfig, type FallbackFailEvent, type FallbackStartEvent, type FallbackSuccessEvent, type FallbackTrigger, type FallbackTriggerType, type FallbacksExhaustedEvent, type FallbacksInitiatedEvent, type FetchUrlStepConfig$1 as FetchUrlStepConfig, type FieldFormat, type FileContentPart, type Flow, type FlowAttachment, FlowBuilder, type FlowCompleteEvent, type FlowConfig$1 as FlowConfig, type FlowDefinition, type FlowDefinitionStep, FlowDriftError, FlowEnsureConflictError, type FlowErrorEvent, type FlowFallback, type FlowInlineEvalInput, type FlowListItem, type FlowPausedEvent, type FlowPullResult, FlowResult, type FlowStartEvent, type FlowStep, type FlowStepDefinition, type FlowStepType, FlowStepsEndpoint, type FlowStreamEvent, type FlowSummary, type FlowToolConfig, type FlowValidationClient, type FlowValidationIssue, type FlowValidationResult, type FlowVersionDetail, type FlowVersionListItem, type FlowVersionPublishResponse, FlowVersionsEndpoint, type FlowVersionsListResponse, FlowsEndpoint, FlowsNamespace, type FpoEntityOutcome, type FpoInput, type GenerateEmbeddingStepConfig$1 as GenerateEmbeddingStepConfig, type GenerateEvalCasesInput, type GeneratedRuntimeToolGateDecision, type GeneratedRuntimeToolGateOptions, type GetApiKeyRequestResponse, type GetRecordStepConfig$1 as GetRecordStepConfig, type Gradeable, type GraderConfig, type GraderOutcome, type GraderSeverity, type HumanVerdict, type ImageContentPart, type InferCollectionSchemaResponse, type Integration, type IntegrationTool, IntegrationsEndpoint, type IntegrationsListResponse, type JSONSchema, type JsonArray, type JsonObject, type JsonPrimitive, type JsonValue, LEDGER_ARTIFACT_LINE_PREFIX, type ListCollectionsResponse, type ListConversationsResponse, type ListParams, type ListRecordsStepConfig$1 as ListRecordsStepConfig, type LocalToolConfig, type LocalToolDefinition, type LocalToolExecutionCompleteEvent, type LocalToolExecutionLoopSnapshotSlice, type LocalToolExecutionStartEvent, type LogEntry, type LogQueryParams, type LogQueryResponse, type LogQueryResult, type LogStatsParams, type LogStatsResponse, type LogStatsResult, LogsEndpoint, type LoopStepConfig$1 as LoopStepConfig, type Message$1 as Message, type MessageContent, type MessageFallback, type Metadata, type ModelConfig, ModelConfigsEndpoint, type ModelFallback, type ModelOverride, type ModelUsageDetail, type ModelUsageQueryParams, type ModelUsageResponse, type ModelUsageSummary, type ModelUsageTimeSeries, type PaginationResponse, type PersistedGraderOutcome, type ProductDefinition, ProductDriftError, ProductEnsureConflictError, type ProductPullResult, ProductsNamespace, type Prompt$1 as Prompt, type PromptErrorHandling, type PromptFallback, type PromptListParams, type PromptStepConfig$1 as PromptStepConfig, PromptsEndpoint, PromptsNamespace, type ProviderApiKey, type ProviderKeyModel, ProviderKeysEndpoint, type PullFpoResult, RUNTYPE_CLIENT_KIND, type ReasoningConfig, type ReasoningContentPart, type ReasoningValue, type RecordCollection, type RecordCollectionWithHistory, type RecordCollections, type RecordConfig$1 as RecordConfig, type RecordCostAggregation, type RecordCostModelBreakdown, type RecordFilter, type RecordFilterCondition, type RecordFilterGroup, type RecordFilterOperator, type RecordListItem, type RecordListParams, type RecordStepResult, type RecordStepResultsParams, type RecordStepResultsResponse, type RecordWriteResponse, RecordsEndpoint, type RetrieveRecordStepConfig$1 as RetrieveRecordStepConfig, type RetryFallback, type RunEvalCaseResult, type RunEvalInput, type RunEvalResult, type RunTaskContextBudgetBreakdown, type RunTaskContextCompactionEvent, type RunTaskContextCompactionStrategy, type RunTaskContextNoticeEvent, type RunTaskContextSummaryEntry, type RunTaskContinuation, type RunTaskOffloadRecorder, type RunTaskOnContextCompaction, type RunTaskOnContextNotice, type RunTaskOnSession, type RunTaskOptions, type RunTaskResult, type RunTaskResumeState, type RunTaskSessionSummary, type RunTaskState, type RunTaskStateSlice, type RunTaskStatus, type RunTaskToolTraceSlice, type RuntimeCustomToolConfig, type RuntimeExternalToolConfig, type RuntimeFlowToolConfig, type RuntimeLocalToolConfig, type RuntimeSubagentToolConfig, type RuntimeTool, type RuntimeToolConfig, Runtype, type AgentSkillBinding as RuntypeAgentSkillBinding, RuntypeApiError, RuntypeClient, type ConditionalStepConfig as RuntypeConditionalStepConfig, type RuntypeConfig, type FetchUrlStepConfig as RuntypeFetchUrlStepConfig, RuntypeFlowBuilder, type FlowConfig as RuntypeFlowConfig, type GenerateEmbeddingStepConfig as RuntypeGenerateEmbeddingStepConfig, type GetRecordStepConfig as RuntypeGetRecordStepConfig, type ListRecordsStepConfig as RuntypeListRecordsStepConfig, type LoopStepConfig as RuntypeLoopStepConfig, type Message as RuntypeMessage, type ModelOverride$1 as RuntypeModelOverride, type Prompt as RuntypePrompt, type PromptStepConfig as RuntypePromptStepConfig, type RuntypeRecord, type RecordConfig as RuntypeRecordConfig, type RetrieveRecordStepConfig as RuntypeRetrieveRecordStepConfig, type SearchStepConfig as RuntypeSearchStepConfig, type SendEmailStepConfig as RuntypeSendEmailStepConfig, type SendEventStepConfig as RuntypeSendEventStepConfig, type SendStreamStepConfig as RuntypeSendStreamStepConfig, type SetVariableStepConfig as RuntypeSetVariableStepConfig, type Skill as RuntypeSkill, type SkillCapabilities as RuntypeSkillCapabilities, type SkillFrontmatter as RuntypeSkillFrontmatter, type SkillManifest as RuntypeSkillManifest, type SkillProposal as RuntypeSkillProposal, type SkillRuntypeExtensions as RuntypeSkillRuntypeExtensions, type SkillVersion as RuntypeSkillVersion, type TransformDataStepConfig as RuntypeTransformDataStepConfig, type UpsertFlowConfig as RuntypeUpsertFlowConfig, type UpsertRecordStepConfig as RuntypeUpsertRecordStepConfig, type VectorSearchStepConfig as RuntypeVectorSearchStepConfig, type WaitUntilStepConfig as RuntypeWaitUntilStepConfig, SDK_USER_AGENT, SDK_VERSION, STEP_FIELD_REGISTRY, STEP_TYPE_TO_METHOD, type Schedule, type ScheduleExecutionOptions, type ScheduleListParams, type ScheduleMessage, type ScheduleMessageSet, type ScheduleMessages, type ScheduleMutationResponse, type ScheduleRun, type ScheduleRunNowResponse, type ScheduleStatusResponse, type ScheduleTarget, type ScheduleTrigger, SchedulesEndpoint, type SearchStepConfig$1 as SearchStepConfig, type Secret, type SecretCheckResponse, type SecretDeleteResponse, type SecretSetupUrlRequest, type SecretSetupUrlResponse, SecretsEndpoint, type SelectOrganizationProviderCredentialRequest, type SelectOrganizationProviderCredentialResponse, type SendEmailStepConfig$1 as SendEmailStepConfig, type SendEventStepConfig$1 as SendEventStepConfig, type SendStreamStepConfig$1 as SendStreamStepConfig, type SetVariableStepConfig$1 as SetVariableStepConfig, type SkillDefinition, SkillDriftError, SkillEnsureConflictError, type SkillListPage, type SkillListPagination, type SkillListParams, type SkillManifestInput, type SkillMarkdownInput, type SkillOrigin, type SkillProposalStatus, SkillProposalsNamespace, type SkillPullResult, type SkillStatus, type SkillTrustLevel, type SkillVersionStatus, type SkillWithVersion, type SkillWriteInput, SkillsNamespace, type SlackInstallRequest, type SlackManifestRequest, type SlackManifestResponse, type SlackOAuthStartRequest, type SlackOAuthStartResponse, type StepCompleteEvent, type StepDeltaEvent, type StepFallback, type StepFieldMeta, type StepStartEvent, type StepWaitingLocalEvent, type StreamCallbacks, type StreamConsumeOptions, type StreamEvent, type StreamEventOf, type SubagentToolConfig, type Surface, type SurfaceDefinition, type SurfaceDefinitionEnvironment, type SurfaceDefinitionStatus, type SurfaceDefinitionType, SurfaceDriftError, SurfaceEnsureConflictError, type SurfaceListParams, type SurfacePullResult, SurfacesEndpoint, SurfacesNamespace, type TextContentPart, type Tool, type ToolApprovalGrant, ToolApprovalGrantsEndpoint, type ToolConfig, type ToolDefinition, type ToolDefinitionType, ToolDriftError, ToolEnsureConflictError, type ToolPullResult, type ToolWithValidation, type ToolsConfig, ToolsEndpoint, ToolsNamespace, type TransformDataStepConfig$1 as TransformDataStepConfig, type TypedCreateRecordRequest, type TypedRecordListItem, type TypedRecordWriteResponse, TypedRecordsScope, type TypedRuntypeRecord, UNIFIED_EVENTS_QUERY, type UpdateClientTokenRequest, type UpdateCollectionRequest, type UpdateCollectionResponse, type UpdateConversationRequest, type UpdateEvalCaseInput, type UpdateEvalSuiteInput, type UpdateFlowRequest, type UpdatePromptData, type UpdateProviderKeyRequest, type UpdateScheduleRequest, type UpdateSecretRequest, type UpdateToolRequest, type UpdatedFlow, type UpsertFlowConfig$1 as UpsertFlowConfig, type UpsertOptions, type UpsertRecordStepConfig$1 as UpsertRecordStepConfig, type UserProfile, UsersEndpoint, type ValidateExistingRecordsResponse, type VectorSearchStepConfig$1 as VectorSearchStepConfig, type VersionType, type WaitUntilStepConfig$1 as WaitUntilStepConfig, type WorkflowCompileDeps, type WorkflowCompletionCriteriaConfig, type WorkflowConfig, type WorkflowConfigFactory, type WorkflowContext, type WorkflowDefinition, type WorkflowHookEntry, type WorkflowHookKind, type WorkflowHookRef, type WorkflowHookSignatures, type WorkflowMilestoneConfig, type WorkflowPhase, type WorkflowPolicyConfig, type WorkflowRecoveryConfig, type WorkflowSlot, type WorkflowStallPolicy, applyGeneratedRuntimeToolProposalToDispatchRequest, attachRuntimeToolsToDispatchRequest, buildEmptySessionNudge, buildGeneratedRuntimeToolGateOutput, buildLedgerOffloadReference, buildPolicyGuidance, buildSendViewOffloadMarker, calledTool, compileWorkflowConfig, completed, computeAgentContentHash, computeEvalContentHash, computeFlowContentHash, computeFpoContentHash, computeProductContentHash, computeSkillContentHash, computeSurfaceContentHash, computeToolContentHash, contains, cost, createAgentEventTranslator, createClient, createExternalTool, createFlowEventTranslator, defaultWorkflow, defaultWorkflowConfig, defineAgent, defineEval, defineFlow, defineFpo, definePlaybook, defineProduct, defineSkill, defineSurface, defineTool, deployWorkflow, ensureDefaultWorkflowHooks, ensureEval, ensureFpo, evaluateGeneratedRuntimeToolProposal, extractDeclaredToolResultChars, gameWorkflow, getDefaultPlanPath, getLikelySupportingCandidatePaths, interpolateWorkflowTemplate, isCatalogClientToolRef, isDiscoveryToolName, isMarathonArtifactPath, isPreservationSensitiveTask, isUnifiedEventType, isWorkflowHookRef, jsonField, judge, judges, latency, length, listWorkflowHooks, matchesExpected, maxToolCalls, noError, normalizeAgentDefinition, normalizeCandidatePath, normalizeFpoDefinition, normalizeProductDefinition, normalizeSkillDefinition, normalizeSurfaceDefinition, normalizeToolDefinition, notCalledTool, notContains, parseFinalBuffer, parseLedgerArtifactRelativePath, parseOffloadedOutputId, parseSSEChunk, processStream, pullEval, pullFpo, ranStep, regex, registerWorkflowHook, resolveStallStopAfter, resolveWorkflowHook, runEvalSuite, sanitizeTaskSlug, shouldInjectEmptySessionNudge, shouldRequestModelEscalation, stepOrder, streamEvents, toolOrder, unregisterWorkflowHook, usedNoTools, validJson, withUnifiedEvents };