@keystrokehq/openrouter 0.1.2 → 0.1.3

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 (79) hide show
  1. package/dist/actions/create-chat-completion.cjs +11 -11
  2. package/dist/actions/create-chat-completion.cjs.map +1 -1
  3. package/dist/actions/create-chat-completion.d.cts +15 -13
  4. package/dist/actions/create-chat-completion.d.mts +15 -13
  5. package/dist/actions/create-chat-completion.mjs +11 -11
  6. package/dist/actions/create-chat-completion.mjs.map +1 -1
  7. package/dist/actions/create-coinbase-charge.cjs +3 -3
  8. package/dist/actions/create-coinbase-charge.cjs.map +1 -1
  9. package/dist/actions/create-coinbase-charge.d.cts +3 -3
  10. package/dist/actions/create-coinbase-charge.d.mts +3 -3
  11. package/dist/actions/create-coinbase-charge.mjs +3 -3
  12. package/dist/actions/create-coinbase-charge.mjs.map +1 -1
  13. package/dist/actions/create-message.cjs +7 -7
  14. package/dist/actions/create-message.cjs.map +1 -1
  15. package/dist/actions/create-message.d.cts +11 -7
  16. package/dist/actions/create-message.d.mts +11 -7
  17. package/dist/actions/create-message.mjs +7 -7
  18. package/dist/actions/create-message.mjs.map +1 -1
  19. package/dist/actions/get-credits.cjs +2 -2
  20. package/dist/actions/get-credits.cjs.map +1 -1
  21. package/dist/actions/get-credits.d.cts +2 -2
  22. package/dist/actions/get-credits.d.mts +2 -2
  23. package/dist/actions/get-credits.mjs +2 -2
  24. package/dist/actions/get-credits.mjs.map +1 -1
  25. package/dist/actions/get-current-key.cjs +3 -3
  26. package/dist/actions/get-current-key.cjs.map +1 -1
  27. package/dist/actions/get-current-key.d.cts +3 -3
  28. package/dist/actions/get-current-key.d.mts +3 -3
  29. package/dist/actions/get-current-key.mjs +3 -3
  30. package/dist/actions/get-current-key.mjs.map +1 -1
  31. package/dist/actions/get-generation.cjs +2 -2
  32. package/dist/actions/get-generation.cjs.map +1 -1
  33. package/dist/actions/get-generation.d.cts +2 -2
  34. package/dist/actions/get-generation.d.mts +2 -2
  35. package/dist/actions/get-generation.mjs +2 -2
  36. package/dist/actions/get-generation.mjs.map +1 -1
  37. package/dist/actions/get-models-count.cjs +2 -2
  38. package/dist/actions/get-models-count.cjs.map +1 -1
  39. package/dist/actions/get-models-count.d.cts +2 -2
  40. package/dist/actions/get-models-count.d.mts +2 -2
  41. package/dist/actions/get-models-count.mjs +2 -2
  42. package/dist/actions/get-models-count.mjs.map +1 -1
  43. package/dist/actions/list-available-models.cjs +7 -7
  44. package/dist/actions/list-available-models.cjs.map +1 -1
  45. package/dist/actions/list-available-models.d.cts +7 -7
  46. package/dist/actions/list-available-models.d.mts +7 -7
  47. package/dist/actions/list-available-models.mjs +7 -7
  48. package/dist/actions/list-available-models.mjs.map +1 -1
  49. package/dist/actions/list-embedding-models.cjs +7 -7
  50. package/dist/actions/list-embedding-models.cjs.map +1 -1
  51. package/dist/actions/list-embedding-models.d.cts +7 -7
  52. package/dist/actions/list-embedding-models.d.mts +7 -7
  53. package/dist/actions/list-embedding-models.mjs +7 -7
  54. package/dist/actions/list-embedding-models.mjs.map +1 -1
  55. package/dist/actions/list-model-endpoints.cjs +5 -5
  56. package/dist/actions/list-model-endpoints.cjs.map +1 -1
  57. package/dist/actions/list-model-endpoints.d.cts +5 -5
  58. package/dist/actions/list-model-endpoints.d.mts +5 -5
  59. package/dist/actions/list-model-endpoints.mjs +5 -5
  60. package/dist/actions/list-model-endpoints.mjs.map +1 -1
  61. package/dist/actions/list-providers.cjs +1 -1
  62. package/dist/actions/list-providers.cjs.map +1 -1
  63. package/dist/actions/list-providers.d.cts +1 -1
  64. package/dist/actions/list-providers.d.mts +1 -1
  65. package/dist/actions/list-providers.mjs +1 -1
  66. package/dist/actions/list-providers.mjs.map +1 -1
  67. package/dist/actions/list-user-models.cjs +7 -7
  68. package/dist/actions/list-user-models.cjs.map +1 -1
  69. package/dist/actions/list-user-models.d.cts +7 -7
  70. package/dist/actions/list-user-models.d.mts +7 -7
  71. package/dist/actions/list-user-models.mjs +7 -7
  72. package/dist/actions/list-user-models.mjs.map +1 -1
  73. package/dist/actions/list-zdr-endpoints.cjs +5 -5
  74. package/dist/actions/list-zdr-endpoints.cjs.map +1 -1
  75. package/dist/actions/list-zdr-endpoints.d.cts +5 -5
  76. package/dist/actions/list-zdr-endpoints.d.mts +5 -5
  77. package/dist/actions/list-zdr-endpoints.mjs +5 -5
  78. package/dist/actions/list-zdr-endpoints.mjs.map +1 -1
  79. package/package.json +1 -1
@@ -33,8 +33,8 @@ declare const OpenrouterGetGenerationOutput: z.ZodObject<{
33
33
  native_tokens_reasoning: z.ZodNullable<z.ZodNumber>;
34
34
  upstream_inference_cost: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
35
35
  native_tokens_completion: z.ZodNullable<z.ZodNumber>;
36
- }, z.core.$strip>>;
37
- }, z.core.$strip>;
36
+ }, z.core.$loose>>;
37
+ }, z.core.$loose>;
38
38
  declare const openrouterGetGeneration: import("@keystrokehq/action").WorkflowActionDefinition<{
39
39
  id: string;
40
40
  }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
@@ -30,13 +30,13 @@ const OpenrouterGetGeneration_GenerationDataSchema = z.object({
30
30
  native_tokens_reasoning: z.number().int().describe("Tokens used for internal reasoning by the model.").nullable(),
31
31
  upstream_inference_cost: z.number().describe("Cost charged by the upstream provider.").nullable().optional(),
32
32
  native_tokens_completion: z.number().int().describe("Completion tokens counted by the provider's tokenizer.").nullable()
33
- }).describe("Detailed metadata for a specific generation request.");
33
+ }).passthrough().describe("Detailed metadata for a specific generation request.");
34
34
  const openrouterGetGeneration = action("OPENROUTER_GET_GENERATION", {
35
35
  slug: "openrouter-get-generation",
36
36
  name: "Get Generation",
37
37
  description: "Tool to retrieve a generation result by its unique ID. Use after a generation completes to fetch metadata like token counts, cost, and latency.",
38
38
  input: OpenrouterGetGenerationInput,
39
- output: z.object({ data: OpenrouterGetGeneration_GenerationDataSchema.nullable() }).describe("Response model containing the data for a retrieved generation.")
39
+ output: z.object({ data: OpenrouterGetGeneration_GenerationDataSchema.nullable() }).passthrough().describe("Response model containing the data for a retrieved generation.")
40
40
  });
41
41
  //#endregion
42
42
  export { openrouterGetGeneration };
@@ -1 +1 @@
1
- {"version":3,"file":"get-generation.mjs","names":[],"sources":["../../src/actions/get-generation.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterGetGenerationInput = z.object({\n id: z.string().describe(\"Unique identifier of the generation to retrieve.\"),\n}).describe(\"Request model for retrieving a generation by its unique ID.\");\nconst OpenrouterGetGeneration_GenerationDataSchema = z.object({\n id: z.string().describe(\"Unique identifier of the generation.\").nullable(),\n model: z.string().describe(\"Model used to generate the response.\").nullable(),\n usage: z.number().describe(\"Normalized token usage (sum of prompt and completion tokens).\").nullable(),\n app_id: z.number().int().describe(\"Application identifier associated with this generation.\").nullable().optional(),\n origin: z.string().describe(\"Source/origin of the request.\").nullable(),\n is_byok: z.boolean().describe(\"Indicates if a BYOK key was used.\").nullable(),\n latency: z.number().int().describe(\"Total latency in milliseconds for response generation.\").nullable(),\n streamed: z.boolean().describe(\"Whether this generation was streamed.\").nullable(),\n cancelled: z.boolean().describe(\"Whether this generation was cancelled before completion.\").nullable(),\n created_at: z.string().describe(\"Timestamp when the generation was created.\").nullable(),\n total_cost: z.number().describe(\"Total cost incurred for this generation.\").nullable(),\n upstream_id: z.string().describe(\"Upstream provider's generation ID, if any.\").nullable().optional(),\n finish_reason: z.string().describe(\"Normalized finish reason (e.g., 'stop', 'length').\").nullable(),\n provider_name: z.string().describe(\"Name of the upstream provider used.\").nullable(),\n tokens_prompt: z.number().int().describe(\"Number of tokens in the prompt.\").nullable(),\n cache_discount: z.number().describe(\"Discount applied from cache hits, if any.\").nullable().optional(),\n generation_time: z.number().int().describe(\"Time in milliseconds taken by the model to generate the content.\").nullable(),\n num_media_prompt: z.number().int().describe(\"Number of media items in the prompt.\").nullable().optional(),\n tokens_completion: z.number().int().describe(\"Number of tokens in the completion.\").nullable(),\n moderation_latency: z.number().int().describe(\"Latency in milliseconds spent on moderation, if any.\").nullable().optional(),\n num_search_results: z.number().int().describe(\"Number of search results used, if any.\").nullable().optional(),\n native_finish_reason: z.string().describe(\"Raw finish reason returned by the model.\").nullable(),\n native_tokens_prompt: z.number().int().describe(\"Prompt tokens counted by the provider's tokenizer.\").nullable(),\n num_media_completion: z.number().int().describe(\"Number of media items in the completion.\").nullable().optional(),\n native_tokens_reasoning: z.number().int().describe(\"Tokens used for internal reasoning by the model.\").nullable(),\n upstream_inference_cost: z.number().describe(\"Cost charged by the upstream provider.\").nullable().optional(),\n native_tokens_completion: z.number().int().describe(\"Completion tokens counted by the provider's tokenizer.\").nullable(),\n}).describe(\"Detailed metadata for a specific generation request.\");\nexport const OpenrouterGetGenerationOutput = z.object({\n data: OpenrouterGetGeneration_GenerationDataSchema.nullable(),\n}).describe(\"Response model containing the data for a retrieved generation.\");\n\nexport const openrouterGetGeneration = action(\"OPENROUTER_GET_GENERATION\", {\n slug: \"openrouter-get-generation\",\n name: \"Get Generation\",\n description: \"Tool to retrieve a generation result by its unique ID. Use after a generation completes to fetch metadata like token counts, cost, and latency.\",\n input: OpenrouterGetGenerationInput,\n output: OpenrouterGetGenerationOutput,\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"get-generation.mjs","names":[],"sources":["../../src/actions/get-generation.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterGetGenerationInput = z.object({\n id: z.string().describe(\"Unique identifier of the generation to retrieve.\"),\n}).describe(\"Request model for retrieving a generation by its unique ID.\");\nconst OpenrouterGetGeneration_GenerationDataSchema = z.object({\n id: z.string().describe(\"Unique identifier of the generation.\").nullable(),\n model: z.string().describe(\"Model used to generate the response.\").nullable(),\n usage: z.number().describe(\"Normalized token usage (sum of prompt and completion tokens).\").nullable(),\n app_id: z.number().int().describe(\"Application identifier associated with this generation.\").nullable().optional(),\n origin: z.string().describe(\"Source/origin of the request.\").nullable(),\n is_byok: z.boolean().describe(\"Indicates if a BYOK key was used.\").nullable(),\n latency: z.number().int().describe(\"Total latency in milliseconds for response generation.\").nullable(),\n streamed: z.boolean().describe(\"Whether this generation was streamed.\").nullable(),\n cancelled: z.boolean().describe(\"Whether this generation was cancelled before completion.\").nullable(),\n created_at: z.string().describe(\"Timestamp when the generation was created.\").nullable(),\n total_cost: z.number().describe(\"Total cost incurred for this generation.\").nullable(),\n upstream_id: z.string().describe(\"Upstream provider's generation ID, if any.\").nullable().optional(),\n finish_reason: z.string().describe(\"Normalized finish reason (e.g., 'stop', 'length').\").nullable(),\n provider_name: z.string().describe(\"Name of the upstream provider used.\").nullable(),\n tokens_prompt: z.number().int().describe(\"Number of tokens in the prompt.\").nullable(),\n cache_discount: z.number().describe(\"Discount applied from cache hits, if any.\").nullable().optional(),\n generation_time: z.number().int().describe(\"Time in milliseconds taken by the model to generate the content.\").nullable(),\n num_media_prompt: z.number().int().describe(\"Number of media items in the prompt.\").nullable().optional(),\n tokens_completion: z.number().int().describe(\"Number of tokens in the completion.\").nullable(),\n moderation_latency: z.number().int().describe(\"Latency in milliseconds spent on moderation, if any.\").nullable().optional(),\n num_search_results: z.number().int().describe(\"Number of search results used, if any.\").nullable().optional(),\n native_finish_reason: z.string().describe(\"Raw finish reason returned by the model.\").nullable(),\n native_tokens_prompt: z.number().int().describe(\"Prompt tokens counted by the provider's tokenizer.\").nullable(),\n num_media_completion: z.number().int().describe(\"Number of media items in the completion.\").nullable().optional(),\n native_tokens_reasoning: z.number().int().describe(\"Tokens used for internal reasoning by the model.\").nullable(),\n upstream_inference_cost: z.number().describe(\"Cost charged by the upstream provider.\").nullable().optional(),\n native_tokens_completion: z.number().int().describe(\"Completion tokens counted by the provider's tokenizer.\").nullable(),\n}).passthrough().describe(\"Detailed metadata for a specific generation request.\");\nexport const OpenrouterGetGenerationOutput = z.object({\n data: OpenrouterGetGeneration_GenerationDataSchema.nullable(),\n}).passthrough().describe(\"Response model containing the data for a retrieved generation.\");\n\nexport const openrouterGetGeneration = action(\"OPENROUTER_GET_GENERATION\", {\n slug: \"openrouter-get-generation\",\n name: \"Get Generation\",\n description: \"Tool to retrieve a generation result by its unique ID. Use after a generation completes to fetch metadata like token counts, cost, and latency.\",\n input: OpenrouterGetGenerationInput,\n output: OpenrouterGetGenerationOutput,\n});\n"],"mappings":";;;AAIA,MAAa,+BAA+B,EAAE,OAAO,EACnD,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,kDAAkD,EAC5E,CAAC,CAAC,CAAC,SAAS,6DAA6D;AACzE,MAAM,+CAA+C,EAAE,OAAO;CAC5D,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;CACzE,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;CAC5E,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,+DAA+D,CAAC,CAAC,SAAS;CACrG,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjH,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS;CACtE,SAAS,EAAE,QAAQ,CAAC,CAAC,SAAS,mCAAmC,CAAC,CAAC,SAAS;CAC5E,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wDAAwD,CAAC,CAAC,SAAS;CACtG,UAAU,EAAE,QAAQ,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS;CACjF,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,0DAA0D,CAAC,CAAC,SAAS;CACrG,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS;CACvF,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,0CAA0C,CAAC,CAAC,SAAS;CACrF,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnG,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,oDAAoD,CAAC,CAAC,SAAS;CAClG,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;CACnF,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,iCAAiC,CAAC,CAAC,SAAS;CACrF,gBAAgB,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACrG,iBAAiB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kEAAkE,CAAC,CAAC,SAAS;CACxH,kBAAkB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxG,mBAAmB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;CAC7F,oBAAoB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,sDAAsD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1H,oBAAoB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC5G,sBAAsB,EAAE,OAAO,CAAC,CAAC,SAAS,0CAA0C,CAAC,CAAC,SAAS;CAC/F,sBAAsB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,oDAAoD,CAAC,CAAC,SAAS;CAC/G,sBAAsB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,0CAA0C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChH,yBAAyB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kDAAkD,CAAC,CAAC,SAAS;CAChH,yBAAyB,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3G,0BAA0B,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wDAAwD,CAAC,CAAC,SAAS;AACzH,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,sDAAsD;AAKhF,MAAa,0BAA0B,OAAO,6BAA6B;CACzE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAT2C,EAAE,OAAO,EACpD,MAAM,6CAA6C,SAAS,EAC9D,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,gEAOhB;AACV,CAAC"}
@@ -5,8 +5,8 @@ const OpenrouterGetModelsCountInput = zod.z.object({
5
5
  x_title: zod.z.string().describe("The app display name allows you to customize how your app appears in OpenRouter's dashboard.").optional(),
6
6
  http_referer: zod.z.string().describe("The app identifier should be your app's URL and is used as the primary identifier for rankings. This is used to track API usage per application.").optional()
7
7
  }).describe("Request model for getting the total count of available models.");
8
- const OpenrouterGetModelsCount_ModelsCountDataSchema = zod.z.object({ count: zod.z.number().int().describe("Total number of available models").nullable() }).describe("Container for the model count.");
9
- const OpenrouterGetModelsCountOutput = zod.z.object({ data: OpenrouterGetModelsCount_ModelsCountDataSchema.nullable() }).describe("Response model containing the total count of available models.");
8
+ const OpenrouterGetModelsCount_ModelsCountDataSchema = zod.z.object({ count: zod.z.number().int().describe("Total number of available models").nullable() }).passthrough().describe("Container for the model count.");
9
+ const OpenrouterGetModelsCountOutput = zod.z.object({ data: OpenrouterGetModelsCount_ModelsCountDataSchema.nullable() }).passthrough().describe("Response model containing the total count of available models.");
10
10
  const openrouterGetModelsCount = require_action.action("OPENROUTER_GET_MODELS_COUNT", {
11
11
  slug: "openrouter-get-models-count",
12
12
  name: "Get Models Count",
@@ -1 +1 @@
1
- {"version":3,"file":"get-models-count.cjs","names":["z","action"],"sources":["../../src/actions/get-models-count.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterGetModelsCountInput = z.object({\n x_title: z.string().describe(\"The app display name allows you to customize how your app appears in OpenRouter's dashboard.\").optional(),\n http_referer: z.string().describe(\"The app identifier should be your app's URL and is used as the primary identifier for rankings. This is used to track API usage per application.\").optional(),\n}).describe(\"Request model for getting the total count of available models.\");\nconst OpenrouterGetModelsCount_ModelsCountDataSchema = z.object({\n count: z.number().int().describe(\"Total number of available models\").nullable(),\n}).describe(\"Container for the model count.\");\nexport const OpenrouterGetModelsCountOutput = z.object({\n data: OpenrouterGetModelsCount_ModelsCountDataSchema.nullable(),\n}).describe(\"Response model containing the total count of available models.\");\n\nexport const openrouterGetModelsCount = action(\"OPENROUTER_GET_MODELS_COUNT\", {\n slug: \"openrouter-get-models-count\",\n name: \"Get Models Count\",\n description: \"Tool to get the total count of available models on OpenRouter. Use when you need to know how many models are available without fetching the full list.\",\n input: OpenrouterGetModelsCountInput,\n output: OpenrouterGetModelsCountOutput,\n});\n"],"mappings":";;;AAIA,MAAa,gCAAgCA,IAAAA,EAAE,OAAO;CACpD,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,8FAA8F,CAAC,CAAC,SAAS;CACtI,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kJAAkJ,CAAC,CAAC,SAAS;AACjM,CAAC,CAAC,CAAC,SAAS,gEAAgE;AAC5E,MAAM,iDAAiDA,IAAAA,EAAE,OAAO,EAC9D,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS,EAChF,CAAC,CAAC,CAAC,SAAS,gCAAgC;AAC5C,MAAa,iCAAiCA,IAAAA,EAAE,OAAO,EACrD,MAAM,+CAA+C,SAAS,EAChE,CAAC,CAAC,CAAC,SAAS,gEAAgE;AAE5E,MAAa,2BAA2BC,eAAAA,OAAO,+BAA+B;CAC5E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"get-models-count.cjs","names":["z","action"],"sources":["../../src/actions/get-models-count.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterGetModelsCountInput = z.object({\n x_title: z.string().describe(\"The app display name allows you to customize how your app appears in OpenRouter's dashboard.\").optional(),\n http_referer: z.string().describe(\"The app identifier should be your app's URL and is used as the primary identifier for rankings. This is used to track API usage per application.\").optional(),\n}).describe(\"Request model for getting the total count of available models.\");\nconst OpenrouterGetModelsCount_ModelsCountDataSchema = z.object({\n count: z.number().int().describe(\"Total number of available models\").nullable(),\n}).passthrough().describe(\"Container for the model count.\");\nexport const OpenrouterGetModelsCountOutput = z.object({\n data: OpenrouterGetModelsCount_ModelsCountDataSchema.nullable(),\n}).passthrough().describe(\"Response model containing the total count of available models.\");\n\nexport const openrouterGetModelsCount = action(\"OPENROUTER_GET_MODELS_COUNT\", {\n slug: \"openrouter-get-models-count\",\n name: \"Get Models Count\",\n description: \"Tool to get the total count of available models on OpenRouter. Use when you need to know how many models are available without fetching the full list.\",\n input: OpenrouterGetModelsCountInput,\n output: OpenrouterGetModelsCountOutput,\n});\n"],"mappings":";;;AAIA,MAAa,gCAAgCA,IAAAA,EAAE,OAAO;CACpD,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,8FAA8F,CAAC,CAAC,SAAS;CACtI,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kJAAkJ,CAAC,CAAC,SAAS;AACjM,CAAC,CAAC,CAAC,SAAS,gEAAgE;AAC5E,MAAM,iDAAiDA,IAAAA,EAAE,OAAO,EAC9D,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS,EAChF,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,gCAAgC;AAC1D,MAAa,iCAAiCA,IAAAA,EAAE,OAAO,EACrD,MAAM,+CAA+C,SAAS,EAChE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,gEAAgE;AAE1F,MAAa,2BAA2BC,eAAAA,OAAO,+BAA+B;CAC5E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -8,8 +8,8 @@ declare const OpenrouterGetModelsCountInput: z.ZodObject<{
8
8
  declare const OpenrouterGetModelsCountOutput: z.ZodObject<{
9
9
  data: z.ZodNullable<z.ZodObject<{
10
10
  count: z.ZodNullable<z.ZodNumber>;
11
- }, z.core.$strip>>;
12
- }, z.core.$strip>;
11
+ }, z.core.$loose>>;
12
+ }, z.core.$loose>;
13
13
  declare const openrouterGetModelsCount: import("@keystrokehq/action").WorkflowActionDefinition<{
14
14
  x_title?: string | undefined;
15
15
  http_referer?: string | undefined;
@@ -8,8 +8,8 @@ declare const OpenrouterGetModelsCountInput: z.ZodObject<{
8
8
  declare const OpenrouterGetModelsCountOutput: z.ZodObject<{
9
9
  data: z.ZodNullable<z.ZodObject<{
10
10
  count: z.ZodNullable<z.ZodNumber>;
11
- }, z.core.$strip>>;
12
- }, z.core.$strip>;
11
+ }, z.core.$loose>>;
12
+ }, z.core.$loose>;
13
13
  declare const openrouterGetModelsCount: import("@keystrokehq/action").WorkflowActionDefinition<{
14
14
  x_title?: string | undefined;
15
15
  http_referer?: string | undefined;
@@ -5,13 +5,13 @@ const OpenrouterGetModelsCountInput = z.object({
5
5
  x_title: z.string().describe("The app display name allows you to customize how your app appears in OpenRouter's dashboard.").optional(),
6
6
  http_referer: z.string().describe("The app identifier should be your app's URL and is used as the primary identifier for rankings. This is used to track API usage per application.").optional()
7
7
  }).describe("Request model for getting the total count of available models.");
8
- const OpenrouterGetModelsCount_ModelsCountDataSchema = z.object({ count: z.number().int().describe("Total number of available models").nullable() }).describe("Container for the model count.");
8
+ const OpenrouterGetModelsCount_ModelsCountDataSchema = z.object({ count: z.number().int().describe("Total number of available models").nullable() }).passthrough().describe("Container for the model count.");
9
9
  const openrouterGetModelsCount = action("OPENROUTER_GET_MODELS_COUNT", {
10
10
  slug: "openrouter-get-models-count",
11
11
  name: "Get Models Count",
12
12
  description: "Tool to get the total count of available models on OpenRouter. Use when you need to know how many models are available without fetching the full list.",
13
13
  input: OpenrouterGetModelsCountInput,
14
- output: z.object({ data: OpenrouterGetModelsCount_ModelsCountDataSchema.nullable() }).describe("Response model containing the total count of available models.")
14
+ output: z.object({ data: OpenrouterGetModelsCount_ModelsCountDataSchema.nullable() }).passthrough().describe("Response model containing the total count of available models.")
15
15
  });
16
16
  //#endregion
17
17
  export { openrouterGetModelsCount };
@@ -1 +1 @@
1
- {"version":3,"file":"get-models-count.mjs","names":[],"sources":["../../src/actions/get-models-count.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterGetModelsCountInput = z.object({\n x_title: z.string().describe(\"The app display name allows you to customize how your app appears in OpenRouter's dashboard.\").optional(),\n http_referer: z.string().describe(\"The app identifier should be your app's URL and is used as the primary identifier for rankings. This is used to track API usage per application.\").optional(),\n}).describe(\"Request model for getting the total count of available models.\");\nconst OpenrouterGetModelsCount_ModelsCountDataSchema = z.object({\n count: z.number().int().describe(\"Total number of available models\").nullable(),\n}).describe(\"Container for the model count.\");\nexport const OpenrouterGetModelsCountOutput = z.object({\n data: OpenrouterGetModelsCount_ModelsCountDataSchema.nullable(),\n}).describe(\"Response model containing the total count of available models.\");\n\nexport const openrouterGetModelsCount = action(\"OPENROUTER_GET_MODELS_COUNT\", {\n slug: \"openrouter-get-models-count\",\n name: \"Get Models Count\",\n description: \"Tool to get the total count of available models on OpenRouter. Use when you need to know how many models are available without fetching the full list.\",\n input: OpenrouterGetModelsCountInput,\n output: OpenrouterGetModelsCountOutput,\n});\n"],"mappings":";;;AAIA,MAAa,gCAAgC,EAAE,OAAO;CACpD,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,8FAA8F,CAAC,CAAC,SAAS;CACtI,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,kJAAkJ,CAAC,CAAC,SAAS;AACjM,CAAC,CAAC,CAAC,SAAS,gEAAgE;AAC5E,MAAM,iDAAiD,EAAE,OAAO,EAC9D,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS,EAChF,CAAC,CAAC,CAAC,SAAS,gCAAgC;AAK5C,MAAa,2BAA2B,OAAO,+BAA+B;CAC5E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAT4C,EAAE,OAAO,EACrD,MAAM,+CAA+C,SAAS,EAChE,CAAC,CAAC,CAAC,SAAS,gEAOF;AACV,CAAC"}
1
+ {"version":3,"file":"get-models-count.mjs","names":[],"sources":["../../src/actions/get-models-count.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterGetModelsCountInput = z.object({\n x_title: z.string().describe(\"The app display name allows you to customize how your app appears in OpenRouter's dashboard.\").optional(),\n http_referer: z.string().describe(\"The app identifier should be your app's URL and is used as the primary identifier for rankings. This is used to track API usage per application.\").optional(),\n}).describe(\"Request model for getting the total count of available models.\");\nconst OpenrouterGetModelsCount_ModelsCountDataSchema = z.object({\n count: z.number().int().describe(\"Total number of available models\").nullable(),\n}).passthrough().describe(\"Container for the model count.\");\nexport const OpenrouterGetModelsCountOutput = z.object({\n data: OpenrouterGetModelsCount_ModelsCountDataSchema.nullable(),\n}).passthrough().describe(\"Response model containing the total count of available models.\");\n\nexport const openrouterGetModelsCount = action(\"OPENROUTER_GET_MODELS_COUNT\", {\n slug: \"openrouter-get-models-count\",\n name: \"Get Models Count\",\n description: \"Tool to get the total count of available models on OpenRouter. Use when you need to know how many models are available without fetching the full list.\",\n input: OpenrouterGetModelsCountInput,\n output: OpenrouterGetModelsCountOutput,\n});\n"],"mappings":";;;AAIA,MAAa,gCAAgC,EAAE,OAAO;CACpD,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,8FAA8F,CAAC,CAAC,SAAS;CACtI,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,kJAAkJ,CAAC,CAAC,SAAS;AACjM,CAAC,CAAC,CAAC,SAAS,gEAAgE;AAC5E,MAAM,iDAAiD,EAAE,OAAO,EAC9D,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS,EAChF,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,gCAAgC;AAK1D,MAAa,2BAA2B,OAAO,+BAA+B;CAC5E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAT4C,EAAE,OAAO,EACrD,MAAM,+CAA+C,SAAS,EAChE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,gEAOhB;AACV,CAAC"}
@@ -29,28 +29,28 @@ const OpenrouterListAvailableModels_PricingSchema = zod.z.object({
29
29
  input_cache_read: zod.z.string().describe("Price per input cache read.").nullable().optional(),
30
30
  input_cache_write: zod.z.string().describe("Price per input cache write.").nullable().optional(),
31
31
  internal_reasoning: zod.z.string().describe("Price per internal reasoning.").nullable().optional()
32
- });
32
+ }).passthrough();
33
33
  const OpenrouterListAvailableModels_ArchitectureSchema = zod.z.object({
34
34
  modality: zod.z.string().describe("Combined modality string (e.g., 'text+image->text').").nullable().optional(),
35
35
  tokenizer: zod.z.string().describe("Tokenization method used.").nullable(),
36
36
  instruct_type: zod.z.string().describe("Instruction tuning type for the model.").nullable().optional(),
37
37
  input_modalities: zod.z.array(zod.z.string()).describe("Supported input types (e.g., 'text', 'image')."),
38
38
  output_modalities: zod.z.array(zod.z.string()).describe("Supported output types (e.g., 'text').")
39
- });
39
+ }).passthrough();
40
40
  const OpenrouterListAvailableModels_TopProviderSchema = zod.z.object({
41
41
  is_moderated: zod.z.boolean().describe("Indicates if the content is moderated.").nullable(),
42
42
  context_length: zod.z.number().int().describe("Context window size provided by this provider.").nullable().optional(),
43
43
  max_completion_tokens: zod.z.number().int().describe("Maximum tokens that can be generated in the completion.").nullable().optional()
44
- });
44
+ }).passthrough();
45
45
  const OpenrouterListAvailableModels_DefaultParametersSchema = zod.z.object({
46
46
  top_p: zod.z.number().describe("Default top_p setting.").nullable().optional(),
47
47
  temperature: zod.z.number().describe("Default temperature setting.").nullable().optional(),
48
48
  frequency_penalty: zod.z.number().describe("Default frequency penalty setting.").nullable().optional()
49
- }).describe("Default parameter values for the model.");
49
+ }).passthrough().describe("Default parameter values for the model.");
50
50
  const OpenrouterListAvailableModels_PerRequestLimitsSchema = zod.z.object({
51
51
  prompt_tokens: zod.z.number().describe("Maximum prompt tokens allowed per request.").nullable(),
52
52
  completion_tokens: zod.z.number().describe("Maximum completion tokens allowed per request.").nullable()
53
- }).describe("Rate limiting information for the model.");
53
+ }).passthrough().describe("Rate limiting information for the model.");
54
54
  const OpenrouterListAvailableModels_ModelInfoSchema = zod.z.object({
55
55
  id: zod.z.string().describe("Unique model identifier.").nullable(),
56
56
  name: zod.z.string().describe("Human-readable display name for the model.").nullable(),
@@ -66,8 +66,8 @@ const OpenrouterListAvailableModels_ModelInfoSchema = zod.z.object({
66
66
  default_parameters: OpenrouterListAvailableModels_DefaultParametersSchema.nullable(),
67
67
  per_request_limits: OpenrouterListAvailableModels_PerRequestLimitsSchema.nullable().optional(),
68
68
  supported_parameters: zod.z.array(zod.z.string()).describe("Supported API parameters for this model.")
69
- });
70
- const OpenrouterListAvailableModelsOutput = zod.z.object({ data: zod.z.array(OpenrouterListAvailableModels_ModelInfoSchema).describe("List of available models.") });
69
+ }).passthrough();
70
+ const OpenrouterListAvailableModelsOutput = zod.z.object({ data: zod.z.array(OpenrouterListAvailableModels_ModelInfoSchema).describe("List of available models.") }).passthrough();
71
71
  const openrouterListAvailableModels = require_action.action("OPENROUTER_LIST_AVAILABLE_MODELS", {
72
72
  slug: "openrouter-list-available-models",
73
73
  name: "List Available Models",
@@ -1 +1 @@
1
- {"version":3,"file":"list-available-models.cjs","names":["z","action"],"sources":["../../src/actions/list-available-models.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterListAvailableModelsInput = z.object({\n use_rss: z.boolean().default(false).describe(\"Return RSS XML feed instead of JSON (BETA).\").optional(),\n category: z.enum([\"programming\", \"roleplay\", \"marketing\", \"marketing/seo\", \"technology\", \"science\", \"translation\", \"legal\", \"finance\", \"health\", \"trivia\", \"academia\"]).describe(\"Valid categories for filtering models.\").optional(),\n use_rss_chat_links: z.boolean().default(false).describe(\"Use chat URLs instead of model page URLs in RSS items (only applies when use_rss=true) (BETA).\").optional(),\n});\nconst OpenrouterListAvailableModels_PricingSchema = z.object({\n audio: z.string().describe(\"Price per audio unit.\").nullable().optional(),\n image: z.string().describe(\"Price per image.\").nullable().optional(),\n prompt: z.string().describe(\"Price per prompt token.\").nullable(),\n request: z.string().describe(\"Price per request.\").nullable().optional(),\n completion: z.string().describe(\"Price per completion token.\").nullable(),\n web_search: z.string().describe(\"Price per web search.\").nullable().optional(),\n input_cache_read: z.string().describe(\"Price per input cache read.\").nullable().optional(),\n input_cache_write: z.string().describe(\"Price per input cache write.\").nullable().optional(),\n internal_reasoning: z.string().describe(\"Price per internal reasoning.\").nullable().optional(),\n});\nconst OpenrouterListAvailableModels_ArchitectureSchema = z.object({\n modality: z.string().describe(\"Combined modality string (e.g., 'text+image->text').\").nullable().optional(),\n tokenizer: z.string().describe(\"Tokenization method used.\").nullable(),\n instruct_type: z.string().describe(\"Instruction tuning type for the model.\").nullable().optional(),\n input_modalities: z.array(z.string()).describe(\"Supported input types (e.g., 'text', 'image').\"),\n output_modalities: z.array(z.string()).describe(\"Supported output types (e.g., 'text').\"),\n});\nconst OpenrouterListAvailableModels_TopProviderSchema = z.object({\n is_moderated: z.boolean().describe(\"Indicates if the content is moderated.\").nullable(),\n context_length: z.number().int().describe(\"Context window size provided by this provider.\").nullable().optional(),\n max_completion_tokens: z.number().int().describe(\"Maximum tokens that can be generated in the completion.\").nullable().optional(),\n});\nconst OpenrouterListAvailableModels_DefaultParametersSchema = z.object({\n top_p: z.number().describe(\"Default top_p setting.\").nullable().optional(),\n temperature: z.number().describe(\"Default temperature setting.\").nullable().optional(),\n frequency_penalty: z.number().describe(\"Default frequency penalty setting.\").nullable().optional(),\n}).describe(\"Default parameter values for the model.\");\nconst OpenrouterListAvailableModels_PerRequestLimitsSchema = z.object({\n prompt_tokens: z.number().describe(\"Maximum prompt tokens allowed per request.\").nullable(),\n completion_tokens: z.number().describe(\"Maximum completion tokens allowed per request.\").nullable(),\n}).describe(\"Rate limiting information for the model.\");\nconst OpenrouterListAvailableModels_ModelInfoSchema = z.object({\n id: z.string().describe(\"Unique model identifier.\").nullable(),\n name: z.string().describe(\"Human-readable display name for the model.\").nullable(),\n created: z.number().describe(\"Unix timestamp when the model was added.\").nullable(),\n pricing: OpenrouterListAvailableModels_PricingSchema.nullable(),\n description: z.string().describe(\"Detailed description of the model's capabilities.\").nullable(),\n architecture: OpenrouterListAvailableModels_ArchitectureSchema.nullable(),\n top_provider: OpenrouterListAvailableModels_TopProviderSchema.nullable(),\n canonical_slug: z.string().describe(\"Permanent slug for the model (immutable).\").nullable(),\n context_length: z.number().int().describe(\"Maximum context window size in tokens.\").nullable(),\n expiration_date: z.string().describe(\"ISO 8601 date when the model will be deprecated.\").nullable().optional(),\n hugging_face_id: z.string().describe(\"Identifier for the model on Hugging Face.\").nullable().optional(),\n default_parameters: OpenrouterListAvailableModels_DefaultParametersSchema.nullable(),\n per_request_limits: OpenrouterListAvailableModels_PerRequestLimitsSchema.nullable().optional(),\n supported_parameters: z.array(z.string()).describe(\"Supported API parameters for this model.\"),\n});\nexport const OpenrouterListAvailableModelsOutput = z.object({\n data: z.array(OpenrouterListAvailableModels_ModelInfoSchema).describe(\"List of available models.\"),\n});\n\nexport const openrouterListAvailableModels = action(\"OPENROUTER_LIST_AVAILABLE_MODELS\", {\n slug: \"openrouter-list-available-models\",\n name: \"List Available Models\",\n description: \"Tool to list available models via OpenRouter API. Use after confirming authentication to fetch the model catalog. Use exact model IDs returned here in OPENROUTER_CREATE_CHAT_COMPLETION or OPENROUTER_CREATE_COMPLETION calls — hard-coded IDs may break when the catalog changes. Use exact author and slug values from this response as inputs to OPENROUTER_LIST_MODEL_ENDPOINTS. Models have varying capabilities (e.g., tools, reasoning); verify individual model capabilities before downstream use. Pricing and latency metadata may be null or approximate — handle missing values in routing logic.\",\n input: OpenrouterListAvailableModelsInput,\n output: OpenrouterListAvailableModelsOutput,\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"list-available-models.cjs","names":["z","action"],"sources":["../../src/actions/list-available-models.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterListAvailableModelsInput = z.object({\n use_rss: z.boolean().default(false).describe(\"Return RSS XML feed instead of JSON (BETA).\").optional(),\n category: z.enum([\"programming\", \"roleplay\", \"marketing\", \"marketing/seo\", \"technology\", \"science\", \"translation\", \"legal\", \"finance\", \"health\", \"trivia\", \"academia\"]).describe(\"Valid categories for filtering models.\").optional(),\n use_rss_chat_links: z.boolean().default(false).describe(\"Use chat URLs instead of model page URLs in RSS items (only applies when use_rss=true) (BETA).\").optional(),\n});\nconst OpenrouterListAvailableModels_PricingSchema = z.object({\n audio: z.string().describe(\"Price per audio unit.\").nullable().optional(),\n image: z.string().describe(\"Price per image.\").nullable().optional(),\n prompt: z.string().describe(\"Price per prompt token.\").nullable(),\n request: z.string().describe(\"Price per request.\").nullable().optional(),\n completion: z.string().describe(\"Price per completion token.\").nullable(),\n web_search: z.string().describe(\"Price per web search.\").nullable().optional(),\n input_cache_read: z.string().describe(\"Price per input cache read.\").nullable().optional(),\n input_cache_write: z.string().describe(\"Price per input cache write.\").nullable().optional(),\n internal_reasoning: z.string().describe(\"Price per internal reasoning.\").nullable().optional(),\n}).passthrough();\nconst OpenrouterListAvailableModels_ArchitectureSchema = z.object({\n modality: z.string().describe(\"Combined modality string (e.g., 'text+image->text').\").nullable().optional(),\n tokenizer: z.string().describe(\"Tokenization method used.\").nullable(),\n instruct_type: z.string().describe(\"Instruction tuning type for the model.\").nullable().optional(),\n input_modalities: z.array(z.string()).describe(\"Supported input types (e.g., 'text', 'image').\"),\n output_modalities: z.array(z.string()).describe(\"Supported output types (e.g., 'text').\"),\n}).passthrough();\nconst OpenrouterListAvailableModels_TopProviderSchema = z.object({\n is_moderated: z.boolean().describe(\"Indicates if the content is moderated.\").nullable(),\n context_length: z.number().int().describe(\"Context window size provided by this provider.\").nullable().optional(),\n max_completion_tokens: z.number().int().describe(\"Maximum tokens that can be generated in the completion.\").nullable().optional(),\n}).passthrough();\nconst OpenrouterListAvailableModels_DefaultParametersSchema = z.object({\n top_p: z.number().describe(\"Default top_p setting.\").nullable().optional(),\n temperature: z.number().describe(\"Default temperature setting.\").nullable().optional(),\n frequency_penalty: z.number().describe(\"Default frequency penalty setting.\").nullable().optional(),\n}).passthrough().describe(\"Default parameter values for the model.\");\nconst OpenrouterListAvailableModels_PerRequestLimitsSchema = z.object({\n prompt_tokens: z.number().describe(\"Maximum prompt tokens allowed per request.\").nullable(),\n completion_tokens: z.number().describe(\"Maximum completion tokens allowed per request.\").nullable(),\n}).passthrough().describe(\"Rate limiting information for the model.\");\nconst OpenrouterListAvailableModels_ModelInfoSchema = z.object({\n id: z.string().describe(\"Unique model identifier.\").nullable(),\n name: z.string().describe(\"Human-readable display name for the model.\").nullable(),\n created: z.number().describe(\"Unix timestamp when the model was added.\").nullable(),\n pricing: OpenrouterListAvailableModels_PricingSchema.nullable(),\n description: z.string().describe(\"Detailed description of the model's capabilities.\").nullable(),\n architecture: OpenrouterListAvailableModels_ArchitectureSchema.nullable(),\n top_provider: OpenrouterListAvailableModels_TopProviderSchema.nullable(),\n canonical_slug: z.string().describe(\"Permanent slug for the model (immutable).\").nullable(),\n context_length: z.number().int().describe(\"Maximum context window size in tokens.\").nullable(),\n expiration_date: z.string().describe(\"ISO 8601 date when the model will be deprecated.\").nullable().optional(),\n hugging_face_id: z.string().describe(\"Identifier for the model on Hugging Face.\").nullable().optional(),\n default_parameters: OpenrouterListAvailableModels_DefaultParametersSchema.nullable(),\n per_request_limits: OpenrouterListAvailableModels_PerRequestLimitsSchema.nullable().optional(),\n supported_parameters: z.array(z.string()).describe(\"Supported API parameters for this model.\"),\n}).passthrough();\nexport const OpenrouterListAvailableModelsOutput = z.object({\n data: z.array(OpenrouterListAvailableModels_ModelInfoSchema).describe(\"List of available models.\"),\n}).passthrough();\n\nexport const openrouterListAvailableModels = action(\"OPENROUTER_LIST_AVAILABLE_MODELS\", {\n slug: \"openrouter-list-available-models\",\n name: \"List Available Models\",\n description: \"Tool to list available models via OpenRouter API. Use after confirming authentication to fetch the model catalog. Use exact model IDs returned here in OPENROUTER_CREATE_CHAT_COMPLETION or OPENROUTER_CREATE_COMPLETION calls — hard-coded IDs may break when the catalog changes. Use exact author and slug values from this response as inputs to OPENROUTER_LIST_MODEL_ENDPOINTS. Models have varying capabilities (e.g., tools, reasoning); verify individual model capabilities before downstream use. Pricing and latency metadata may be null or approximate — handle missing values in routing logic.\",\n input: OpenrouterListAvailableModelsInput,\n output: OpenrouterListAvailableModelsOutput,\n});\n"],"mappings":"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"}
@@ -34,7 +34,7 @@ declare const OpenrouterListAvailableModelsOutput: z.ZodObject<{
34
34
  input_cache_read: z.ZodOptional<z.ZodNullable<z.ZodString>>;
35
35
  input_cache_write: z.ZodOptional<z.ZodNullable<z.ZodString>>;
36
36
  internal_reasoning: z.ZodOptional<z.ZodNullable<z.ZodString>>;
37
- }, z.core.$strip>>;
37
+ }, z.core.$loose>>;
38
38
  description: z.ZodNullable<z.ZodString>;
39
39
  architecture: z.ZodNullable<z.ZodObject<{
40
40
  modality: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -42,12 +42,12 @@ declare const OpenrouterListAvailableModelsOutput: z.ZodObject<{
42
42
  instruct_type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
43
43
  input_modalities: z.ZodArray<z.ZodString>;
44
44
  output_modalities: z.ZodArray<z.ZodString>;
45
- }, z.core.$strip>>;
45
+ }, z.core.$loose>>;
46
46
  top_provider: z.ZodNullable<z.ZodObject<{
47
47
  is_moderated: z.ZodNullable<z.ZodBoolean>;
48
48
  context_length: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
49
49
  max_completion_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
50
- }, z.core.$strip>>;
50
+ }, z.core.$loose>>;
51
51
  canonical_slug: z.ZodNullable<z.ZodString>;
52
52
  context_length: z.ZodNullable<z.ZodNumber>;
53
53
  expiration_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -56,14 +56,14 @@ declare const OpenrouterListAvailableModelsOutput: z.ZodObject<{
56
56
  top_p: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
57
57
  temperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
58
58
  frequency_penalty: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
59
- }, z.core.$strip>>;
59
+ }, z.core.$loose>>;
60
60
  per_request_limits: z.ZodOptional<z.ZodNullable<z.ZodObject<{
61
61
  prompt_tokens: z.ZodNullable<z.ZodNumber>;
62
62
  completion_tokens: z.ZodNullable<z.ZodNumber>;
63
- }, z.core.$strip>>>;
63
+ }, z.core.$loose>>>;
64
64
  supported_parameters: z.ZodArray<z.ZodString>;
65
- }, z.core.$strip>>;
66
- }, z.core.$strip>;
65
+ }, z.core.$loose>>;
66
+ }, z.core.$loose>;
67
67
  declare const openrouterListAvailableModels: import("@keystrokehq/action").WorkflowActionDefinition<{
68
68
  use_rss?: boolean | undefined;
69
69
  category?: "programming" | "roleplay" | "marketing" | "marketing/seo" | "technology" | "science" | "translation" | "legal" | "finance" | "health" | "trivia" | "academia" | undefined;
@@ -34,7 +34,7 @@ declare const OpenrouterListAvailableModelsOutput: z.ZodObject<{
34
34
  input_cache_read: z.ZodOptional<z.ZodNullable<z.ZodString>>;
35
35
  input_cache_write: z.ZodOptional<z.ZodNullable<z.ZodString>>;
36
36
  internal_reasoning: z.ZodOptional<z.ZodNullable<z.ZodString>>;
37
- }, z.core.$strip>>;
37
+ }, z.core.$loose>>;
38
38
  description: z.ZodNullable<z.ZodString>;
39
39
  architecture: z.ZodNullable<z.ZodObject<{
40
40
  modality: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -42,12 +42,12 @@ declare const OpenrouterListAvailableModelsOutput: z.ZodObject<{
42
42
  instruct_type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
43
43
  input_modalities: z.ZodArray<z.ZodString>;
44
44
  output_modalities: z.ZodArray<z.ZodString>;
45
- }, z.core.$strip>>;
45
+ }, z.core.$loose>>;
46
46
  top_provider: z.ZodNullable<z.ZodObject<{
47
47
  is_moderated: z.ZodNullable<z.ZodBoolean>;
48
48
  context_length: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
49
49
  max_completion_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
50
- }, z.core.$strip>>;
50
+ }, z.core.$loose>>;
51
51
  canonical_slug: z.ZodNullable<z.ZodString>;
52
52
  context_length: z.ZodNullable<z.ZodNumber>;
53
53
  expiration_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -56,14 +56,14 @@ declare const OpenrouterListAvailableModelsOutput: z.ZodObject<{
56
56
  top_p: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
57
57
  temperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
58
58
  frequency_penalty: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
59
- }, z.core.$strip>>;
59
+ }, z.core.$loose>>;
60
60
  per_request_limits: z.ZodOptional<z.ZodNullable<z.ZodObject<{
61
61
  prompt_tokens: z.ZodNullable<z.ZodNumber>;
62
62
  completion_tokens: z.ZodNullable<z.ZodNumber>;
63
- }, z.core.$strip>>>;
63
+ }, z.core.$loose>>>;
64
64
  supported_parameters: z.ZodArray<z.ZodString>;
65
- }, z.core.$strip>>;
66
- }, z.core.$strip>;
65
+ }, z.core.$loose>>;
66
+ }, z.core.$loose>;
67
67
  declare const openrouterListAvailableModels: import("@keystrokehq/action").WorkflowActionDefinition<{
68
68
  use_rss?: boolean | undefined;
69
69
  category?: "programming" | "roleplay" | "marketing" | "marketing/seo" | "technology" | "science" | "translation" | "legal" | "finance" | "health" | "trivia" | "academia" | undefined;
@@ -29,28 +29,28 @@ const OpenrouterListAvailableModels_PricingSchema = z.object({
29
29
  input_cache_read: z.string().describe("Price per input cache read.").nullable().optional(),
30
30
  input_cache_write: z.string().describe("Price per input cache write.").nullable().optional(),
31
31
  internal_reasoning: z.string().describe("Price per internal reasoning.").nullable().optional()
32
- });
32
+ }).passthrough();
33
33
  const OpenrouterListAvailableModels_ArchitectureSchema = z.object({
34
34
  modality: z.string().describe("Combined modality string (e.g., 'text+image->text').").nullable().optional(),
35
35
  tokenizer: z.string().describe("Tokenization method used.").nullable(),
36
36
  instruct_type: z.string().describe("Instruction tuning type for the model.").nullable().optional(),
37
37
  input_modalities: z.array(z.string()).describe("Supported input types (e.g., 'text', 'image')."),
38
38
  output_modalities: z.array(z.string()).describe("Supported output types (e.g., 'text').")
39
- });
39
+ }).passthrough();
40
40
  const OpenrouterListAvailableModels_TopProviderSchema = z.object({
41
41
  is_moderated: z.boolean().describe("Indicates if the content is moderated.").nullable(),
42
42
  context_length: z.number().int().describe("Context window size provided by this provider.").nullable().optional(),
43
43
  max_completion_tokens: z.number().int().describe("Maximum tokens that can be generated in the completion.").nullable().optional()
44
- });
44
+ }).passthrough();
45
45
  const OpenrouterListAvailableModels_DefaultParametersSchema = z.object({
46
46
  top_p: z.number().describe("Default top_p setting.").nullable().optional(),
47
47
  temperature: z.number().describe("Default temperature setting.").nullable().optional(),
48
48
  frequency_penalty: z.number().describe("Default frequency penalty setting.").nullable().optional()
49
- }).describe("Default parameter values for the model.");
49
+ }).passthrough().describe("Default parameter values for the model.");
50
50
  const OpenrouterListAvailableModels_PerRequestLimitsSchema = z.object({
51
51
  prompt_tokens: z.number().describe("Maximum prompt tokens allowed per request.").nullable(),
52
52
  completion_tokens: z.number().describe("Maximum completion tokens allowed per request.").nullable()
53
- }).describe("Rate limiting information for the model.");
53
+ }).passthrough().describe("Rate limiting information for the model.");
54
54
  const OpenrouterListAvailableModels_ModelInfoSchema = z.object({
55
55
  id: z.string().describe("Unique model identifier.").nullable(),
56
56
  name: z.string().describe("Human-readable display name for the model.").nullable(),
@@ -66,13 +66,13 @@ const OpenrouterListAvailableModels_ModelInfoSchema = z.object({
66
66
  default_parameters: OpenrouterListAvailableModels_DefaultParametersSchema.nullable(),
67
67
  per_request_limits: OpenrouterListAvailableModels_PerRequestLimitsSchema.nullable().optional(),
68
68
  supported_parameters: z.array(z.string()).describe("Supported API parameters for this model.")
69
- });
69
+ }).passthrough();
70
70
  const openrouterListAvailableModels = action("OPENROUTER_LIST_AVAILABLE_MODELS", {
71
71
  slug: "openrouter-list-available-models",
72
72
  name: "List Available Models",
73
73
  description: "Tool to list available models via OpenRouter API. Use after confirming authentication to fetch the model catalog. Use exact model IDs returned here in OPENROUTER_CREATE_CHAT_COMPLETION or OPENROUTER_CREATE_COMPLETION calls — hard-coded IDs may break when the catalog changes. Use exact author and slug values from this response as inputs to OPENROUTER_LIST_MODEL_ENDPOINTS. Models have varying capabilities (e.g., tools, reasoning); verify individual model capabilities before downstream use. Pricing and latency metadata may be null or approximate — handle missing values in routing logic.",
74
74
  input: OpenrouterListAvailableModelsInput,
75
- output: z.object({ data: z.array(OpenrouterListAvailableModels_ModelInfoSchema).describe("List of available models.") })
75
+ output: z.object({ data: z.array(OpenrouterListAvailableModels_ModelInfoSchema).describe("List of available models.") }).passthrough()
76
76
  });
77
77
  //#endregion
78
78
  export { openrouterListAvailableModels };
@@ -1 +1 @@
1
- {"version":3,"file":"list-available-models.mjs","names":[],"sources":["../../src/actions/list-available-models.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterListAvailableModelsInput = z.object({\n use_rss: z.boolean().default(false).describe(\"Return RSS XML feed instead of JSON (BETA).\").optional(),\n category: z.enum([\"programming\", \"roleplay\", \"marketing\", \"marketing/seo\", \"technology\", \"science\", \"translation\", \"legal\", \"finance\", \"health\", \"trivia\", \"academia\"]).describe(\"Valid categories for filtering models.\").optional(),\n use_rss_chat_links: z.boolean().default(false).describe(\"Use chat URLs instead of model page URLs in RSS items (only applies when use_rss=true) (BETA).\").optional(),\n});\nconst OpenrouterListAvailableModels_PricingSchema = z.object({\n audio: z.string().describe(\"Price per audio unit.\").nullable().optional(),\n image: z.string().describe(\"Price per image.\").nullable().optional(),\n prompt: z.string().describe(\"Price per prompt token.\").nullable(),\n request: z.string().describe(\"Price per request.\").nullable().optional(),\n completion: z.string().describe(\"Price per completion token.\").nullable(),\n web_search: z.string().describe(\"Price per web search.\").nullable().optional(),\n input_cache_read: z.string().describe(\"Price per input cache read.\").nullable().optional(),\n input_cache_write: z.string().describe(\"Price per input cache write.\").nullable().optional(),\n internal_reasoning: z.string().describe(\"Price per internal reasoning.\").nullable().optional(),\n});\nconst OpenrouterListAvailableModels_ArchitectureSchema = z.object({\n modality: z.string().describe(\"Combined modality string (e.g., 'text+image->text').\").nullable().optional(),\n tokenizer: z.string().describe(\"Tokenization method used.\").nullable(),\n instruct_type: z.string().describe(\"Instruction tuning type for the model.\").nullable().optional(),\n input_modalities: z.array(z.string()).describe(\"Supported input types (e.g., 'text', 'image').\"),\n output_modalities: z.array(z.string()).describe(\"Supported output types (e.g., 'text').\"),\n});\nconst OpenrouterListAvailableModels_TopProviderSchema = z.object({\n is_moderated: z.boolean().describe(\"Indicates if the content is moderated.\").nullable(),\n context_length: z.number().int().describe(\"Context window size provided by this provider.\").nullable().optional(),\n max_completion_tokens: z.number().int().describe(\"Maximum tokens that can be generated in the completion.\").nullable().optional(),\n});\nconst OpenrouterListAvailableModels_DefaultParametersSchema = z.object({\n top_p: z.number().describe(\"Default top_p setting.\").nullable().optional(),\n temperature: z.number().describe(\"Default temperature setting.\").nullable().optional(),\n frequency_penalty: z.number().describe(\"Default frequency penalty setting.\").nullable().optional(),\n}).describe(\"Default parameter values for the model.\");\nconst OpenrouterListAvailableModels_PerRequestLimitsSchema = z.object({\n prompt_tokens: z.number().describe(\"Maximum prompt tokens allowed per request.\").nullable(),\n completion_tokens: z.number().describe(\"Maximum completion tokens allowed per request.\").nullable(),\n}).describe(\"Rate limiting information for the model.\");\nconst OpenrouterListAvailableModels_ModelInfoSchema = z.object({\n id: z.string().describe(\"Unique model identifier.\").nullable(),\n name: z.string().describe(\"Human-readable display name for the model.\").nullable(),\n created: z.number().describe(\"Unix timestamp when the model was added.\").nullable(),\n pricing: OpenrouterListAvailableModels_PricingSchema.nullable(),\n description: z.string().describe(\"Detailed description of the model's capabilities.\").nullable(),\n architecture: OpenrouterListAvailableModels_ArchitectureSchema.nullable(),\n top_provider: OpenrouterListAvailableModels_TopProviderSchema.nullable(),\n canonical_slug: z.string().describe(\"Permanent slug for the model (immutable).\").nullable(),\n context_length: z.number().int().describe(\"Maximum context window size in tokens.\").nullable(),\n expiration_date: z.string().describe(\"ISO 8601 date when the model will be deprecated.\").nullable().optional(),\n hugging_face_id: z.string().describe(\"Identifier for the model on Hugging Face.\").nullable().optional(),\n default_parameters: OpenrouterListAvailableModels_DefaultParametersSchema.nullable(),\n per_request_limits: OpenrouterListAvailableModels_PerRequestLimitsSchema.nullable().optional(),\n supported_parameters: z.array(z.string()).describe(\"Supported API parameters for this model.\"),\n});\nexport const OpenrouterListAvailableModelsOutput = z.object({\n data: z.array(OpenrouterListAvailableModels_ModelInfoSchema).describe(\"List of available models.\"),\n});\n\nexport const openrouterListAvailableModels = action(\"OPENROUTER_LIST_AVAILABLE_MODELS\", {\n slug: \"openrouter-list-available-models\",\n name: \"List Available Models\",\n description: \"Tool to list available models via OpenRouter API. Use after confirming authentication to fetch the model catalog. Use exact model IDs returned here in OPENROUTER_CREATE_CHAT_COMPLETION or OPENROUTER_CREATE_COMPLETION calls — hard-coded IDs may break when the catalog changes. Use exact author and slug values from this response as inputs to OPENROUTER_LIST_MODEL_ENDPOINTS. Models have varying capabilities (e.g., tools, reasoning); verify individual model capabilities before downstream use. Pricing and latency metadata may be null or approximate — handle missing values in routing logic.\",\n input: OpenrouterListAvailableModelsInput,\n output: OpenrouterListAvailableModelsOutput,\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"list-available-models.mjs","names":[],"sources":["../../src/actions/list-available-models.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterListAvailableModelsInput = z.object({\n use_rss: z.boolean().default(false).describe(\"Return RSS XML feed instead of JSON (BETA).\").optional(),\n category: z.enum([\"programming\", \"roleplay\", \"marketing\", \"marketing/seo\", \"technology\", \"science\", \"translation\", \"legal\", \"finance\", \"health\", \"trivia\", \"academia\"]).describe(\"Valid categories for filtering models.\").optional(),\n use_rss_chat_links: z.boolean().default(false).describe(\"Use chat URLs instead of model page URLs in RSS items (only applies when use_rss=true) (BETA).\").optional(),\n});\nconst OpenrouterListAvailableModels_PricingSchema = z.object({\n audio: z.string().describe(\"Price per audio unit.\").nullable().optional(),\n image: z.string().describe(\"Price per image.\").nullable().optional(),\n prompt: z.string().describe(\"Price per prompt token.\").nullable(),\n request: z.string().describe(\"Price per request.\").nullable().optional(),\n completion: z.string().describe(\"Price per completion token.\").nullable(),\n web_search: z.string().describe(\"Price per web search.\").nullable().optional(),\n input_cache_read: z.string().describe(\"Price per input cache read.\").nullable().optional(),\n input_cache_write: z.string().describe(\"Price per input cache write.\").nullable().optional(),\n internal_reasoning: z.string().describe(\"Price per internal reasoning.\").nullable().optional(),\n}).passthrough();\nconst OpenrouterListAvailableModels_ArchitectureSchema = z.object({\n modality: z.string().describe(\"Combined modality string (e.g., 'text+image->text').\").nullable().optional(),\n tokenizer: z.string().describe(\"Tokenization method used.\").nullable(),\n instruct_type: z.string().describe(\"Instruction tuning type for the model.\").nullable().optional(),\n input_modalities: z.array(z.string()).describe(\"Supported input types (e.g., 'text', 'image').\"),\n output_modalities: z.array(z.string()).describe(\"Supported output types (e.g., 'text').\"),\n}).passthrough();\nconst OpenrouterListAvailableModels_TopProviderSchema = z.object({\n is_moderated: z.boolean().describe(\"Indicates if the content is moderated.\").nullable(),\n context_length: z.number().int().describe(\"Context window size provided by this provider.\").nullable().optional(),\n max_completion_tokens: z.number().int().describe(\"Maximum tokens that can be generated in the completion.\").nullable().optional(),\n}).passthrough();\nconst OpenrouterListAvailableModels_DefaultParametersSchema = z.object({\n top_p: z.number().describe(\"Default top_p setting.\").nullable().optional(),\n temperature: z.number().describe(\"Default temperature setting.\").nullable().optional(),\n frequency_penalty: z.number().describe(\"Default frequency penalty setting.\").nullable().optional(),\n}).passthrough().describe(\"Default parameter values for the model.\");\nconst OpenrouterListAvailableModels_PerRequestLimitsSchema = z.object({\n prompt_tokens: z.number().describe(\"Maximum prompt tokens allowed per request.\").nullable(),\n completion_tokens: z.number().describe(\"Maximum completion tokens allowed per request.\").nullable(),\n}).passthrough().describe(\"Rate limiting information for the model.\");\nconst OpenrouterListAvailableModels_ModelInfoSchema = z.object({\n id: z.string().describe(\"Unique model identifier.\").nullable(),\n name: z.string().describe(\"Human-readable display name for the model.\").nullable(),\n created: z.number().describe(\"Unix timestamp when the model was added.\").nullable(),\n pricing: OpenrouterListAvailableModels_PricingSchema.nullable(),\n description: z.string().describe(\"Detailed description of the model's capabilities.\").nullable(),\n architecture: OpenrouterListAvailableModels_ArchitectureSchema.nullable(),\n top_provider: OpenrouterListAvailableModels_TopProviderSchema.nullable(),\n canonical_slug: z.string().describe(\"Permanent slug for the model (immutable).\").nullable(),\n context_length: z.number().int().describe(\"Maximum context window size in tokens.\").nullable(),\n expiration_date: z.string().describe(\"ISO 8601 date when the model will be deprecated.\").nullable().optional(),\n hugging_face_id: z.string().describe(\"Identifier for the model on Hugging Face.\").nullable().optional(),\n default_parameters: OpenrouterListAvailableModels_DefaultParametersSchema.nullable(),\n per_request_limits: OpenrouterListAvailableModels_PerRequestLimitsSchema.nullable().optional(),\n supported_parameters: z.array(z.string()).describe(\"Supported API parameters for this model.\"),\n}).passthrough();\nexport const OpenrouterListAvailableModelsOutput = z.object({\n data: z.array(OpenrouterListAvailableModels_ModelInfoSchema).describe(\"List of available models.\"),\n}).passthrough();\n\nexport const openrouterListAvailableModels = action(\"OPENROUTER_LIST_AVAILABLE_MODELS\", {\n slug: \"openrouter-list-available-models\",\n name: \"List Available Models\",\n description: \"Tool to list available models via OpenRouter API. Use after confirming authentication to fetch the model catalog. Use exact model IDs returned here in OPENROUTER_CREATE_CHAT_COMPLETION or OPENROUTER_CREATE_COMPLETION calls — hard-coded IDs may break when the catalog changes. Use exact author and slug values from this response as inputs to OPENROUTER_LIST_MODEL_ENDPOINTS. Models have varying capabilities (e.g., tools, reasoning); verify individual model capabilities before downstream use. Pricing and latency metadata may be null or approximate — handle missing values in routing logic.\",\n input: OpenrouterListAvailableModelsInput,\n output: OpenrouterListAvailableModelsOutput,\n});\n"],"mappings":";;;AAIA,MAAa,qCAAqC,EAAE,OAAO;CACzD,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,6CAA6C,CAAC,CAAC,SAAS;CACrG,UAAU,EAAE,KAAK;EAAC;EAAe;EAAY;EAAa;EAAiB;EAAc;EAAW;EAAe;EAAS;EAAW;EAAU;EAAU;CAAU,CAAC,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS;CACpO,oBAAoB,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,gGAAgG,CAAC,CAAC,SAAS;AACrK,CAAC;AACD,MAAM,8CAA8C,EAAE,OAAO;CAC3D,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxE,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnE,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,yBAAyB,CAAC,CAAC,SAAS;CAChE,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,oBAAoB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvE,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,6BAA6B,CAAC,CAAC,SAAS;CACxE,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC7E,kBAAkB,EAAE,OAAO,CAAC,CAAC,SAAS,6BAA6B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzF,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3F,oBAAoB,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC/F,CAAC,CAAC,CAAC,YAAY;AACf,MAAM,mDAAmD,EAAE,OAAO;CAChE,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,sDAAsD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1G,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,2BAA2B,CAAC,CAAC,SAAS;CACrE,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjG,kBAAkB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,gDAAgD;CAC/F,mBAAmB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,wCAAwC;AAC1F,CAAC,CAAC,CAAC,YAAY;AACf,MAAM,kDAAkD,EAAE,OAAO;CAC/D,cAAc,EAAE,QAAQ,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS;CACtF,gBAAgB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,gDAAgD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChH,uBAAuB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAClI,CAAC,CAAC,CAAC,YAAY;AACf,MAAM,wDAAwD,EAAE,OAAO;CACrE,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,wBAAwB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzE,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACrF,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACnG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,yCAAyC;AACnE,MAAM,uDAAuD,EAAE,OAAO;CACpE,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS;CAC1F,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,gDAAgD,CAAC,CAAC,SAAS;AACpG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,0CAA0C;AACpE,MAAM,gDAAgD,EAAE,OAAO;CAC7D,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B,CAAC,CAAC,SAAS;CAC7D,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS;CACjF,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,0CAA0C,CAAC,CAAC,SAAS;CAClF,SAAS,4CAA4C,SAAS;CAC9D,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CAC/F,cAAc,iDAAiD,SAAS;CACxE,cAAc,gDAAgD,SAAS;CACvE,gBAAgB,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS;CAC1F,gBAAgB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS;CAC7F,iBAAiB,EAAE,OAAO,CAAC,CAAC,SAAS,kDAAkD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC7G,iBAAiB,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtG,oBAAoB,sDAAsD,SAAS;CACnF,oBAAoB,qDAAqD,SAAS,CAAC,CAAC,SAAS;CAC7F,sBAAsB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,0CAA0C;AAC/F,CAAC,CAAC,CAAC,YAAY;AAKf,MAAa,gCAAgC,OAAO,oCAAoC;CACtF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QATiD,EAAE,OAAO,EAC1D,MAAM,EAAE,MAAM,6CAA6C,CAAC,CAAC,SAAS,2BAA2B,EACnG,CAAC,CAAC,CAAC,YAOO;AACV,CAAC"}
@@ -10,19 +10,19 @@ const OpenrouterListEmbeddingModels_PricingSchema = zod.z.object({
10
10
  prompt: zod.z.string().describe("Price per prompt token.").nullable(),
11
11
  request: zod.z.string().describe("Price per request.").nullable().optional(),
12
12
  completion: zod.z.string().describe("Price per completion token.").nullable()
13
- });
13
+ }).passthrough();
14
14
  const OpenrouterListEmbeddingModels_ArchitectureSchema = zod.z.object({
15
15
  modality: zod.z.string().describe("Model modality (e.g., 'text->text').").nullable().optional(),
16
16
  tokenizer: zod.z.string().describe("Tokenization method used.").nullable(),
17
17
  instruct_type: zod.z.string().describe("Instruction format type (e.g., 'chatml').").nullable().optional(),
18
18
  input_modalities: zod.z.array(zod.z.string()).describe("Supported input types (e.g., 'text', 'image')."),
19
19
  output_modalities: zod.z.array(zod.z.string()).describe("Supported output types (e.g., 'text').")
20
- });
20
+ }).passthrough();
21
21
  const OpenrouterListEmbeddingModels_TopProviderSchema = zod.z.object({
22
22
  is_moderated: zod.z.boolean().describe("Indicates if the content is moderated.").nullable(),
23
23
  context_length: zod.z.number().int().describe("Maximum context window size in tokens for the top provider.").nullable(),
24
24
  max_completion_tokens: zod.z.number().int().describe("Maximum number of completion tokens.").nullable().optional()
25
- });
25
+ }).passthrough();
26
26
  const OpenrouterListEmbeddingModels_EmbeddingModelInfoSchema = zod.z.object({
27
27
  id: zod.z.string().describe("Unique model identifier.").nullable(),
28
28
  name: zod.z.string().describe("Human-readable display name for the model.").nullable(),
@@ -35,11 +35,11 @@ const OpenrouterListEmbeddingModels_EmbeddingModelInfoSchema = zod.z.object({
35
35
  context_length: zod.z.number().int().describe("Maximum context window size in tokens.").nullable(),
36
36
  expiration_date: zod.z.string().describe("Expiration date of the model, if applicable.").nullable().optional(),
37
37
  hugging_face_id: zod.z.string().describe("Identifier for the model on Hugging Face.").nullable().optional(),
38
- default_parameters: zod.z.object({}).describe("Default parameters for the model, or null if none.").nullable().optional(),
39
- per_request_limits: zod.z.object({}).describe("Rate limiting information as a mapping of limit names to values, or null if no limits.").nullable().optional(),
38
+ default_parameters: zod.z.record(zod.z.string(), zod.z.unknown()).describe("Default parameters for the model, or null if none.").nullable().optional(),
39
+ per_request_limits: zod.z.record(zod.z.string(), zod.z.unknown()).describe("Rate limiting information as a mapping of limit names to values, or null if no limits.").nullable().optional(),
40
40
  supported_parameters: zod.z.array(zod.z.string()).describe("Supported API parameters for this model.")
41
- });
42
- const OpenrouterListEmbeddingModelsOutput = zod.z.object({ data: zod.z.array(OpenrouterListEmbeddingModels_EmbeddingModelInfoSchema).describe("List of available embedding models.") });
41
+ }).passthrough();
42
+ const OpenrouterListEmbeddingModelsOutput = zod.z.object({ data: zod.z.array(OpenrouterListEmbeddingModels_EmbeddingModelInfoSchema).describe("List of available embedding models.") }).passthrough();
43
43
  const openrouterListEmbeddingModels = require_action.action("OPENROUTER_LIST_EMBEDDING_MODELS", {
44
44
  slug: "openrouter-list-embedding-models",
45
45
  name: "List Embedding Models",
@@ -1 +1 @@
1
- {"version":3,"file":"list-embedding-models.cjs","names":["z","action"],"sources":["../../src/actions/list-embedding-models.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterListEmbeddingModelsInput = z.object({\n \"X-Title\": z.string().describe(\"The app display name allows you to customize how your app appears in OpenRouter's dashboard.\").optional(),\n \"HTTP-Referer\": z.string().describe(\"The app identifier should be your app's URL and is used as the primary identifier for rankings. This is used to track API usage per application.\").optional(),\n});\nconst OpenrouterListEmbeddingModels_PricingSchema = z.object({\n image: z.string().describe(\"Price per image.\").nullable().optional(),\n prompt: z.string().describe(\"Price per prompt token.\").nullable(),\n request: z.string().describe(\"Price per request.\").nullable().optional(),\n completion: z.string().describe(\"Price per completion token.\").nullable(),\n});\nconst OpenrouterListEmbeddingModels_ArchitectureSchema = z.object({\n modality: z.string().describe(\"Model modality (e.g., 'text->text').\").nullable().optional(),\n tokenizer: z.string().describe(\"Tokenization method used.\").nullable(),\n instruct_type: z.string().describe(\"Instruction format type (e.g., 'chatml').\").nullable().optional(),\n input_modalities: z.array(z.string()).describe(\"Supported input types (e.g., 'text', 'image').\"),\n output_modalities: z.array(z.string()).describe(\"Supported output types (e.g., 'text').\"),\n});\nconst OpenrouterListEmbeddingModels_TopProviderSchema = z.object({\n is_moderated: z.boolean().describe(\"Indicates if the content is moderated.\").nullable(),\n context_length: z.number().int().describe(\"Maximum context window size in tokens for the top provider.\").nullable(),\n max_completion_tokens: z.number().int().describe(\"Maximum number of completion tokens.\").nullable().optional(),\n});\nconst OpenrouterListEmbeddingModels_EmbeddingModelInfoSchema = z.object({\n id: z.string().describe(\"Unique model identifier.\").nullable(),\n name: z.string().describe(\"Human-readable display name for the model.\").nullable(),\n created: z.number().describe(\"Unix timestamp when the model was added.\").nullable(),\n pricing: OpenrouterListEmbeddingModels_PricingSchema.nullable(),\n description: z.string().describe(\"Detailed description of the model's capabilities.\").nullable().optional(),\n architecture: OpenrouterListEmbeddingModels_ArchitectureSchema.nullable(),\n top_provider: OpenrouterListEmbeddingModels_TopProviderSchema.nullable(),\n canonical_slug: z.string().describe(\"Permanent slug for the model (immutable).\").nullable(),\n context_length: z.number().int().describe(\"Maximum context window size in tokens.\").nullable(),\n expiration_date: z.string().describe(\"Expiration date of the model, if applicable.\").nullable().optional(),\n hugging_face_id: z.string().describe(\"Identifier for the model on Hugging Face.\").nullable().optional(),\n default_parameters: z.object({}).describe(\"Default parameters for the model, or null if none.\").nullable().optional(),\n per_request_limits: z.object({}).describe(\"Rate limiting information as a mapping of limit names to values, or null if no limits.\").nullable().optional(),\n supported_parameters: z.array(z.string()).describe(\"Supported API parameters for this model.\"),\n});\nexport const OpenrouterListEmbeddingModelsOutput = z.object({\n data: z.array(OpenrouterListEmbeddingModels_EmbeddingModelInfoSchema).describe(\"List of available embedding models.\"),\n});\n\nexport const openrouterListEmbeddingModels = action(\"OPENROUTER_LIST_EMBEDDING_MODELS\", {\n slug: \"openrouter-list-embedding-models\",\n name: \"List Embedding Models\",\n description: \"Tool to list all available embeddings models via OpenRouter API. Returns a list of embeddings models with their properties including architecture, pricing, and capabilities.\",\n input: OpenrouterListEmbeddingModelsInput,\n output: OpenrouterListEmbeddingModelsOutput,\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"list-embedding-models.cjs","names":["z","action"],"sources":["../../src/actions/list-embedding-models.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpenrouterListEmbeddingModelsInput = z.object({\n \"X-Title\": z.string().describe(\"The app display name allows you to customize how your app appears in OpenRouter's dashboard.\").optional(),\n \"HTTP-Referer\": z.string().describe(\"The app identifier should be your app's URL and is used as the primary identifier for rankings. This is used to track API usage per application.\").optional(),\n});\nconst OpenrouterListEmbeddingModels_PricingSchema = z.object({\n image: z.string().describe(\"Price per image.\").nullable().optional(),\n prompt: z.string().describe(\"Price per prompt token.\").nullable(),\n request: z.string().describe(\"Price per request.\").nullable().optional(),\n completion: z.string().describe(\"Price per completion token.\").nullable(),\n}).passthrough();\nconst OpenrouterListEmbeddingModels_ArchitectureSchema = z.object({\n modality: z.string().describe(\"Model modality (e.g., 'text->text').\").nullable().optional(),\n tokenizer: z.string().describe(\"Tokenization method used.\").nullable(),\n instruct_type: z.string().describe(\"Instruction format type (e.g., 'chatml').\").nullable().optional(),\n input_modalities: z.array(z.string()).describe(\"Supported input types (e.g., 'text', 'image').\"),\n output_modalities: z.array(z.string()).describe(\"Supported output types (e.g., 'text').\"),\n}).passthrough();\nconst OpenrouterListEmbeddingModels_TopProviderSchema = z.object({\n is_moderated: z.boolean().describe(\"Indicates if the content is moderated.\").nullable(),\n context_length: z.number().int().describe(\"Maximum context window size in tokens for the top provider.\").nullable(),\n max_completion_tokens: z.number().int().describe(\"Maximum number of completion tokens.\").nullable().optional(),\n}).passthrough();\nconst OpenrouterListEmbeddingModels_EmbeddingModelInfoSchema = z.object({\n id: z.string().describe(\"Unique model identifier.\").nullable(),\n name: z.string().describe(\"Human-readable display name for the model.\").nullable(),\n created: z.number().describe(\"Unix timestamp when the model was added.\").nullable(),\n pricing: OpenrouterListEmbeddingModels_PricingSchema.nullable(),\n description: z.string().describe(\"Detailed description of the model's capabilities.\").nullable().optional(),\n architecture: OpenrouterListEmbeddingModels_ArchitectureSchema.nullable(),\n top_provider: OpenrouterListEmbeddingModels_TopProviderSchema.nullable(),\n canonical_slug: z.string().describe(\"Permanent slug for the model (immutable).\").nullable(),\n context_length: z.number().int().describe(\"Maximum context window size in tokens.\").nullable(),\n expiration_date: z.string().describe(\"Expiration date of the model, if applicable.\").nullable().optional(),\n hugging_face_id: z.string().describe(\"Identifier for the model on Hugging Face.\").nullable().optional(),\n default_parameters: z.record(z.string(), z.unknown()).describe(\"Default parameters for the model, or null if none.\").nullable().optional(),\n per_request_limits: z.record(z.string(), z.unknown()).describe(\"Rate limiting information as a mapping of limit names to values, or null if no limits.\").nullable().optional(),\n supported_parameters: z.array(z.string()).describe(\"Supported API parameters for this model.\"),\n}).passthrough();\nexport const OpenrouterListEmbeddingModelsOutput = z.object({\n data: z.array(OpenrouterListEmbeddingModels_EmbeddingModelInfoSchema).describe(\"List of available embedding models.\"),\n}).passthrough();\n\nexport const openrouterListEmbeddingModels = action(\"OPENROUTER_LIST_EMBEDDING_MODELS\", {\n slug: \"openrouter-list-embedding-models\",\n name: \"List Embedding Models\",\n description: \"Tool to list all available embeddings models via OpenRouter API. Returns a list of embeddings models with their properties including architecture, pricing, and capabilities.\",\n input: OpenrouterListEmbeddingModelsInput,\n output: OpenrouterListEmbeddingModelsOutput,\n});\n"],"mappings":"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"}
@@ -15,7 +15,7 @@ declare const OpenrouterListEmbeddingModelsOutput: z.ZodObject<{
15
15
  prompt: z.ZodNullable<z.ZodString>;
16
16
  request: z.ZodOptional<z.ZodNullable<z.ZodString>>;
17
17
  completion: z.ZodNullable<z.ZodString>;
18
- }, z.core.$strip>>;
18
+ }, z.core.$loose>>;
19
19
  description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
20
20
  architecture: z.ZodNullable<z.ZodObject<{
21
21
  modality: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -23,21 +23,21 @@ declare const OpenrouterListEmbeddingModelsOutput: z.ZodObject<{
23
23
  instruct_type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
24
24
  input_modalities: z.ZodArray<z.ZodString>;
25
25
  output_modalities: z.ZodArray<z.ZodString>;
26
- }, z.core.$strip>>;
26
+ }, z.core.$loose>>;
27
27
  top_provider: z.ZodNullable<z.ZodObject<{
28
28
  is_moderated: z.ZodNullable<z.ZodBoolean>;
29
29
  context_length: z.ZodNullable<z.ZodNumber>;
30
30
  max_completion_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
31
- }, z.core.$strip>>;
31
+ }, z.core.$loose>>;
32
32
  canonical_slug: z.ZodNullable<z.ZodString>;
33
33
  context_length: z.ZodNullable<z.ZodNumber>;
34
34
  expiration_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
35
35
  hugging_face_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
36
- default_parameters: z.ZodOptional<z.ZodNullable<z.ZodObject<{}, z.core.$strip>>>;
37
- per_request_limits: z.ZodOptional<z.ZodNullable<z.ZodObject<{}, z.core.$strip>>>;
36
+ default_parameters: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
37
+ per_request_limits: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
38
38
  supported_parameters: z.ZodArray<z.ZodString>;
39
- }, z.core.$strip>>;
40
- }, z.core.$strip>;
39
+ }, z.core.$loose>>;
40
+ }, z.core.$loose>;
41
41
  declare const openrouterListEmbeddingModels: import("@keystrokehq/action").WorkflowActionDefinition<{
42
42
  "X-Title"?: string | undefined;
43
43
  "HTTP-Referer"?: string | undefined;
@@ -15,7 +15,7 @@ declare const OpenrouterListEmbeddingModelsOutput: z.ZodObject<{
15
15
  prompt: z.ZodNullable<z.ZodString>;
16
16
  request: z.ZodOptional<z.ZodNullable<z.ZodString>>;
17
17
  completion: z.ZodNullable<z.ZodString>;
18
- }, z.core.$strip>>;
18
+ }, z.core.$loose>>;
19
19
  description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
20
20
  architecture: z.ZodNullable<z.ZodObject<{
21
21
  modality: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -23,21 +23,21 @@ declare const OpenrouterListEmbeddingModelsOutput: z.ZodObject<{
23
23
  instruct_type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
24
24
  input_modalities: z.ZodArray<z.ZodString>;
25
25
  output_modalities: z.ZodArray<z.ZodString>;
26
- }, z.core.$strip>>;
26
+ }, z.core.$loose>>;
27
27
  top_provider: z.ZodNullable<z.ZodObject<{
28
28
  is_moderated: z.ZodNullable<z.ZodBoolean>;
29
29
  context_length: z.ZodNullable<z.ZodNumber>;
30
30
  max_completion_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
31
- }, z.core.$strip>>;
31
+ }, z.core.$loose>>;
32
32
  canonical_slug: z.ZodNullable<z.ZodString>;
33
33
  context_length: z.ZodNullable<z.ZodNumber>;
34
34
  expiration_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
35
35
  hugging_face_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
36
- default_parameters: z.ZodOptional<z.ZodNullable<z.ZodObject<{}, z.core.$strip>>>;
37
- per_request_limits: z.ZodOptional<z.ZodNullable<z.ZodObject<{}, z.core.$strip>>>;
36
+ default_parameters: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
37
+ per_request_limits: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
38
38
  supported_parameters: z.ZodArray<z.ZodString>;
39
- }, z.core.$strip>>;
40
- }, z.core.$strip>;
39
+ }, z.core.$loose>>;
40
+ }, z.core.$loose>;
41
41
  declare const openrouterListEmbeddingModels: import("@keystrokehq/action").WorkflowActionDefinition<{
42
42
  "X-Title"?: string | undefined;
43
43
  "HTTP-Referer"?: string | undefined;