@runtypelabs/cli 2.15.3 → 2.15.5

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 (2) hide show
  1. package/dist/index.js +99 -18
  2. package/package.json +3 -3
package/dist/index.js CHANGED
@@ -33327,7 +33327,8 @@ var surfaceSchema = external_exports.object({
33327
33327
  "whatsapp",
33328
33328
  "messaging",
33329
33329
  "telegram",
33330
- "a2a"
33330
+ "a2a",
33331
+ "hosted-page"
33331
33332
  ]),
33332
33333
  config: external_exports.record(external_exports.string(), external_exports.any()),
33333
33334
  createPolicy: createPolicySchema,
@@ -33715,22 +33716,7 @@ function validateToolDefinition(tool, index) {
33715
33716
  result.valid = result.errors.length === 0;
33716
33717
  return result;
33717
33718
  }
33718
- var VALID_SURFACE_TYPES = /* @__PURE__ */ new Set([
33719
- "chat",
33720
- "api",
33721
- "mcp",
33722
- "email",
33723
- "webhook",
33724
- "mcp_code",
33725
- "slack",
33726
- "schedule",
33727
- "sms",
33728
- "imessage",
33729
- "discord",
33730
- "whatsapp",
33731
- "telegram",
33732
- "a2a"
33733
- ]);
33719
+ var VALID_SURFACE_TYPES = new Set(surfaceSchema.shape.type.options);
33734
33720
  function validateSurfaceDefinition(surface, index) {
33735
33721
  const result = emptyResult();
33736
33722
  const base = `surfaces[${index}]`;
@@ -35876,10 +35862,31 @@ var FileContentPartSchema = external_exports.object({
35876
35862
  mimeType: external_exports.string(),
35877
35863
  filename: external_exports.string()
35878
35864
  });
35865
+ var ReasoningContentPartSchema = external_exports.object({
35866
+ type: external_exports.literal("reasoning"),
35867
+ text: external_exports.string(),
35868
+ providerOptions: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
35869
+ });
35879
35870
  var MessageContentSchema = external_exports.union([
35880
35871
  external_exports.string().min(1),
35881
- external_exports.array(external_exports.union([TextContentPartSchema, ImageContentPartSchema, FileContentPartSchema])).min(1)
35872
+ external_exports.array(
35873
+ external_exports.union([
35874
+ TextContentPartSchema,
35875
+ ImageContentPartSchema,
35876
+ FileContentPartSchema,
35877
+ ReasoningContentPartSchema
35878
+ ])
35879
+ ).min(1)
35882
35880
  ]);
35881
+ var InlineClientToolSchema = external_exports.object({
35882
+ name: external_exports.string().min(1),
35883
+ description: external_exports.string().min(1),
35884
+ parametersSchema: external_exports.object({
35885
+ type: external_exports.literal("object")
35886
+ }).passthrough(),
35887
+ origin: external_exports.enum(["webmcp", "sdk"]).optional(),
35888
+ pageOrigin: external_exports.string().optional()
35889
+ });
35883
35890
  var DispatchRequestSchema = external_exports.object({
35884
35891
  record: RecordInputSchema.optional(),
35885
35892
  flow: FlowInputSchema.optional(),
@@ -35890,6 +35897,20 @@ var DispatchRequestSchema = external_exports.object({
35890
35897
  content: MessageContentSchema
35891
35898
  })
35892
35899
  ).optional(),
35900
+ /**
35901
+ * Per-dispatch client tools. The page (or any SDK caller) snapshots its
35902
+ * locally-executable tools at the start of every user turn and ships
35903
+ * them here. Merge precedence at the prompt executor is:
35904
+ *
35905
+ * saved (DB / step.config.tools) < runtimeTools < clientTools
35906
+ *
35907
+ * so a later turn can override a saved tool of the same name without
35908
+ * editing the surface. Complementary to in-engine `resolveTools`
35909
+ * (`packages/runtime/src/engine/agent-engine.ts:687`), which refreshes
35910
+ * tools per-iteration inside one agent loop — `clientTools[]` is the
35911
+ * wire-side counterpart that arrives per-dispatch.
35912
+ */
35913
+ clientTools: external_exports.array(InlineClientToolSchema).optional(),
35893
35914
  secrets: external_exports.record(external_exports.string(), external_exports.string()).optional(),
35894
35915
  credentialProxies: external_exports.array(credentialProxyConfigSchema).max(10).optional(),
35895
35916
  inputs: external_exports.record(external_exports.string(), external_exports.any()).optional().refine(
@@ -35947,6 +35968,66 @@ var RunPromptOptionsSchema = external_exports.object({
35947
35968
  variables: external_exports.record(external_exports.string(), external_exports.unknown()).optional(),
35948
35969
  responseFormat: external_exports.enum(["text", "json", "markdown"]).optional()
35949
35970
  });
35971
+ var RuntimeProxyMessageContentSchema = external_exports.union([
35972
+ external_exports.string(),
35973
+ external_exports.array(
35974
+ external_exports.union([
35975
+ TextContentPartSchema,
35976
+ ImageContentPartSchema,
35977
+ FileContentPartSchema,
35978
+ ReasoningContentPartSchema
35979
+ ])
35980
+ )
35981
+ ]);
35982
+ var RuntimeProxyMessageSchema = external_exports.object({
35983
+ role: external_exports.enum(["system", "user", "assistant", "tool"]),
35984
+ content: RuntimeProxyMessageContentSchema,
35985
+ toolCalls: external_exports.array(
35986
+ external_exports.object({
35987
+ toolCallId: external_exports.string(),
35988
+ toolName: external_exports.string(),
35989
+ args: external_exports.record(external_exports.string(), external_exports.unknown()),
35990
+ providerOptions: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
35991
+ })
35992
+ ).optional(),
35993
+ toolResults: external_exports.array(
35994
+ external_exports.object({
35995
+ toolCallId: external_exports.string(),
35996
+ toolName: external_exports.string(),
35997
+ result: external_exports.unknown(),
35998
+ providerOptions: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
35999
+ })
36000
+ ).optional()
36001
+ });
36002
+ var RuntimeProxyToolSchema = external_exports.object({
36003
+ name: external_exports.string().min(1),
36004
+ description: external_exports.string(),
36005
+ parametersSchema: external_exports.record(external_exports.string(), external_exports.unknown())
36006
+ });
36007
+ var RuntimeProxyToolConfigSchema = external_exports.object({
36008
+ maxToolCalls: external_exports.number().int().positive().optional(),
36009
+ toolCallStrategy: external_exports.enum(["auto", "required", "none"]).optional(),
36010
+ parallelCalls: external_exports.boolean().optional(),
36011
+ onToolError: external_exports.enum(["fail", "continue", "retry"]).optional()
36012
+ });
36013
+ var RuntimeProxyRequestSchema = external_exports.object({
36014
+ model: external_exports.string().min(1),
36015
+ prompt: external_exports.string().default(""),
36016
+ options: external_exports.object({
36017
+ systemPrompt: external_exports.string().optional(),
36018
+ messages: external_exports.array(RuntimeProxyMessageSchema).optional(),
36019
+ userPrompt: external_exports.string().optional(),
36020
+ temperature: external_exports.number().optional(),
36021
+ maxOutputTokens: external_exports.number().int().positive().optional(),
36022
+ topP: external_exports.number().optional(),
36023
+ topK: external_exports.number().int().optional(),
36024
+ frequencyPenalty: external_exports.number().optional(),
36025
+ presencePenalty: external_exports.number().optional(),
36026
+ seed: external_exports.number().int().optional(),
36027
+ tools: external_exports.array(RuntimeProxyToolSchema).optional(),
36028
+ toolConfiguration: RuntimeProxyToolConfigSchema.optional()
36029
+ }).optional().default({})
36030
+ });
35950
36031
  var SANDBOX_TTL_DEFAULT_SECONDS = 10 * 60;
35951
36032
  var SANDBOX_TTL_MAX_SECONDS = 2 * 60 * 60;
35952
36033
  var SANDBOX_TTL_OPTIONS = [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@runtypelabs/cli",
3
- "version": "2.15.3",
3
+ "version": "2.15.5",
4
4
  "description": "Command-line interface for Runtype AI platform",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -21,7 +21,7 @@
21
21
  "micromatch": "^4.0.8",
22
22
  "yaml": "^2.8.3",
23
23
  "@runtypelabs/ink-components": "0.3.1",
24
- "@runtypelabs/sdk": "2.0.0",
24
+ "@runtypelabs/sdk": "2.1.0",
25
25
  "@runtypelabs/terminal-animations": "0.2.0"
26
26
  },
27
27
  "devDependencies": {
@@ -35,7 +35,7 @@
35
35
  "tsx": "^4.7.1",
36
36
  "typescript": "^5.3.3",
37
37
  "vitest": "^4.0.18",
38
- "@runtypelabs/shared": "1.6.1"
38
+ "@runtypelabs/shared": "1.6.2"
39
39
  },
40
40
  "engines": {
41
41
  "node": ">=18.0.0"