@runtypelabs/sdk 0.1.1

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.
Files changed (62) hide show
  1. package/README.md +398 -0
  2. package/dist/batch-builder.d.ts +106 -0
  3. package/dist/batch-builder.d.ts.map +1 -0
  4. package/dist/batch-builder.js +124 -0
  5. package/dist/batch-builder.js.map +1 -0
  6. package/dist/batches-namespace.d.ts +132 -0
  7. package/dist/batches-namespace.d.ts.map +1 -0
  8. package/dist/batches-namespace.js +128 -0
  9. package/dist/batches-namespace.js.map +1 -0
  10. package/dist/client.d.ts +121 -0
  11. package/dist/client.d.ts.map +1 -0
  12. package/dist/client.js +485 -0
  13. package/dist/client.js.map +1 -0
  14. package/dist/endpoints.d.ts +560 -0
  15. package/dist/endpoints.d.ts.map +1 -0
  16. package/dist/endpoints.js +725 -0
  17. package/dist/endpoints.js.map +1 -0
  18. package/dist/eval-builder.d.ts +216 -0
  19. package/dist/eval-builder.d.ts.map +1 -0
  20. package/dist/eval-builder.js +225 -0
  21. package/dist/eval-builder.js.map +1 -0
  22. package/dist/evals-namespace.d.ts +205 -0
  23. package/dist/evals-namespace.d.ts.map +1 -0
  24. package/dist/evals-namespace.js +208 -0
  25. package/dist/evals-namespace.js.map +1 -0
  26. package/dist/flow-builder.d.ts +620 -0
  27. package/dist/flow-builder.d.ts.map +1 -0
  28. package/dist/flow-builder.js +565 -0
  29. package/dist/flow-builder.js.map +1 -0
  30. package/dist/flow-result.d.ts +117 -0
  31. package/dist/flow-result.d.ts.map +1 -0
  32. package/dist/flow-result.js +175 -0
  33. package/dist/flow-result.js.map +1 -0
  34. package/dist/flows-namespace.d.ts +430 -0
  35. package/dist/flows-namespace.d.ts.map +1 -0
  36. package/dist/flows-namespace.js +679 -0
  37. package/dist/flows-namespace.js.map +1 -0
  38. package/dist/index.d.ts +23 -0
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +76 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/prompts-namespace.d.ts +236 -0
  43. package/dist/prompts-namespace.d.ts.map +1 -0
  44. package/dist/prompts-namespace.js +222 -0
  45. package/dist/prompts-namespace.js.map +1 -0
  46. package/dist/runtype.d.ts +232 -0
  47. package/dist/runtype.d.ts.map +1 -0
  48. package/dist/runtype.js +367 -0
  49. package/dist/runtype.js.map +1 -0
  50. package/dist/stream-utils.d.ts +58 -0
  51. package/dist/stream-utils.d.ts.map +1 -0
  52. package/dist/stream-utils.js +348 -0
  53. package/dist/stream-utils.js.map +1 -0
  54. package/dist/transform.d.ts +21 -0
  55. package/dist/transform.d.ts.map +1 -0
  56. package/dist/transform.js +170 -0
  57. package/dist/transform.js.map +1 -0
  58. package/dist/types.d.ts +626 -0
  59. package/dist/types.d.ts.map +1 -0
  60. package/dist/types.js +7 -0
  61. package/dist/types.js.map +1 -0
  62. package/package.json +61 -0
@@ -0,0 +1,430 @@
1
+ /**
2
+ * FlowsNamespace - Static namespace for flow operations
3
+ *
4
+ * Provides factory methods for creating flow builders with different modes:
5
+ * - upsert: Create or update a flow by name
6
+ * - virtual: One-off execution without saving
7
+ * - use: Execute an existing flow by ID
8
+ */
9
+ import type { RuntypeClient } from './runtype';
10
+ import type { DispatchRequest, MessageContent } from './types';
11
+ import { FlowResult } from './flow-result';
12
+ import type { StreamCallbacks } from './flow-builder';
13
+ export interface LocalToolsOptions {
14
+ localTools?: Record<string, (args: any) => Promise<any>>;
15
+ }
16
+ export interface FlowConfig {
17
+ name: string;
18
+ description?: string;
19
+ }
20
+ export interface UpsertFlowConfig extends FlowConfig {
21
+ /** Whether to create a version snapshot before updating (default: true) */
22
+ createVersionOnChange?: boolean;
23
+ /** Allow overwriting changes made via dashboard/API (default: false) */
24
+ allowOverwriteExternalChanges?: boolean;
25
+ }
26
+ export interface RecordConfig {
27
+ id?: number | string;
28
+ name?: string;
29
+ type?: string;
30
+ metadata?: Record<string, any>;
31
+ }
32
+ export interface Message {
33
+ role: 'system' | 'user' | 'assistant';
34
+ content: MessageContent;
35
+ }
36
+ export interface PromptStepConfig {
37
+ name: string;
38
+ model: string;
39
+ userPrompt: string;
40
+ systemPrompt?: string;
41
+ previousMessages?: string | Array<{
42
+ role: string;
43
+ content: string;
44
+ }>;
45
+ outputVariable?: string;
46
+ responseFormat?: 'text' | 'json';
47
+ temperature?: number;
48
+ maxTokens?: number;
49
+ reasoning?: boolean;
50
+ streamOutput?: boolean;
51
+ tools?: {
52
+ toolIds?: string[];
53
+ [key: string]: any;
54
+ };
55
+ enabled?: boolean;
56
+ }
57
+ export interface FetchUrlStepConfig {
58
+ name: string;
59
+ url: string;
60
+ method?: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';
61
+ headers?: Record<string, string>;
62
+ body?: string;
63
+ outputVariable?: string;
64
+ fetchMethod?: 'http' | 'firecrawl';
65
+ firecrawl?: {
66
+ formats?: string[];
67
+ [key: string]: any;
68
+ };
69
+ errorHandling?: 'fail' | 'continue' | 'retry';
70
+ streamOutput?: boolean;
71
+ enabled?: boolean;
72
+ }
73
+ export interface TransformDataStepConfig {
74
+ name: string;
75
+ script: string;
76
+ outputVariable?: string;
77
+ streamOutput?: boolean;
78
+ enabled?: boolean;
79
+ }
80
+ export interface SetVariableStepConfig {
81
+ name: string;
82
+ variableName: string;
83
+ value: string | number | boolean | object;
84
+ enabled?: boolean;
85
+ }
86
+ export interface ConditionalStepConfig {
87
+ name: string;
88
+ condition: string;
89
+ trueSteps?: any[];
90
+ falseSteps?: any[];
91
+ enabled?: boolean;
92
+ }
93
+ export interface SearchStepConfig {
94
+ name: string;
95
+ provider: string;
96
+ query: string;
97
+ maxResults?: number;
98
+ outputVariable?: string;
99
+ returnCitations?: boolean;
100
+ errorHandling?: 'fail' | 'continue' | 'retry';
101
+ streamOutput?: boolean;
102
+ enabled?: boolean;
103
+ }
104
+ export interface SendEmailStepConfig {
105
+ name: string;
106
+ to: string;
107
+ from?: string;
108
+ subject: string;
109
+ html: string;
110
+ outputVariable?: string;
111
+ errorHandling?: 'fail' | 'continue' | 'retry';
112
+ streamOutput?: boolean;
113
+ enabled?: boolean;
114
+ }
115
+ export interface SendStreamStepConfig {
116
+ name: string;
117
+ message: string;
118
+ enabled?: boolean;
119
+ }
120
+ export interface RetrieveRecordStepConfig {
121
+ name: string;
122
+ recordType?: string;
123
+ recordName?: string;
124
+ fieldsToInclude?: string[];
125
+ fieldsToExclude?: string[];
126
+ outputVariable?: string;
127
+ streamOutput?: boolean;
128
+ enabled?: boolean;
129
+ }
130
+ export interface UpsertRecordStepConfig {
131
+ name: string;
132
+ recordType: string;
133
+ recordName?: string;
134
+ sourceVariable?: string;
135
+ mergeStrategy?: 'merge' | 'replace';
136
+ outputVariable?: string;
137
+ errorHandling?: 'fail' | 'continue' | 'retry';
138
+ streamOutput?: boolean;
139
+ enabled?: boolean;
140
+ }
141
+ export interface VectorSearchStepConfig {
142
+ name: string;
143
+ query: string;
144
+ recordType?: string;
145
+ embeddingModel?: string;
146
+ limit?: number;
147
+ threshold?: number;
148
+ outputVariable?: string;
149
+ includeDistance?: boolean;
150
+ streamOutput?: boolean;
151
+ enabled?: boolean;
152
+ }
153
+ export interface GenerateEmbeddingStepConfig {
154
+ name: string;
155
+ text: string;
156
+ embeddingModel?: string;
157
+ maxLength?: number;
158
+ outputVariable?: string;
159
+ streamOutput?: boolean;
160
+ enabled?: boolean;
161
+ }
162
+ export interface WaitUntilStepConfig {
163
+ name: string;
164
+ delayMs?: number;
165
+ continueOnTimeout?: boolean;
166
+ poll?: {
167
+ enabled: boolean;
168
+ intervalMs?: number;
169
+ maxAttempts?: number;
170
+ condition?: string;
171
+ };
172
+ outputVariable?: string;
173
+ errorHandling?: 'fail' | 'continue' | 'retry';
174
+ streamOutput?: boolean;
175
+ enabled?: boolean;
176
+ }
177
+ export interface SendEventStepConfig {
178
+ name: string;
179
+ provider: string;
180
+ eventName: string;
181
+ properties?: Record<string, any>;
182
+ outputVariable?: string;
183
+ errorHandling?: 'fail' | 'continue' | 'retry';
184
+ streamOutput?: boolean;
185
+ enabled?: boolean;
186
+ }
187
+ export interface SendTextStepConfig {
188
+ name: string;
189
+ to: string;
190
+ from?: string;
191
+ message: string;
192
+ outputVariable?: string;
193
+ errorHandling?: 'fail' | 'continue' | 'retry';
194
+ streamOutput?: boolean;
195
+ enabled?: boolean;
196
+ }
197
+ export interface FetchGitHubStepConfig {
198
+ name: string;
199
+ repository: string;
200
+ branch?: string;
201
+ path?: string;
202
+ outputVariable?: string;
203
+ streamOutput?: boolean;
204
+ enabled?: boolean;
205
+ }
206
+ interface UpsertOptions {
207
+ createVersionOnChange?: boolean;
208
+ allowOverwriteExternalChanges?: boolean;
209
+ }
210
+ interface DispatchOptions {
211
+ streamResponse?: boolean;
212
+ modelOverride?: string;
213
+ recordMode?: 'existing' | 'create' | 'virtual';
214
+ flowMode?: 'existing' | 'create' | 'virtual' | 'upsert';
215
+ storeResults?: boolean;
216
+ autoAppendMetadata?: boolean;
217
+ debugMode?: boolean;
218
+ createVersion?: boolean;
219
+ versionType?: 'published' | 'draft' | 'test' | 'virtual';
220
+ versionLabel?: string;
221
+ versionNotes?: string;
222
+ flowVersionId?: string;
223
+ upsertOptions?: UpsertOptions;
224
+ }
225
+ export declare class FlowsNamespace {
226
+ private getClient;
227
+ constructor(getClient: () => RuntypeClient);
228
+ /**
229
+ * Create or update a flow by name (upsert mode)
230
+ *
231
+ * The recommended pattern for code-first flow management.
232
+ * Creates the flow if it doesn't exist, updates if steps changed.
233
+ *
234
+ * @example
235
+ * ```typescript
236
+ * const result = await Runtype.flows.upsert({
237
+ * name: 'My Flow',
238
+ * createVersionOnChange: true
239
+ * })
240
+ * .prompt({ name: 'Analyze', model: 'gpt-4o', userPrompt: '...' })
241
+ * .stream()
242
+ * ```
243
+ */
244
+ upsert(config: UpsertFlowConfig): RuntypeFlowBuilder;
245
+ /**
246
+ * Create a virtual flow (one-off, not saved)
247
+ *
248
+ * Use for temporary or ad-hoc flow execution.
249
+ *
250
+ * @example
251
+ * ```typescript
252
+ * const result = await Runtype.flows.virtual({ name: 'Temp Flow' })
253
+ * .prompt({ name: 'Process', model: 'gpt-4o', userPrompt: '...' })
254
+ * .stream()
255
+ * ```
256
+ */
257
+ virtual(config: FlowConfig): RuntypeFlowBuilder;
258
+ /**
259
+ * Use an existing flow by ID
260
+ *
261
+ * @example
262
+ * ```typescript
263
+ * const result = await Runtype.flows.use('flow_123')
264
+ * .withRecord({ name: 'Test', type: 'data' })
265
+ * .stream()
266
+ * ```
267
+ */
268
+ use(flowId: string): RuntypeFlowBuilder;
269
+ /**
270
+ * Quick execution of an existing flow
271
+ *
272
+ * @example
273
+ * ```typescript
274
+ * const result = await Runtype.flows.execute('flow_123', {
275
+ * record: { name: 'Test', type: 'data' },
276
+ * streamResponse: true
277
+ * })
278
+ * ```
279
+ */
280
+ execute(flowId: string, options?: {
281
+ record?: RecordConfig;
282
+ messages?: Message[];
283
+ streamResponse?: boolean;
284
+ }): Promise<FlowResult>;
285
+ }
286
+ /**
287
+ * Fluent builder for constructing and executing flows
288
+ */
289
+ export declare class RuntypeFlowBuilder {
290
+ private getClient;
291
+ private flowConfig;
292
+ private steps;
293
+ private recordConfig;
294
+ private messagesConfig;
295
+ private stepCounter;
296
+ private existingFlowId;
297
+ private mode;
298
+ private upsertOptions;
299
+ private dispatchOptions;
300
+ constructor(getClient: () => RuntypeClient, mode: 'upsert' | 'virtual' | 'existing', config?: FlowConfig | UpsertFlowConfig, flowId?: string);
301
+ /**
302
+ * Set the record configuration
303
+ */
304
+ withRecord(config: RecordConfig): this;
305
+ /**
306
+ * Set conversation messages
307
+ */
308
+ withMessages(messages: Message[]): this;
309
+ /**
310
+ * Set dispatch options
311
+ */
312
+ withOptions(options: Partial<DispatchOptions>): this;
313
+ /**
314
+ * Add a prompt step
315
+ */
316
+ prompt(config: PromptStepConfig): this;
317
+ /**
318
+ * Add a fetch URL step
319
+ */
320
+ fetchUrl(config: FetchUrlStepConfig): this;
321
+ /**
322
+ * Add a transform data step
323
+ */
324
+ transformData(config: TransformDataStepConfig): this;
325
+ /**
326
+ * Add a set variable step
327
+ */
328
+ setVariable(config: SetVariableStepConfig): this;
329
+ /**
330
+ * Add a conditional step
331
+ */
332
+ conditional(config: ConditionalStepConfig): this;
333
+ /**
334
+ * Add a search step
335
+ */
336
+ search(config: SearchStepConfig): this;
337
+ /**
338
+ * Add a send email step
339
+ */
340
+ sendEmail(config: SendEmailStepConfig): this;
341
+ /**
342
+ * Add a send stream step
343
+ */
344
+ sendStream(config: SendStreamStepConfig): this;
345
+ /**
346
+ * Add a retrieve record step
347
+ */
348
+ retrieveRecord(config: RetrieveRecordStepConfig): this;
349
+ /**
350
+ * Add an upsert record step
351
+ */
352
+ upsertRecord(config: UpsertRecordStepConfig): this;
353
+ /**
354
+ * Add a vector search step
355
+ */
356
+ vectorSearch(config: VectorSearchStepConfig): this;
357
+ /**
358
+ * Add a generate embedding step
359
+ */
360
+ generateEmbedding(config: GenerateEmbeddingStepConfig): this;
361
+ /**
362
+ * Add a wait until step
363
+ */
364
+ waitUntil(config: WaitUntilStepConfig): this;
365
+ /**
366
+ * Add a send event step
367
+ */
368
+ sendEvent(config: SendEventStepConfig): this;
369
+ /**
370
+ * Add a send text step
371
+ */
372
+ sendText(config: SendTextStepConfig): this;
373
+ /**
374
+ * Add a fetch GitHub step
375
+ */
376
+ fetchGitHub(config: FetchGitHubStepConfig): this;
377
+ /**
378
+ * Execute the flow with streaming response
379
+ *
380
+ * Returns a FlowResult that streams chunks as they arrive.
381
+ *
382
+ * @example
383
+ * ```typescript
384
+ * const result = await Runtype.flows.upsert({ name: 'My Flow' })
385
+ * .prompt({ ... })
386
+ * .stream()
387
+ *
388
+ * // Process with callbacks
389
+ * await result.stream({
390
+ * onStepChunk: (chunk) => process.stdout.write(chunk),
391
+ * onFlowComplete: () => console.log('Done!'),
392
+ * })
393
+ *
394
+ * // With local tools
395
+ * await result.stream({
396
+ * localTools: { ... }
397
+ * })
398
+ * ```
399
+ */
400
+ stream(callbacks: StreamCallbacks, options: LocalToolsOptions): Promise<FlowResult>;
401
+ stream(callbacks?: StreamCallbacks): Promise<FlowResult>;
402
+ stream(options: LocalToolsOptions): Promise<FlowResult>;
403
+ /**
404
+ * Execute the flow and wait for complete result (no streaming)
405
+ *
406
+ * Returns a FlowResult after all steps have completed.
407
+ *
408
+ * @example
409
+ * ```typescript
410
+ * const result = await Runtype.flows.use('flow_123')
411
+ * .withRecord({ ... })
412
+ * .result()
413
+ *
414
+ * const analysis = await result.getResult('Analyze')
415
+ * const allResults = await result.getAllResults()
416
+ * ```
417
+ */
418
+ result(options?: LocalToolsOptions): Promise<FlowResult>;
419
+ /**
420
+ * Execute the flow with local tools (automatic pause/resume loop)
421
+ *
422
+ * @param localTools - Map of tool names to async functions that execute the tool logic
423
+ * @returns The final result of the flow execution
424
+ */
425
+ runWithLocalTools(localTools: Record<string, (args: any) => Promise<any>>, callbacks?: StreamCallbacks): Promise<FlowResult>;
426
+ build(): DispatchRequest;
427
+ private addStep;
428
+ }
429
+ export {};
430
+ //# sourceMappingURL=flows-namespace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flows-namespace.d.ts","sourceRoot":"","sources":["../src/flows-namespace.ts"],"names":[],"mappings":"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"}