@runtypelabs/sdk 4.15.0 → 4.17.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.cjs +742 -137
- package/dist/index.d.cts +1294 -34
- package/dist/index.d.ts +1294 -34
- package/dist/index.mjs +730 -137
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -723,6 +723,10 @@ interface paths {
|
|
|
723
723
|
};
|
|
724
724
|
tools?: {
|
|
725
725
|
approval?: {
|
|
726
|
+
choices?: {
|
|
727
|
+
alwaysAllow?: boolean;
|
|
728
|
+
alwaysDeny?: boolean;
|
|
729
|
+
};
|
|
726
730
|
requestReason?: boolean;
|
|
727
731
|
require: string[] | boolean;
|
|
728
732
|
timeout?: number;
|
|
@@ -1092,6 +1096,10 @@ interface paths {
|
|
|
1092
1096
|
};
|
|
1093
1097
|
tools?: {
|
|
1094
1098
|
approval?: {
|
|
1099
|
+
choices?: {
|
|
1100
|
+
alwaysAllow?: boolean;
|
|
1101
|
+
alwaysDeny?: boolean;
|
|
1102
|
+
};
|
|
1095
1103
|
requestReason?: boolean;
|
|
1096
1104
|
require: string[] | boolean;
|
|
1097
1105
|
timeout?: number;
|
|
@@ -1733,6 +1741,10 @@ interface paths {
|
|
|
1733
1741
|
};
|
|
1734
1742
|
tools?: {
|
|
1735
1743
|
approval?: {
|
|
1744
|
+
choices?: {
|
|
1745
|
+
alwaysAllow?: boolean;
|
|
1746
|
+
alwaysDeny?: boolean;
|
|
1747
|
+
};
|
|
1736
1748
|
requestReason?: boolean;
|
|
1737
1749
|
require: string[] | boolean;
|
|
1738
1750
|
timeout?: number;
|
|
@@ -10654,6 +10666,13 @@ interface paths {
|
|
|
10654
10666
|
};
|
|
10655
10667
|
};
|
|
10656
10668
|
};
|
|
10669
|
+
/** @description Canonical first page (no cursor/search, includeCount=true) is unchanged since the ETag echoed in If-None-Match. No body. */
|
|
10670
|
+
304: {
|
|
10671
|
+
headers: {
|
|
10672
|
+
[name: string]: unknown;
|
|
10673
|
+
};
|
|
10674
|
+
content?: never;
|
|
10675
|
+
};
|
|
10657
10676
|
/** @description Invalid parameters */
|
|
10658
10677
|
400: {
|
|
10659
10678
|
headers: {
|
|
@@ -21744,6 +21763,227 @@ interface paths {
|
|
|
21744
21763
|
patch?: never;
|
|
21745
21764
|
trace?: never;
|
|
21746
21765
|
};
|
|
21766
|
+
"/v1/products/{id}/surfaces/ensure": {
|
|
21767
|
+
parameters: {
|
|
21768
|
+
query?: never;
|
|
21769
|
+
header?: never;
|
|
21770
|
+
path?: never;
|
|
21771
|
+
cookie?: never;
|
|
21772
|
+
};
|
|
21773
|
+
get?: never;
|
|
21774
|
+
put?: never;
|
|
21775
|
+
/**
|
|
21776
|
+
* Ensure surface (config-as-code converge)
|
|
21777
|
+
* @description Idempotently converge a repo-defined surface definition onto a product. Identity is name + product. Hash-only probes skip the payload in the steady state (a miss is a normal 200 `definitionRequired` response, not an error); full requests create the surface or update it when the canonical content hash differs. The response always carries the server-computed canonical hash. Set dryRun to plan without writing (CI drift gate), and onConflict: "overwrite" to converge over dashboard/API edits. Surfaces have no version snapshots, so there is no publish option.
|
|
21778
|
+
*/
|
|
21779
|
+
post: {
|
|
21780
|
+
parameters: {
|
|
21781
|
+
query?: never;
|
|
21782
|
+
header?: never;
|
|
21783
|
+
path: {
|
|
21784
|
+
id: string;
|
|
21785
|
+
};
|
|
21786
|
+
cookie?: never;
|
|
21787
|
+
};
|
|
21788
|
+
requestBody?: {
|
|
21789
|
+
content: {
|
|
21790
|
+
"application/json": {
|
|
21791
|
+
contentHash?: string;
|
|
21792
|
+
definition?: {
|
|
21793
|
+
behavior?: {
|
|
21794
|
+
[key: string]: unknown;
|
|
21795
|
+
};
|
|
21796
|
+
/** @enum {string} */
|
|
21797
|
+
environment?: "production" | "development";
|
|
21798
|
+
inbound?: {
|
|
21799
|
+
[key: string]: unknown;
|
|
21800
|
+
};
|
|
21801
|
+
name: string;
|
|
21802
|
+
outbound?: {
|
|
21803
|
+
[key: string]: unknown;
|
|
21804
|
+
};
|
|
21805
|
+
/** @enum {string} */
|
|
21806
|
+
status?: "draft" | "active" | "paused";
|
|
21807
|
+
/** @enum {string} */
|
|
21808
|
+
type: "chat" | "mcp" | "mcp_code" | "api" | "webhook" | "schedule" | "a2a" | "email" | "slack" | "sms" | "imessage" | "discord" | "whatsapp" | "telegram" | "hosted-page" | "chrome_extension";
|
|
21809
|
+
};
|
|
21810
|
+
dryRun?: boolean;
|
|
21811
|
+
expectedRemoteHash?: string;
|
|
21812
|
+
name: string;
|
|
21813
|
+
/** @enum {string} */
|
|
21814
|
+
onConflict?: "error" | "overwrite";
|
|
21815
|
+
};
|
|
21816
|
+
};
|
|
21817
|
+
};
|
|
21818
|
+
responses: {
|
|
21819
|
+
/** @description Converge result: unchanged | created | updated | definitionRequired (hash miss — retry with the full definition) | plan (dryRun) */
|
|
21820
|
+
200: {
|
|
21821
|
+
headers: {
|
|
21822
|
+
[name: string]: unknown;
|
|
21823
|
+
};
|
|
21824
|
+
content: {
|
|
21825
|
+
"application/json": components["schemas"]["SurfaceEnsureResponse"];
|
|
21826
|
+
};
|
|
21827
|
+
};
|
|
21828
|
+
/** @description Validation error */
|
|
21829
|
+
400: {
|
|
21830
|
+
headers: {
|
|
21831
|
+
[name: string]: unknown;
|
|
21832
|
+
};
|
|
21833
|
+
content: {
|
|
21834
|
+
"application/json": components["schemas"]["Error"];
|
|
21835
|
+
};
|
|
21836
|
+
};
|
|
21837
|
+
/** @description Unauthorized */
|
|
21838
|
+
401: {
|
|
21839
|
+
headers: {
|
|
21840
|
+
[name: string]: unknown;
|
|
21841
|
+
};
|
|
21842
|
+
content: {
|
|
21843
|
+
"application/json": components["schemas"]["Error"];
|
|
21844
|
+
};
|
|
21845
|
+
};
|
|
21846
|
+
/** @description Plan surface limit reached for the target environment (only a create counts against the quota) */
|
|
21847
|
+
402: {
|
|
21848
|
+
headers: {
|
|
21849
|
+
[name: string]: unknown;
|
|
21850
|
+
};
|
|
21851
|
+
content: {
|
|
21852
|
+
"application/json": components["schemas"]["Error"];
|
|
21853
|
+
};
|
|
21854
|
+
};
|
|
21855
|
+
/** @description Insufficient permissions */
|
|
21856
|
+
403: {
|
|
21857
|
+
headers: {
|
|
21858
|
+
[name: string]: unknown;
|
|
21859
|
+
};
|
|
21860
|
+
content: {
|
|
21861
|
+
"application/json": components["schemas"]["Error"];
|
|
21862
|
+
};
|
|
21863
|
+
};
|
|
21864
|
+
/** @description Product not found */
|
|
21865
|
+
404: {
|
|
21866
|
+
headers: {
|
|
21867
|
+
[name: string]: unknown;
|
|
21868
|
+
};
|
|
21869
|
+
content: {
|
|
21870
|
+
"application/json": components["schemas"]["Error"];
|
|
21871
|
+
};
|
|
21872
|
+
};
|
|
21873
|
+
/** @description Conflict: external_modification (last write was not ensure; pass onConflict: "overwrite") or remote_changed (expectedRemoteHash guard) */
|
|
21874
|
+
409: {
|
|
21875
|
+
headers: {
|
|
21876
|
+
[name: string]: unknown;
|
|
21877
|
+
};
|
|
21878
|
+
content: {
|
|
21879
|
+
"application/json": components["schemas"]["SurfaceEnsureConflict"];
|
|
21880
|
+
};
|
|
21881
|
+
};
|
|
21882
|
+
/** @description Submitted contentHash does not match the server-recomputed canonical hash */
|
|
21883
|
+
422: {
|
|
21884
|
+
headers: {
|
|
21885
|
+
[name: string]: unknown;
|
|
21886
|
+
};
|
|
21887
|
+
content: {
|
|
21888
|
+
"application/json": components["schemas"]["SurfaceEnsureHashMismatch"];
|
|
21889
|
+
};
|
|
21890
|
+
};
|
|
21891
|
+
/** @description Internal server error */
|
|
21892
|
+
500: {
|
|
21893
|
+
headers: {
|
|
21894
|
+
[name: string]: unknown;
|
|
21895
|
+
};
|
|
21896
|
+
content: {
|
|
21897
|
+
"application/json": components["schemas"]["Error"];
|
|
21898
|
+
};
|
|
21899
|
+
};
|
|
21900
|
+
};
|
|
21901
|
+
};
|
|
21902
|
+
delete?: never;
|
|
21903
|
+
options?: never;
|
|
21904
|
+
head?: never;
|
|
21905
|
+
patch?: never;
|
|
21906
|
+
trace?: never;
|
|
21907
|
+
};
|
|
21908
|
+
"/v1/products/{id}/surfaces/pull": {
|
|
21909
|
+
parameters: {
|
|
21910
|
+
query?: never;
|
|
21911
|
+
header?: never;
|
|
21912
|
+
path?: never;
|
|
21913
|
+
cookie?: never;
|
|
21914
|
+
};
|
|
21915
|
+
/**
|
|
21916
|
+
* Pull surface definition (config-as-code)
|
|
21917
|
+
* @description Return the canonical config-as-code definition and provenance for a surface by name within a product — the absorb-drift direction of the ensure protocol. The contentHash is recomputed from the live surface state, so it is accurate even immediately after a dashboard edit.
|
|
21918
|
+
*/
|
|
21919
|
+
get: {
|
|
21920
|
+
parameters: {
|
|
21921
|
+
query: {
|
|
21922
|
+
name: string;
|
|
21923
|
+
};
|
|
21924
|
+
header?: never;
|
|
21925
|
+
path: {
|
|
21926
|
+
id: string;
|
|
21927
|
+
};
|
|
21928
|
+
cookie?: never;
|
|
21929
|
+
};
|
|
21930
|
+
requestBody?: never;
|
|
21931
|
+
responses: {
|
|
21932
|
+
/** @description Canonical definition + provenance */
|
|
21933
|
+
200: {
|
|
21934
|
+
headers: {
|
|
21935
|
+
[name: string]: unknown;
|
|
21936
|
+
};
|
|
21937
|
+
content: {
|
|
21938
|
+
"application/json": components["schemas"]["SurfacePullResponse"];
|
|
21939
|
+
};
|
|
21940
|
+
};
|
|
21941
|
+
/** @description Unauthorized */
|
|
21942
|
+
401: {
|
|
21943
|
+
headers: {
|
|
21944
|
+
[name: string]: unknown;
|
|
21945
|
+
};
|
|
21946
|
+
content: {
|
|
21947
|
+
"application/json": components["schemas"]["Error"];
|
|
21948
|
+
};
|
|
21949
|
+
};
|
|
21950
|
+
/** @description Insufficient permissions */
|
|
21951
|
+
403: {
|
|
21952
|
+
headers: {
|
|
21953
|
+
[name: string]: unknown;
|
|
21954
|
+
};
|
|
21955
|
+
content: {
|
|
21956
|
+
"application/json": components["schemas"]["Error"];
|
|
21957
|
+
};
|
|
21958
|
+
};
|
|
21959
|
+
/** @description Product not found, or no surface with that name in the product */
|
|
21960
|
+
404: {
|
|
21961
|
+
headers: {
|
|
21962
|
+
[name: string]: unknown;
|
|
21963
|
+
};
|
|
21964
|
+
content: {
|
|
21965
|
+
"application/json": components["schemas"]["Error"];
|
|
21966
|
+
};
|
|
21967
|
+
};
|
|
21968
|
+
/** @description Internal server error */
|
|
21969
|
+
500: {
|
|
21970
|
+
headers: {
|
|
21971
|
+
[name: string]: unknown;
|
|
21972
|
+
};
|
|
21973
|
+
content: {
|
|
21974
|
+
"application/json": components["schemas"]["Error"];
|
|
21975
|
+
};
|
|
21976
|
+
};
|
|
21977
|
+
};
|
|
21978
|
+
};
|
|
21979
|
+
put?: never;
|
|
21980
|
+
post?: never;
|
|
21981
|
+
delete?: never;
|
|
21982
|
+
options?: never;
|
|
21983
|
+
head?: never;
|
|
21984
|
+
patch?: never;
|
|
21985
|
+
trace?: never;
|
|
21986
|
+
};
|
|
21747
21987
|
"/v1/products/{id}/surfaces/{surfaceId}": {
|
|
21748
21988
|
parameters: {
|
|
21749
21989
|
query?: never;
|
|
@@ -31692,7 +31932,7 @@ interface paths {
|
|
|
31692
31932
|
patch?: never;
|
|
31693
31933
|
trace?: never;
|
|
31694
31934
|
};
|
|
31695
|
-
"/v1/skills/
|
|
31935
|
+
"/v1/skills/ensure": {
|
|
31696
31936
|
parameters: {
|
|
31697
31937
|
query?: never;
|
|
31698
31938
|
header?: never;
|
|
@@ -31702,8 +31942,8 @@ interface paths {
|
|
|
31702
31942
|
get?: never;
|
|
31703
31943
|
put?: never;
|
|
31704
31944
|
/**
|
|
31705
|
-
*
|
|
31706
|
-
* @description
|
|
31945
|
+
* Ensure skill (config-as-code converge)
|
|
31946
|
+
* @description Idempotently converge a repo-defined skill (SKILL.md manifest) onto the platform. Identity is name + account scope. Hash-only probes skip the payload in the steady state (a miss is a normal 200 `definitionRequired` response, not an error); full requests create the skill or append a new version when the canonical content hash differs. The response always carries the server-computed canonical hash + the version id. Set dryRun to plan without writing (CI drift gate), onConflict: "overwrite" to converge over dashboard/API edits, and release: "publish" to publish the converged version. Admin/control plane only — no review queue.
|
|
31707
31947
|
*/
|
|
31708
31948
|
post: {
|
|
31709
31949
|
parameters: {
|
|
@@ -31715,23 +31955,35 @@ interface paths {
|
|
|
31715
31955
|
requestBody?: {
|
|
31716
31956
|
content: {
|
|
31717
31957
|
"application/json": {
|
|
31718
|
-
|
|
31958
|
+
contentHash?: string;
|
|
31959
|
+
definition?: {
|
|
31960
|
+
body?: string;
|
|
31961
|
+
frontmatter?: {
|
|
31962
|
+
[key: string]: unknown;
|
|
31963
|
+
};
|
|
31964
|
+
markdown?: string;
|
|
31965
|
+
};
|
|
31966
|
+
dryRun?: boolean;
|
|
31967
|
+
expectedRemoteHash?: string;
|
|
31968
|
+
name: string;
|
|
31969
|
+
/** @enum {string} */
|
|
31970
|
+
onConflict?: "error" | "overwrite";
|
|
31971
|
+
/** @enum {string} */
|
|
31972
|
+
release?: "none" | "publish";
|
|
31719
31973
|
};
|
|
31720
31974
|
};
|
|
31721
31975
|
};
|
|
31722
31976
|
responses: {
|
|
31723
|
-
/** @description
|
|
31724
|
-
|
|
31977
|
+
/** @description Converge result: unchanged | created | updated | definitionRequired (hash miss — retry with the full definition) | plan (dryRun) */
|
|
31978
|
+
200: {
|
|
31725
31979
|
headers: {
|
|
31726
31980
|
[name: string]: unknown;
|
|
31727
31981
|
};
|
|
31728
31982
|
content: {
|
|
31729
|
-
"application/json":
|
|
31730
|
-
[key: string]: unknown;
|
|
31731
|
-
};
|
|
31983
|
+
"application/json": components["schemas"]["SkillEnsureResponse"];
|
|
31732
31984
|
};
|
|
31733
31985
|
};
|
|
31734
|
-
/** @description
|
|
31986
|
+
/** @description Validation error / invalid manifest */
|
|
31735
31987
|
400: {
|
|
31736
31988
|
headers: {
|
|
31737
31989
|
[name: string]: unknown;
|
|
@@ -31758,8 +32010,26 @@ interface paths {
|
|
|
31758
32010
|
"application/json": components["schemas"]["Error"];
|
|
31759
32011
|
};
|
|
31760
32012
|
};
|
|
31761
|
-
/** @description
|
|
32013
|
+
/** @description Conflict: external_modification (last write was not ensure; pass onConflict: "overwrite") or remote_changed (expectedRemoteHash guard) */
|
|
32014
|
+
409: {
|
|
32015
|
+
headers: {
|
|
32016
|
+
[name: string]: unknown;
|
|
32017
|
+
};
|
|
32018
|
+
content: {
|
|
32019
|
+
"application/json": components["schemas"]["SkillEnsureConflict"];
|
|
32020
|
+
};
|
|
32021
|
+
};
|
|
32022
|
+
/** @description Submitted contentHash does not match the server-recomputed canonical hash (code: content_hash_mismatch), or the manifest carries an unsupported capability such as mcpServers (code: unsupported_capability) */
|
|
31762
32023
|
422: {
|
|
32024
|
+
headers: {
|
|
32025
|
+
[name: string]: unknown;
|
|
32026
|
+
};
|
|
32027
|
+
content: {
|
|
32028
|
+
"application/json": components["schemas"]["SkillEnsureUnprocessable"];
|
|
32029
|
+
};
|
|
32030
|
+
};
|
|
32031
|
+
/** @description Internal server error */
|
|
32032
|
+
500: {
|
|
31763
32033
|
headers: {
|
|
31764
32034
|
[name: string]: unknown;
|
|
31765
32035
|
};
|
|
@@ -31775,7 +32045,7 @@ interface paths {
|
|
|
31775
32045
|
patch?: never;
|
|
31776
32046
|
trace?: never;
|
|
31777
32047
|
};
|
|
31778
|
-
"/v1/skills/
|
|
32048
|
+
"/v1/skills/import": {
|
|
31779
32049
|
parameters: {
|
|
31780
32050
|
query?: never;
|
|
31781
32051
|
header?: never;
|
|
@@ -31785,8 +32055,8 @@ interface paths {
|
|
|
31785
32055
|
get?: never;
|
|
31786
32056
|
put?: never;
|
|
31787
32057
|
/**
|
|
31788
|
-
*
|
|
31789
|
-
* @description
|
|
32058
|
+
* Import a SKILL.md
|
|
32059
|
+
* @description Import a single SKILL.md document. Lands with trustLevel=imported.
|
|
31790
32060
|
*/
|
|
31791
32061
|
post: {
|
|
31792
32062
|
parameters: {
|
|
@@ -31798,20 +32068,13 @@ interface paths {
|
|
|
31798
32068
|
requestBody?: {
|
|
31799
32069
|
content: {
|
|
31800
32070
|
"application/json": {
|
|
31801
|
-
|
|
31802
|
-
capabilities?: {
|
|
31803
|
-
[key: string]: unknown;
|
|
31804
|
-
};
|
|
31805
|
-
description: string;
|
|
31806
|
-
name: string;
|
|
31807
|
-
proposingAgentExecutionId: string;
|
|
31808
|
-
proposingAgentId: string;
|
|
32071
|
+
markdown: string;
|
|
31809
32072
|
};
|
|
31810
32073
|
};
|
|
31811
32074
|
};
|
|
31812
32075
|
responses: {
|
|
31813
|
-
/** @description
|
|
31814
|
-
|
|
32076
|
+
/** @description Imported */
|
|
32077
|
+
201: {
|
|
31815
32078
|
headers: {
|
|
31816
32079
|
[name: string]: unknown;
|
|
31817
32080
|
};
|
|
@@ -31839,6 +32102,15 @@ interface paths {
|
|
|
31839
32102
|
"application/json": components["schemas"]["Error"];
|
|
31840
32103
|
};
|
|
31841
32104
|
};
|
|
32105
|
+
/** @description Insufficient permissions */
|
|
32106
|
+
403: {
|
|
32107
|
+
headers: {
|
|
32108
|
+
[name: string]: unknown;
|
|
32109
|
+
};
|
|
32110
|
+
content: {
|
|
32111
|
+
"application/json": components["schemas"]["Error"];
|
|
32112
|
+
};
|
|
32113
|
+
};
|
|
31842
32114
|
/** @description Unsupported capability */
|
|
31843
32115
|
422: {
|
|
31844
32116
|
headers: {
|
|
@@ -31856,6 +32128,238 @@ interface paths {
|
|
|
31856
32128
|
patch?: never;
|
|
31857
32129
|
trace?: never;
|
|
31858
32130
|
};
|
|
32131
|
+
"/v1/skills/propose": {
|
|
32132
|
+
parameters: {
|
|
32133
|
+
query?: never;
|
|
32134
|
+
header?: never;
|
|
32135
|
+
path?: never;
|
|
32136
|
+
cookie?: never;
|
|
32137
|
+
};
|
|
32138
|
+
get?: never;
|
|
32139
|
+
put?: never;
|
|
32140
|
+
/**
|
|
32141
|
+
* Propose a skill (deployed-agent data plane)
|
|
32142
|
+
* @description Agent self-authoring endpoint hit by the `propose_skill` runtime tool. Review-by-default; auto-publishes only under the owner-set opt-out. NOT the admin create path.
|
|
32143
|
+
*/
|
|
32144
|
+
post: {
|
|
32145
|
+
parameters: {
|
|
32146
|
+
query?: never;
|
|
32147
|
+
header?: never;
|
|
32148
|
+
path?: never;
|
|
32149
|
+
cookie?: never;
|
|
32150
|
+
};
|
|
32151
|
+
requestBody?: {
|
|
32152
|
+
content: {
|
|
32153
|
+
"application/json": {
|
|
32154
|
+
body: string;
|
|
32155
|
+
capabilities?: {
|
|
32156
|
+
[key: string]: unknown;
|
|
32157
|
+
};
|
|
32158
|
+
description: string;
|
|
32159
|
+
name: string;
|
|
32160
|
+
proposingAgentExecutionId: string;
|
|
32161
|
+
proposingAgentId: string;
|
|
32162
|
+
};
|
|
32163
|
+
};
|
|
32164
|
+
};
|
|
32165
|
+
responses: {
|
|
32166
|
+
/** @description Proposal outcome */
|
|
32167
|
+
200: {
|
|
32168
|
+
headers: {
|
|
32169
|
+
[name: string]: unknown;
|
|
32170
|
+
};
|
|
32171
|
+
content: {
|
|
32172
|
+
"application/json": {
|
|
32173
|
+
[key: string]: unknown;
|
|
32174
|
+
};
|
|
32175
|
+
};
|
|
32176
|
+
};
|
|
32177
|
+
/** @description Invalid manifest */
|
|
32178
|
+
400: {
|
|
32179
|
+
headers: {
|
|
32180
|
+
[name: string]: unknown;
|
|
32181
|
+
};
|
|
32182
|
+
content: {
|
|
32183
|
+
"application/json": components["schemas"]["Error"];
|
|
32184
|
+
};
|
|
32185
|
+
};
|
|
32186
|
+
/** @description Unauthorized */
|
|
32187
|
+
401: {
|
|
32188
|
+
headers: {
|
|
32189
|
+
[name: string]: unknown;
|
|
32190
|
+
};
|
|
32191
|
+
content: {
|
|
32192
|
+
"application/json": components["schemas"]["Error"];
|
|
32193
|
+
};
|
|
32194
|
+
};
|
|
32195
|
+
/** @description Unsupported capability */
|
|
32196
|
+
422: {
|
|
32197
|
+
headers: {
|
|
32198
|
+
[name: string]: unknown;
|
|
32199
|
+
};
|
|
32200
|
+
content: {
|
|
32201
|
+
"application/json": components["schemas"]["Error"];
|
|
32202
|
+
};
|
|
32203
|
+
};
|
|
32204
|
+
};
|
|
32205
|
+
};
|
|
32206
|
+
delete?: never;
|
|
32207
|
+
options?: never;
|
|
32208
|
+
head?: never;
|
|
32209
|
+
patch?: never;
|
|
32210
|
+
trace?: never;
|
|
32211
|
+
};
|
|
32212
|
+
"/v1/skills/pull": {
|
|
32213
|
+
parameters: {
|
|
32214
|
+
query?: never;
|
|
32215
|
+
header?: never;
|
|
32216
|
+
path?: never;
|
|
32217
|
+
cookie?: never;
|
|
32218
|
+
};
|
|
32219
|
+
/**
|
|
32220
|
+
* Pull skill definition (config-as-code)
|
|
32221
|
+
* @description Return the canonical config-as-code definition and provenance for a skill by name — the absorb-drift direction of the ensure protocol. The contentHash is recomputed from the live skill state, so it is accurate even immediately after a dashboard edit.
|
|
32222
|
+
*/
|
|
32223
|
+
get: {
|
|
32224
|
+
parameters: {
|
|
32225
|
+
query: {
|
|
32226
|
+
name: string;
|
|
32227
|
+
};
|
|
32228
|
+
header?: never;
|
|
32229
|
+
path?: never;
|
|
32230
|
+
cookie?: never;
|
|
32231
|
+
};
|
|
32232
|
+
requestBody?: never;
|
|
32233
|
+
responses: {
|
|
32234
|
+
/** @description Canonical definition + provenance */
|
|
32235
|
+
200: {
|
|
32236
|
+
headers: {
|
|
32237
|
+
[name: string]: unknown;
|
|
32238
|
+
};
|
|
32239
|
+
content: {
|
|
32240
|
+
"application/json": components["schemas"]["SkillPullResponse"];
|
|
32241
|
+
};
|
|
32242
|
+
};
|
|
32243
|
+
/** @description Unauthorized */
|
|
32244
|
+
401: {
|
|
32245
|
+
headers: {
|
|
32246
|
+
[name: string]: unknown;
|
|
32247
|
+
};
|
|
32248
|
+
content: {
|
|
32249
|
+
"application/json": components["schemas"]["Error"];
|
|
32250
|
+
};
|
|
32251
|
+
};
|
|
32252
|
+
/** @description Insufficient permissions */
|
|
32253
|
+
403: {
|
|
32254
|
+
headers: {
|
|
32255
|
+
[name: string]: unknown;
|
|
32256
|
+
};
|
|
32257
|
+
content: {
|
|
32258
|
+
"application/json": components["schemas"]["Error"];
|
|
32259
|
+
};
|
|
32260
|
+
};
|
|
32261
|
+
/** @description No skill with that name in the account scope */
|
|
32262
|
+
404: {
|
|
32263
|
+
headers: {
|
|
32264
|
+
[name: string]: unknown;
|
|
32265
|
+
};
|
|
32266
|
+
content: {
|
|
32267
|
+
"application/json": components["schemas"]["Error"];
|
|
32268
|
+
};
|
|
32269
|
+
};
|
|
32270
|
+
/** @description Internal server error */
|
|
32271
|
+
500: {
|
|
32272
|
+
headers: {
|
|
32273
|
+
[name: string]: unknown;
|
|
32274
|
+
};
|
|
32275
|
+
content: {
|
|
32276
|
+
"application/json": components["schemas"]["Error"];
|
|
32277
|
+
};
|
|
32278
|
+
};
|
|
32279
|
+
};
|
|
32280
|
+
};
|
|
32281
|
+
put?: never;
|
|
32282
|
+
post?: never;
|
|
32283
|
+
delete?: never;
|
|
32284
|
+
options?: never;
|
|
32285
|
+
head?: never;
|
|
32286
|
+
patch?: never;
|
|
32287
|
+
trace?: never;
|
|
32288
|
+
};
|
|
32289
|
+
"/v1/skills/scan": {
|
|
32290
|
+
parameters: {
|
|
32291
|
+
query?: never;
|
|
32292
|
+
header?: never;
|
|
32293
|
+
path?: never;
|
|
32294
|
+
cookie?: never;
|
|
32295
|
+
};
|
|
32296
|
+
get?: never;
|
|
32297
|
+
put?: never;
|
|
32298
|
+
/**
|
|
32299
|
+
* Scan a skill for malicious patterns
|
|
32300
|
+
* @description Statically scan a SKILL.md string (`markdown`) or structured manifest (`frontmatter` + `body`) and return a two-tier verdict (warning when suspected malicious, error when high-confidence malicious). Does not persist or gate.
|
|
32301
|
+
*/
|
|
32302
|
+
post: {
|
|
32303
|
+
parameters: {
|
|
32304
|
+
query?: never;
|
|
32305
|
+
header?: never;
|
|
32306
|
+
path?: never;
|
|
32307
|
+
cookie?: never;
|
|
32308
|
+
};
|
|
32309
|
+
requestBody?: {
|
|
32310
|
+
content: {
|
|
32311
|
+
"application/json": {
|
|
32312
|
+
[key: string]: unknown;
|
|
32313
|
+
};
|
|
32314
|
+
};
|
|
32315
|
+
};
|
|
32316
|
+
responses: {
|
|
32317
|
+
/** @description Scan verdict */
|
|
32318
|
+
200: {
|
|
32319
|
+
headers: {
|
|
32320
|
+
[name: string]: unknown;
|
|
32321
|
+
};
|
|
32322
|
+
content: {
|
|
32323
|
+
"application/json": {
|
|
32324
|
+
[key: string]: unknown;
|
|
32325
|
+
};
|
|
32326
|
+
};
|
|
32327
|
+
};
|
|
32328
|
+
/** @description Invalid manifest */
|
|
32329
|
+
400: {
|
|
32330
|
+
headers: {
|
|
32331
|
+
[name: string]: unknown;
|
|
32332
|
+
};
|
|
32333
|
+
content: {
|
|
32334
|
+
"application/json": components["schemas"]["Error"];
|
|
32335
|
+
};
|
|
32336
|
+
};
|
|
32337
|
+
/** @description Unauthorized */
|
|
32338
|
+
401: {
|
|
32339
|
+
headers: {
|
|
32340
|
+
[name: string]: unknown;
|
|
32341
|
+
};
|
|
32342
|
+
content: {
|
|
32343
|
+
"application/json": components["schemas"]["Error"];
|
|
32344
|
+
};
|
|
32345
|
+
};
|
|
32346
|
+
/** @description Insufficient permissions */
|
|
32347
|
+
403: {
|
|
32348
|
+
headers: {
|
|
32349
|
+
[name: string]: unknown;
|
|
32350
|
+
};
|
|
32351
|
+
content: {
|
|
32352
|
+
"application/json": components["schemas"]["Error"];
|
|
32353
|
+
};
|
|
32354
|
+
};
|
|
32355
|
+
};
|
|
32356
|
+
};
|
|
32357
|
+
delete?: never;
|
|
32358
|
+
options?: never;
|
|
32359
|
+
head?: never;
|
|
32360
|
+
patch?: never;
|
|
32361
|
+
trace?: never;
|
|
32362
|
+
};
|
|
31859
32363
|
"/v1/skills/{id}": {
|
|
31860
32364
|
parameters: {
|
|
31861
32365
|
query?: never;
|
|
@@ -32322,6 +32826,119 @@ interface paths {
|
|
|
32322
32826
|
patch?: never;
|
|
32323
32827
|
trace?: never;
|
|
32324
32828
|
};
|
|
32829
|
+
"/v1/tool-approval-grants": {
|
|
32830
|
+
parameters: {
|
|
32831
|
+
query?: never;
|
|
32832
|
+
header?: never;
|
|
32833
|
+
path?: never;
|
|
32834
|
+
cookie?: never;
|
|
32835
|
+
};
|
|
32836
|
+
/**
|
|
32837
|
+
* List remembered tool-approval grants
|
|
32838
|
+
* @description List the authenticated owner's active cross-session "Always allow" grants. Optionally filter to a single agent with ?agentId=. A null endUserRef is an account-level grant.
|
|
32839
|
+
*/
|
|
32840
|
+
get: {
|
|
32841
|
+
parameters: {
|
|
32842
|
+
query?: {
|
|
32843
|
+
agentId?: string;
|
|
32844
|
+
};
|
|
32845
|
+
header?: never;
|
|
32846
|
+
path?: never;
|
|
32847
|
+
cookie?: never;
|
|
32848
|
+
};
|
|
32849
|
+
requestBody?: never;
|
|
32850
|
+
responses: {
|
|
32851
|
+
/** @description Active grants */
|
|
32852
|
+
200: {
|
|
32853
|
+
headers: {
|
|
32854
|
+
[name: string]: unknown;
|
|
32855
|
+
};
|
|
32856
|
+
content: {
|
|
32857
|
+
"application/json": {
|
|
32858
|
+
data: components["schemas"]["ToolApprovalGrant"][];
|
|
32859
|
+
};
|
|
32860
|
+
};
|
|
32861
|
+
};
|
|
32862
|
+
/** @description Unauthorized */
|
|
32863
|
+
401: {
|
|
32864
|
+
headers: {
|
|
32865
|
+
[name: string]: unknown;
|
|
32866
|
+
};
|
|
32867
|
+
content: {
|
|
32868
|
+
"application/json": components["schemas"]["Error"];
|
|
32869
|
+
};
|
|
32870
|
+
};
|
|
32871
|
+
};
|
|
32872
|
+
};
|
|
32873
|
+
put?: never;
|
|
32874
|
+
post?: never;
|
|
32875
|
+
delete?: never;
|
|
32876
|
+
options?: never;
|
|
32877
|
+
head?: never;
|
|
32878
|
+
patch?: never;
|
|
32879
|
+
trace?: never;
|
|
32880
|
+
};
|
|
32881
|
+
"/v1/tool-approval-grants/{id}": {
|
|
32882
|
+
parameters: {
|
|
32883
|
+
query?: never;
|
|
32884
|
+
header?: never;
|
|
32885
|
+
path?: never;
|
|
32886
|
+
cookie?: never;
|
|
32887
|
+
};
|
|
32888
|
+
get?: never;
|
|
32889
|
+
put?: never;
|
|
32890
|
+
post?: never;
|
|
32891
|
+
/**
|
|
32892
|
+
* Revoke a remembered tool-approval grant
|
|
32893
|
+
* @description Revoke (soft-delete) a grant so the tool prompts for approval again on future dispatches. Ownership-scoped.
|
|
32894
|
+
*/
|
|
32895
|
+
delete: {
|
|
32896
|
+
parameters: {
|
|
32897
|
+
query?: never;
|
|
32898
|
+
header?: never;
|
|
32899
|
+
path: {
|
|
32900
|
+
id: string;
|
|
32901
|
+
};
|
|
32902
|
+
cookie?: never;
|
|
32903
|
+
};
|
|
32904
|
+
requestBody?: never;
|
|
32905
|
+
responses: {
|
|
32906
|
+
/** @description Revoked */
|
|
32907
|
+
200: {
|
|
32908
|
+
headers: {
|
|
32909
|
+
[name: string]: unknown;
|
|
32910
|
+
};
|
|
32911
|
+
content: {
|
|
32912
|
+
"application/json": {
|
|
32913
|
+
revoked: boolean;
|
|
32914
|
+
};
|
|
32915
|
+
};
|
|
32916
|
+
};
|
|
32917
|
+
/** @description Unauthorized */
|
|
32918
|
+
401: {
|
|
32919
|
+
headers: {
|
|
32920
|
+
[name: string]: unknown;
|
|
32921
|
+
};
|
|
32922
|
+
content: {
|
|
32923
|
+
"application/json": components["schemas"]["Error"];
|
|
32924
|
+
};
|
|
32925
|
+
};
|
|
32926
|
+
/** @description Grant not found */
|
|
32927
|
+
404: {
|
|
32928
|
+
headers: {
|
|
32929
|
+
[name: string]: unknown;
|
|
32930
|
+
};
|
|
32931
|
+
content: {
|
|
32932
|
+
"application/json": components["schemas"]["Error"];
|
|
32933
|
+
};
|
|
32934
|
+
};
|
|
32935
|
+
};
|
|
32936
|
+
};
|
|
32937
|
+
options?: never;
|
|
32938
|
+
head?: never;
|
|
32939
|
+
patch?: never;
|
|
32940
|
+
trace?: never;
|
|
32941
|
+
};
|
|
32325
32942
|
"/v1/tools": {
|
|
32326
32943
|
parameters: {
|
|
32327
32944
|
query?: never;
|
|
@@ -34283,6 +34900,7 @@ interface paths {
|
|
|
34283
34900
|
enableChromeSurface: boolean;
|
|
34284
34901
|
enableDashboardAssistant: boolean;
|
|
34285
34902
|
enableRuntypeApps: boolean;
|
|
34903
|
+
enableSkillScanner: boolean;
|
|
34286
34904
|
productGeneratorModel: string;
|
|
34287
34905
|
};
|
|
34288
34906
|
id: string;
|
|
@@ -34853,6 +35471,10 @@ interface components {
|
|
|
34853
35471
|
};
|
|
34854
35472
|
tools?: {
|
|
34855
35473
|
approval?: {
|
|
35474
|
+
choices?: {
|
|
35475
|
+
alwaysAllow?: boolean;
|
|
35476
|
+
alwaysDeny?: boolean;
|
|
35477
|
+
};
|
|
34856
35478
|
requestReason?: boolean;
|
|
34857
35479
|
require: string[] | boolean;
|
|
34858
35480
|
timeout?: number;
|
|
@@ -35619,6 +36241,7 @@ interface components {
|
|
|
35619
36241
|
/** @enum {string} */
|
|
35620
36242
|
type: "flow_start";
|
|
35621
36243
|
} | {
|
|
36244
|
+
claudeManagedAgentId?: string;
|
|
35622
36245
|
completedAt?: string;
|
|
35623
36246
|
completedSteps?: number;
|
|
35624
36247
|
duration?: number;
|
|
@@ -36103,6 +36726,7 @@ interface components {
|
|
|
36103
36726
|
/** @enum {string} */
|
|
36104
36727
|
type: "flow_start";
|
|
36105
36728
|
} | {
|
|
36729
|
+
claudeManagedAgentId?: string;
|
|
36106
36730
|
completedAt?: string;
|
|
36107
36731
|
completedSteps?: number;
|
|
36108
36732
|
duration?: number;
|
|
@@ -36552,6 +37176,47 @@ interface components {
|
|
|
36552
37176
|
op: "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "between" | "contains" | "startsWith" | "endsWith" | "in" | "notIn" | "isSet" | "isNotSet" | "isTrue" | "isFalse" | "withinLastDays" | "olderThanDays";
|
|
36553
37177
|
value?: unknown;
|
|
36554
37178
|
};
|
|
37179
|
+
SkillEnsureConflict: {
|
|
37180
|
+
/** @enum {string} */
|
|
37181
|
+
code: "external_modification" | "remote_changed";
|
|
37182
|
+
currentHash?: string | null;
|
|
37183
|
+
error: string;
|
|
37184
|
+
lastModifiedSource?: string;
|
|
37185
|
+
modifiedAt?: string | null;
|
|
37186
|
+
};
|
|
37187
|
+
SkillEnsureHashMismatch: {
|
|
37188
|
+
/** @enum {string} */
|
|
37189
|
+
code: "content_hash_mismatch";
|
|
37190
|
+
/** @description The server-computed canonical hash of the submitted manifest. */
|
|
37191
|
+
contentHash: string;
|
|
37192
|
+
error: string;
|
|
37193
|
+
};
|
|
37194
|
+
SkillEnsureResponse: {
|
|
37195
|
+
/** @description Server-computed canonical content hash. Clients should echo this hash in probes. */
|
|
37196
|
+
contentHash: string;
|
|
37197
|
+
/** @enum {string} */
|
|
37198
|
+
result: "unchanged" | "created" | "updated";
|
|
37199
|
+
skillId: string;
|
|
37200
|
+
versionId: string | null;
|
|
37201
|
+
} | {
|
|
37202
|
+
/** @enum {string} */
|
|
37203
|
+
result: "definitionRequired";
|
|
37204
|
+
} | {
|
|
37205
|
+
changedKeys: string[];
|
|
37206
|
+
/** @enum {string} */
|
|
37207
|
+
changes: "none" | "create" | "update";
|
|
37208
|
+
contentHash: string;
|
|
37209
|
+
remoteHash?: string;
|
|
37210
|
+
/** @enum {string} */
|
|
37211
|
+
result: "plan";
|
|
37212
|
+
skillId?: string;
|
|
37213
|
+
};
|
|
37214
|
+
SkillEnsureUnprocessable: components["schemas"]["SkillEnsureHashMismatch"] | components["schemas"]["SkillEnsureUnsupportedCapability"];
|
|
37215
|
+
SkillEnsureUnsupportedCapability: {
|
|
37216
|
+
/** @enum {string} */
|
|
37217
|
+
code: "unsupported_capability";
|
|
37218
|
+
error: string;
|
|
37219
|
+
};
|
|
36555
37220
|
SkillProposal: {
|
|
36556
37221
|
createdAt: string;
|
|
36557
37222
|
id: string;
|
|
@@ -36564,6 +37229,89 @@ interface components {
|
|
|
36564
37229
|
skillVersionId: string;
|
|
36565
37230
|
status: string;
|
|
36566
37231
|
};
|
|
37232
|
+
SkillPullResponse: {
|
|
37233
|
+
contentHash: string;
|
|
37234
|
+
definition: {
|
|
37235
|
+
manifest: {
|
|
37236
|
+
[key: string]: unknown;
|
|
37237
|
+
};
|
|
37238
|
+
name: string;
|
|
37239
|
+
};
|
|
37240
|
+
lastModifiedSource: string | null;
|
|
37241
|
+
skillId: string;
|
|
37242
|
+
updatedAt: string | null;
|
|
37243
|
+
versionId: string | null;
|
|
37244
|
+
};
|
|
37245
|
+
SurfaceEnsureConflict: {
|
|
37246
|
+
/** @enum {string} */
|
|
37247
|
+
code: "external_modification" | "remote_changed";
|
|
37248
|
+
currentHash?: string | null;
|
|
37249
|
+
error: string;
|
|
37250
|
+
lastModifiedSource?: string;
|
|
37251
|
+
modifiedAt?: string | null;
|
|
37252
|
+
};
|
|
37253
|
+
SurfaceEnsureHashMismatch: {
|
|
37254
|
+
/** @enum {string} */
|
|
37255
|
+
code: "content_hash_mismatch";
|
|
37256
|
+
/** @description The server-computed canonical hash of the submitted definition. */
|
|
37257
|
+
contentHash: string;
|
|
37258
|
+
error: string;
|
|
37259
|
+
};
|
|
37260
|
+
SurfaceEnsureResponse: {
|
|
37261
|
+
/** @description Server-computed canonical content hash. Clients should echo this hash in probes. */
|
|
37262
|
+
contentHash: string;
|
|
37263
|
+
/** @enum {string} */
|
|
37264
|
+
result: "unchanged" | "created" | "updated";
|
|
37265
|
+
surfaceId: string;
|
|
37266
|
+
} | {
|
|
37267
|
+
/** @enum {string} */
|
|
37268
|
+
result: "definitionRequired";
|
|
37269
|
+
} | {
|
|
37270
|
+
changedKeys: string[];
|
|
37271
|
+
/** @enum {string} */
|
|
37272
|
+
changes: "none" | "create" | "update";
|
|
37273
|
+
contentHash: string;
|
|
37274
|
+
remoteHash?: string;
|
|
37275
|
+
/** @enum {string} */
|
|
37276
|
+
result: "plan";
|
|
37277
|
+
surfaceId?: string;
|
|
37278
|
+
};
|
|
37279
|
+
SurfacePullResponse: {
|
|
37280
|
+
contentHash: string;
|
|
37281
|
+
definition: {
|
|
37282
|
+
behavior?: {
|
|
37283
|
+
[key: string]: unknown;
|
|
37284
|
+
};
|
|
37285
|
+
/** @enum {string} */
|
|
37286
|
+
environment?: "production" | "development";
|
|
37287
|
+
inbound?: {
|
|
37288
|
+
[key: string]: unknown;
|
|
37289
|
+
};
|
|
37290
|
+
name: string;
|
|
37291
|
+
outbound?: {
|
|
37292
|
+
[key: string]: unknown;
|
|
37293
|
+
};
|
|
37294
|
+
/** @enum {string} */
|
|
37295
|
+
status?: "draft" | "active" | "paused";
|
|
37296
|
+
/** @enum {string} */
|
|
37297
|
+
type: "chat" | "mcp" | "mcp_code" | "api" | "webhook" | "schedule" | "a2a" | "email" | "slack" | "sms" | "imessage" | "discord" | "whatsapp" | "telegram" | "hosted-page" | "chrome_extension";
|
|
37298
|
+
};
|
|
37299
|
+
lastModifiedSource: string | null;
|
|
37300
|
+
surfaceId: string;
|
|
37301
|
+
updatedAt: string | null;
|
|
37302
|
+
};
|
|
37303
|
+
ToolApprovalGrant: {
|
|
37304
|
+
agentId: string;
|
|
37305
|
+
createdAt: string;
|
|
37306
|
+
decision: string;
|
|
37307
|
+
endUserRef: string | null;
|
|
37308
|
+
expiresAt: string | null;
|
|
37309
|
+
id: string;
|
|
37310
|
+
sourceApprovalId: string | null;
|
|
37311
|
+
sourceExecutionId: string | null;
|
|
37312
|
+
toolName: string;
|
|
37313
|
+
toolType: string;
|
|
37314
|
+
};
|
|
36567
37315
|
ToolEnsureConflict: {
|
|
36568
37316
|
/** @enum {string} */
|
|
36569
37317
|
code: "external_modification" | "remote_changed";
|
|
@@ -36922,7 +37670,7 @@ interface FetchUrlStepConfig$1 {
|
|
|
36922
37670
|
[key: string]: any;
|
|
36923
37671
|
};
|
|
36924
37672
|
/** Error handling configuration - supports simple mode or fallback chains */
|
|
36925
|
-
errorHandling?:
|
|
37673
|
+
errorHandling?: ContextErrorHandling;
|
|
36926
37674
|
defaultValue?: unknown;
|
|
36927
37675
|
streamOutput?: boolean;
|
|
36928
37676
|
enabled?: boolean;
|
|
@@ -36951,7 +37699,7 @@ interface CrawlStepConfig$1 {
|
|
|
36951
37699
|
jsonOptions?: Record<string, unknown>;
|
|
36952
37700
|
outputVariable?: string;
|
|
36953
37701
|
streamOutput?: boolean;
|
|
36954
|
-
errorHandling?:
|
|
37702
|
+
errorHandling?: ContextErrorHandling;
|
|
36955
37703
|
pollIntervalMs?: number;
|
|
36956
37704
|
completionTimeoutMs?: number;
|
|
36957
37705
|
defaultValue?: unknown;
|
|
@@ -36974,7 +37722,7 @@ interface TransformDataStepConfig$1 {
|
|
|
36974
37722
|
networkAccess?: 'off' | 'on' | {
|
|
36975
37723
|
allowedHostnames: string[];
|
|
36976
37724
|
};
|
|
36977
|
-
errorHandling?:
|
|
37725
|
+
errorHandling?: ContextErrorHandling;
|
|
36978
37726
|
defaultValue?: unknown;
|
|
36979
37727
|
tools?: {
|
|
36980
37728
|
toolIds?: string[];
|
|
@@ -37026,7 +37774,7 @@ interface SearchStepConfig$1 {
|
|
|
37026
37774
|
outputVariable?: string;
|
|
37027
37775
|
returnCitations?: boolean;
|
|
37028
37776
|
/** Error handling configuration - supports simple mode or fallback chains */
|
|
37029
|
-
errorHandling?:
|
|
37777
|
+
errorHandling?: ContextErrorHandling;
|
|
37030
37778
|
streamOutput?: boolean;
|
|
37031
37779
|
enabled?: boolean;
|
|
37032
37780
|
/** JavaScript predicate evaluated at runtime. If falsy, the step is skipped. */
|
|
@@ -37049,7 +37797,7 @@ interface SendEmailStepConfig$1 {
|
|
|
37049
37797
|
}>;
|
|
37050
37798
|
outputVariable?: string;
|
|
37051
37799
|
/** Error handling configuration - supports simple mode or fallback chains */
|
|
37052
|
-
errorHandling?:
|
|
37800
|
+
errorHandling?: ContextErrorHandling;
|
|
37053
37801
|
defaultValue?: unknown;
|
|
37054
37802
|
streamOutput?: boolean;
|
|
37055
37803
|
enabled?: boolean;
|
|
@@ -37114,7 +37862,7 @@ interface UpsertRecordStepConfig$1 {
|
|
|
37114
37862
|
mergeStrategy?: 'merge' | 'replace';
|
|
37115
37863
|
outputVariable?: string;
|
|
37116
37864
|
/** Error handling configuration - supports simple mode or fallback chains */
|
|
37117
|
-
errorHandling?:
|
|
37865
|
+
errorHandling?: ContextErrorHandling;
|
|
37118
37866
|
streamOutput?: boolean;
|
|
37119
37867
|
enabled?: boolean;
|
|
37120
37868
|
/** JavaScript predicate evaluated at runtime. If falsy, the step is skipped. */
|
|
@@ -37176,7 +37924,7 @@ interface WaitUntilStepConfig$1 {
|
|
|
37176
37924
|
};
|
|
37177
37925
|
outputVariable?: string;
|
|
37178
37926
|
/** Error handling configuration - supports simple mode or fallback chains */
|
|
37179
|
-
errorHandling?:
|
|
37927
|
+
errorHandling?: ContextErrorHandling;
|
|
37180
37928
|
streamOutput?: boolean;
|
|
37181
37929
|
enabled?: boolean;
|
|
37182
37930
|
/** JavaScript predicate evaluated at runtime. If falsy, the step is skipped. */
|
|
@@ -37189,7 +37937,7 @@ interface SendEventStepConfig$1 {
|
|
|
37189
37937
|
properties?: Record<string, any>;
|
|
37190
37938
|
outputVariable?: string;
|
|
37191
37939
|
/** Error handling configuration - supports simple mode or fallback chains */
|
|
37192
|
-
errorHandling?:
|
|
37940
|
+
errorHandling?: ContextErrorHandling;
|
|
37193
37941
|
streamOutput?: boolean;
|
|
37194
37942
|
enabled?: boolean;
|
|
37195
37943
|
/** JavaScript predicate evaluated at runtime. If falsy, the step is skipped. */
|
|
@@ -37202,7 +37950,7 @@ interface SendTextStepConfig$1 {
|
|
|
37202
37950
|
message: string;
|
|
37203
37951
|
outputVariable?: string;
|
|
37204
37952
|
/** Error handling configuration - supports simple mode or fallback chains */
|
|
37205
|
-
errorHandling?:
|
|
37953
|
+
errorHandling?: ContextErrorHandling;
|
|
37206
37954
|
streamOutput?: boolean;
|
|
37207
37955
|
enabled?: boolean;
|
|
37208
37956
|
/** JavaScript predicate evaluated at runtime. If falsy, the step is skipped. */
|
|
@@ -40025,6 +40773,144 @@ declare class PromptsNamespace {
|
|
|
40025
40773
|
delete(promptId: string): Promise<void>;
|
|
40026
40774
|
}
|
|
40027
40775
|
|
|
40776
|
+
/**
|
|
40777
|
+
* Skill config-as-code: `defineSkill`, `skills.ensure`, `skills.pull`.
|
|
40778
|
+
*
|
|
40779
|
+
* The deploy-time convergence postcondition for Agent Skills: "make the
|
|
40780
|
+
* platform's definition of this skill match this manifest; no-op if it already
|
|
40781
|
+
* does." Identity is name + account scope (the API key's org, else personal);
|
|
40782
|
+
* environment is whichever API the client points at. `ensure` never deletes,
|
|
40783
|
+
* and renaming a manifest orphans the old skill and creates a new one.
|
|
40784
|
+
*
|
|
40785
|
+
* This is the admin/control-plane converge — API scopes only, no review queue.
|
|
40786
|
+
* It is NOT the deployed-agent `propose_skill` data plane.
|
|
40787
|
+
*
|
|
40788
|
+
* Wire protocol (POST /v1/skills/ensure — APQ-shaped, both APQ scars fixed):
|
|
40789
|
+
* 1. Hash-only probe `{ name, contentHash }`. A match is
|
|
40790
|
+
* `{ result: 'unchanged' }`; a miss is a NORMAL 200
|
|
40791
|
+
* `{ result: 'definitionRequired' }`, never an error.
|
|
40792
|
+
* 2. On a miss, retry with the full `definition`. The server recomputes the
|
|
40793
|
+
* canonical hash itself and returns it on every response — this SDK echoes
|
|
40794
|
+
* the server's hash (memoized per client instance) rather than trusting its
|
|
40795
|
+
* own serialization.
|
|
40796
|
+
*
|
|
40797
|
+
* Like agents/flows (and unlike tools), skills HAVE version snapshots: every
|
|
40798
|
+
* change appends an immutable version, the result carries a `versionId`, and
|
|
40799
|
+
* `release: 'publish'` re-aims the published-version pointer.
|
|
40800
|
+
*
|
|
40801
|
+
* The content hash is the canonical skill hash (`computeSkillContentHash` —
|
|
40802
|
+
* mirrored from `packages/shared/src/utils/skill-content-hash.ts`; this package
|
|
40803
|
+
* is dependency-free by convention) over the manifest `{ frontmatter (name
|
|
40804
|
+
* excluded), runtype, body }`. `name` is identity, not content.
|
|
40805
|
+
*
|
|
40806
|
+
* See docs/adr/0003-agent-config-as-code-ensure.md for the design rationale.
|
|
40807
|
+
*/
|
|
40808
|
+
|
|
40809
|
+
interface SkillContentInput {
|
|
40810
|
+
/** Identity — excluded from the hash. */
|
|
40811
|
+
name: string;
|
|
40812
|
+
manifest: SkillManifest | Record<string, unknown>;
|
|
40813
|
+
}
|
|
40814
|
+
/** Canonical normalized form of a skill manifest (frontmatter name excluded). */
|
|
40815
|
+
declare function normalizeSkillDefinition(definition: SkillContentInput): {
|
|
40816
|
+
frontmatter: Record<string, unknown>;
|
|
40817
|
+
runtype: Record<string, unknown>;
|
|
40818
|
+
body: string;
|
|
40819
|
+
};
|
|
40820
|
+
/** SHA-256 (hex) over the canonical normalized skill manifest. */
|
|
40821
|
+
declare function computeSkillContentHash(definition: SkillContentInput): Promise<string>;
|
|
40822
|
+
/** `defineSkill` input: identity (name) + the convergeable manifest content. */
|
|
40823
|
+
interface DefineSkillInput {
|
|
40824
|
+
name: string;
|
|
40825
|
+
manifest: SkillManifest;
|
|
40826
|
+
}
|
|
40827
|
+
/** The canonical (wire) definition produced by `defineSkill`. */
|
|
40828
|
+
interface SkillDefinition {
|
|
40829
|
+
name: string;
|
|
40830
|
+
manifest: SkillManifest;
|
|
40831
|
+
}
|
|
40832
|
+
/**
|
|
40833
|
+
* Pure-local declarative constructor for a skill definition. No I/O. Validates
|
|
40834
|
+
* structure, rejects unknown fields, and asserts the manifest's frontmatter
|
|
40835
|
+
* name matches the identity name. Deep validation (capability gate, length
|
|
40836
|
+
* limits) happens server-side at ensure time, mirroring the create/update
|
|
40837
|
+
* routes.
|
|
40838
|
+
*
|
|
40839
|
+
* @example
|
|
40840
|
+
* ```typescript
|
|
40841
|
+
* const reviewer = defineSkill({
|
|
40842
|
+
* name: 'code_reviewer',
|
|
40843
|
+
* manifest: {
|
|
40844
|
+
* frontmatter: { name: 'code_reviewer', description: 'Reviews pull requests' },
|
|
40845
|
+
* runtype: { trustLevel: 'org' },
|
|
40846
|
+
* body: '# Code Reviewer\n\nReview the diff for bugs...',
|
|
40847
|
+
* },
|
|
40848
|
+
* })
|
|
40849
|
+
* ```
|
|
40850
|
+
*/
|
|
40851
|
+
declare function defineSkill(input: DefineSkillInput): SkillDefinition;
|
|
40852
|
+
interface EnsureSkillOptions {
|
|
40853
|
+
/** Plan without writing (the CI drift gate). Sends the full definition. */
|
|
40854
|
+
dryRun?: boolean;
|
|
40855
|
+
/**
|
|
40856
|
+
* What to do when the skill's last write came from the dashboard/API rather
|
|
40857
|
+
* than ensure. Default 'error' (HTTP 409 → SkillEnsureConflictError).
|
|
40858
|
+
*/
|
|
40859
|
+
onConflict?: 'error' | 'overwrite';
|
|
40860
|
+
/** 'publish' also re-aims the published-version pointer. Default 'none'. */
|
|
40861
|
+
release?: 'none' | 'publish';
|
|
40862
|
+
/**
|
|
40863
|
+
* TOCTOU guard binding a dry run to its apply: the write only proceeds if the
|
|
40864
|
+
* remote still hashes to this value (409 remote_changed otherwise).
|
|
40865
|
+
*/
|
|
40866
|
+
expectedRemoteHash?: string;
|
|
40867
|
+
/** Implies dryRun; throws SkillDriftError unless the plan is 'none'. */
|
|
40868
|
+
expectNoChanges?: boolean;
|
|
40869
|
+
}
|
|
40870
|
+
interface EnsureSkillConverged {
|
|
40871
|
+
result: 'unchanged' | 'created' | 'updated';
|
|
40872
|
+
skillId: string;
|
|
40873
|
+
versionId: string | null;
|
|
40874
|
+
/** The server-computed canonical hash (echo this — never your own). */
|
|
40875
|
+
contentHash: string;
|
|
40876
|
+
}
|
|
40877
|
+
interface EnsureSkillPlan {
|
|
40878
|
+
result: 'plan';
|
|
40879
|
+
changes: 'none' | 'create' | 'update';
|
|
40880
|
+
changedKeys: string[];
|
|
40881
|
+
contentHash: string;
|
|
40882
|
+
remoteHash?: string;
|
|
40883
|
+
skillId?: string;
|
|
40884
|
+
}
|
|
40885
|
+
type EnsureSkillResult = EnsureSkillConverged | EnsureSkillPlan;
|
|
40886
|
+
interface SkillPullResult {
|
|
40887
|
+
skillId: string;
|
|
40888
|
+
definition: SkillDefinition;
|
|
40889
|
+
contentHash: string;
|
|
40890
|
+
lastModifiedSource: string | null;
|
|
40891
|
+
updatedAt: string | null;
|
|
40892
|
+
versionId: string | null;
|
|
40893
|
+
}
|
|
40894
|
+
/** A 409 from the ensure protocol (external_modification or remote_changed). */
|
|
40895
|
+
declare class SkillEnsureConflictError extends Error {
|
|
40896
|
+
readonly code: 'external_modification' | 'remote_changed';
|
|
40897
|
+
readonly lastModifiedSource?: string;
|
|
40898
|
+
readonly modifiedAt?: string | null;
|
|
40899
|
+
readonly currentHash?: string | null;
|
|
40900
|
+
constructor(body: {
|
|
40901
|
+
error?: string;
|
|
40902
|
+
code: 'external_modification' | 'remote_changed';
|
|
40903
|
+
lastModifiedSource?: string;
|
|
40904
|
+
modifiedAt?: string | null;
|
|
40905
|
+
currentHash?: string | null;
|
|
40906
|
+
});
|
|
40907
|
+
}
|
|
40908
|
+
/** Thrown by `ensure(def, { expectNoChanges: true })` when drift is detected. */
|
|
40909
|
+
declare class SkillDriftError extends Error {
|
|
40910
|
+
readonly plan: EnsureSkillPlan;
|
|
40911
|
+
constructor(plan: EnsureSkillPlan);
|
|
40912
|
+
}
|
|
40913
|
+
|
|
40028
40914
|
/**
|
|
40029
40915
|
* SkillsNamespace — admin/control-plane operations for Agent Skills.
|
|
40030
40916
|
*
|
|
@@ -40221,6 +41107,43 @@ interface SkillManifestInput {
|
|
|
40221
41107
|
}
|
|
40222
41108
|
/** A skill create/update payload — either a SKILL.md string or a manifest. */
|
|
40223
41109
|
type SkillWriteInput = SkillMarkdownInput | SkillManifestInput;
|
|
41110
|
+
/** Per-finding tier surfaced to the user. */
|
|
41111
|
+
interface SkillScanFinding {
|
|
41112
|
+
ruleId: string;
|
|
41113
|
+
category: string | null;
|
|
41114
|
+
severity: 'LOW' | 'MEDIUM' | 'HIGH' | 'CRITICAL';
|
|
41115
|
+
confidence: number;
|
|
41116
|
+
tier: 'warning' | 'error';
|
|
41117
|
+
hardBlock: boolean;
|
|
41118
|
+
message: string;
|
|
41119
|
+
file: string;
|
|
41120
|
+
startLine: number;
|
|
41121
|
+
remediation: string | null;
|
|
41122
|
+
}
|
|
41123
|
+
/** Two-tier verdict over a skill scan. `tier` is authoritative. */
|
|
41124
|
+
interface SkillScanVerdict {
|
|
41125
|
+
tier: 'clean' | 'warning' | 'error';
|
|
41126
|
+
riskScore: number;
|
|
41127
|
+
riskSeverity: 'LOW' | 'MEDIUM' | 'HIGH' | 'CRITICAL';
|
|
41128
|
+
recommendation: 'SAFE' | 'CAUTION' | 'DO_NOT_INSTALL';
|
|
41129
|
+
errors: SkillScanFinding[];
|
|
41130
|
+
warnings: SkillScanFinding[];
|
|
41131
|
+
summary: string;
|
|
41132
|
+
scannerVersion: string;
|
|
41133
|
+
verdictVersion: number;
|
|
41134
|
+
}
|
|
41135
|
+
/** The `POST /v1/skills/scan` response. */
|
|
41136
|
+
interface SkillScanResult {
|
|
41137
|
+
status: 'passed' | 'warning' | 'blocked' | 'scanner_error';
|
|
41138
|
+
verdict: SkillScanVerdict;
|
|
41139
|
+
reportBody: string;
|
|
41140
|
+
scannerVersion: string;
|
|
41141
|
+
completedAt: string;
|
|
41142
|
+
error?: {
|
|
41143
|
+
code: string;
|
|
41144
|
+
message: string;
|
|
41145
|
+
};
|
|
41146
|
+
}
|
|
40224
41147
|
/** Options for binding a skill to an agent. */
|
|
40225
41148
|
interface BindSkillInput {
|
|
40226
41149
|
agentId: string;
|
|
@@ -40381,6 +41304,19 @@ declare class SkillsNamespace {
|
|
|
40381
41304
|
* ```
|
|
40382
41305
|
*/
|
|
40383
41306
|
publishVersion(skillId: string, versionId: string): Promise<void>;
|
|
41307
|
+
/**
|
|
41308
|
+
* Statically scan a SKILL.md document for malicious patterns and return a
|
|
41309
|
+
* two-tier verdict — `warning` when a skill appears suspicious (low–medium
|
|
41310
|
+
* confidence), `error` when high-confidence malicious. Does not persist or
|
|
41311
|
+
* gate; use it as a "scan before save" affordance.
|
|
41312
|
+
*
|
|
41313
|
+
* @example
|
|
41314
|
+
* ```typescript
|
|
41315
|
+
* const { verdict } = await Runtype.skills.scan(skillMarkdown)
|
|
41316
|
+
* if (verdict.tier === 'error') console.warn(verdict.summary)
|
|
41317
|
+
* ```
|
|
41318
|
+
*/
|
|
41319
|
+
scan(markdown: string): Promise<SkillScanResult>;
|
|
40384
41320
|
/**
|
|
40385
41321
|
* Import a single SKILL.md document. The imported skill lands with
|
|
40386
41322
|
* `trustLevel: 'imported'` and a draft version.
|
|
@@ -40409,6 +41345,36 @@ declare class SkillsNamespace {
|
|
|
40409
41345
|
* ```
|
|
40410
41346
|
*/
|
|
40411
41347
|
listBindings(agentId: string): Promise<AgentSkillBinding[]>;
|
|
41348
|
+
/**
|
|
41349
|
+
* Idempotently converge a `defineSkill` definition onto the platform.
|
|
41350
|
+
* Hash-first: the steady state is one tiny probe request. Creates or appends a
|
|
41351
|
+
* new version; never deletes. Identity is name + account scope. Pass
|
|
41352
|
+
* `release: 'publish'` to publish the converged version.
|
|
41353
|
+
*
|
|
41354
|
+
* @example
|
|
41355
|
+
* ```typescript
|
|
41356
|
+
* const reviewer = defineSkill({
|
|
41357
|
+
* name: 'code_reviewer',
|
|
41358
|
+
* manifest: {
|
|
41359
|
+
* frontmatter: { name: 'code_reviewer', description: 'Reviews pull requests' },
|
|
41360
|
+
* runtype: { trustLevel: 'org' },
|
|
41361
|
+
* body: '# Code Reviewer\n\nReview the diff...',
|
|
41362
|
+
* },
|
|
41363
|
+
* })
|
|
41364
|
+
*
|
|
41365
|
+
* // Converge + publish (CI/deploy).
|
|
41366
|
+
* const result = await Runtype.skills.ensure(reviewer, { release: 'publish' })
|
|
41367
|
+
*
|
|
41368
|
+
* // PR drift gate.
|
|
41369
|
+
* await Runtype.skills.ensure(reviewer, { expectNoChanges: true })
|
|
41370
|
+
* ```
|
|
41371
|
+
*/
|
|
41372
|
+
ensure(definition: SkillDefinition, options?: EnsureSkillOptions): Promise<EnsureSkillResult>;
|
|
41373
|
+
/**
|
|
41374
|
+
* Pull the canonical definition + provenance for a skill by name — the
|
|
41375
|
+
* absorb-drift direction of the ensure protocol.
|
|
41376
|
+
*/
|
|
41377
|
+
pull(name: string): Promise<SkillPullResult>;
|
|
40412
41378
|
}
|
|
40413
41379
|
|
|
40414
41380
|
/**
|
|
@@ -41025,6 +41991,201 @@ declare class ProductsNamespace {
|
|
|
41025
41991
|
pull(name: string): Promise<ProductPullResult>;
|
|
41026
41992
|
}
|
|
41027
41993
|
|
|
41994
|
+
/**
|
|
41995
|
+
* Surface config-as-code: `defineSurface`, `surfaces.ensure`, `surfaces.pull`.
|
|
41996
|
+
*
|
|
41997
|
+
* The deploy-time convergence postcondition for product surfaces: "make the
|
|
41998
|
+
* platform's definition of this surface match this object; no-op if it already
|
|
41999
|
+
* does." Surfaces are PRODUCT-scoped: identity is (productId, name) — NOT
|
|
42000
|
+
* account scope. `ensure` never deletes, and renaming a definition orphans the
|
|
42001
|
+
* old surface and creates a new one.
|
|
42002
|
+
*
|
|
42003
|
+
* Wire protocol (POST /v1/products/{id}/surfaces/ensure — APQ-shaped, both APQ
|
|
42004
|
+
* scars fixed):
|
|
42005
|
+
* 1. Hash-only probe `{ name, contentHash }`. A match is
|
|
42006
|
+
* `{ result: 'unchanged' }`; a miss is a NORMAL 200
|
|
42007
|
+
* `{ result: 'definitionRequired' }`, never an error.
|
|
42008
|
+
* 2. On a miss, retry with the full `definition`. The server recomputes the
|
|
42009
|
+
* canonical hash itself and returns it on every response — this SDK echoes
|
|
42010
|
+
* the server's hash (memoized per client instance) rather than trusting
|
|
42011
|
+
* its own serialization.
|
|
42012
|
+
*
|
|
42013
|
+
* Unlike agents/flows, surfaces have NO version snapshots: there is no
|
|
42014
|
+
* `release: 'publish'` option and no `versionId` on the result.
|
|
42015
|
+
*
|
|
42016
|
+
* The content hash is the canonical surface hash (`computeSurfaceContentHash` —
|
|
42017
|
+
* mirrored from `packages/shared/src/utils/surface-content-hash.ts`; this
|
|
42018
|
+
* package is dependency-free by convention) over `{ type, behavior, status,
|
|
42019
|
+
* environment }`. `name` is identity, not content, so it is excluded; `inbound` /
|
|
42020
|
+
* `outbound` are also EXCLUDED — they carry sealed secrets that hash
|
|
42021
|
+
* non-deterministically against the stored row (see `normalizeSurfaceDefinition`).
|
|
42022
|
+
*
|
|
42023
|
+
* See docs/adr/0003-agent-config-as-code-ensure.md for the design rationale.
|
|
42024
|
+
*/
|
|
42025
|
+
|
|
42026
|
+
/**
|
|
42027
|
+
* Canonical normalized form of a surface definition (name excluded — identity).
|
|
42028
|
+
* `inbound` / `outbound` are EXCLUDED — they carry sealed secrets that hash
|
|
42029
|
+
* non-deterministically against the stored row. MUST stay in sync with the
|
|
42030
|
+
* canonical copy in @runtypelabs/shared (utils/surface-content-hash.ts).
|
|
42031
|
+
*/
|
|
42032
|
+
declare function normalizeSurfaceDefinition(definition: SurfaceContentInput): {
|
|
42033
|
+
type: string;
|
|
42034
|
+
behavior: Record<string, unknown>;
|
|
42035
|
+
status: string;
|
|
42036
|
+
environment: string;
|
|
42037
|
+
};
|
|
42038
|
+
/** SHA-256 (hex) over the canonical normalized surface definition. */
|
|
42039
|
+
declare function computeSurfaceContentHash(definition: SurfaceContentInput): Promise<string>;
|
|
42040
|
+
interface SurfaceContentInput {
|
|
42041
|
+
type: string;
|
|
42042
|
+
behavior?: Record<string, unknown> | null;
|
|
42043
|
+
inbound?: Record<string, unknown> | null;
|
|
42044
|
+
outbound?: Record<string, unknown> | null;
|
|
42045
|
+
status?: string | null;
|
|
42046
|
+
environment?: string | null;
|
|
42047
|
+
}
|
|
42048
|
+
/** The surface types `ensure` accepts (mirrors the server's createSurfaceSchema). */
|
|
42049
|
+
type SurfaceDefinitionType = 'chat' | 'mcp' | 'mcp_code' | 'api' | 'webhook' | 'schedule' | 'a2a' | 'email' | 'slack' | 'sms' | 'imessage' | 'discord' | 'whatsapp' | 'telegram' | 'hosted-page' | 'chrome_extension';
|
|
42050
|
+
type SurfaceDefinitionStatus = 'draft' | 'active' | 'paused';
|
|
42051
|
+
type SurfaceDefinitionEnvironment = 'production' | 'development';
|
|
42052
|
+
/** `defineSurface` input: identity (name) + the convergeable content fields. */
|
|
42053
|
+
interface DefineSurfaceInput {
|
|
42054
|
+
name: string;
|
|
42055
|
+
type: SurfaceDefinitionType;
|
|
42056
|
+
behavior?: Record<string, unknown>;
|
|
42057
|
+
inbound?: Record<string, unknown>;
|
|
42058
|
+
outbound?: Record<string, unknown>;
|
|
42059
|
+
status?: SurfaceDefinitionStatus;
|
|
42060
|
+
environment?: SurfaceDefinitionEnvironment;
|
|
42061
|
+
}
|
|
42062
|
+
/** The canonical (wire) definition produced by `defineSurface`. */
|
|
42063
|
+
interface SurfaceDefinition {
|
|
42064
|
+
name: string;
|
|
42065
|
+
type: SurfaceDefinitionType;
|
|
42066
|
+
behavior?: Record<string, unknown>;
|
|
42067
|
+
inbound?: Record<string, unknown>;
|
|
42068
|
+
outbound?: Record<string, unknown>;
|
|
42069
|
+
status?: SurfaceDefinitionStatus;
|
|
42070
|
+
environment?: SurfaceDefinitionEnvironment;
|
|
42071
|
+
}
|
|
42072
|
+
/**
|
|
42073
|
+
* Pure-local declarative constructor for a surface definition. No I/O.
|
|
42074
|
+
* Validates structure and rejects unknown fields. Deep validation (credential
|
|
42075
|
+
* sealing, prerelease-type-in-production guard) happens server-side at ensure
|
|
42076
|
+
* time, mirroring the create/update routes.
|
|
42077
|
+
*
|
|
42078
|
+
* @example
|
|
42079
|
+
* ```typescript
|
|
42080
|
+
* const chat = defineSurface({
|
|
42081
|
+
* name: 'Support Chat',
|
|
42082
|
+
* type: 'chat',
|
|
42083
|
+
* behavior: { type: 'chat', greeting: 'Hi there!' },
|
|
42084
|
+
* status: 'active',
|
|
42085
|
+
* })
|
|
42086
|
+
* ```
|
|
42087
|
+
*/
|
|
42088
|
+
declare function defineSurface(input: DefineSurfaceInput): SurfaceDefinition;
|
|
42089
|
+
interface EnsureSurfaceOptions {
|
|
42090
|
+
/** Plan without writing (the CI drift gate). Sends the full definition. */
|
|
42091
|
+
dryRun?: boolean;
|
|
42092
|
+
/**
|
|
42093
|
+
* What to do when the surface's last write came from the dashboard/API
|
|
42094
|
+
* rather than ensure. Default 'error' (HTTP 409 → SurfaceEnsureConflictError).
|
|
42095
|
+
*/
|
|
42096
|
+
onConflict?: 'error' | 'overwrite';
|
|
42097
|
+
/**
|
|
42098
|
+
* TOCTOU guard binding a dry run to its apply: the write only proceeds if
|
|
42099
|
+
* the remote still hashes to this value (409 remote_changed otherwise).
|
|
42100
|
+
*/
|
|
42101
|
+
expectedRemoteHash?: string;
|
|
42102
|
+
/** Implies dryRun; throws SurfaceDriftError unless the plan is 'none'. */
|
|
42103
|
+
expectNoChanges?: boolean;
|
|
42104
|
+
}
|
|
42105
|
+
interface EnsureSurfaceConverged {
|
|
42106
|
+
result: 'unchanged' | 'created' | 'updated';
|
|
42107
|
+
surfaceId: string;
|
|
42108
|
+
/** The server-computed canonical hash (echo this — never your own). */
|
|
42109
|
+
contentHash: string;
|
|
42110
|
+
}
|
|
42111
|
+
interface EnsureSurfacePlan {
|
|
42112
|
+
result: 'plan';
|
|
42113
|
+
changes: 'none' | 'create' | 'update';
|
|
42114
|
+
changedKeys: string[];
|
|
42115
|
+
contentHash: string;
|
|
42116
|
+
remoteHash?: string;
|
|
42117
|
+
surfaceId?: string;
|
|
42118
|
+
}
|
|
42119
|
+
type EnsureSurfaceResult = EnsureSurfaceConverged | EnsureSurfacePlan;
|
|
42120
|
+
interface SurfacePullResult {
|
|
42121
|
+
surfaceId: string;
|
|
42122
|
+
definition: SurfaceDefinition;
|
|
42123
|
+
contentHash: string;
|
|
42124
|
+
lastModifiedSource: string | null;
|
|
42125
|
+
updatedAt: string | null;
|
|
42126
|
+
}
|
|
42127
|
+
/** A 409 from the ensure protocol (external_modification or remote_changed). */
|
|
42128
|
+
declare class SurfaceEnsureConflictError extends Error {
|
|
42129
|
+
readonly code: 'external_modification' | 'remote_changed';
|
|
42130
|
+
readonly lastModifiedSource?: string;
|
|
42131
|
+
readonly modifiedAt?: string | null;
|
|
42132
|
+
readonly currentHash?: string | null;
|
|
42133
|
+
constructor(body: {
|
|
42134
|
+
error?: string;
|
|
42135
|
+
code: 'external_modification' | 'remote_changed';
|
|
42136
|
+
lastModifiedSource?: string;
|
|
42137
|
+
modifiedAt?: string | null;
|
|
42138
|
+
currentHash?: string | null;
|
|
42139
|
+
});
|
|
42140
|
+
}
|
|
42141
|
+
/** Thrown by `ensure(def, { expectNoChanges: true })` when drift is detected. */
|
|
42142
|
+
declare class SurfaceDriftError extends Error {
|
|
42143
|
+
readonly plan: EnsureSurfacePlan;
|
|
42144
|
+
constructor(plan: EnsureSurfacePlan);
|
|
42145
|
+
}
|
|
42146
|
+
|
|
42147
|
+
/**
|
|
42148
|
+
* SurfacesNamespace — config-as-code operations for product surfaces.
|
|
42149
|
+
*
|
|
42150
|
+
* `surfaces.ensure` is the deploy-time, non-executing converge (create-or-update
|
|
42151
|
+
* a surface by name within a product); `surfaces.pull` is the absorb-drift
|
|
42152
|
+
* direction. Both delegate to the implementation in `surfaces-ensure.ts`.
|
|
42153
|
+
*
|
|
42154
|
+
* Surfaces are PRODUCT-scoped: every operation takes the owning `productId`.
|
|
42155
|
+
*/
|
|
42156
|
+
|
|
42157
|
+
declare class SurfacesNamespace {
|
|
42158
|
+
private getClient;
|
|
42159
|
+
constructor(getClient: () => RuntypeClient$1);
|
|
42160
|
+
/**
|
|
42161
|
+
* Idempotently converge a `defineSurface` definition onto a product.
|
|
42162
|
+
* Hash-first: the steady state is one tiny probe request. Creates or updates
|
|
42163
|
+
* the surface; never deletes. Identity is name + product.
|
|
42164
|
+
*
|
|
42165
|
+
* @example
|
|
42166
|
+
* ```typescript
|
|
42167
|
+
* const chat = defineSurface({
|
|
42168
|
+
* name: 'Support Chat',
|
|
42169
|
+
* type: 'chat',
|
|
42170
|
+
* behavior: { type: 'chat', greeting: 'Hi there!' },
|
|
42171
|
+
* status: 'active',
|
|
42172
|
+
* })
|
|
42173
|
+
*
|
|
42174
|
+
* // Converge (CI/deploy).
|
|
42175
|
+
* const result = await Runtype.surfaces.ensure('product_abc', chat)
|
|
42176
|
+
*
|
|
42177
|
+
* // PR drift gate.
|
|
42178
|
+
* await Runtype.surfaces.ensure('product_abc', chat, { expectNoChanges: true })
|
|
42179
|
+
* ```
|
|
42180
|
+
*/
|
|
42181
|
+
ensure(productId: string, definition: SurfaceDefinition, options?: EnsureSurfaceOptions): Promise<EnsureSurfaceResult>;
|
|
42182
|
+
/**
|
|
42183
|
+
* Pull the canonical definition + provenance for a surface by name within a
|
|
42184
|
+
* product — the absorb-drift direction of the ensure protocol.
|
|
42185
|
+
*/
|
|
42186
|
+
pull(productId: string, name: string): Promise<SurfacePullResult>;
|
|
42187
|
+
}
|
|
42188
|
+
|
|
41028
42189
|
/**
|
|
41029
42190
|
* Runtype - The unified SDK client for building and executing flows, batches, evals, and prompts
|
|
41030
42191
|
*
|
|
@@ -41355,6 +42516,33 @@ declare class Runtype {
|
|
|
41355
42516
|
* ```
|
|
41356
42517
|
*/
|
|
41357
42518
|
static get products(): ProductsNamespace;
|
|
42519
|
+
/**
|
|
42520
|
+
* Config-as-code operations for product surfaces. `surfaces.ensure` is the
|
|
42521
|
+
* deploy-time, non-executing converge (create-or-update a surface by name
|
|
42522
|
+
* within a product); `surfaces.pull` is the absorb-drift direction.
|
|
42523
|
+
*
|
|
42524
|
+
* @example
|
|
42525
|
+
* ```typescript
|
|
42526
|
+
* import { Runtype, defineSurface } from '@runtypelabs/sdk'
|
|
42527
|
+
*
|
|
42528
|
+
* const chat = defineSurface({
|
|
42529
|
+
* name: 'Support Chat',
|
|
42530
|
+
* type: 'chat',
|
|
42531
|
+
* behavior: { type: 'chat', greeting: 'Hi there!' },
|
|
42532
|
+
* status: 'active',
|
|
42533
|
+
* })
|
|
42534
|
+
*
|
|
42535
|
+
* // Converge at deploy time (idempotent; one tiny probe in steady state)
|
|
42536
|
+
* await Runtype.surfaces.ensure('product_abc', chat)
|
|
42537
|
+
*
|
|
42538
|
+
* // CI drift gate
|
|
42539
|
+
* await Runtype.surfaces.ensure('product_abc', chat, { expectNoChanges: true })
|
|
42540
|
+
*
|
|
42541
|
+
* // Absorb a dashboard edit back into the repo
|
|
42542
|
+
* const { definition } = await Runtype.surfaces.pull('product_abc', 'Support Chat')
|
|
42543
|
+
* ```
|
|
42544
|
+
*/
|
|
42545
|
+
static get surfaces(): SurfacesNamespace;
|
|
41358
42546
|
}
|
|
41359
42547
|
|
|
41360
42548
|
/**
|
|
@@ -44055,6 +45243,45 @@ interface UpdateAppRequest {
|
|
|
44055
45243
|
visibility?: 'public' | 'unlisted';
|
|
44056
45244
|
status?: 'active' | 'suspended';
|
|
44057
45245
|
}
|
|
45246
|
+
/**
|
|
45247
|
+
* Tool approval grant (cross-session "Always allow") returned by the grants
|
|
45248
|
+
* API. A null `endUserRef` is an account-level grant.
|
|
45249
|
+
*/
|
|
45250
|
+
interface ToolApprovalGrant {
|
|
45251
|
+
id: string;
|
|
45252
|
+
agentId: string;
|
|
45253
|
+
endUserRef: string | null;
|
|
45254
|
+
toolType: string;
|
|
45255
|
+
toolName: string;
|
|
45256
|
+
decision: string;
|
|
45257
|
+
sourceExecutionId: string | null;
|
|
45258
|
+
sourceApprovalId: string | null;
|
|
45259
|
+
createdAt: string;
|
|
45260
|
+
expiresAt: string | null;
|
|
45261
|
+
}
|
|
45262
|
+
/**
|
|
45263
|
+
* Tool Approval Grants API
|
|
45264
|
+
*
|
|
45265
|
+
* Manage cross-session "Always allow" tool-approval grants: list the
|
|
45266
|
+
* authenticated owner's remembered approvals and revoke them so the tool
|
|
45267
|
+
* prompts for approval again on future dispatches.
|
|
45268
|
+
*/
|
|
45269
|
+
declare class ToolApprovalGrantsEndpoint {
|
|
45270
|
+
private client;
|
|
45271
|
+
constructor(client: ApiClient);
|
|
45272
|
+
/**
|
|
45273
|
+
* List active remembered tool-approval grants for the authenticated owner,
|
|
45274
|
+
* optionally filtered to a single agent.
|
|
45275
|
+
*/
|
|
45276
|
+
list(agentId?: string): Promise<ToolApprovalGrant[]>;
|
|
45277
|
+
/**
|
|
45278
|
+
* Revoke (soft-delete) a remembered grant so the tool prompts for approval
|
|
45279
|
+
* again on future dispatches.
|
|
45280
|
+
*/
|
|
45281
|
+
revoke(id: string): Promise<{
|
|
45282
|
+
revoked: boolean;
|
|
45283
|
+
}>;
|
|
45284
|
+
}
|
|
44058
45285
|
/**
|
|
44059
45286
|
* Apps endpoint handlers — Runtype Apps are hosted AI apps served at
|
|
44060
45287
|
* {slug}-{shortId}.runtype.run. Deploy = upload a version (zip), then
|
|
@@ -44154,6 +45381,19 @@ interface RunWithLocalToolsOptions {
|
|
|
44154
45381
|
* Automatically transforms field names between camelCase (client) and snake_case (API)
|
|
44155
45382
|
* to provide an idiomatic JavaScript/TypeScript experience while maintaining API consistency.
|
|
44156
45383
|
*/
|
|
45384
|
+
/**
|
|
45385
|
+
* Result of a conditional GET ({@link RuntypeClient.getConditional}). `304`
|
|
45386
|
+
* surfaces as `notModified: true` (no body) rather than throwing; `200` returns
|
|
45387
|
+
* the parsed `data` plus the server's fresh `etag`.
|
|
45388
|
+
*/
|
|
45389
|
+
type ConditionalGetResult<T> = {
|
|
45390
|
+
notModified: true;
|
|
45391
|
+
etag: string | null;
|
|
45392
|
+
} | {
|
|
45393
|
+
notModified: false;
|
|
45394
|
+
etag: string | null;
|
|
45395
|
+
data: T;
|
|
45396
|
+
};
|
|
44157
45397
|
declare class RuntypeClient implements ApiClient {
|
|
44158
45398
|
private baseUrl;
|
|
44159
45399
|
private apiVersion;
|
|
@@ -44185,6 +45425,7 @@ declare class RuntypeClient implements ApiClient {
|
|
|
44185
45425
|
flowVersions: FlowVersionsEndpoint;
|
|
44186
45426
|
integrations: IntegrationsEndpoint;
|
|
44187
45427
|
billing: BillingEndpoint;
|
|
45428
|
+
toolApprovalGrants: ToolApprovalGrantsEndpoint;
|
|
44188
45429
|
constructor(config?: ClientConfig);
|
|
44189
45430
|
/**
|
|
44190
45431
|
* Set the API key for authentication
|
|
@@ -44226,6 +45467,16 @@ declare class RuntypeClient implements ApiClient {
|
|
|
44226
45467
|
* Generic GET request
|
|
44227
45468
|
*/
|
|
44228
45469
|
get<T>(path: string, params?: Record<string, unknown>): Promise<T>;
|
|
45470
|
+
/**
|
|
45471
|
+
* Conditional GET (`ETag` / `If-None-Match`).
|
|
45472
|
+
*
|
|
45473
|
+
* Unlike {@link get}, this does NOT throw on `304` — it surfaces the not-modified
|
|
45474
|
+
* outcome so callers can keep their cached copy. Used by the dashboard's primary
|
|
45475
|
+
* lists to revalidate the canonical first page in a single round trip on both
|
|
45476
|
+
* the changed and unchanged paths. The `304` path returns no body; the `200`
|
|
45477
|
+
* path returns the parsed body plus the server's fresh `ETag`.
|
|
45478
|
+
*/
|
|
45479
|
+
getConditional<T>(path: string, params?: Record<string, unknown>, ifNoneMatch?: string | null): Promise<ConditionalGetResult<T>>;
|
|
44229
45480
|
/**
|
|
44230
45481
|
* Generic POST request
|
|
44231
45482
|
*/
|
|
@@ -44261,6 +45512,15 @@ declare class RuntypeClient implements ApiClient {
|
|
|
44261
45512
|
/**
|
|
44262
45513
|
* Make HTTP request with timeout and error handling
|
|
44263
45514
|
*/
|
|
45515
|
+
/**
|
|
45516
|
+
* Run a fetch under the client timeout and return the raw `Response`. Maps a
|
|
45517
|
+
* timeout-driven `AbortError` to a descriptive timeout `Error`; does NOT inspect
|
|
45518
|
+
* status, so callers decide how to treat non-2xx (throw, intercept `304`, etc.).
|
|
45519
|
+
*
|
|
45520
|
+
* `makeRawRequest` keeps its own variant: it additionally composes a
|
|
45521
|
+
* caller-supplied `signal` (user-initiated stream aborts) with the timeout.
|
|
45522
|
+
*/
|
|
45523
|
+
private fetchWithTimeout;
|
|
44264
45524
|
private makeRequest;
|
|
44265
45525
|
/**
|
|
44266
45526
|
* Make HTTP request that returns raw Response (for streaming)
|
|
@@ -45753,4 +47013,4 @@ declare function getLikelySupportingCandidatePaths(bestCandidatePath: string | u
|
|
|
45753
47013
|
declare function getDefaultPlanPath(taskName: string): string;
|
|
45754
47014
|
declare function sanitizeTaskSlug(taskName: string): string;
|
|
45755
47015
|
|
|
45756
|
-
export { type Agent, type AgentApprovalCompleteEvent, type AgentApprovalStartEvent, type AgentCompleteEvent, type AgentDefinition, type AgentDefinitionConfig, AgentDriftError, 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 App, type AppManifest, type AppVersion, type ApplyGeneratedProposalOptions, type ApplyGeneratedProposalResult, AppsEndpoint, 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 BuiltInTool, type BulkEditCondition, type BulkEditRequest, type BulkEditResponse, type BulkEditResult, ChatEndpoint, ClientBatchBuilder, type ClientConfig, type ClientConversation, ClientEvalBuilder, ClientFlowBuilder, type ClientToken, type ClientTokenConfig, type ClientTokenEnvironment, type ClientTokenVersionPin, ClientTokensEndpoint, type ClientToolDefinition, type ClientWidgetTheme, 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 CreateAppRequest, type CreateClientTokenRequest, type CreateClientTokenResponse, type CreateConversationRequest, type CreateFlowRequest, type CreateModelConfigRequest, type CreatePromptData, type CreatePromptRequest, type CreateProviderKeyRequest, type CreateRecordRequest, type CreateScheduleRequest, type CreateSecretRequest, type CreateToolRequest, type CustomMCPServer, type CustomMCPServerAuth, type CustomToolConfig, DEFAULT_RECOVERY_AFTER_EMPTY_SESSIONS, DEFAULT_STALL_STOP_AFTER, type DefineAgentInput, type DefineFlowInput, type DefineProductInput, type DefineToolInput, type DeployCfSandboxRequest, type DeployCfSandboxResponse, type DeploySandboxRequest, type DeploySandboxResponse, type DiscoveredModel, type DispatchClient, DispatchEndpoint, type DispatchEnvironment, type DispatchEvent, type DispatchOptions$1 as DispatchOptions, type DispatchRequest, type EnsureAgentConverged, type EnsureAgentOptions, type EnsureAgentPlan, type EnsureAgentResult, type EnsureFlowConverged, type EnsureFlowOptions, type EnsureFlowPlan, type EnsureFlowResult, type EnsureProductConverged, type EnsureProductOptions, type EnsureProductPlan, type EnsureProductResult, type EnsureToolConverged, type EnsureToolOptions, type EnsureToolPlan, type EnsureToolResult, type ErrorHandlingMode, EvalBuilder, type EvalClient, EvalEndpoint, type EvalListParams, type EvalOptions, type EvalRecord, type EvalRequest, type EvalResult, type EvalRunConfig, EvalRunner, type EvalStatus, EvalsNamespace, type ExecuteToolRequest, type ExecuteToolResponse, type ExternalAgentContext, type ExternalToolConfig, type FallbackFailEvent, type FallbackStartEvent, type FallbackSuccessEvent, type FallbackTrigger, type FallbackTriggerType, type FallbacksExhaustedEvent, type FallbacksInitiatedEvent, type FetchGitHubStepConfig$1 as FetchGitHubStepConfig, 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 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 GenerateEmbeddingStepConfig$1 as GenerateEmbeddingStepConfig, type GeneratedRuntimeToolGateDecision, type GeneratedRuntimeToolGateOptions, type ImageContentPart, type Integration, type IntegrationTool, IntegrationsEndpoint, type IntegrationsListResponse, type JSONSchema, type JsonArray, type JsonObject, type JsonPrimitive, type JsonValue, LEDGER_ARTIFACT_LINE_PREFIX, type ListConversationsResponse, type ListParams, 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 ProductDefinition, ProductDriftError, ProductEnsureConflictError, type ProductPullResult, ProductsNamespace, type Prompt$1 as Prompt, type PromptErrorHandling, type PromptFallback, type PromptListParams, type PromptRunOptions, PromptRunner, type PromptStepConfig$1 as PromptStepConfig, PromptsEndpoint, PromptsNamespace, type ProviderApiKey, type ProviderKeyModel, ProviderKeysEndpoint, type ReasoningConfig, type ReasoningContentPart, type ReasoningValue, 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 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 FetchGitHubStepConfig as RuntypeFetchGitHubStepConfig, type FetchUrlStepConfig as RuntypeFetchUrlStepConfig, RuntypeFlowBuilder, type FlowConfig as RuntypeFlowConfig, type GenerateEmbeddingStepConfig as RuntypeGenerateEmbeddingStepConfig, 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 SendTextStepConfig as RuntypeSendTextStepConfig, 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, 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 SendEmailStepConfig$1 as SendEmailStepConfig, type SendEventStepConfig$1 as SendEventStepConfig, type SendStreamStepConfig$1 as SendStreamStepConfig, type SendTextStepConfig$1 as SendTextStepConfig, type SetVariableStepConfig$1 as SetVariableStepConfig, type SkillListPage, type SkillListPagination, type SkillListParams, type SkillManifestInput, type SkillMarkdownInput, type SkillOrigin, type SkillProposalStatus, SkillProposalsNamespace, type SkillStatus, type SkillTrustLevel, type SkillVersionStatus, type SkillWithVersion, type SkillWriteInput, SkillsNamespace, type SlackInstallRequest, type StepCompleteEvent, type StepDeltaEvent, type StepFallback, type StepFieldMeta, type StepStartEvent, type StepWaitingLocalEvent, type StreamCallbacks, type StreamEvent, type StreamEventOf, type SubagentToolConfig, type Surface, type SurfaceListParams, SurfacesEndpoint, type TextContentPart, type Tool, type ToolConfig, type ToolDefinition, type ToolDefinitionType, ToolDriftError, ToolEnsureConflictError, type ToolPullResult, type ToolWithValidation, type ToolsConfig, ToolsEndpoint, ToolsNamespace, type TransformDataStepConfig$1 as TransformDataStepConfig, type UpdateAppRequest, type UpdateClientTokenRequest, type UpdateConversationRequest, 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 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, compileWorkflowConfig, computeAgentContentHash, computeFlowContentHash, computeProductContentHash, computeToolContentHash, createClient, createExternalTool, defaultWorkflow, defaultWorkflowConfig, defineAgent, defineFlow, definePlaybook, defineProduct, defineTool, deployWorkflow, ensureDefaultWorkflowHooks, evaluateGeneratedRuntimeToolProposal, extractDeclaredToolResultChars, gameWorkflow, getDefaultPlanPath, getLikelySupportingCandidatePaths, interpolateWorkflowTemplate, isDiscoveryToolName, isMarathonArtifactPath, isPreservationSensitiveTask, isWorkflowHookRef, listWorkflowHooks, normalizeAgentDefinition, normalizeCandidatePath, normalizeProductDefinition, normalizeToolDefinition, parseFinalBuffer, parseLedgerArtifactRelativePath, parseOffloadedOutputId, parseSSEChunk, processStream, registerWorkflowHook, resolveStallStopAfter, resolveWorkflowHook, sanitizeTaskSlug, shouldInjectEmptySessionNudge, shouldRequestModelEscalation, streamEvents, unregisterWorkflowHook };
|
|
47016
|
+
export { type Agent, type AgentApprovalCompleteEvent, type AgentApprovalStartEvent, type AgentCompleteEvent, type AgentDefinition, type AgentDefinitionConfig, AgentDriftError, 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 App, type AppManifest, type AppVersion, type ApplyGeneratedProposalOptions, type ApplyGeneratedProposalResult, AppsEndpoint, 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 BuiltInTool, type BulkEditCondition, type BulkEditRequest, type BulkEditResponse, type BulkEditResult, ChatEndpoint, ClientBatchBuilder, type ClientConfig, type ClientConversation, ClientEvalBuilder, ClientFlowBuilder, type ClientToken, type ClientTokenConfig, type ClientTokenEnvironment, type ClientTokenVersionPin, ClientTokensEndpoint, type ClientToolDefinition, type ClientWidgetTheme, 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 CreateAppRequest, type CreateClientTokenRequest, type CreateClientTokenResponse, type CreateConversationRequest, type CreateFlowRequest, type CreateModelConfigRequest, type CreatePromptData, type CreatePromptRequest, type CreateProviderKeyRequest, type CreateRecordRequest, type CreateScheduleRequest, type CreateSecretRequest, type CreateToolRequest, type CustomMCPServer, type CustomMCPServerAuth, type CustomToolConfig, DEFAULT_RECOVERY_AFTER_EMPTY_SESSIONS, DEFAULT_STALL_STOP_AFTER, type DefineAgentInput, type DefineFlowInput, type DefineProductInput, type DefineSkillInput, type DefineSurfaceInput, type DefineToolInput, type DeployCfSandboxRequest, type DeployCfSandboxResponse, type DeploySandboxRequest, type DeploySandboxResponse, type DiscoveredModel, type DispatchClient, DispatchEndpoint, type DispatchEnvironment, type DispatchEvent, type DispatchOptions$1 as DispatchOptions, type DispatchRequest, type EnsureAgentConverged, type EnsureAgentOptions, type EnsureAgentPlan, type EnsureAgentResult, type EnsureFlowConverged, type EnsureFlowOptions, type EnsureFlowPlan, type EnsureFlowResult, 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 EvalClient, EvalEndpoint, type EvalListParams, type EvalOptions, type EvalRecord, type EvalRequest, type EvalResult, type EvalRunConfig, EvalRunner, type EvalStatus, EvalsNamespace, type ExecuteToolRequest, type ExecuteToolResponse, type ExternalAgentContext, type ExternalToolConfig, type FallbackFailEvent, type FallbackStartEvent, type FallbackSuccessEvent, type FallbackTrigger, type FallbackTriggerType, type FallbacksExhaustedEvent, type FallbacksInitiatedEvent, type FetchGitHubStepConfig$1 as FetchGitHubStepConfig, 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 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 GenerateEmbeddingStepConfig$1 as GenerateEmbeddingStepConfig, type GeneratedRuntimeToolGateDecision, type GeneratedRuntimeToolGateOptions, type ImageContentPart, type Integration, type IntegrationTool, IntegrationsEndpoint, type IntegrationsListResponse, type JSONSchema, type JsonArray, type JsonObject, type JsonPrimitive, type JsonValue, LEDGER_ARTIFACT_LINE_PREFIX, type ListConversationsResponse, type ListParams, 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 ProductDefinition, ProductDriftError, ProductEnsureConflictError, type ProductPullResult, ProductsNamespace, type Prompt$1 as Prompt, type PromptErrorHandling, type PromptFallback, type PromptListParams, type PromptRunOptions, PromptRunner, type PromptStepConfig$1 as PromptStepConfig, PromptsEndpoint, PromptsNamespace, type ProviderApiKey, type ProviderKeyModel, ProviderKeysEndpoint, type ReasoningConfig, type ReasoningContentPart, type ReasoningValue, 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 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 FetchGitHubStepConfig as RuntypeFetchGitHubStepConfig, type FetchUrlStepConfig as RuntypeFetchUrlStepConfig, RuntypeFlowBuilder, type FlowConfig as RuntypeFlowConfig, type GenerateEmbeddingStepConfig as RuntypeGenerateEmbeddingStepConfig, 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 SendTextStepConfig as RuntypeSendTextStepConfig, 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 SkillScanFinding as RuntypeSkillScanFinding, type SkillScanResult as RuntypeSkillScanResult, type SkillScanVerdict as RuntypeSkillScanVerdict, type SkillVersion as RuntypeSkillVersion, type TransformDataStepConfig as RuntypeTransformDataStepConfig, type UpsertFlowConfig as RuntypeUpsertFlowConfig, type UpsertRecordStepConfig as RuntypeUpsertRecordStepConfig, type VectorSearchStepConfig as RuntypeVectorSearchStepConfig, type WaitUntilStepConfig as RuntypeWaitUntilStepConfig, 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 SendEmailStepConfig$1 as SendEmailStepConfig, type SendEventStepConfig$1 as SendEventStepConfig, type SendStreamStepConfig$1 as SendStreamStepConfig, type SendTextStepConfig$1 as SendTextStepConfig, 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 StepCompleteEvent, type StepDeltaEvent, type StepFallback, type StepFieldMeta, type StepStartEvent, type StepWaitingLocalEvent, type StreamCallbacks, 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 UpdateAppRequest, type UpdateClientTokenRequest, type UpdateConversationRequest, 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 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, compileWorkflowConfig, computeAgentContentHash, computeFlowContentHash, computeProductContentHash, computeSkillContentHash, computeSurfaceContentHash, computeToolContentHash, createClient, createExternalTool, defaultWorkflow, defaultWorkflowConfig, defineAgent, defineFlow, definePlaybook, defineProduct, defineSkill, defineSurface, defineTool, deployWorkflow, ensureDefaultWorkflowHooks, evaluateGeneratedRuntimeToolProposal, extractDeclaredToolResultChars, gameWorkflow, getDefaultPlanPath, getLikelySupportingCandidatePaths, interpolateWorkflowTemplate, isDiscoveryToolName, isMarathonArtifactPath, isPreservationSensitiveTask, isWorkflowHookRef, listWorkflowHooks, normalizeAgentDefinition, normalizeCandidatePath, normalizeProductDefinition, normalizeSkillDefinition, normalizeSurfaceDefinition, normalizeToolDefinition, parseFinalBuffer, parseLedgerArtifactRelativePath, parseOffloadedOutputId, parseSSEChunk, processStream, registerWorkflowHook, resolveStallStopAfter, resolveWorkflowHook, sanitizeTaskSlug, shouldInjectEmptySessionNudge, shouldRequestModelEscalation, streamEvents, unregisterWorkflowHook };
|