@agent-os-sdk/client 0.9.33 → 0.9.34

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.
@@ -0,0 +1,242 @@
1
+ /**
2
+ * Builder Module - Meta-Agent for Agent Building
3
+ *
4
+ * Connects to the Control Plane's builder endpoint which proxies to the
5
+ * Data Plane's meta-agent for AI-assisted agent creation.
6
+ * Uses SSE streaming for real-time responses and graph updates.
7
+ *
8
+ * Flow: Frontend → CP:5000/v1/api/builder/{agentId}/chat → DP:8001/v1/internal/builder/{agentId}/chat
9
+ *
10
+ * ALL HTTP goes through rawClient - no direct fetch calls.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * const client = new AgentOsClient({ ... })
15
+ *
16
+ * // SSE streaming chat
17
+ * for await (const event of client.builder.chat(agentId, {
18
+ * message: "Adicione um nó de pesquisa web",
19
+ * current_graph_spec: { nodes: [...], edges: [...] }
20
+ * })) {
21
+ * if (event.type === 'message') console.log(event.data.text)
22
+ * if (event.type === 'graph_update') applyAction(event.data)
23
+ * }
24
+ *
25
+ * // Sync chat (no streaming)
26
+ * const result = await client.builder.chatSync(agentId, { message: "Mude as instruções" })
27
+ * ```
28
+ */
29
+ import type { RawClient } from "../client/raw.js";
30
+ import type { SSEOptions } from "../sse/client.js";
31
+ export type CatalogVersions = {
32
+ nodes: string;
33
+ tools: string;
34
+ triggers: string;
35
+ };
36
+ export type ChatHistoryMessage = {
37
+ role: 'user' | 'assistant';
38
+ content: string;
39
+ };
40
+ /**
41
+ * Builder chat request.
42
+ *
43
+ * KERNEL-FIRST: Frontend sends INTENTION only.
44
+ * - Graph spec is loaded from artifact storage by CP
45
+ * - Catalogs are loaded from DB by CP
46
+ * - Frontend should NOT send graph_spec or catalogs
47
+ */
48
+ export type BuilderChatRequest = {
49
+ /** Chat message/intention */
50
+ message: string;
51
+ /** Thread ID for conversation continuity */
52
+ thread_id?: string;
53
+ /** Chat history for context (optional, sent from frontend) */
54
+ history?: {
55
+ role: 'user' | 'assistant';
56
+ content: string;
57
+ }[];
58
+ /** Optional ETag for concurrency control */
59
+ base_graph_etag?: string;
60
+ };
61
+ export type HintTargetModel = {
62
+ node_id?: string;
63
+ edge_id?: string;
64
+ panel?: "credentials" | "triggers" | "logs" | "validation" | "deploy" | string;
65
+ action?: "create_credential" | "save_draft" | "publish_version" | string;
66
+ };
67
+ export type HintDataModel = {
68
+ credential_slug?: string;
69
+ reason?: string;
70
+ fields?: string[];
71
+ code?: string;
72
+ path?: string;
73
+ run_id?: string;
74
+ error_code?: string;
75
+ tokens_in?: number;
76
+ tokens_out?: number;
77
+ usd_estimate?: number;
78
+ action_id?: string;
79
+ params?: Record<string, any>;
80
+ };
81
+ export type HintModel = {
82
+ id?: string;
83
+ scope: "graph" | "thread" | "run" | string;
84
+ type: "highlight_node" | "needs_credential" | "missing_config" | "error_marker" | "warning_marker" | "toast" | "run_started" | "node_running" | "node_failed" | "rate_limited" | "cost_estimate" | "action_suggested" | string;
85
+ severity: "info" | "warn" | "error" | "success";
86
+ target?: HintTargetModel;
87
+ message?: string;
88
+ ttl_ms?: number;
89
+ data?: HintDataModel;
90
+ };
91
+ export type GraphUpdateAction = {
92
+ graph_spec: Record<string, unknown>;
93
+ hints?: HintModel[];
94
+ has_errors?: boolean;
95
+ };
96
+ export type BuilderStreamEvent = {
97
+ type: "message";
98
+ data: {
99
+ text: string;
100
+ };
101
+ } | {
102
+ type: "validation";
103
+ data: {
104
+ valid: boolean;
105
+ errors: any[];
106
+ };
107
+ } | {
108
+ type: "graph_update";
109
+ data: {
110
+ graph_spec: Record<string, unknown>;
111
+ hints: HintModel[];
112
+ has_errors?: boolean;
113
+ };
114
+ } | {
115
+ type: "done";
116
+ data: {
117
+ response: string;
118
+ thread_id: string;
119
+ };
120
+ } | {
121
+ type: "error";
122
+ data: {
123
+ error: string;
124
+ };
125
+ };
126
+ export type BuilderChatResponse = {
127
+ response: string;
128
+ graph_spec?: Record<string, unknown>;
129
+ valid: boolean;
130
+ errors: any[];
131
+ thread_id: string;
132
+ hints: HintModel[];
133
+ };
134
+ /** Supported patch operation types */
135
+ export type OpType = "add_node" | "remove_node" | "update_node" | "add_edge" | "remove_edge" | "set_entrypoint" | "rename_node";
136
+ /** A single graph modification operation */
137
+ export type PatchOp = {
138
+ op: OpType;
139
+ node_id?: string;
140
+ kind?: string;
141
+ label?: string;
142
+ data?: Record<string, unknown>;
143
+ set?: Record<string, unknown>;
144
+ from?: string;
145
+ to?: string;
146
+ entrypoint?: string;
147
+ };
148
+ /** A collection of patch operations with deterministic ID */
149
+ export type GraphPatch = {
150
+ patch_id: string;
151
+ ops: PatchOp[];
152
+ description?: string;
153
+ };
154
+ /** Validation error from applying patch */
155
+ export type PatchValidationError = {
156
+ code: string;
157
+ message: string;
158
+ node_id?: string;
159
+ path?: string;
160
+ };
161
+ /** Meta-chat request */
162
+ export type MetaChatRequest = {
163
+ instruction: string;
164
+ };
165
+ /** Meta-chat stream events */
166
+ export type MetaChatStreamEvent = {
167
+ type: "assistant.delta";
168
+ data: {
169
+ text: string;
170
+ };
171
+ } | {
172
+ type: "patch.validation";
173
+ data: {
174
+ valid: boolean;
175
+ errors: PatchValidationError[];
176
+ };
177
+ } | {
178
+ type: "patch.proposed";
179
+ data: GraphPatch;
180
+ } | {
181
+ type: "final";
182
+ data: {
183
+ ok: boolean;
184
+ patch_id: string;
185
+ };
186
+ } | {
187
+ type: "error";
188
+ data: {
189
+ error: string;
190
+ };
191
+ };
192
+ /** Meta-chat sync response */
193
+ export type MetaChatResponse = {
194
+ patch: GraphPatch | null;
195
+ applied_spec: Record<string, unknown> | null;
196
+ valid: boolean;
197
+ errors: PatchValidationError[];
198
+ message: string;
199
+ };
200
+ export declare class BuilderModule {
201
+ private client;
202
+ constructor(client: RawClient);
203
+ /**
204
+ * Stream chat with meta-agent (SSE).
205
+ * Returns async generator of events.
206
+ *
207
+ * Uses rawClient.streamPost() - headers resolved asynchronously.
208
+ */
209
+ chat(agentId: string, request: BuilderChatRequest, options?: SSEOptions): AsyncGenerator<BuilderStreamEvent>;
210
+ /**
211
+ * Sync chat with meta-agent (no streaming).
212
+ *
213
+ * Uses rawClient.POST() - headers resolved asynchronously.
214
+ */
215
+ chatSync(agentId: string, request: BuilderChatRequest): Promise<BuilderChatResponse>;
216
+ /**
217
+ * Convenience method: chat and collect all events.
218
+ */
219
+ chatCollect(agentId: string, request: BuilderChatRequest): Promise<BuilderChatResponse>;
220
+ /**
221
+ * Stream meta-chat with patch-ops architecture (SSE).
222
+ * Returns GraphPatch proposals instead of full graph specs.
223
+ *
224
+ * @example
225
+ * ```ts
226
+ * for await (const event of client.builder.metaChat(agentId, {
227
+ * instruction: "Add a log node after the main agent"
228
+ * })) {
229
+ * if (event.type === 'patch.proposed') {
230
+ * const patch = event.data;
231
+ * console.log(`Proposed ${patch.ops.length} operations`);
232
+ * }
233
+ * }
234
+ * ```
235
+ */
236
+ metaChat(agentId: string, request: MetaChatRequest, options?: SSEOptions): AsyncGenerator<MetaChatStreamEvent>;
237
+ /**
238
+ * Meta-chat and collect the proposed patch.
239
+ */
240
+ metaChatCollect(agentId: string, request: MetaChatRequest): Promise<MetaChatResponse>;
241
+ }
242
+ //# sourceMappingURL=builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/modules/builder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,248 @@
1
+ /**
2
+ * Builder Module - Meta-Agent for Agent Building
3
+ *
4
+ * Connects to the Control Plane's builder endpoint which proxies to the
5
+ * Data Plane's meta-agent for AI-assisted agent creation.
6
+ * Uses SSE streaming for real-time responses and graph updates.
7
+ *
8
+ * Flow: Frontend → CP:5000/v1/api/builder/{agentId}/chat → DP:8001/v1/internal/builder/{agentId}/chat
9
+ *
10
+ * ALL HTTP goes through rawClient - no direct fetch calls.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * const client = new AgentOsClient({ ... })
15
+ *
16
+ * // SSE streaming chat
17
+ * for await (const event of client.builder.chat(agentId, {
18
+ * message: "Adicione um nó de pesquisa web",
19
+ * current_graph_spec: { nodes: [...], edges: [...] }
20
+ * })) {
21
+ * if (event.type === 'message') console.log(event.data.text)
22
+ * if (event.type === 'graph_update') applyAction(event.data)
23
+ * }
24
+ *
25
+ * // Sync chat (no streaming)
26
+ * const result = await client.builder.chatSync(agentId, { message: "Mude as instruções" })
27
+ * ```
28
+ */
29
+ export class BuilderModule {
30
+ client;
31
+ constructor(client) {
32
+ this.client = client;
33
+ }
34
+ /**
35
+ * Stream chat with meta-agent (SSE).
36
+ * Returns async generator of events.
37
+ *
38
+ * Uses rawClient.streamPost() - headers resolved asynchronously.
39
+ */
40
+ async *chat(agentId, request, options) {
41
+ // Use rawClient.streamPost() - ALL auth headers resolved automatically
42
+ const response = await this.client.streamPost("/v1/api/builder/{agentId}/chat", {
43
+ params: { path: { agentId } },
44
+ body: request,
45
+ signal: options?.signal,
46
+ });
47
+ if (!response.ok) {
48
+ const errorText = await response.text();
49
+ throw new Error(`Builder chat failed: ${response.status} - ${errorText}`);
50
+ }
51
+ if (!response.body) {
52
+ throw new Error("No response body");
53
+ }
54
+ options?.onOpen?.();
55
+ const reader = response.body.getReader();
56
+ const decoder = new TextDecoder();
57
+ let buffer = "";
58
+ try {
59
+ while (true) {
60
+ const { done, value } = await reader.read();
61
+ if (done)
62
+ break;
63
+ buffer += decoder.decode(value, { stream: true });
64
+ const lines = buffer.split("\n");
65
+ buffer = lines.pop() ?? "";
66
+ let eventType = "message";
67
+ let eventData = "";
68
+ for (const line of lines) {
69
+ if (line.startsWith("event:")) {
70
+ eventType = line.slice(6).trim();
71
+ }
72
+ else if (line.startsWith("data:")) {
73
+ eventData = line.slice(5).trim();
74
+ }
75
+ else if (line === "" && eventData) {
76
+ try {
77
+ const parsed = JSON.parse(eventData);
78
+ yield { type: eventType, data: parsed };
79
+ }
80
+ catch {
81
+ // Skip invalid JSON
82
+ }
83
+ eventData = "";
84
+ eventType = "message";
85
+ }
86
+ }
87
+ }
88
+ }
89
+ finally {
90
+ reader.releaseLock();
91
+ }
92
+ }
93
+ /**
94
+ * Sync chat with meta-agent (no streaming).
95
+ *
96
+ * Uses rawClient.POST() - headers resolved asynchronously.
97
+ */
98
+ async chatSync(agentId, request) {
99
+ const { data, error } = await this.client.POST("/v1/api/builder/{agentId}/chat/sync", {
100
+ params: { path: { agentId } },
101
+ body: request,
102
+ });
103
+ if (error) {
104
+ throw new Error(`Builder chat failed: ${error.code} - ${error.message}`);
105
+ }
106
+ return data;
107
+ }
108
+ /**
109
+ * Convenience method: chat and collect all events.
110
+ */
111
+ async chatCollect(agentId, request) {
112
+ let fullResponse = "";
113
+ let lastGraphSpec;
114
+ let allHints = [];
115
+ const allErrors = [];
116
+ let threadId = request.thread_id ?? "";
117
+ let isValid = true;
118
+ for await (const event of this.chat(agentId, request)) {
119
+ if (event.type === "message") {
120
+ fullResponse += event.data.text;
121
+ }
122
+ else if (event.type === "graph_update") {
123
+ if ('graph_spec' in event.data) {
124
+ lastGraphSpec = event.data.graph_spec;
125
+ if (event.data.hints) {
126
+ allHints.push(...event.data.hints);
127
+ }
128
+ }
129
+ }
130
+ else if (event.type === "validation") {
131
+ isValid = event.data.valid;
132
+ if (event.data.errors) {
133
+ allErrors.push(...event.data.errors);
134
+ }
135
+ }
136
+ else if (event.type === "done") {
137
+ threadId = event.data.thread_id;
138
+ }
139
+ }
140
+ return {
141
+ response: fullResponse,
142
+ graph_spec: lastGraphSpec,
143
+ hints: allHints,
144
+ valid: isValid,
145
+ errors: allErrors,
146
+ thread_id: threadId,
147
+ };
148
+ }
149
+ // ============================================
150
+ // META-CHAT V2 (PATCH-OPS ARCHITECTURE)
151
+ // ============================================
152
+ /**
153
+ * Stream meta-chat with patch-ops architecture (SSE).
154
+ * Returns GraphPatch proposals instead of full graph specs.
155
+ *
156
+ * @example
157
+ * ```ts
158
+ * for await (const event of client.builder.metaChat(agentId, {
159
+ * instruction: "Add a log node after the main agent"
160
+ * })) {
161
+ * if (event.type === 'patch.proposed') {
162
+ * const patch = event.data;
163
+ * console.log(`Proposed ${patch.ops.length} operations`);
164
+ * }
165
+ * }
166
+ * ```
167
+ */
168
+ async *metaChat(agentId, request, options) {
169
+ const response = await this.client.streamPost("/v1/builder/{agentId}/meta-chat", {
170
+ params: { path: { agentId } },
171
+ body: request,
172
+ signal: options?.signal,
173
+ });
174
+ if (!response.ok) {
175
+ const errorText = await response.text();
176
+ throw new Error(`Meta-chat failed: ${response.status} - ${errorText}`);
177
+ }
178
+ if (!response.body) {
179
+ throw new Error("No response body");
180
+ }
181
+ options?.onOpen?.();
182
+ const reader = response.body.getReader();
183
+ const decoder = new TextDecoder();
184
+ let buffer = "";
185
+ try {
186
+ while (true) {
187
+ const { done, value } = await reader.read();
188
+ if (done)
189
+ break;
190
+ buffer += decoder.decode(value, { stream: true });
191
+ const lines = buffer.split("\n");
192
+ buffer = lines.pop() ?? "";
193
+ let eventType = "message";
194
+ let eventData = "";
195
+ for (const line of lines) {
196
+ if (line.startsWith("event:")) {
197
+ eventType = line.slice(6).trim();
198
+ }
199
+ else if (line.startsWith("data:")) {
200
+ eventData = line.slice(5).trim();
201
+ }
202
+ else if (line === "" && eventData) {
203
+ try {
204
+ const parsed = JSON.parse(eventData);
205
+ yield { type: eventType, data: parsed };
206
+ }
207
+ catch {
208
+ // Skip invalid JSON
209
+ }
210
+ eventData = "";
211
+ eventType = "message";
212
+ }
213
+ }
214
+ }
215
+ }
216
+ finally {
217
+ reader.releaseLock();
218
+ }
219
+ }
220
+ /**
221
+ * Meta-chat and collect the proposed patch.
222
+ */
223
+ async metaChatCollect(agentId, request) {
224
+ let patch = null;
225
+ let isValid = true;
226
+ const errors = [];
227
+ let message = "";
228
+ for await (const event of this.metaChat(agentId, request)) {
229
+ if (event.type === "assistant.delta") {
230
+ message += event.data.text;
231
+ }
232
+ else if (event.type === "patch.proposed") {
233
+ patch = event.data;
234
+ }
235
+ else if (event.type === "patch.validation") {
236
+ isValid = event.data.valid;
237
+ errors.push(...event.data.errors);
238
+ }
239
+ }
240
+ return {
241
+ patch,
242
+ applied_spec: null, // Frontend should apply patch locally
243
+ valid: isValid,
244
+ errors,
245
+ message,
246
+ };
247
+ }
248
+ }
@@ -0,0 +1,120 @@
1
+ /**
2
+ * Graphs Module - V2 Graph Specification Management
3
+ *
4
+ * Pure V2 contract - no legacy. All types namespaced with "Graphs" prefix.
5
+ */
6
+ import type { RawClient, APIResponse } from "../client/raw.js";
7
+ export interface GraphsValidationMessage {
8
+ code: string;
9
+ message: string;
10
+ path?: string;
11
+ node_id?: string;
12
+ severity?: "error" | "warning";
13
+ }
14
+ export interface GraphsValidationResult {
15
+ valid: boolean;
16
+ errors?: GraphsValidationMessage[];
17
+ }
18
+ export interface GraphsGetResponse {
19
+ agent_id: string;
20
+ revision: string;
21
+ canonical_spec: unknown;
22
+ committed_at: string;
23
+ warnings?: GraphsValidationMessage[];
24
+ validation?: GraphsValidationResult;
25
+ }
26
+ export interface GraphsCommitRequest {
27
+ agent_id: string;
28
+ graph_spec: unknown;
29
+ expected_revision?: string;
30
+ source?: string;
31
+ }
32
+ export type GraphsCommitStatus = "committed" | "no_change";
33
+ export interface GraphsCommitResponse {
34
+ status: GraphsCommitStatus;
35
+ agent_id: string;
36
+ revision: string;
37
+ canonical_spec: unknown;
38
+ committed_at: string;
39
+ warnings?: GraphsValidationMessage[];
40
+ validation?: GraphsValidationResult;
41
+ }
42
+ export interface GraphsConflictPayload {
43
+ hint: "reload_and_retry";
44
+ expected_revision: string;
45
+ current: GraphsGetResponse;
46
+ }
47
+ export interface GraphsRevisionSummary {
48
+ revision: string;
49
+ created_at: string;
50
+ source?: string;
51
+ }
52
+ export interface GraphsRevisionsListResponse {
53
+ agent_id: string;
54
+ revisions: GraphsRevisionSummary[];
55
+ }
56
+ export interface GraphsRevisionResponse {
57
+ revision: string;
58
+ canonical_spec: unknown;
59
+ created_at: string;
60
+ source?: string;
61
+ warnings?: GraphsValidationMessage[];
62
+ validation?: GraphsValidationResult;
63
+ }
64
+ export interface GraphsValidateRequest {
65
+ graph_spec: unknown;
66
+ normalize?: boolean;
67
+ catalog_versions?: Record<string, string>;
68
+ }
69
+ export interface GraphsValidateResponse {
70
+ valid: boolean;
71
+ canonical_spec_json?: string;
72
+ mermaid?: string;
73
+ nodes?: string[];
74
+ edges?: [string, string][];
75
+ errors?: GraphsValidationMessage[];
76
+ warnings?: GraphsValidationMessage[];
77
+ }
78
+ export interface GraphsIntrospectRequest {
79
+ agent_id?: string;
80
+ graph_spec?: unknown;
81
+ catalog_versions?: Record<string, string>;
82
+ }
83
+ export interface GraphsIntrospectResponse {
84
+ mermaid: string;
85
+ nodes: string[];
86
+ edges: [string, string][];
87
+ type?: string;
88
+ }
89
+ export declare class GraphsModule {
90
+ private client;
91
+ private headers;
92
+ constructor(client: RawClient, headers: () => Record<string, string>);
93
+ /**
94
+ * Get current graph spec by revision.
95
+ * @returns 200 with graph spec, or 404 if not initialized
96
+ */
97
+ get(agentId: string): Promise<APIResponse<GraphsGetResponse>>;
98
+ /**
99
+ * Commit graph spec atomically.
100
+ * @returns 200 (committed/no_change), or 409 on conflict
101
+ */
102
+ commit(request: GraphsCommitRequest): Promise<APIResponse<GraphsCommitResponse>>;
103
+ /**
104
+ * List revision history for an agent.
105
+ */
106
+ listRevisions(agentId: string): Promise<APIResponse<GraphsRevisionsListResponse>>;
107
+ /**
108
+ * Get a specific revision.
109
+ */
110
+ getRevision(agentId: string, revision: string): Promise<APIResponse<GraphsRevisionResponse>>;
111
+ /**
112
+ * Validate a graph specification.
113
+ */
114
+ validate(body: GraphsValidateRequest): Promise<APIResponse<GraphsValidateResponse>>;
115
+ /**
116
+ * Introspect a graph structure.
117
+ */
118
+ introspect(body: GraphsIntrospectRequest): Promise<APIResponse<GraphsIntrospectResponse>>;
119
+ }
120
+ //# sourceMappingURL=graphs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphs.d.ts","sourceRoot":"","sources":["../../src/modules/graphs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Graphs Module - V2 Graph Specification Management
3
+ *
4
+ * Pure V2 contract - no legacy. All types namespaced with "Graphs" prefix.
5
+ */
6
+ // ============ Module ============
7
+ export class GraphsModule {
8
+ client;
9
+ headers;
10
+ constructor(client, headers) {
11
+ this.client = client;
12
+ this.headers = headers;
13
+ }
14
+ // ============ V2 Graph Spec (CP) ============
15
+ /**
16
+ * Get current graph spec by revision.
17
+ * @returns 200 with graph spec, or 404 if not initialized
18
+ */
19
+ async get(agentId) {
20
+ return this.client.GET(`/v1/api/graph/${agentId}`, {
21
+ headers: this.headers(),
22
+ });
23
+ }
24
+ /**
25
+ * Commit graph spec atomically.
26
+ * @returns 200 (committed/no_change), or 409 on conflict
27
+ */
28
+ async commit(request) {
29
+ return this.client.POST("/v1/api/graph/commit", {
30
+ body: request,
31
+ headers: this.headers(),
32
+ });
33
+ }
34
+ /**
35
+ * List revision history for an agent.
36
+ */
37
+ async listRevisions(agentId) {
38
+ return this.client.GET(`/v1/api/graph/${agentId}/revisions`, {
39
+ headers: this.headers(),
40
+ });
41
+ }
42
+ /**
43
+ * Get a specific revision.
44
+ */
45
+ async getRevision(agentId, revision) {
46
+ return this.client.GET(`/v1/api/graph/${agentId}/revisions/${revision}`, {
47
+ headers: this.headers(),
48
+ });
49
+ }
50
+ // ============ Validation (DP proxy) ============
51
+ /**
52
+ * Validate a graph specification.
53
+ */
54
+ async validate(body) {
55
+ return this.client.POST("/v1/api/graphs/validate", {
56
+ body,
57
+ headers: this.headers(),
58
+ });
59
+ }
60
+ /**
61
+ * Introspect a graph structure.
62
+ */
63
+ async introspect(body) {
64
+ return this.client.POST("/v1/api/graphs/introspect", {
65
+ body,
66
+ headers: this.headers(),
67
+ });
68
+ }
69
+ }
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Knowledge Module - Fully Typed
3
+ */
4
+ import type { RawClient, APIResponse } from "../client/raw.js";
5
+ export interface KnowledgeDataset {
6
+ id: string;
7
+ name: string;
8
+ description?: string;
9
+ workspace_id: string;
10
+ file_count: number;
11
+ total_chunks: number;
12
+ created_at: string;
13
+ updated_at: string;
14
+ }
15
+ export interface KnowledgeListResponse {
16
+ items: KnowledgeDataset[];
17
+ total: number;
18
+ }
19
+ export interface KnowledgeFile {
20
+ id: string;
21
+ dataset_id: string;
22
+ filename: string;
23
+ size_bytes: number;
24
+ chunk_count: number;
25
+ status: "pending" | "processing" | "completed" | "failed";
26
+ created_at: string;
27
+ }
28
+ export interface KnowledgeFileListResponse {
29
+ items: KnowledgeFile[];
30
+ total: number;
31
+ }
32
+ export interface KnowledgeSearchResult {
33
+ chunk_id: string;
34
+ file_id: string;
35
+ content: string;
36
+ score: number;
37
+ metadata?: Record<string, unknown>;
38
+ }
39
+ export interface KnowledgeSearchResponse {
40
+ results: KnowledgeSearchResult[];
41
+ total: number;
42
+ }
43
+ export declare class KnowledgeModule {
44
+ private client;
45
+ private getWorkspaceId;
46
+ private headers;
47
+ constructor(client: RawClient, getWorkspaceId: () => string, headers: () => Record<string, string>);
48
+ /**
49
+ * List all knowledge datasets.
50
+ */
51
+ list(params?: {
52
+ workspace_id?: string;
53
+ limit?: number;
54
+ offset?: number;
55
+ }): Promise<APIResponse<KnowledgeListResponse>>;
56
+ /**
57
+ * Get a knowledge dataset by ID.
58
+ */
59
+ get(datasetId: string): Promise<APIResponse<KnowledgeDataset>>;
60
+ /**
61
+ * Create a new knowledge dataset.
62
+ */
63
+ create(body: {
64
+ name: string;
65
+ description?: string;
66
+ }): Promise<APIResponse<KnowledgeDataset>>;
67
+ /**
68
+ * Delete a knowledge dataset.
69
+ */
70
+ delete(datasetId: string): Promise<APIResponse<void>>;
71
+ /**
72
+ * List files in a dataset.
73
+ */
74
+ listFiles(datasetId: string, params?: {
75
+ limit?: number;
76
+ offset?: number;
77
+ }): Promise<APIResponse<KnowledgeFileListResponse>>;
78
+ /**
79
+ * Add a file to a dataset.
80
+ */
81
+ addFile(datasetId: string, fileId: string): Promise<APIResponse<KnowledgeFile>>;
82
+ /**
83
+ * Search within a knowledge dataset.
84
+ */
85
+ search(datasetId: string, body: {
86
+ query: string;
87
+ top_k?: number;
88
+ min_score?: number;
89
+ }): Promise<APIResponse<KnowledgeSearchResponse>>;
90
+ }
91
+ //# sourceMappingURL=knowledge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledge.d.ts","sourceRoot":"","sources":["../../src/modules/knowledge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Knowledge Module - Fully Typed
3
+ */
4
+ export class KnowledgeModule {
5
+ client;
6
+ getWorkspaceId;
7
+ headers;
8
+ constructor(client, getWorkspaceId, headers) {
9
+ this.client = client;
10
+ this.getWorkspaceId = getWorkspaceId;
11
+ this.headers = headers;
12
+ }
13
+ /**
14
+ * List all knowledge datasets.
15
+ */
16
+ async list(params) {
17
+ return this.client.GET("/v1/api/knowledge", {
18
+ params: { query: params },
19
+ headers: this.headers(),
20
+ });
21
+ }
22
+ /**
23
+ * Get a knowledge dataset by ID.
24
+ */
25
+ async get(datasetId) {
26
+ return this.client.GET("/v1/api/knowledge/{id}", {
27
+ params: { path: { id: datasetId } },
28
+ headers: this.headers(),
29
+ });
30
+ }
31
+ /**
32
+ * Create a new knowledge dataset.
33
+ */
34
+ async create(body) {
35
+ return this.client.POST("/v1/api/knowledge", {
36
+ body,
37
+ headers: this.headers(),
38
+ });
39
+ }
40
+ /**
41
+ * Delete a knowledge dataset.
42
+ */
43
+ async delete(datasetId) {
44
+ return this.client.DELETE("/v1/api/knowledge/{id}", {
45
+ params: { path: { id: datasetId } },
46
+ headers: this.headers(),
47
+ });
48
+ }
49
+ // ======================== Files ========================
50
+ /**
51
+ * List files in a dataset.
52
+ */
53
+ async listFiles(datasetId, params) {
54
+ return this.client.GET("/v1/api/knowledge/{id}/files", {
55
+ params: { path: { id: datasetId }, query: params },
56
+ headers: this.headers(),
57
+ });
58
+ }
59
+ /**
60
+ * Add a file to a dataset.
61
+ */
62
+ async addFile(datasetId, fileId) {
63
+ return this.client.POST("/v1/api/knowledge/{id}/files", {
64
+ params: { path: { id: datasetId } },
65
+ body: { file_id: fileId },
66
+ headers: this.headers(),
67
+ });
68
+ }
69
+ // ======================== Search ========================
70
+ /**
71
+ * Search within a knowledge dataset.
72
+ */
73
+ async search(datasetId, body) {
74
+ return this.client.POST("/v1/api/knowledge/{id}/search", {
75
+ params: { path: { id: datasetId } },
76
+ body,
77
+ headers: this.headers(),
78
+ });
79
+ }
80
+ }
@@ -31,6 +31,9 @@ export interface WorkbenchRunCounters {
31
31
  export interface WorkbenchRunNode {
32
32
  runNodeId: string;
33
33
  nodeKey: string;
34
+ capabilityRef: string | null;
35
+ executionBinding: string | null;
36
+ attemptNo: number;
34
37
  nodeType: string;
35
38
  seqNo: number;
36
39
  status: string;
@@ -44,6 +47,24 @@ export interface WorkbenchRunNode {
44
47
  trace: WorkbenchJson | null;
45
48
  error: WorkbenchJson | null;
46
49
  }
50
+ export interface WorkbenchRunToolCall {
51
+ toolCallId: string;
52
+ runId: string;
53
+ threadId: string;
54
+ runNodeId: string | null;
55
+ nodeKey: string | null;
56
+ toolName: string;
57
+ displayName: string | null;
58
+ arguments: WorkbenchJson | null;
59
+ output: WorkbenchJson | null;
60
+ errorCode: string | null;
61
+ errorDetail: string | null;
62
+ status: string;
63
+ startedAt: string | null;
64
+ finishedAt: string | null;
65
+ durationMs: number | null;
66
+ sequence: number;
67
+ }
47
68
  export interface WorkbenchRunDetail {
48
69
  runId: string;
49
70
  threadId: string;
@@ -152,18 +173,144 @@ export interface WorkbenchReplayDetail {
152
173
  }
153
174
  export interface WorkbenchReplayCompareSummary {
154
175
  sameFinalStatus: boolean | null;
176
+ sameRoute: boolean | null;
155
177
  sameOutputHash: boolean | null;
178
+ latencyOriginalMs: number | null;
179
+ latencyReplayMs: number | null;
180
+ latencyDeltaMs: number | null;
181
+ costOriginal: number | null;
182
+ costReplay: number | null;
183
+ costDelta: number | null;
156
184
  sourceNodeCount: number | null;
157
185
  replayNodeCount: number | null;
158
186
  sourceToolCallCount: number | null;
159
187
  replayToolCallCount: number | null;
160
188
  }
189
+ export interface WorkbenchReplayRouteCompare {
190
+ sameRoute: boolean | null;
191
+ original: string[];
192
+ replay: string[];
193
+ added: string[];
194
+ removed: string[];
195
+ }
196
+ export interface WorkbenchReplayNodePathDiff {
197
+ original: string[];
198
+ replay: string[];
199
+ addedNodes: string[];
200
+ removedNodes: string[];
201
+ reorderedNodes: string[];
202
+ }
203
+ export interface WorkbenchReplayToolCallFingerprint {
204
+ toolName: string;
205
+ argumentsHash: string | null;
206
+ outputHash: string | null;
207
+ status: string;
208
+ durationMs: number | null;
209
+ sequence: number;
210
+ }
211
+ export interface WorkbenchReplayToolCallChange {
212
+ toolName: string;
213
+ sequence: number;
214
+ originalArgumentsHash: string | null;
215
+ replayArgumentsHash: string | null;
216
+ originalOutputHash: string | null;
217
+ replayOutputHash: string | null;
218
+ originalStatus: string;
219
+ replayStatus: string;
220
+ originalDurationMs: number | null;
221
+ replayDurationMs: number | null;
222
+ }
223
+ export interface WorkbenchReplayToolCallsDiff {
224
+ original: WorkbenchReplayToolCallFingerprint[];
225
+ replay: WorkbenchReplayToolCallFingerprint[];
226
+ addedToolCalls: WorkbenchReplayToolCallFingerprint[];
227
+ missingToolCalls: WorkbenchReplayToolCallFingerprint[];
228
+ changedToolCalls: WorkbenchReplayToolCallChange[];
229
+ }
230
+ export interface WorkbenchReplayJsonDiff {
231
+ same: boolean | null;
232
+ originalHash: string | null;
233
+ replayHash: string | null;
234
+ diffSummary: string | null;
235
+ changedKeys: string[];
236
+ }
161
237
  export interface WorkbenchReplayCompare {
162
238
  replayId: string;
163
239
  sourceRunId: string;
164
240
  replayRunId: string | null;
165
241
  status: string;
166
242
  summary: WorkbenchReplayCompareSummary;
243
+ route: WorkbenchReplayRouteCompare;
244
+ nodePathDiff: WorkbenchReplayNodePathDiff;
245
+ toolCallsDiff: WorkbenchReplayToolCallsDiff;
246
+ finalOutputDiff: WorkbenchReplayJsonDiff;
247
+ stateFinalDiff: WorkbenchReplayJsonDiff;
248
+ }
249
+ export interface WorkbenchCreatePromptTestRequest {
250
+ agentId: string;
251
+ promptVersionId?: string | null;
252
+ inputJson: WorkbenchJson;
253
+ toolsMode: "real" | "mock";
254
+ mockTools?: WorkbenchJson | null;
255
+ }
256
+ export interface WorkbenchCreatePromptAbVariant {
257
+ promptVersionId?: string | null;
258
+ }
259
+ export interface WorkbenchCreatePromptAbRequest {
260
+ agentId: string;
261
+ inputJson: WorkbenchJson;
262
+ variantA: WorkbenchCreatePromptAbVariant;
263
+ variantB: WorkbenchCreatePromptAbVariant;
264
+ toolsMode: "real" | "mock";
265
+ mockTools?: WorkbenchJson | null;
266
+ }
267
+ export interface WorkbenchPromptExperimentListItem {
268
+ experimentId: string;
269
+ kind: string;
270
+ status: string;
271
+ agentId: string;
272
+ bundleId: string;
273
+ toolsMode: string;
274
+ createdBy: string;
275
+ createdAt: string;
276
+ updatedAt: string;
277
+ runCount: number;
278
+ }
279
+ export interface WorkbenchPromptExperimentRun {
280
+ variant: string;
281
+ runId: string;
282
+ threadId: string;
283
+ status: string;
284
+ promptVersionId: string | null;
285
+ startedAt: string;
286
+ finishedAt: string | null;
287
+ latencyMs: number | null;
288
+ }
289
+ export interface WorkbenchPromptExperimentCompare {
290
+ status: string;
291
+ summary: WorkbenchReplayCompareSummary;
292
+ route: WorkbenchReplayRouteCompare;
293
+ nodePathDiff: WorkbenchReplayNodePathDiff;
294
+ toolCallsDiff: WorkbenchReplayToolCallsDiff;
295
+ finalOutputDiff: WorkbenchReplayJsonDiff;
296
+ stateFinalDiff: WorkbenchReplayJsonDiff;
297
+ }
298
+ export interface WorkbenchPromptExperimentDetail {
299
+ experimentId: string;
300
+ kind: string;
301
+ status: string;
302
+ agentId: string;
303
+ bundleId: string;
304
+ toolsMode: string;
305
+ inputJson: WorkbenchJson;
306
+ mockTools: WorkbenchJson | null;
307
+ variantAPromptVersionId: string | null;
308
+ variantBPromptVersionId: string | null;
309
+ createdBy: string;
310
+ createdAt: string;
311
+ updatedAt: string;
312
+ runs: WorkbenchPromptExperimentRun[];
313
+ compare: WorkbenchPromptExperimentCompare | null;
167
314
  }
168
315
  export interface WorkbenchThreadListItem {
169
316
  threadId: string;
@@ -172,21 +319,42 @@ export interface WorkbenchThreadListItem {
172
319
  owner: string | null;
173
320
  currentRoute: string | null;
174
321
  currentAgentId: string | null;
175
- runCount: number;
322
+ activeRunId: string | null;
323
+ waitingOn: string | null;
324
+ isHandoffPending: boolean;
325
+ timeoutAt: string | null;
176
326
  lastEventAt: string;
177
- lastEventType: string;
327
+ lastMessageAt: string | null;
328
+ lastRunStatus: string | null;
329
+ runCount: number;
330
+ messageCount: number;
178
331
  lastMessagePreview: string | null;
179
332
  tags: string[];
180
333
  }
181
334
  export interface WorkbenchThreadEvent {
182
335
  eventId: string;
336
+ threadId: string;
183
337
  eventType: string;
184
- occurredAt: string;
185
- actorType: string | null;
186
- messageRole: string | null;
187
- messageText: string | null;
188
- linkedRunId: string | null;
189
- metadata: WorkbenchJson | null;
338
+ createdAt: string;
339
+ sequence: number;
340
+ actor: string | null;
341
+ source: string | null;
342
+ routeId: string | null;
343
+ runId: string | null;
344
+ nodeId: string | null;
345
+ payload: WorkbenchJson | null;
346
+ }
347
+ export interface WorkbenchThreadCurrentState {
348
+ status: string;
349
+ currentRoute: string | null;
350
+ currentAgentId: string | null;
351
+ activeRunId: string | null;
352
+ lastEventAt: string;
353
+ waitingOn: string | null;
354
+ timeoutAt: string | null;
355
+ handoffTarget: string | null;
356
+ assignee: string | null;
357
+ context: WorkbenchJson | null;
190
358
  }
191
359
  export interface WorkbenchThreadLinkedRun {
192
360
  runId: string;
@@ -209,7 +377,7 @@ export interface WorkbenchThreadDetail {
209
377
  tags: string[];
210
378
  timeline: WorkbenchThreadEvent[];
211
379
  runs: WorkbenchThreadLinkedRun[];
212
- currentState: WorkbenchJson | null;
380
+ currentState: WorkbenchThreadCurrentState | null;
213
381
  }
214
382
  export interface WorkbenchRunsListParams extends Record<string, unknown> {
215
383
  threadId?: string;
@@ -235,6 +403,7 @@ export declare class WorkbenchModule {
235
403
  constructor(client: RawClient);
236
404
  listRuns(params?: WorkbenchRunsListParams): Promise<APIResponse<PagedResult<WorkbenchRunListItem>>>;
237
405
  getRun(runId: string): Promise<APIResponse<WorkbenchRunDetail>>;
406
+ getRunToolCalls(runId: string): Promise<APIResponse<WorkbenchRunToolCall[]>>;
238
407
  getRunProjections(runId: string): Promise<APIResponse<WorkbenchRunProjection[]>>;
239
408
  getRunPrompt(runId: string): Promise<APIResponse<WorkbenchPromptMaterialization>>;
240
409
  getRunCheckpoints(runId: string): Promise<APIResponse<WorkbenchCheckpointListItem[]>>;
@@ -242,8 +411,13 @@ export declare class WorkbenchModule {
242
411
  createReplay(request: WorkbenchCreateReplayRequest): Promise<APIResponse<WorkbenchReplayDetail>>;
243
412
  getReplay(replayId: string): Promise<APIResponse<WorkbenchReplayDetail>>;
244
413
  getReplayCompare(replayId: string): Promise<APIResponse<WorkbenchReplayCompare>>;
414
+ createPromptTest(request: WorkbenchCreatePromptTestRequest): Promise<APIResponse<WorkbenchPromptExperimentDetail>>;
415
+ createPromptAbTest(request: WorkbenchCreatePromptAbRequest): Promise<APIResponse<WorkbenchPromptExperimentDetail>>;
416
+ listPromptExperiments(): Promise<APIResponse<WorkbenchPromptExperimentListItem[]>>;
417
+ getPromptExperiment(experimentId: string): Promise<APIResponse<WorkbenchPromptExperimentDetail>>;
245
418
  listThreads(params?: WorkbenchThreadsListParams): Promise<APIResponse<PagedResult<WorkbenchThreadListItem>>>;
246
419
  getThread(threadId: string): Promise<APIResponse<WorkbenchThreadDetail>>;
420
+ getThreadEvents(threadId: string): Promise<APIResponse<WorkbenchThreadEvent[]>>;
247
421
  getThreadRuns(threadId: string): Promise<APIResponse<WorkbenchThreadLinkedRun[]>>;
248
422
  }
249
423
  //# sourceMappingURL=workbench.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workbench.d.ts","sourceRoot":"","sources":["../../src/modules/workbench.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workbench.d.ts","sourceRoot":"","sources":["../../src/modules/workbench.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE/D,MAAM,MAAM,aAAa,GACnB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAA;CAAE,GAChC,aAAa,EAAE,CAAC;AAEtB,MAAM,WAAW,WAAW,CAAC,CAAC;IAC1B,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,oBAAoB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,aAAa,GAAG,IAAI,CAAC;IAClC,UAAU,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;IAC5B,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,eAAe,EAAE,aAAa,GAAG,IAAI,CAAC;IACtC,WAAW,EAAE,aAAa,GAAG,IAAI,CAAC;IAClC,YAAY,EAAE,aAAa,GAAG,IAAI,CAAC;IACnC,UAAU,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,QAAQ,EAAE,oBAAoB,CAAC;CAClC;AAED,MAAM,WAAW,sBAAsB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,+BAA+B;IAC5C,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,YAAY,EAAE,OAAO,CAAC;IACtB,sBAAsB,EAAE,OAAO,CAAC;CACnC;AAED,MAAM,WAAW,6BAA6B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,8BAA8B;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,eAAe,EAAE,6BAA6B,EAAE,CAAC;IACjD,SAAS,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,gBAAgB,EAAE,+BAA+B,CAAC;CACrD;AAED,MAAM,WAAW,2BAA2B;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,yBAAyB;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACjC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,4BAA4B;IACzC,IAAI,EAAE,QAAQ,GAAG,aAAa,GAAG,QAAQ,CAAC;IAC1C,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,oBAAoB,CAAC;CAC/B;AAED,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,EAAE,QAAQ,GAAG,aAAa,GAAG,QAAQ,CAAC;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,6BAA6B;IAC1C,eAAe,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,2BAA2B;IACxC,SAAS,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,2BAA2B;IACxC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,kCAAkC;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,6BAA6B;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,4BAA4B;IACzC,QAAQ,EAAE,kCAAkC,EAAE,CAAC;IAC/C,MAAM,EAAE,kCAAkC,EAAE,CAAC;IAC7C,cAAc,EAAE,kCAAkC,EAAE,CAAC;IACrD,gBAAgB,EAAE,kCAAkC,EAAE,CAAC;IACvD,gBAAgB,EAAE,6BAA6B,EAAE,CAAC;CACrD;AAED,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,6BAA6B,CAAC;IACvC,KAAK,EAAE,2BAA2B,CAAC;IACnC,YAAY,EAAE,2BAA2B,CAAC;IAC1C,aAAa,EAAE,4BAA4B,CAAC;IAC5C,eAAe,EAAE,uBAAuB,CAAC;IACzC,cAAc,EAAE,uBAAuB,CAAC;CAC3C;AAED,MAAM,WAAW,gCAAgC;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,aAAa,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,8BAA8B;IAC3C,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,8BAA8B;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,aAAa,CAAC;IACzB,QAAQ,EAAE,8BAA8B,CAAC;IACzC,QAAQ,EAAE,8BAA8B,CAAC;IACzC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,iCAAiC;IAC9C,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,4BAA4B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,gCAAgC;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,6BAA6B,CAAC;IACvC,KAAK,EAAE,2BAA2B,CAAC;IACnC,YAAY,EAAE,2BAA2B,CAAC;IAC1C,aAAa,EAAE,4BAA4B,CAAC;IAC5C,eAAe,EAAE,uBAAuB,CAAC;IACzC,cAAc,EAAE,uBAAuB,CAAC;CAC3C;AAED,MAAM,WAAW,+BAA+B;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,aAAa,CAAC;IACzB,SAAS,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,4BAA4B,EAAE,CAAC;IACrC,OAAO,EAAE,gCAAgC,GAAG,IAAI,CAAC;CACpD;AAED,MAAM,WAAW,uBAAuB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,IAAI,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,2BAA2B;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,wBAAwB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,IAAI,EAAE,wBAAwB,EAAE,CAAC;IACjC,YAAY,EAAE,2BAA2B,GAAG,IAAI,CAAC;CACpD;AAED,MAAM,WAAW,uBAAwB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACpE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,0BAA2B,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACvE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,eAAe;IACZ,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,SAAS;IAE/B,QAAQ,CACV,MAAM,CAAC,EAAE,uBAAuB,GACjC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAMpD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;IAM/D,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAM5E,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,CAAC;IAMhF,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,8BAA8B,CAAC,CAAC;IAMjF,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,2BAA2B,EAAE,CAAC,CAAC;IAMrF,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC;IAMpF,YAAY,CACd,OAAO,EAAE,4BAA4B,GACtC,OAAO,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAMxC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAMxE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC;IAMhF,gBAAgB,CAClB,OAAO,EAAE,gCAAgC,GAC1C,OAAO,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC;IAMlD,kBAAkB,CACpB,OAAO,EAAE,8BAA8B,GACxC,OAAO,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC;IAMlD,qBAAqB,IAAI,OAAO,CAAC,WAAW,CAAC,iCAAiC,EAAE,CAAC,CAAC;IAIlF,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC;IAMhG,WAAW,CACb,MAAM,CAAC,EAAE,0BAA0B,GACpC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAMvD,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAMxE,eAAe,CACjB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAMzC,aAAa,CACf,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,CAAC,wBAAwB,EAAE,CAAC,CAAC;CAKtD"}
@@ -13,6 +13,11 @@ export class WorkbenchModule {
13
13
  params: { path: { runId } },
14
14
  });
15
15
  }
16
+ async getRunToolCalls(runId) {
17
+ return this.client.GET("/v1/api/workbench/runs/{runId}/tool-calls", {
18
+ params: { path: { runId } },
19
+ });
20
+ }
16
21
  async getRunProjections(runId) {
17
22
  return this.client.GET("/v1/api/workbench/runs/{runId}/projections", {
18
23
  params: { path: { runId } },
@@ -48,6 +53,24 @@ export class WorkbenchModule {
48
53
  params: { path: { replayId } },
49
54
  });
50
55
  }
56
+ async createPromptTest(request) {
57
+ return this.client.POST("/v1/api/workbench/prompt-tests", {
58
+ body: request,
59
+ });
60
+ }
61
+ async createPromptAbTest(request) {
62
+ return this.client.POST("/v1/api/workbench/prompt-tests/ab", {
63
+ body: request,
64
+ });
65
+ }
66
+ async listPromptExperiments() {
67
+ return this.client.GET("/v1/api/workbench/prompt-tests");
68
+ }
69
+ async getPromptExperiment(experimentId) {
70
+ return this.client.GET("/v1/api/workbench/prompt-tests/{experimentId}", {
71
+ params: { path: { experimentId } },
72
+ });
73
+ }
51
74
  async listThreads(params) {
52
75
  return this.client.GET("/v1/api/workbench/threads", {
53
76
  params: { query: params },
@@ -58,6 +81,11 @@ export class WorkbenchModule {
58
81
  params: { path: { threadId } },
59
82
  });
60
83
  }
84
+ async getThreadEvents(threadId) {
85
+ return this.client.GET("/v1/api/workbench/threads/{threadId}/events", {
86
+ params: { path: { threadId } },
87
+ });
88
+ }
61
89
  async getThreadRuns(threadId) {
62
90
  return this.client.GET("/v1/api/workbench/threads/{threadId}/runs", {
63
91
  params: { path: { threadId } },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-os-sdk/client",
3
- "version": "0.9.33",
3
+ "version": "0.9.34",
4
4
  "description": "Official TypeScript SDK for Agent OS platform",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -37,14 +37,14 @@
37
37
  "access": "public"
38
38
  },
39
39
  "dependencies": {
40
- "openapi-fetch": "^0.13.8"
40
+ "openapi-fetch": "^0.13.0"
41
41
  },
42
42
  "devDependencies": {
43
- "@types/node": "^25.5.0",
44
- "openapi-typescript": "^7.13.0",
45
- "tsx": "^4.21.0",
46
- "typescript": "^5.9.3",
47
- "vitest": "^4.1.0"
43
+ "@types/node": "^25.2.1",
44
+ "openapi-typescript": "^7.4.0",
45
+ "tsx": "^4.19.0",
46
+ "typescript": "^5.5.0",
47
+ "vitest": "^4.0.18"
48
48
  },
49
49
  "files": [
50
50
  "dist",