robotrock 0.7.0 → 0.8.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.
@@ -1,24 +1,165 @@
1
+ // src/schemas/index.ts
2
+ import { z } from "zod";
1
3
  import {
2
- DEFAULT_TASK_PRIORITY,
3
- DEFAULT_THREAD_UPDATE_STATUS,
4
- LOWEST_TASK_PRIORITY,
5
- TASK_PRIORITY_RANK,
6
- assignToSchema,
7
- createTaskBodySchema,
8
- taskContextSchema,
9
- taskPriorities,
10
- taskPrioritySchema,
11
- threadUpdateBodySchema,
12
- threadUpdateInputSchema,
13
- threadUpdateMessageSchema,
14
- threadUpdateStatusSchema,
15
- threadUpdateStatuses
16
- } from "../chunk-ZHASQUX6.js";
4
+ isPublicHttpUrl,
5
+ PUBLIC_HTTP_URL_ERROR
6
+ } from "@robotrock/core/utils";
7
+ import { validateContextPublicUrls } from "@robotrock/core/schemas";
8
+ var safeUrlSchema = z.string().refine((url) => isPublicHttpUrl(url), {
9
+ message: PUBLIC_HTTP_URL_ERROR
10
+ });
11
+ var jsonSchema7Schema = z.custom(
12
+ (val) => typeof val === "object" && val !== null,
13
+ { message: "Must be a valid JSON Schema object" }
14
+ );
15
+ var uiSchemaSchema = z.custom((val) => typeof val === "object" && val !== null, {
16
+ message: "Must be a valid UiSchema object"
17
+ });
18
+ var webhookHandlerSchema = z.object({
19
+ type: z.literal("webhook"),
20
+ url: safeUrlSchema,
21
+ headers: z.record(z.string(), z.string())
22
+ });
23
+ var triggerHandlerSchema = webhookHandlerSchema.extend({
24
+ type: z.literal("trigger"),
25
+ tokenId: z.string().min(1)
26
+ });
27
+ var handlerSchema = z.discriminatedUnion("type", [webhookHandlerSchema, triggerHandlerSchema]);
28
+ var taskActionSchema = z.object({
29
+ id: z.string().min(1),
30
+ title: z.string().min(1),
31
+ description: z.string().optional(),
32
+ schema: jsonSchema7Schema.optional(),
33
+ ui: uiSchemaSchema.optional(),
34
+ data: z.record(z.string(), z.unknown()).optional(),
35
+ handlers: z.array(handlerSchema).min(1).optional()
36
+ });
37
+ var uiFieldSchemaSchema = z.object({
38
+ "ui:widget": z.string().optional(),
39
+ "ui:title": z.string().optional(),
40
+ "ui:description": z.string().optional(),
41
+ "ui:options": z.record(z.string(), z.unknown()).optional(),
42
+ items: z.lazy(() => z.record(z.string(), uiFieldSchemaSchema)).optional()
43
+ }).passthrough();
44
+ var contextUiSchema = z.record(z.string(), uiFieldSchemaSchema).optional();
45
+ var contextDataSchema = z.object({
46
+ data: z.record(z.string(), z.unknown()),
47
+ ui: contextUiSchema
48
+ }).optional();
49
+ var taskContextObjectSchema = z.object({
50
+ app: z.string().min(1).optional(),
51
+ type: z.string().min(1),
52
+ name: z.string().min(1),
53
+ description: z.string().optional(),
54
+ validUntil: z.string().optional(),
55
+ context: contextDataSchema,
56
+ version: z.literal(2).optional(),
57
+ actions: z.array(taskActionSchema).min(1, "At least one action is required")
58
+ });
59
+ function refineContextPublicUrls(data, ctx) {
60
+ const error = validateContextPublicUrls(data.context);
61
+ if (error) {
62
+ ctx.addIssue({
63
+ code: z.ZodIssueCode.custom,
64
+ message: error,
65
+ path: ["context"]
66
+ });
67
+ }
68
+ }
69
+ var taskContextSchema = taskContextObjectSchema.superRefine(
70
+ refineContextPublicUrls
71
+ );
72
+ var assignToSchema = z.object({
73
+ users: z.array(z.string().email()).optional(),
74
+ groups: z.array(z.string().min(1)).optional()
75
+ }).refine(
76
+ (data) => {
77
+ const groups = data.groups ?? [];
78
+ if (groups.includes("all") && groups.length > 1) {
79
+ return false;
80
+ }
81
+ return true;
82
+ },
83
+ { message: 'Cannot combine "all" with other group slugs' }
84
+ );
85
+ var threadUpdateMessageSchema = z.string().min(1).max(500);
86
+ var threadUpdateStatuses = [
87
+ "info",
88
+ "queued",
89
+ "running",
90
+ "waiting",
91
+ "succeeded",
92
+ "failed",
93
+ "cancelled"
94
+ ];
95
+ var threadUpdateStatusSchema = z.enum(threadUpdateStatuses);
96
+ var DEFAULT_THREAD_UPDATE_STATUS = "info";
97
+ var threadUpdateInputSchema = z.object({
98
+ message: threadUpdateMessageSchema,
99
+ status: threadUpdateStatusSchema.optional()
100
+ });
101
+ var taskPriorities = ["low", "normal", "high", "urgent"];
102
+ var taskPrioritySchema = z.enum(taskPriorities);
103
+ var DEFAULT_TASK_PRIORITY = "normal";
104
+ var LOWEST_TASK_PRIORITY = "low";
105
+ var TASK_PRIORITY_RANK = {
106
+ low: 1,
107
+ normal: 2,
108
+ high: 3,
109
+ urgent: 4
110
+ };
111
+ var nonNegativeInt = z.number().int().nonnegative();
112
+ var agentCostTokensSchema = z.object({
113
+ input: nonNegativeInt.optional(),
114
+ output: nonNegativeInt.optional(),
115
+ total: nonNegativeInt.optional()
116
+ });
117
+ var agentCostSchema = z.object({
118
+ tokens: agentCostTokensSchema.optional(),
119
+ eur: z.number().nonnegative().optional(),
120
+ usd: z.number().nonnegative().optional()
121
+ });
122
+ var AGENT_INFO_MAX_KEYS = 32;
123
+ var agentTelemetrySchema = z.object({
124
+ version: z.string().min(1).optional(),
125
+ toolCallCount: nonNegativeInt.optional(),
126
+ cost: agentCostSchema.optional(),
127
+ info: z.record(z.string(), z.unknown()).optional()
128
+ }).refine(
129
+ (data) => {
130
+ const keys = data.info ? Object.keys(data.info) : [];
131
+ return keys.length <= AGENT_INFO_MAX_KEYS;
132
+ },
133
+ { message: `agent.info may contain at most ${AGENT_INFO_MAX_KEYS} keys` }
134
+ );
135
+ var createTaskBodySchema = taskContextObjectSchema.extend({
136
+ assignTo: assignToSchema.optional(),
137
+ /**
138
+ * Groups related tasks together. When omitted, the server generates one and
139
+ * returns it so the caller can reuse it on later tasks in the same thread.
140
+ */
141
+ threadId: z.string().min(1).optional(),
142
+ /**
143
+ * Optional thread priority. When set, applies to the whole thread and
144
+ * overwrites any previous priority. Omit on later tasks to leave unchanged.
145
+ */
146
+ priority: taskPrioritySchema.optional(),
147
+ /**
148
+ * Optional initial status update logged against the task's thread. Shows in
149
+ * the inbox status bar and the thread update log.
150
+ */
151
+ update: threadUpdateInputSchema.optional(),
152
+ agent: agentTelemetrySchema.optional()
153
+ }).superRefine(refineContextPublicUrls);
154
+ var threadUpdateBodySchema = threadUpdateInputSchema;
17
155
  export {
18
156
  DEFAULT_TASK_PRIORITY,
19
157
  DEFAULT_THREAD_UPDATE_STATUS,
20
158
  LOWEST_TASK_PRIORITY,
21
159
  TASK_PRIORITY_RANK,
160
+ agentCostSchema,
161
+ agentCostTokensSchema,
162
+ agentTelemetrySchema,
22
163
  assignToSchema,
23
164
  createTaskBodySchema,
24
165
  taskContextSchema,
@@ -1 +1 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
1
+ {"version":3,"sources":["../../src/schemas/index.ts"],"sourcesContent":["import { z } from \"zod\";\nimport {\n isPublicHttpUrl,\n PUBLIC_HTTP_URL_ERROR,\n} from \"@robotrock/core/utils\";\nimport { validateContextPublicUrls } from \"@robotrock/core/schemas\";\n\nexport interface JSONSchema7 {\n $id?: string;\n $ref?: string;\n $schema?: string;\n $comment?: string;\n type?: JSONSchema7TypeName | JSONSchema7TypeName[];\n enum?: unknown[];\n const?: unknown;\n multipleOf?: number;\n maximum?: number;\n exclusiveMaximum?: number;\n minimum?: number;\n exclusiveMinimum?: number;\n maxLength?: number;\n minLength?: number;\n pattern?: string;\n format?: string;\n items?: JSONSchema7 | JSONSchema7[];\n additionalItems?: JSONSchema7 | boolean;\n maxItems?: number;\n minItems?: number;\n uniqueItems?: boolean;\n contains?: JSONSchema7;\n maxProperties?: number;\n minProperties?: number;\n required?: string[];\n properties?: Record<string, JSONSchema7>;\n patternProperties?: Record<string, JSONSchema7>;\n additionalProperties?: JSONSchema7 | boolean;\n dependencies?: Record<string, JSONSchema7 | string[]>;\n propertyNames?: JSONSchema7;\n if?: JSONSchema7;\n then?: JSONSchema7;\n else?: JSONSchema7;\n allOf?: JSONSchema7[];\n anyOf?: JSONSchema7[];\n oneOf?: JSONSchema7[];\n not?: JSONSchema7;\n title?: string;\n description?: string;\n default?: unknown;\n readOnly?: boolean;\n writeOnly?: boolean;\n examples?: unknown[];\n}\n\nexport type JSONSchema7TypeName =\n | \"string\"\n | \"number\"\n | \"integer\"\n | \"boolean\"\n | \"object\"\n | \"array\"\n | \"null\";\n\nexport type ExtendedJSONSchema7 = JSONSchema7 & {\n enumNames?: string[];\n [key: string]: unknown;\n};\n\nexport type UiSchema = {\n \"ui:widget\"?: string;\n \"ui:title\"?: string;\n \"ui:description\"?: string;\n \"ui:placeholder\"?: string;\n \"ui:options\"?: Record<string, unknown>;\n [key: string]: unknown;\n};\n\nconst safeUrlSchema = z.string().refine((url) => isPublicHttpUrl(url), {\n message: PUBLIC_HTTP_URL_ERROR,\n});\n\nconst jsonSchema7Schema = z.custom<ExtendedJSONSchema7>(\n (val) => typeof val === \"object\" && val !== null,\n { message: \"Must be a valid JSON Schema object\" }\n);\n\nconst uiSchemaSchema = z.custom<UiSchema>((val) => typeof val === \"object\" && val !== null, {\n message: \"Must be a valid UiSchema object\",\n});\n\nconst webhookHandlerSchema = z.object({\n type: z.literal(\"webhook\"),\n url: safeUrlSchema,\n headers: z.record(z.string(), z.string()),\n});\n\nconst triggerHandlerSchema = webhookHandlerSchema.extend({\n type: z.literal(\"trigger\"),\n tokenId: z.string().min(1),\n});\n\nconst handlerSchema = z.discriminatedUnion(\"type\", [webhookHandlerSchema, triggerHandlerSchema]);\n\nconst taskActionSchema = z.object({\n id: z.string().min(1),\n title: z.string().min(1),\n description: z.string().optional(),\n schema: jsonSchema7Schema.optional(),\n ui: uiSchemaSchema.optional(),\n data: z.record(z.string(), z.unknown()).optional(),\n handlers: z.array(handlerSchema).min(1).optional(),\n});\n\nconst uiFieldSchemaSchema: z.ZodType<Record<string, unknown>> = z\n .object({\n \"ui:widget\": z.string().optional(),\n \"ui:title\": z.string().optional(),\n \"ui:description\": z.string().optional(),\n \"ui:options\": z.record(z.string(), z.unknown()).optional(),\n items: z.lazy(() => z.record(z.string(), uiFieldSchemaSchema)).optional(),\n })\n .passthrough();\n\nconst contextUiSchema = z.record(z.string(), uiFieldSchemaSchema).optional();\n\nconst contextDataSchema = z\n .object({\n data: z.record(z.string(), z.unknown()),\n ui: contextUiSchema,\n })\n .optional();\n\nconst taskContextObjectSchema = z.object({\n app: z.string().min(1).optional(),\n type: z.string().min(1),\n name: z.string().min(1),\n description: z.string().optional(),\n validUntil: z.string().optional(),\n context: contextDataSchema,\n version: z.literal(2).optional(),\n actions: z.array(taskActionSchema).min(1, \"At least one action is required\"),\n});\n\nfunction refineContextPublicUrls<T extends { context?: z.infer<typeof contextDataSchema> }>(\n data: T,\n ctx: z.RefinementCtx\n) {\n const error = validateContextPublicUrls(data.context);\n if (error) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: error,\n path: [\"context\"],\n });\n }\n}\n\nexport const taskContextSchema = taskContextObjectSchema.superRefine(\n refineContextPublicUrls\n);\n\n/**\n * Assignment targets at task create (not stored in task context JSON).\n * Unknown user emails are auto-provisioned as assignee memberships (count toward seat limits).\n */\nexport const assignToSchema = z\n .object({\n users: z.array(z.string().email()).optional(),\n groups: z.array(z.string().min(1)).optional(),\n })\n .refine(\n (data) => {\n const groups = data.groups ?? [];\n if (groups.includes(\"all\") && groups.length > 1) {\n return false;\n }\n return true;\n },\n { message: 'Cannot combine \"all\" with other group slugs' }\n );\n\n/** A short thread-scoped status update message (1-2 sentences). */\nexport const threadUpdateMessageSchema = z.string().min(1).max(500);\n\n/**\n * Lifecycle status carried by a thread update. Drives the icon and color shown\n * in the inbox status bar. Defaults to `info` when omitted.\n */\nexport const threadUpdateStatuses = [\n \"info\",\n \"queued\",\n \"running\",\n \"waiting\",\n \"succeeded\",\n \"failed\",\n \"cancelled\",\n] as const;\n\nexport const threadUpdateStatusSchema = z.enum(threadUpdateStatuses);\n\n/** The default status applied when an update omits one. */\nexport const DEFAULT_THREAD_UPDATE_STATUS: ThreadUpdateStatus = \"info\";\n\n/** Shared shape for a thread update (standalone and at task creation). */\nexport const threadUpdateInputSchema = z.object({\n message: threadUpdateMessageSchema,\n status: threadUpdateStatusSchema.optional(),\n});\n\n/** Thread priority levels for inbox ordering and display. */\nexport const taskPriorities = [\"low\", \"normal\", \"high\", \"urgent\"] as const;\n\nexport const taskPrioritySchema = z.enum(taskPriorities);\n\nexport type TaskPriority = (typeof taskPriorities)[number];\n\nexport const DEFAULT_TASK_PRIORITY: TaskPriority = \"normal\";\n\nexport const LOWEST_TASK_PRIORITY: TaskPriority = \"low\";\n\nexport const TASK_PRIORITY_RANK: Record<TaskPriority, number> = {\n low: 1,\n normal: 2,\n high: 3,\n urgent: 4,\n};\n\nconst nonNegativeInt = z.number().int().nonnegative();\n\nexport const agentCostTokensSchema = z.object({\n input: nonNegativeInt.optional(),\n output: nonNegativeInt.optional(),\n total: nonNegativeInt.optional(),\n});\n\nexport const agentCostSchema = z.object({\n tokens: agentCostTokensSchema.optional(),\n eur: z.number().nonnegative().optional(),\n usd: z.number().nonnegative().optional(),\n});\n\nconst AGENT_INFO_MAX_KEYS = 32;\n\nexport const agentTelemetrySchema = z\n .object({\n version: z.string().min(1).optional(),\n toolCallCount: nonNegativeInt.optional(),\n cost: agentCostSchema.optional(),\n info: z.record(z.string(), z.unknown()).optional(),\n })\n .refine(\n (data) => {\n const keys = data.info ? Object.keys(data.info) : [];\n return keys.length <= AGENT_INFO_MAX_KEYS;\n },\n { message: `agent.info may contain at most ${AGENT_INFO_MAX_KEYS} keys` }\n );\n\nexport const createTaskBodySchema = taskContextObjectSchema\n .extend({\n assignTo: assignToSchema.optional(),\n /**\n * Groups related tasks together. When omitted, the server generates one and\n * returns it so the caller can reuse it on later tasks in the same thread.\n */\n threadId: z.string().min(1).optional(),\n /**\n * Optional thread priority. When set, applies to the whole thread and\n * overwrites any previous priority. Omit on later tasks to leave unchanged.\n */\n priority: taskPrioritySchema.optional(),\n /**\n * Optional initial status update logged against the task's thread. Shows in\n * the inbox status bar and the thread update log.\n */\n update: threadUpdateInputSchema.optional(),\n agent: agentTelemetrySchema.optional(),\n })\n .superRefine(refineContextPublicUrls);\n\n/** POST /v1/threads/:threadId/updates body: a standalone thread update. */\nexport const threadUpdateBodySchema = threadUpdateInputSchema;\n\n/** Where a thread update originated. */\nexport type ThreadUpdateSource = \"api\" | \"task_create\" | \"dashboard\";\n\n/** Lifecycle status carried by a thread update. */\nexport type ThreadUpdateStatus = (typeof threadUpdateStatuses)[number];\n\n/** A logged thread update as returned by the API. */\nexport interface ThreadUpdate {\n id: string;\n threadId: string;\n message: string;\n status: ThreadUpdateStatus;\n source: ThreadUpdateSource;\n createdAt: number;\n}\n\nexport type AssignToInput = z.infer<typeof assignToSchema>;\nexport type CreateTaskBodyInput = z.input<typeof createTaskBodySchema>;\nexport type CreateTaskBody = z.output<typeof createTaskBodySchema>;\nexport type ThreadUpdateBodyInput = z.input<typeof threadUpdateBodySchema>;\nexport type ThreadUpdateBody = z.output<typeof threadUpdateBodySchema>;\nexport type ThreadUpdateInput = z.input<typeof threadUpdateInputSchema>;\nexport type TaskContextInput = z.input<typeof taskContextSchema>;\nexport type TaskContextOutput = z.output<typeof taskContextSchema>;\nexport type TaskContext = TaskContextOutput;\nexport type TaskAction = z.infer<typeof taskActionSchema>;\nexport type WebhookHandler = z.infer<typeof webhookHandlerSchema>;\nexport type TriggerHandler = z.infer<typeof triggerHandlerSchema>;\nexport type Handler = z.infer<typeof handlerSchema>;\nexport type AgentCostTokens = z.infer<typeof agentCostTokensSchema>;\nexport type AgentCost = z.infer<typeof agentCostSchema>;\nexport type AgentTelemetry = z.infer<typeof agentTelemetrySchema>;\nexport type AgentTelemetryInput = z.input<typeof agentTelemetrySchema>;\n\ntype InferObjectProperties<\n Props,\n Req extends PropertyKey,\n> = Props extends Record<string, unknown>\n ? ({\n [K in keyof Props as K extends Req ? K : never]-?: InferJsonSchema7<Props[K]>;\n } & {\n [K in keyof Props as K extends Req ? never : K]?: InferJsonSchema7<Props[K]>;\n } extends infer O\n ? { [K in keyof O]: O[K] }\n : never)\n : Record<string, unknown>;\n\ntype RequiredKeys<S> =\n S extends { readonly required: readonly string[] } ? S[\"required\"][number] : never;\n\nexport type InferJsonSchema7<S> = [S] extends [undefined]\n ? Record<string, never>\n : S extends { readonly const: infer C }\n ? C\n : S extends {\n readonly enum: readonly (infer E)[];\n }\n ? E\n : S extends {\n readonly type: \"object\";\n readonly properties?: infer Props;\n }\n ? InferObjectProperties<Props, RequiredKeys<S>>\n : S extends {\n readonly type: \"object\";\n readonly properties?: undefined;\n }\n ? Record<string, unknown>\n : S extends {\n readonly type: \"array\";\n readonly items?: infer Items;\n }\n ? Items extends readonly unknown[]\n ? InferJsonSchema7<Items[number]>[]\n : Items extends object\n ? InferJsonSchema7<Items>[]\n : unknown[]\n : S extends { readonly type: \"string\" }\n ? string\n : S extends { readonly type: \"number\" } | { readonly type: \"integer\" }\n ? number\n : S extends { readonly type: \"boolean\" }\n ? boolean\n : unknown;\n\nexport type TaskStatus = \"pending\" | \"open\" | \"handled\" | \"expired\";\n\nexport interface TaskResponse {\n success: boolean;\n task: {\n taskId: string;\n threadId: string;\n status: \"pending\" | \"open\";\n context: TaskContext;\n validUntil: string;\n submittedAt: string;\n };\n message: string;\n}\n\nexport interface ThreadUpdateResponse {\n success: boolean;\n update: ThreadUpdate;\n message: string;\n}\n\nexport interface Task {\n id: string;\n threadId?: string;\n createdAt: Date;\n status: TaskStatus;\n context: TaskContext;\n validUntil: number;\n handledAt?: number;\n handled?: {\n action: {\n id: string;\n data: unknown;\n };\n handledBy?: string;\n userId?: string;\n token?: string;\n };\n}\n\nexport type InferActionData<T extends { schema?: unknown }> = [\n Exclude<T[\"schema\"], undefined>,\n] extends [\n never,\n]\n ? Record<string, never>\n : Exclude<T[\"schema\"], undefined> extends infer S\n ? InferJsonSchema7<S>\n : Record<string, never>;\n\nexport type TupleElementIndices<T extends readonly unknown[]> = T extends readonly [\n unknown,\n ...unknown[],\n]\n ? Exclude<keyof T, keyof unknown[]>\n : number;\n\nexport interface TaskResult<T = Record<string, unknown>> {\n actionId: string;\n data: T;\n handledBy?: string;\n handledAt: Date;\n}\n\nexport interface ApprovalResult<T = Record<string, unknown>> extends TaskResult<T> {\n taskId: string;\n}\n\nexport type DiscriminatedApprovalResult<\n TActions extends readonly { id: string; schema?: unknown }[],\n> = {\n [I in TupleElementIndices<TActions>]: TActions[I] extends { id: string; schema?: unknown }\n ? Omit<ApprovalResult<InferActionData<TActions[I]>>, \"actionId\" | \"data\"> & {\n actionId: TActions[I][\"id\"];\n data: InferActionData<TActions[I]>;\n }\n : never\n}[TupleElementIndices<TActions>];\n"],"mappings":"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","names":[]}
@@ -1,7 +1,7 @@
1
- import { Tool, ToolApprovalResponse } from 'ai';
2
1
  import { z } from 'zod';
3
- import { b as RobotRock, a as SendToHumanInput, S as SendToHumanActionInput, l as SendUpdateInput } from './client-CLcHdjOz.js';
2
+ import { R as RobotRock, a as SendToHumanInput, S as SendToHumanActionInput, j as SendUpdateInput } from './client-D-XEBOWd.js';
4
3
  import { DiscriminatedApprovalResult, ThreadUpdate } from './schemas/index.js';
4
+ import { ToolApprovalResponse } from 'ai';
5
5
 
6
6
  declare const APPROVE_BY_HUMAN_ACTIONS$1: readonly [{
7
7
  readonly id: "approve";
@@ -32,6 +32,10 @@ type RobotRockAiWorkflowContext = {
32
32
  app?: string;
33
33
  };
34
34
  type RobotRockAiContext = RobotRockAiPollingContext | RobotRockAiTriggerContext | RobotRockAiWorkflowContext;
35
+ /** Shorthand for `{ mode: "trigger", app }`. */
36
+ declare function createRobotRockAiTriggerContext(options?: Omit<RobotRockAiTriggerContext, "mode">): RobotRockAiContext;
37
+ /** Shorthand for `{ mode: "workflow", app }`. */
38
+ declare function createRobotRockAiWorkflowContext(options?: Omit<RobotRockAiWorkflowContext, "mode">): RobotRockAiContext;
35
39
  declare function normalizeRobotRockAiContext(clientOrContext: RobotRock | RobotRockAiContext): RobotRockAiContext;
36
40
  declare function sendToHumanForAi<A extends readonly SendToHumanActionInput[] = readonly SendToHumanActionInput[]>(context: RobotRockAiContext, payload: SendToHumanInput<A>): Promise<DiscriminatedApprovalResult<A>>;
37
41
  /**
@@ -107,17 +111,8 @@ declare const approveByHumanInputSchema: z.ZodObject<{
107
111
  name: z.ZodString;
108
112
  description: z.ZodString;
109
113
  contextSummary: z.ZodOptional<z.ZodString>;
110
- }, "strip", z.ZodTypeAny, {
111
- description: string;
112
- name: string;
113
- type?: string | undefined;
114
- contextSummary?: string | undefined;
115
- }, {
116
- description: string;
117
- name: string;
118
- type?: string | undefined;
119
- contextSummary?: string | undefined;
120
- }>;
114
+ }, z.core.$strip>;
115
+ type ApproveByHumanToolInput = z.infer<typeof approveByHumanInputSchema>;
121
116
  type ApproveByHumanToolOptions = {
122
117
  defaultType?: string;
123
118
  description?: string;
@@ -126,14 +121,11 @@ type ApproveByHumanToolOptions = {
126
121
  type ApproveByHumanToolDurableOptions = ApproveByHumanToolOptions & RobotRockAiContext & {
127
122
  mode: "trigger" | "workflow";
128
123
  };
129
- /**
130
- * AI SDK tool with fixed approve/decline actions; blocks until a human decides.
131
- *
132
- * - `approveByHumanTool(robotrock)` polling via `client.sendToHuman()` (default).
133
- * - `approveByHumanTool({ mode: "trigger", app?: "my-agent" })` — durable wait via Trigger.dev.
134
- * - `approveByHumanTool({ mode: "workflow", app?: "my-agent" })` — durable wait via Vercel Workflow.
135
- */
136
- declare function approveByHumanTool(clientOrContext: RobotRock | ApproveByHumanToolDurableOptions, maybeOptions?: ApproveByHumanToolOptions): Tool<z.infer<typeof approveByHumanInputSchema>, HumanToolResult>;
124
+ type ApproveByHumanToolDefinition = {
125
+ description: string;
126
+ inputSchema: typeof approveByHumanInputSchema;
127
+ execute: (input: ApproveByHumanToolInput) => Promise<HumanToolResult>;
128
+ };
137
129
 
138
130
  declare const sendToHumanToolInputSchema: z.ZodObject<{
139
131
  type: z.ZodString;
@@ -142,57 +134,14 @@ declare const sendToHumanToolInputSchema: z.ZodObject<{
142
134
  context: z.ZodOptional<z.ZodObject<{
143
135
  data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
144
136
  ui: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
145
- }, "strip", z.ZodTypeAny, {
146
- data?: Record<string, unknown> | undefined;
147
- ui?: Record<string, unknown> | undefined;
148
- }, {
149
- data?: Record<string, unknown> | undefined;
150
- ui?: Record<string, unknown> | undefined;
151
- }>>;
137
+ }, z.core.$strip>>;
152
138
  validUntil: z.ZodOptional<z.ZodString>;
153
- assignTo: z.ZodOptional<z.ZodEffects<z.ZodObject<{
154
- users: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
155
- groups: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
156
- }, "strip", z.ZodTypeAny, {
157
- users?: string[] | undefined;
158
- groups?: string[] | undefined;
159
- }, {
160
- users?: string[] | undefined;
161
- groups?: string[] | undefined;
162
- }>, {
163
- users?: string[] | undefined;
164
- groups?: string[] | undefined;
165
- }, {
166
- users?: string[] | undefined;
167
- groups?: string[] | undefined;
168
- }>>;
169
- }, "strip", z.ZodTypeAny, {
170
- type: string;
171
- name: string;
172
- description?: string | undefined;
173
- validUntil?: string | undefined;
174
- context?: {
175
- data?: Record<string, unknown> | undefined;
176
- ui?: Record<string, unknown> | undefined;
177
- } | undefined;
178
- assignTo?: {
179
- users?: string[] | undefined;
180
- groups?: string[] | undefined;
181
- } | undefined;
182
- }, {
183
- type: string;
184
- name: string;
185
- description?: string | undefined;
186
- validUntil?: string | undefined;
187
- context?: {
188
- data?: Record<string, unknown> | undefined;
189
- ui?: Record<string, unknown> | undefined;
190
- } | undefined;
191
- assignTo?: {
192
- users?: string[] | undefined;
193
- groups?: string[] | undefined;
194
- } | undefined;
195
- }>;
139
+ assignTo: z.ZodOptional<z.ZodObject<{
140
+ users: z.ZodOptional<z.ZodArray<z.ZodString>>;
141
+ groups: z.ZodOptional<z.ZodArray<z.ZodString>>;
142
+ }, z.core.$strip>>;
143
+ }, z.core.$strip>;
144
+ type SendToHumanToolInput = z.infer<typeof sendToHumanToolInputSchema>;
196
145
  type CreateSendToHumanToolOptions<A extends readonly SendToHumanActionInput[] = readonly SendToHumanActionInput[]> = {
197
146
  actions: A;
198
147
  defaultType?: string;
@@ -207,14 +156,11 @@ type CreateSendToHumanToolOptions<A extends readonly SendToHumanActionInput[] =
207
156
  type CreateSendToHumanToolDurableOptions<A extends readonly SendToHumanActionInput[] = readonly SendToHumanActionInput[]> = CreateSendToHumanToolOptions<A> & RobotRockAiContext & {
208
157
  mode: "trigger" | "workflow";
209
158
  };
210
- /**
211
- * AI SDK tool that blocks until a human handles a RobotRock task with developer-defined actions.
212
- *
213
- * - `createSendToHumanTool(robotrock, options)` polling (default).
214
- * - `createSendToHumanTool({ mode: "trigger", actions: [...], app?: "my-agent" })` — Trigger.dev wait tokens.
215
- * - `createSendToHumanTool({ mode: "workflow", actions: [...], app?: "my-agent" })` — Vercel Workflow webhooks.
216
- */
217
- declare function createSendToHumanTool<A extends readonly SendToHumanActionInput[] = readonly SendToHumanActionInput[]>(clientOrOptions: RobotRock | CreateSendToHumanToolDurableOptions<A>, maybeOptions?: CreateSendToHumanToolOptions<A>): Tool<z.infer<typeof sendToHumanToolInputSchema>, HumanToolResult>;
159
+ type SendToHumanToolDefinition = {
160
+ description: string;
161
+ inputSchema: typeof sendToHumanToolInputSchema;
162
+ execute: (input: SendToHumanToolInput) => Promise<HumanToolResult>;
163
+ };
218
164
 
219
165
  /**
220
166
  * Result returned to the model by {@link createSendUpdateTool}.
@@ -237,16 +183,17 @@ type SendUpdateToolResult = {
237
183
  declare const sendUpdateToolInputSchema: z.ZodObject<{
238
184
  threadId: z.ZodOptional<z.ZodString>;
239
185
  message: z.ZodString;
240
- status: z.ZodOptional<z.ZodEnum<["info", "queued", "running", "waiting", "succeeded", "failed", "cancelled"]>>;
241
- }, "strip", z.ZodTypeAny, {
242
- message: string;
243
- status?: "info" | "queued" | "running" | "waiting" | "succeeded" | "failed" | "cancelled" | undefined;
244
- threadId?: string | undefined;
245
- }, {
246
- message: string;
247
- status?: "info" | "queued" | "running" | "waiting" | "succeeded" | "failed" | "cancelled" | undefined;
248
- threadId?: string | undefined;
249
- }>;
186
+ status: z.ZodOptional<z.ZodEnum<{
187
+ info: "info";
188
+ queued: "queued";
189
+ running: "running";
190
+ waiting: "waiting";
191
+ succeeded: "succeeded";
192
+ failed: "failed";
193
+ cancelled: "cancelled";
194
+ }>>;
195
+ }, z.core.$strip>;
196
+ type SendUpdateToolInput = z.infer<typeof sendUpdateToolInputSchema>;
250
197
  type CreateSendUpdateToolOptions = {
251
198
  /**
252
199
  * Session thread to post updates to when the model does not supply `threadId`.
@@ -259,60 +206,11 @@ type CreateSendUpdateToolOptions = {
259
206
  type CreateSendUpdateToolDurableOptions = CreateSendUpdateToolOptions & RobotRockAiContext & {
260
207
  mode: "trigger" | "workflow";
261
208
  };
262
- /**
263
- * AI SDK tool that posts a progress update to a RobotRock thread.
264
- *
265
- * Fire-and-forget (no human wait): the agent reports status as it works.
266
- *
267
- * - `createSendUpdateTool(robotrock, options?)` — polling client (default).
268
- * - `createSendUpdateTool({ mode: "trigger", app?: "my-agent" })` — Trigger.dev worker.
269
- * - `createSendUpdateTool({ mode: "workflow", app?: "my-agent" })` — Vercel Workflow (durable step).
270
- *
271
- * The thread is resolved from the tool input `threadId`, falling back to a
272
- * session `threadId` in the options. Provide at least one.
273
- */
274
- declare function createSendUpdateTool(clientOrOptions: RobotRock | CreateSendUpdateToolDurableOptions, maybeOptions?: CreateSendUpdateToolOptions): Tool<z.infer<typeof sendUpdateToolInputSchema>, SendUpdateToolResult>;
275
-
276
- type CreateRobotRockAiToolsOptions = {
277
- /** @default "polling" when `client` is passed; `"trigger"` or `"workflow"` for durable waits. */
278
- mode?: "polling" | "trigger" | "workflow";
279
- client?: RobotRock;
280
- app?: string;
281
- /**
282
- * Shared thread for tasks and updates these tools create. Enables the
283
- * `sendUpdate` tool to auto-thread onto tasks made by the `sendToHuman` tool.
284
- */
285
- threadId?: string;
286
- };
287
- type RobotRockAiTools = {
288
- context: RobotRockAiContext;
289
- approveByHuman: (toolOptions?: ApproveByHumanToolOptions) => Tool<z.infer<typeof approveByHumanInputSchema>, HumanToolResult>;
290
- sendToHuman: <A extends readonly SendToHumanActionInput[]>(toolOptions: CreateSendToHumanToolOptions<A>) => Tool<z.infer<typeof sendToHumanToolInputSchema>, HumanToolResult>;
291
- sendUpdate: (toolOptions?: CreateSendUpdateToolOptions) => Tool<z.infer<typeof sendUpdateToolInputSchema>, SendUpdateToolResult>;
209
+ type SendUpdateToolDefinition = {
210
+ description: string;
211
+ inputSchema: typeof sendUpdateToolInputSchema;
212
+ execute: (input: SendUpdateToolInput) => Promise<SendUpdateToolResult>;
292
213
  };
293
- /**
294
- * Build AI SDK tools for a given RobotRock execution mode.
295
- *
296
- * @example Polling (Next.js route, scripts)
297
- * ```ts
298
- * const tools = createRobotRockAiTools({ client: robotrock });
299
- * ```
300
- *
301
- * @example Trigger.dev worker
302
- * ```ts
303
- * const tools = createRobotRockAiTools({ mode: "trigger", app: "my-agent" });
304
- * ```
305
- *
306
- * @example Vercel Workflow + DurableAgent
307
- * ```ts
308
- * const tools = createRobotRockAiTools({ mode: "workflow", app: "my-agent" });
309
- * ```
310
- */
311
- declare function createRobotRockAiTools(options: CreateRobotRockAiToolsOptions): RobotRockAiTools;
312
- /** Shorthand for `{ mode: "trigger", app }`. */
313
- declare function createRobotRockAiTriggerContext(options?: Omit<RobotRockAiTriggerContext, "mode">): RobotRockAiContext;
314
- /** Shorthand for `{ mode: "workflow", app }`. */
315
- declare function createRobotRockAiWorkflowContext(options?: Omit<RobotRockAiWorkflowContext, "mode">): RobotRockAiContext;
316
214
 
317
215
  type RobotRockToolApprovalDecision = "user-approval" | undefined;
318
216
  /**
@@ -346,4 +244,4 @@ declare function resolveToolApprovalsViaRobotRock(clientOrContext: RobotRock | R
346
244
  */
347
245
  declare function runWithRobotRockApprovals<T>(options: RunWithRobotRockApprovalsOptions<T>): Promise<T>;
348
246
 
349
- export { APPROVE_BY_HUMAN_ACTIONS as A, collectApprovalRequests as B, type CreateSendToHumanToolOptions as C, createRobotRockNeedsApproval as D, createRobotRockToolApproval as E, type FormatToolApprovalTaskOptions as F, resolveToolApprovalsViaRobotRock as G, type HumanToolResult as H, runWithRobotRockApprovals as I, type RobotRockToolApprovalDecision as J, type ResolveToolApprovalsOptions as K, type RobotRockToolApprovalConfig as L, type RunWithRobotRockApprovalsOptions as M, type RobotRockToolCallInfo as R, type SendUpdateToolResult as S, type ToolApprovalRequestPart as T, approveByHumanTool as a, approveByHumanInputSchema as b, type ApproveByHumanToolOptions as c, type ApproveByHumanToolDurableOptions as d, createSendToHumanTool as e, type CreateSendToHumanToolDurableOptions as f, createSendUpdateTool as g, sendUpdateToolInputSchema as h, type CreateSendUpdateToolOptions as i, type CreateSendUpdateToolDurableOptions as j, approveByHumanForAi as k, sendToHumanForAi as l, sendUpdateForAi as m, normalizeRobotRockAiContext as n, type RobotRockAiContext as o, type RobotRockAiMode as p, type RobotRockAiPollingContext as q, type RobotRockAiTriggerContext as r, sendToHumanToolInputSchema as s, type RobotRockAiWorkflowContext as t, createRobotRockAiTools as u, createRobotRockAiTriggerContext as v, createRobotRockAiWorkflowContext as w, type CreateRobotRockAiToolsOptions as x, type RobotRockAiTools as y, applyRobotRockToolApprovalToTools as z };
247
+ export { type ApproveByHumanToolDurableOptions as A, createRobotRockAiTriggerContext as B, type CreateSendToHumanToolOptions as C, normalizeRobotRockAiContext as D, sendToHumanForAi as E, type FormatToolApprovalTaskOptions as F, sendToHumanToolInputSchema as G, type HumanToolResult as H, sendUpdateForAi as I, sendUpdateToolInputSchema as J, type RobotRockAiWorkflowContext as R, type SendToHumanToolDefinition as S, type ToolApprovalRequestPart as T, type ApproveByHumanToolOptions as a, type ApproveByHumanToolDefinition as b, type CreateSendUpdateToolOptions as c, type SendUpdateToolDefinition as d, type CreateSendToHumanToolDurableOptions as e, type CreateSendUpdateToolDurableOptions as f, type RobotRockAiContext as g, type RobotRockAiMode as h, type RobotRockAiPollingContext as i, type RobotRockAiTriggerContext as j, applyRobotRockToolApprovalToTools as k, createRobotRockAiWorkflowContext as l, createRobotRockNeedsApproval as m, createRobotRockToolApproval as n, runWithRobotRockApprovals as o, type RobotRockToolCallInfo as p, APPROVE_BY_HUMAN_ACTIONS as q, resolveToolApprovalsViaRobotRock as r, type ResolveToolApprovalsOptions as s, type RobotRockToolApprovalConfig as t, type RobotRockToolApprovalDecision as u, type RunWithRobotRockApprovalsOptions as v, type SendUpdateToolResult as w, approveByHumanForAi as x, approveByHumanInputSchema as y, collectApprovalRequests as z };
@@ -1,5 +1,5 @@
1
1
  import * as _trigger_dev_sdk from '@trigger.dev/sdk';
2
- import { S as SendToHumanActionInput, a as SendToHumanInput } from '../client-CLcHdjOz.js';
2
+ import { S as SendToHumanActionInput, a as SendToHumanInput } from '../client-D-XEBOWd.js';
3
3
  export { R as RobotRockHandlerWebhookPayload } from '../handler-webhook-BqEi6Bk-.js';
4
4
  export { ApprovalResult, DiscriminatedApprovalResult, TaskContextInput, TaskResult } from '../schemas/index.js';
5
5
  import 'zod';