@opencode/ai 2.0.22 → 2.0.24

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 (107) hide show
  1. package/README.md +61 -1
  2. package/dist/cache-policy.js +13 -9
  3. package/dist/protocols/alibaba-chat.d.ts +3 -3
  4. package/dist/protocols/alibaba-messages.d.ts +3 -0
  5. package/dist/protocols/alibaba-responses.d.ts +19 -12
  6. package/dist/protocols/alibaba-responses.js +3 -5
  7. package/dist/protocols/anthropic-messages.d.ts +3 -0
  8. package/dist/protocols/anthropic-messages.js +53 -48
  9. package/dist/protocols/bedrock-converse.js +3 -3
  10. package/dist/protocols/cartesia-speech.js +3 -3
  11. package/dist/protocols/cohere-chat.d.ts +178 -0
  12. package/dist/protocols/cohere-chat.js +299 -0
  13. package/dist/protocols/elevenlabs-speech.js +3 -3
  14. package/dist/protocols/gemini.d.ts +2 -2
  15. package/dist/protocols/gemini.js +3 -3
  16. package/dist/protocols/google-interactions.d.ts +236 -0
  17. package/dist/protocols/google-interactions.js +478 -0
  18. package/dist/protocols/google-speech.js +1 -1
  19. package/dist/protocols/google-transcription.js +1 -1
  20. package/dist/protocols/index.d.ts +2 -0
  21. package/dist/protocols/index.js +2 -0
  22. package/dist/protocols/meta-messages.d.ts +3 -0
  23. package/dist/protocols/meta-responses.d.ts +34 -58
  24. package/dist/protocols/meta-responses.js +8 -27
  25. package/dist/protocols/mistral-chat.d.ts +24 -9
  26. package/dist/protocols/mistral-chat.js +22 -10
  27. package/dist/protocols/open-responses.d.ts +424 -103
  28. package/dist/protocols/open-responses.js +30 -20
  29. package/dist/protocols/openai-chat.d.ts +401 -5
  30. package/dist/protocols/openai-chat.js +18 -21
  31. package/dist/protocols/openai-compatible-chat.d.ts +1 -1
  32. package/dist/protocols/openai-compatible-responses.d.ts +16 -4
  33. package/dist/protocols/openai-images.js +2 -2
  34. package/dist/protocols/openai-responses.d.ts +90 -223
  35. package/dist/protocols/openai-responses.js +6 -13
  36. package/dist/protocols/openai-speech.js +1 -1
  37. package/dist/protocols/openai-transcription.js +1 -1
  38. package/dist/protocols/shared.js +2 -2
  39. package/dist/protocols/stability-images.js +1 -1
  40. package/dist/protocols/utils/bedrock-media.js +2 -2
  41. package/dist/protocols/utils/gateway-protocol.d.ts +17 -0
  42. package/dist/protocols/utils/gateway-protocol.js +57 -0
  43. package/dist/protocols/utils/responses-checkpoint.js +2 -2
  44. package/dist/protocols/utils/responses-hosted-tools.js +1 -1
  45. package/dist/protocols/utils/tool-stream.js +15 -7
  46. package/dist/protocols/venice-chat.d.ts +280 -0
  47. package/dist/protocols/venice-chat.js +283 -0
  48. package/dist/protocols/xai-responses.d.ts +21 -21
  49. package/dist/protocols/xai-responses.js +2 -8
  50. package/dist/protocols/zai-chat.d.ts +3 -3
  51. package/dist/protocols/zai-messages.d.ts +3 -0
  52. package/dist/provider-error.js +7 -1
  53. package/dist/providers/alibaba.d.ts +17 -13
  54. package/dist/providers/amazon-bedrock/mantle/messages.d.ts +2 -0
  55. package/dist/providers/amazon-bedrock/mantle/messages.js +1 -0
  56. package/dist/providers/amazon-bedrock-mantle.d.ts +301 -9
  57. package/dist/providers/amazon-bedrock-mantle.js +28 -3
  58. package/dist/providers/azure.d.ts +13 -61
  59. package/dist/providers/baseten.d.ts +2 -2
  60. package/dist/providers/cerebras.d.ts +2 -2
  61. package/dist/providers/cloudflare-ai-gateway.d.ts +14 -62
  62. package/dist/providers/cloudflare-workers-ai.d.ts +2 -2
  63. package/dist/providers/cohere/chat.d.ts +4 -0
  64. package/dist/providers/cohere/chat.js +8 -0
  65. package/dist/providers/cohere.d.ts +395 -0
  66. package/dist/providers/cohere.js +48 -0
  67. package/dist/providers/deepinfra.d.ts +2 -2
  68. package/dist/providers/deepseek.d.ts +2 -2
  69. package/dist/providers/digitalocean.d.ts +5 -5
  70. package/dist/providers/fireworks.d.ts +2 -2
  71. package/dist/providers/google/interactions.d.ts +7 -0
  72. package/dist/providers/google/interactions.js +8 -0
  73. package/dist/providers/google-vertex-chat.d.ts +1 -1
  74. package/dist/providers/google-vertex-messages.js +1 -0
  75. package/dist/providers/google-vertex-responses.d.ts +16 -4
  76. package/dist/providers/google-vertex.d.ts +1 -1
  77. package/dist/providers/google.d.ts +95 -4
  78. package/dist/providers/google.js +8 -1
  79. package/dist/providers/groq.d.ts +4 -4
  80. package/dist/providers/index.d.ts +2 -0
  81. package/dist/providers/index.js +2 -0
  82. package/dist/providers/meta.d.ts +15 -28
  83. package/dist/providers/minimax.d.ts +17 -5
  84. package/dist/providers/mistral.d.ts +10 -4
  85. package/dist/providers/moonshot.d.ts +17 -5
  86. package/dist/providers/openai-compatible-responses.d.ts +16 -4
  87. package/dist/providers/openai-compatible.d.ts +1 -1
  88. package/dist/providers/openai-options.d.ts +1 -1
  89. package/dist/providers/openai.d.ts +7 -31
  90. package/dist/providers/openrouter.d.ts +5 -5
  91. package/dist/providers/togetherai.d.ts +2 -2
  92. package/dist/providers/venice.d.ts +183 -0
  93. package/dist/providers/venice.js +38 -0
  94. package/dist/providers/vercel-ai-gateway/chat.d.ts +2 -0
  95. package/dist/providers/vercel-ai-gateway/chat.js +1 -0
  96. package/dist/providers/vercel-ai-gateway/messages.d.ts +2 -0
  97. package/dist/providers/vercel-ai-gateway/messages.js +1 -0
  98. package/dist/providers/vercel-ai-gateway/responses.d.ts +2 -0
  99. package/dist/providers/vercel-ai-gateway/responses.js +1 -0
  100. package/dist/providers/vercel-ai-gateway.d.ts +91 -9
  101. package/dist/providers/vercel-ai-gateway.js +161 -21
  102. package/dist/providers/xai.d.ts +1 -1
  103. package/dist/providers/zai-coding-plan.d.ts +17 -5
  104. package/dist/providers/zai.d.ts +1 -1
  105. package/dist/route/client.js +2 -5
  106. package/dist/route/framing.js +23 -23
  107. package/package.json +3 -3
@@ -95,11 +95,21 @@ export declare const ConfigurationUpdate: Schema.Struct<{
95
95
  readonly effort: Schema.declare<OpenResponsesOptions.ReasoningEffort, OpenResponsesOptions.ReasoningEffort>;
96
96
  }>;
97
97
  }>;
98
- type ConfigurationUpdate = Schema.Schema.Type<typeof ConfigurationUpdate>;
98
+ export type ConfigurationUpdate = Schema.Schema.Type<typeof ConfigurationUpdate>;
99
+ export declare const HostedToolReplay: Schema.StructWithRest<Schema.Struct<{
100
+ readonly type: Schema.String;
101
+ readonly id: Schema.String;
102
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>;
103
+ export type HostedToolReplayItem = Schema.Schema.Type<typeof HostedToolReplay>;
99
104
  export declare const InputItem: Schema.Union<readonly [Schema.Struct<{
100
105
  readonly type: Schema.Literal<"compaction">;
101
106
  readonly id: Schema.optional<Schema.NullOr<Schema.String>>;
102
107
  readonly encrypted_content: Schema.String;
108
+ }>, Schema.Struct<{
109
+ readonly type: Schema.Literal<"configuration_update">;
110
+ readonly reasoning: Schema.Struct<{
111
+ readonly effort: Schema.declare<OpenResponsesOptions.ReasoningEffort, OpenResponsesOptions.ReasoningEffort>;
112
+ }>;
103
113
  }>, Schema.Struct<{
104
114
  readonly type: Schema.tag<"message">;
105
115
  readonly role: Schema.tag<"system">;
@@ -199,23 +209,10 @@ export declare const InputItem: Schema.Union<readonly [Schema.Struct<{
199
209
  readonly arguments: Schema.optional<Schema.String>;
200
210
  readonly output: Schema.optional<Schema.NullOr<Schema.String>>;
201
211
  readonly error: Schema.optional<Schema.Unknown>;
202
- }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>]>]>;
203
- type OpenResponsesInputItem = Schema.Schema.Type<typeof InputItem>;
204
- export type HostedToolReplayItem = {
205
- readonly type: string;
206
- readonly id: string;
207
- readonly [key: string]: unknown;
208
- };
209
- type LoweredInputItem = OpenResponsesInputItem | HostedToolReplayItem | ConfigurationUpdate | {
210
- readonly type: "message";
211
- readonly id?: string;
212
- readonly role: "assistant";
213
- readonly content: ReadonlyArray<{
214
- readonly type: "output_text";
215
- readonly text: string;
216
- }>;
217
- readonly phase?: MessagePhase | null;
218
- };
212
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>]>, Schema.StructWithRest<Schema.Struct<{
213
+ readonly type: Schema.String;
214
+ readonly id: Schema.String;
215
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>]>;
219
216
  export declare const Tool: Schema.Struct<{
220
217
  readonly type: Schema.tag<"function">;
221
218
  readonly name: Schema.String;
@@ -223,6 +220,10 @@ export declare const Tool: Schema.Struct<{
223
220
  readonly parameters: Schema.$Record<Schema.String, Schema.Unknown>;
224
221
  readonly strict: Schema.optional<Schema.Boolean>;
225
222
  }>;
223
+ export declare const HostedTool: Schema.StructWithRest<Schema.Struct<{
224
+ readonly type: Schema.String;
225
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>;
226
+ export type HostedTool = Schema.Schema.Type<typeof HostedTool>;
226
227
  export declare const ToolChoice: Schema.Union<readonly [Schema.Literals<readonly ["auto", "none", "required"]>, Schema.Struct<{
227
228
  readonly type: Schema.tag<"function">;
228
229
  readonly name: Schema.String;
@@ -240,6 +241,11 @@ export declare const coreFields: {
240
241
  readonly type: Schema.Literal<"compaction">;
241
242
  readonly id: Schema.optional<Schema.NullOr<Schema.String>>;
242
243
  readonly encrypted_content: Schema.String;
244
+ }>, Schema.Struct<{
245
+ readonly type: Schema.Literal<"configuration_update">;
246
+ readonly reasoning: Schema.Struct<{
247
+ readonly effort: Schema.declare<OpenResponsesOptions.ReasoningEffort, OpenResponsesOptions.ReasoningEffort>;
248
+ }>;
243
249
  }>, Schema.Struct<{
244
250
  readonly type: Schema.tag<"message">;
245
251
  readonly role: Schema.tag<"system">;
@@ -339,15 +345,20 @@ export declare const coreFields: {
339
345
  readonly arguments: Schema.optional<Schema.String>;
340
346
  readonly output: Schema.optional<Schema.NullOr<Schema.String>>;
341
347
  readonly error: Schema.optional<Schema.Unknown>;
342
- }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>]>]>>;
348
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>]>, Schema.StructWithRest<Schema.Struct<{
349
+ readonly type: Schema.String;
350
+ readonly id: Schema.String;
351
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>]>>;
343
352
  instructions: Schema.optional<Schema.String>;
344
- tools: Schema.optional<Schema.$Array<Schema.Struct<{
353
+ tools: Schema.optional<Schema.$Array<Schema.Union<readonly [Schema.Struct<{
345
354
  readonly type: Schema.tag<"function">;
346
355
  readonly name: Schema.String;
347
356
  readonly description: Schema.String;
348
357
  readonly parameters: Schema.$Record<Schema.String, Schema.Unknown>;
349
358
  readonly strict: Schema.optional<Schema.Boolean>;
350
- }>>>;
359
+ }>, Schema.StructWithRest<Schema.Struct<{
360
+ readonly type: Schema.String;
361
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>]>>>;
351
362
  tool_choice: Schema.optional<Schema.Union<readonly [Schema.Literals<readonly ["auto", "none", "required"]>, Schema.Struct<{
352
363
  readonly type: Schema.tag<"function">;
353
364
  readonly name: Schema.String;
@@ -385,13 +396,18 @@ export declare const coreFields: {
385
396
  presence_penalty: Schema.optional<Schema.Number>;
386
397
  frequency_penalty: Schema.optional<Schema.Number>;
387
398
  };
388
- declare const OpenResponsesBody: Schema.Struct<{
399
+ export declare const OpenResponsesBody: Schema.Struct<{
389
400
  readonly stream: Schema.Literal<true>;
390
401
  readonly model: Schema.String;
391
402
  readonly input: Schema.$Array<Schema.Union<readonly [Schema.Struct<{
392
403
  readonly type: Schema.Literal<"compaction">;
393
404
  readonly id: Schema.optional<Schema.NullOr<Schema.String>>;
394
405
  readonly encrypted_content: Schema.String;
406
+ }>, Schema.Struct<{
407
+ readonly type: Schema.Literal<"configuration_update">;
408
+ readonly reasoning: Schema.Struct<{
409
+ readonly effort: Schema.declare<OpenResponsesOptions.ReasoningEffort, OpenResponsesOptions.ReasoningEffort>;
410
+ }>;
395
411
  }>, Schema.Struct<{
396
412
  readonly type: Schema.tag<"message">;
397
413
  readonly role: Schema.tag<"system">;
@@ -491,15 +507,20 @@ declare const OpenResponsesBody: Schema.Struct<{
491
507
  readonly arguments: Schema.optional<Schema.String>;
492
508
  readonly output: Schema.optional<Schema.NullOr<Schema.String>>;
493
509
  readonly error: Schema.optional<Schema.Unknown>;
494
- }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>]>]>>;
510
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>]>, Schema.StructWithRest<Schema.Struct<{
511
+ readonly type: Schema.String;
512
+ readonly id: Schema.String;
513
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>]>>;
495
514
  readonly instructions: Schema.optional<Schema.String>;
496
- readonly tools: Schema.optional<Schema.$Array<Schema.Struct<{
515
+ readonly tools: Schema.optional<Schema.$Array<Schema.Union<readonly [Schema.Struct<{
497
516
  readonly type: Schema.tag<"function">;
498
517
  readonly name: Schema.String;
499
518
  readonly description: Schema.String;
500
519
  readonly parameters: Schema.$Record<Schema.String, Schema.Unknown>;
501
520
  readonly strict: Schema.optional<Schema.Boolean>;
502
- }>>>;
521
+ }>, Schema.StructWithRest<Schema.Struct<{
522
+ readonly type: Schema.String;
523
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>]>>>;
503
524
  readonly tool_choice: Schema.optional<Schema.Union<readonly [Schema.Literals<readonly ["auto", "none", "required"]>, Schema.Struct<{
504
525
  readonly type: Schema.tag<"function">;
505
526
  readonly name: Schema.String;
@@ -538,18 +559,18 @@ declare const OpenResponsesBody: Schema.Struct<{
538
559
  readonly frequency_penalty: Schema.optional<Schema.Number>;
539
560
  }>;
540
561
  export type OpenResponsesBody = Schema.Schema.Type<typeof OpenResponsesBody>;
541
- export declare const OpenResponsesUsage: Schema.Struct<{
562
+ export declare const OpenResponsesUsage: Schema.StructWithRest<Schema.Struct<{
542
563
  readonly input_tokens: Schema.optional<Schema.Number>;
543
- readonly input_tokens_details: Schema.optional<Schema.NullOr<Schema.Struct<{
564
+ readonly input_tokens_details: Schema.optional<Schema.NullOr<Schema.StructWithRest<Schema.Struct<{
544
565
  readonly cached_tokens: Schema.optional<Schema.Number>;
545
566
  readonly cache_write_tokens: Schema.optional<Schema.Number>;
546
- }>>>;
567
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>>>;
547
568
  readonly output_tokens: Schema.optional<Schema.Number>;
548
- readonly output_tokens_details: Schema.optional<Schema.NullOr<Schema.Struct<{
569
+ readonly output_tokens_details: Schema.optional<Schema.NullOr<Schema.StructWithRest<Schema.Struct<{
549
570
  readonly reasoning_tokens: Schema.optional<Schema.Number>;
550
- }>>>;
571
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>>>;
551
572
  readonly total_tokens: Schema.optional<Schema.Number>;
552
- }>;
573
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>;
553
574
  type OpenResponsesUsage = Schema.Schema.Type<typeof OpenResponsesUsage>;
554
575
  export declare const StreamItem: Schema.StructWithRest<Schema.Struct<{
555
576
  readonly type: Schema.String;
@@ -596,18 +617,18 @@ export declare const Event: Schema.StructWithRest<Schema.Struct<{
596
617
  readonly arguments: Schema.optional<Schema.String>;
597
618
  readonly encrypted_content: Schema.optional<Schema.NullOr<Schema.String>>;
598
619
  }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>>>;
599
- readonly usage: Schema.optional<Schema.NullOr<Schema.Struct<{
620
+ readonly usage: Schema.optional<Schema.NullOr<Schema.StructWithRest<Schema.Struct<{
600
621
  readonly input_tokens: Schema.optional<Schema.Number>;
601
- readonly input_tokens_details: Schema.optional<Schema.NullOr<Schema.Struct<{
622
+ readonly input_tokens_details: Schema.optional<Schema.NullOr<Schema.StructWithRest<Schema.Struct<{
602
623
  readonly cached_tokens: Schema.optional<Schema.Number>;
603
624
  readonly cache_write_tokens: Schema.optional<Schema.Number>;
604
- }>>>;
625
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>>>;
605
626
  readonly output_tokens: Schema.optional<Schema.Number>;
606
- readonly output_tokens_details: Schema.optional<Schema.NullOr<Schema.Struct<{
627
+ readonly output_tokens_details: Schema.optional<Schema.NullOr<Schema.StructWithRest<Schema.Struct<{
607
628
  readonly reasoning_tokens: Schema.optional<Schema.Number>;
608
- }>>>;
629
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>>>;
609
630
  readonly total_tokens: Schema.optional<Schema.Number>;
610
- }>>>;
631
+ }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>>>;
611
632
  readonly error: Schema.optional<Schema.Unknown>;
612
633
  }>, readonly [Schema.$Record<Schema.String, Schema.Unknown>]>>;
613
634
  readonly code: Schema.optional<Schema.Unknown>;
@@ -643,18 +664,21 @@ export declare const decodeChannelEvent: (frame: string) => Effect.Effect<{
643
664
  readonly name?: string | undefined;
644
665
  readonly namespace?: string | undefined;
645
666
  readonly arguments?: string | undefined;
646
- readonly encrypted_content?: string | null | undefined;
647
667
  readonly call_id?: string | undefined;
668
+ readonly encrypted_content?: string | null | undefined;
648
669
  }[] | undefined;
649
670
  readonly error?: unknown;
650
671
  readonly usage?: {
672
+ readonly [x: string]: unknown;
651
673
  readonly input_tokens?: number | undefined;
652
674
  readonly output_tokens?: number | undefined;
653
675
  readonly output_tokens_details?: {
676
+ readonly [x: string]: unknown;
654
677
  readonly reasoning_tokens?: number | undefined;
655
678
  } | null | undefined;
656
679
  readonly total_tokens?: number | undefined;
657
680
  readonly input_tokens_details?: {
681
+ readonly [x: string]: unknown;
658
682
  readonly cached_tokens?: number | undefined;
659
683
  readonly cache_write_tokens?: number | undefined;
660
684
  } | null | undefined;
@@ -671,8 +695,8 @@ export declare const decodeChannelEvent: (frame: string) => Effect.Effect<{
671
695
  readonly name?: string | undefined;
672
696
  readonly namespace?: string | undefined;
673
697
  readonly arguments?: string | undefined;
674
- readonly encrypted_content?: string | null | undefined;
675
698
  readonly call_id?: string | undefined;
699
+ readonly encrypted_content?: string | null | undefined;
676
700
  } | null | undefined;
677
701
  readonly delta?: string | undefined;
678
702
  readonly arguments?: string | undefined;
@@ -684,9 +708,7 @@ export declare const decodeChannelEvent: (frame: string) => Effect.Effect<{
684
708
  export interface ProviderAdapter {
685
709
  readonly id: string;
686
710
  readonly name: string;
687
- readonly nativeTool?: (native: NonNullable<ToolDefinition["native"]>) => Effect.Effect<{
688
- readonly type: string;
689
- }, AIError>;
711
+ readonly nativeTool?: (native: NonNullable<ToolDefinition["native"]>) => Effect.Effect<HostedTool, AIError>;
690
712
  readonly lowerMedia?: (input: {
691
713
  readonly part: MediaPart;
692
714
  readonly media: Media.Inline | undefined;
@@ -725,9 +747,18 @@ export declare const lowerTool: (protocolName: string, tool: ToolDefinition) =>
725
747
  };
726
748
  strict: boolean;
727
749
  }, AIError, never>;
728
- export declare const lowerTools: (tools: ReadonlyArray<ToolDefinition>, adapter: ProviderAdapter) => Effect.Effect<{
750
+ export declare const lowerTools: (tools: ReadonlyArray<ToolDefinition>, adapter: ProviderAdapter) => Effect.Effect<({
751
+ readonly [x: string]: unknown;
729
752
  readonly type: string;
730
- }[], AIError, never>;
753
+ } | {
754
+ readonly type: "function";
755
+ readonly description: string;
756
+ readonly name: string;
757
+ readonly parameters: {
758
+ readonly [x: string]: unknown;
759
+ };
760
+ readonly strict?: boolean | undefined;
761
+ })[], AIError, never>;
731
762
  export declare const lowerToolChoice: (protocolName: string, toolChoice: NonNullable<LLMRequest["toolChoice"]>) => Effect.Effect<"required" | "auto" | "none" | {
732
763
  type: "function";
733
764
  name: string;
@@ -737,7 +768,129 @@ export declare const lowerConversation: (request: LLMRequest<import("../schema/o
737
768
  }, import("../route.js").CompactionOperations | undefined>>, adapter: ProviderAdapter) => Effect.Effect<{
738
769
  instructions?: string | undefined;
739
770
  model: string & import("effect/Brand").Brand<"AI.ModelID">;
740
- input: LoweredInputItem[];
771
+ input: ({
772
+ readonly [x: string]: unknown;
773
+ readonly id: string;
774
+ readonly type: "web_search_call";
775
+ readonly status?: string | undefined;
776
+ readonly action?: {
777
+ readonly [x: string]: unknown;
778
+ } | null | undefined;
779
+ } | {
780
+ readonly [x: string]: unknown;
781
+ readonly id: string;
782
+ readonly type: "file_search_call";
783
+ readonly status?: string | undefined;
784
+ readonly queries?: readonly string[] | undefined;
785
+ readonly results?: readonly {
786
+ readonly [x: string]: unknown;
787
+ }[] | null | undefined;
788
+ } | {
789
+ readonly [x: string]: unknown;
790
+ readonly id: string;
791
+ readonly type: "code_interpreter_call";
792
+ readonly status?: string | undefined;
793
+ readonly code?: string | null | undefined;
794
+ readonly container_id?: string | null | undefined;
795
+ readonly outputs?: readonly {
796
+ readonly [x: string]: unknown;
797
+ }[] | null | undefined;
798
+ } | {
799
+ readonly [x: string]: unknown;
800
+ readonly id: string;
801
+ readonly type: "mcp_call";
802
+ readonly status?: string | undefined;
803
+ readonly name?: string | undefined;
804
+ readonly output?: string | null | undefined;
805
+ readonly error?: unknown;
806
+ readonly arguments?: string | undefined;
807
+ readonly server_label?: string | undefined;
808
+ } | {
809
+ readonly type: "configuration_update";
810
+ readonly reasoning: {
811
+ readonly effort: OpenResponsesOptions.ReasoningEffort;
812
+ };
813
+ } | {
814
+ readonly [x: string]: unknown;
815
+ readonly type: string;
816
+ readonly id: string;
817
+ } | {
818
+ readonly type: "reasoning";
819
+ readonly summary: readonly {
820
+ readonly type: "summary_text";
821
+ readonly text: string;
822
+ }[];
823
+ readonly id?: string | undefined;
824
+ readonly encrypted_content?: string | null | undefined;
825
+ } | {
826
+ readonly type: "compaction";
827
+ readonly encrypted_content: string;
828
+ readonly id?: string | null | undefined;
829
+ } | {
830
+ readonly type: "message";
831
+ readonly role: "system";
832
+ readonly content: string;
833
+ } | {
834
+ readonly type: "message";
835
+ readonly role: "developer";
836
+ readonly content: string;
837
+ } | {
838
+ readonly type: "message";
839
+ readonly content: readonly ({
840
+ readonly type: "input_image";
841
+ readonly image_url: string;
842
+ readonly detail?: string | undefined;
843
+ } | {
844
+ readonly type: "input_file";
845
+ readonly filename: string;
846
+ readonly detail?: string | undefined;
847
+ readonly file_data?: string | undefined;
848
+ readonly file_url?: string | undefined;
849
+ } | {
850
+ readonly type: "input_text";
851
+ readonly text: string;
852
+ })[];
853
+ readonly role: "user";
854
+ readonly id?: string | undefined;
855
+ readonly status?: string | undefined;
856
+ } | {
857
+ readonly type: "message";
858
+ readonly content: readonly {
859
+ readonly type: "output_text";
860
+ readonly text: string;
861
+ }[];
862
+ readonly role: "assistant";
863
+ readonly id?: string | undefined;
864
+ readonly status?: string | undefined;
865
+ readonly phase?: "commentary" | "final_answer" | null | undefined;
866
+ } | {
867
+ readonly type: "function_call";
868
+ readonly name: string;
869
+ readonly arguments: string;
870
+ readonly call_id: string;
871
+ readonly id?: string | undefined;
872
+ readonly namespace?: string | undefined;
873
+ } | {
874
+ readonly type: "function_call_output";
875
+ readonly call_id: string;
876
+ readonly output: string | readonly ({
877
+ readonly type: "input_image";
878
+ readonly image_url: string;
879
+ readonly detail?: string | undefined;
880
+ } | {
881
+ readonly type: "input_file";
882
+ readonly filename: string;
883
+ readonly detail?: string | undefined;
884
+ readonly file_data?: string | undefined;
885
+ readonly file_url?: string | undefined;
886
+ } | {
887
+ readonly type: "input_text";
888
+ readonly text: string;
889
+ } | {
890
+ readonly type: "input_video";
891
+ readonly video_url: string;
892
+ })[];
893
+ })[];
741
894
  }, AIError, never>;
742
895
  export declare const lowerGeneration: (request: LLMRequest, options?: OpenResponsesOptions.Resolved) => {
743
896
  truncation?: "auto" | "disabled" | undefined;
@@ -781,9 +934,18 @@ export declare const allowedToolChoice: (request: LLMRequest) => {
781
934
  export declare const fromRequestWithAdapter: (request: LLMRequest<import("../schema/options.js").LanguageModel<{
782
935
  readonly [x: string]: unknown;
783
936
  }, import("../route.js").CompactionOperations | undefined>>, adapter: ProviderAdapter) => Effect.Effect<{
784
- tools: {
937
+ tools: ({
938
+ readonly [x: string]: unknown;
785
939
  readonly type: string;
786
- }[] | undefined;
940
+ } | {
941
+ readonly type: "function";
942
+ readonly description: string;
943
+ readonly name: string;
944
+ readonly parameters: {
945
+ readonly [x: string]: unknown;
946
+ };
947
+ readonly strict?: boolean | undefined;
948
+ })[] | undefined;
787
949
  tool_choice: "required" | "auto" | "none" | {
788
950
  type: "allowed_tools";
789
951
  mode: "required" | "auto" | "none";
@@ -825,12 +987,7 @@ export declare const fromRequestWithAdapter: (request: LLMRequest<import("../sch
825
987
  frequency_penalty: number | undefined;
826
988
  instructions?: string | undefined;
827
989
  model: string & import("effect/Brand").Brand<"AI.ModelID">;
828
- input: LoweredInputItem[];
829
- }, AIError, never>;
830
- export declare const fromRequest: (request: LLMRequest<import("../schema/options.js").LanguageModel<{
831
- readonly [x: string]: unknown;
832
- }, import("../route.js").CompactionOperations | undefined>>) => Effect.Effect<{
833
- readonly input: readonly ({
990
+ input: ({
834
991
  readonly [x: string]: unknown;
835
992
  readonly id: string;
836
993
  readonly type: "web_search_call";
@@ -867,6 +1024,15 @@ export declare const fromRequest: (request: LLMRequest<import("../schema/options
867
1024
  readonly error?: unknown;
868
1025
  readonly arguments?: string | undefined;
869
1026
  readonly server_label?: string | undefined;
1027
+ } | {
1028
+ readonly type: "configuration_update";
1029
+ readonly reasoning: {
1030
+ readonly effort: OpenResponsesOptions.ReasoningEffort;
1031
+ };
1032
+ } | {
1033
+ readonly [x: string]: unknown;
1034
+ readonly type: string;
1035
+ readonly id: string;
870
1036
  } | {
871
1037
  readonly type: "reasoning";
872
1038
  readonly summary: readonly {
@@ -944,17 +1110,12 @@ export declare const fromRequest: (request: LLMRequest<import("../schema/options
944
1110
  readonly video_url: string;
945
1111
  })[];
946
1112
  })[];
947
- readonly model: string;
948
- readonly stream: true;
949
- readonly metadata?: {
950
- readonly [x: string]: string;
951
- } | undefined;
952
- readonly instructions?: string | undefined;
953
- readonly reasoning?: {
954
- readonly summary?: "auto" | "concise" | "detailed" | undefined;
955
- readonly effort?: OpenResponsesOptions.ReasoningEffort | undefined;
956
- } | undefined;
957
- readonly tools?: readonly {
1113
+ }, AIError, never>;
1114
+ export declare const fromRequest: (request: LLMRequest) => Effect.Effect<{
1115
+ tools: ({
1116
+ readonly [x: string]: unknown;
1117
+ readonly type: string;
1118
+ } | {
958
1119
  readonly type: "function";
959
1120
  readonly description: string;
960
1121
  readonly name: string;
@@ -962,38 +1123,171 @@ export declare const fromRequest: (request: LLMRequest<import("../schema/options
962
1123
  readonly [x: string]: unknown;
963
1124
  };
964
1125
  readonly strict?: boolean | undefined;
965
- }[] | undefined;
966
- readonly text?: {
967
- readonly verbosity?: OpenResponsesOptions.TextVerbosity | undefined;
968
- } | undefined;
969
- readonly temperature?: number | undefined;
970
- readonly service_tier?: OpenResponsesOptions.ServiceTier | undefined;
971
- readonly tool_choice?: "required" | "auto" | "none" | {
972
- readonly type: "function";
973
- readonly name: string;
974
- } | {
975
- readonly type: "allowed_tools";
976
- readonly mode: "required" | "auto" | "none";
977
- readonly tools: readonly {
978
- readonly type: "function";
979
- readonly name: string;
1126
+ })[] | undefined;
1127
+ tool_choice: "required" | "auto" | "none" | {
1128
+ type: "allowed_tools";
1129
+ mode: "required" | "auto" | "none";
1130
+ tools: {
1131
+ type: "function";
1132
+ name: string;
980
1133
  }[];
1134
+ } | {
1135
+ type: "function";
1136
+ name: string;
981
1137
  } | undefined;
982
- readonly top_p?: number | undefined;
983
- readonly frequency_penalty?: number | undefined;
984
- readonly presence_penalty?: number | undefined;
985
- readonly prompt_cache_key?: string | undefined;
986
- readonly parallel_tool_calls?: boolean | undefined;
987
- readonly store?: boolean | undefined;
988
- readonly include?: readonly OpenResponsesOptions.ResponseIncludable[] | undefined;
989
- readonly truncation?: "auto" | "disabled" | undefined;
990
- readonly stream_options?: {
991
- readonly include_obfuscation?: boolean | undefined;
1138
+ truncation?: "auto" | "disabled" | undefined;
1139
+ parallel_tool_calls?: boolean | undefined;
1140
+ max_tool_calls?: number | undefined;
1141
+ service_tier?: OpenResponsesOptions.ServiceTier | undefined;
1142
+ text?: {
1143
+ verbosity: OpenResponsesOptions.TextVerbosity;
992
1144
  } | undefined;
993
- readonly safety_identifier?: string | undefined;
994
- readonly top_logprobs?: number | undefined;
995
- readonly max_output_tokens?: number | undefined;
996
- readonly max_tool_calls?: number | undefined;
1145
+ reasoning?: {
1146
+ effort: OpenResponsesOptions.ReasoningEffort | undefined;
1147
+ summary: "auto" | "concise" | "detailed" | undefined;
1148
+ } | undefined;
1149
+ include?: readonly OpenResponsesOptions.ResponseIncludable[] | undefined;
1150
+ prompt_cache_key?: string | undefined;
1151
+ top_logprobs?: number | undefined;
1152
+ stream_options?: {
1153
+ include_obfuscation: boolean;
1154
+ } | undefined;
1155
+ safety_identifier?: string | undefined;
1156
+ metadata?: {
1157
+ readonly [x: string]: string;
1158
+ } | undefined;
1159
+ store?: boolean | undefined;
1160
+ stream: true;
1161
+ max_output_tokens: number | undefined;
1162
+ temperature: number | undefined;
1163
+ top_p: number | undefined;
1164
+ presence_penalty: number | undefined;
1165
+ frequency_penalty: number | undefined;
1166
+ instructions?: string | undefined;
1167
+ model: string & import("effect/Brand").Brand<"AI.ModelID">;
1168
+ input: ({
1169
+ readonly [x: string]: unknown;
1170
+ readonly id: string;
1171
+ readonly type: "web_search_call";
1172
+ readonly status?: string | undefined;
1173
+ readonly action?: {
1174
+ readonly [x: string]: unknown;
1175
+ } | null | undefined;
1176
+ } | {
1177
+ readonly [x: string]: unknown;
1178
+ readonly id: string;
1179
+ readonly type: "file_search_call";
1180
+ readonly status?: string | undefined;
1181
+ readonly queries?: readonly string[] | undefined;
1182
+ readonly results?: readonly {
1183
+ readonly [x: string]: unknown;
1184
+ }[] | null | undefined;
1185
+ } | {
1186
+ readonly [x: string]: unknown;
1187
+ readonly id: string;
1188
+ readonly type: "code_interpreter_call";
1189
+ readonly status?: string | undefined;
1190
+ readonly code?: string | null | undefined;
1191
+ readonly container_id?: string | null | undefined;
1192
+ readonly outputs?: readonly {
1193
+ readonly [x: string]: unknown;
1194
+ }[] | null | undefined;
1195
+ } | {
1196
+ readonly [x: string]: unknown;
1197
+ readonly id: string;
1198
+ readonly type: "mcp_call";
1199
+ readonly status?: string | undefined;
1200
+ readonly name?: string | undefined;
1201
+ readonly output?: string | null | undefined;
1202
+ readonly error?: unknown;
1203
+ readonly arguments?: string | undefined;
1204
+ readonly server_label?: string | undefined;
1205
+ } | {
1206
+ readonly type: "configuration_update";
1207
+ readonly reasoning: {
1208
+ readonly effort: OpenResponsesOptions.ReasoningEffort;
1209
+ };
1210
+ } | {
1211
+ readonly [x: string]: unknown;
1212
+ readonly type: string;
1213
+ readonly id: string;
1214
+ } | {
1215
+ readonly type: "reasoning";
1216
+ readonly summary: readonly {
1217
+ readonly type: "summary_text";
1218
+ readonly text: string;
1219
+ }[];
1220
+ readonly id?: string | undefined;
1221
+ readonly encrypted_content?: string | null | undefined;
1222
+ } | {
1223
+ readonly type: "compaction";
1224
+ readonly encrypted_content: string;
1225
+ readonly id?: string | null | undefined;
1226
+ } | {
1227
+ readonly type: "message";
1228
+ readonly role: "system";
1229
+ readonly content: string;
1230
+ } | {
1231
+ readonly type: "message";
1232
+ readonly role: "developer";
1233
+ readonly content: string;
1234
+ } | {
1235
+ readonly type: "message";
1236
+ readonly content: readonly ({
1237
+ readonly type: "input_image";
1238
+ readonly image_url: string;
1239
+ readonly detail?: string | undefined;
1240
+ } | {
1241
+ readonly type: "input_file";
1242
+ readonly filename: string;
1243
+ readonly detail?: string | undefined;
1244
+ readonly file_data?: string | undefined;
1245
+ readonly file_url?: string | undefined;
1246
+ } | {
1247
+ readonly type: "input_text";
1248
+ readonly text: string;
1249
+ })[];
1250
+ readonly role: "user";
1251
+ readonly id?: string | undefined;
1252
+ readonly status?: string | undefined;
1253
+ } | {
1254
+ readonly type: "message";
1255
+ readonly content: readonly {
1256
+ readonly type: "output_text";
1257
+ readonly text: string;
1258
+ }[];
1259
+ readonly role: "assistant";
1260
+ readonly id?: string | undefined;
1261
+ readonly status?: string | undefined;
1262
+ readonly phase?: "commentary" | "final_answer" | null | undefined;
1263
+ } | {
1264
+ readonly type: "function_call";
1265
+ readonly name: string;
1266
+ readonly arguments: string;
1267
+ readonly call_id: string;
1268
+ readonly id?: string | undefined;
1269
+ readonly namespace?: string | undefined;
1270
+ } | {
1271
+ readonly type: "function_call_output";
1272
+ readonly call_id: string;
1273
+ readonly output: string | readonly ({
1274
+ readonly type: "input_image";
1275
+ readonly image_url: string;
1276
+ readonly detail?: string | undefined;
1277
+ } | {
1278
+ readonly type: "input_file";
1279
+ readonly filename: string;
1280
+ readonly detail?: string | undefined;
1281
+ readonly file_data?: string | undefined;
1282
+ readonly file_url?: string | undefined;
1283
+ } | {
1284
+ readonly type: "input_text";
1285
+ readonly text: string;
1286
+ } | {
1287
+ readonly type: "input_video";
1288
+ readonly video_url: string;
1289
+ })[];
1290
+ })[];
997
1291
  }, AIError, never>;
998
1292
  export declare const mapUsage: (usage: OpenResponsesUsage | null | undefined, providerMetadataKey: string) => Usage | undefined;
999
1293
  export declare const metadataKey: (model: LLMRequest["model"]) => string;
@@ -1268,6 +1562,15 @@ export declare const protocol: Protocol<{
1268
1562
  readonly error?: unknown;
1269
1563
  readonly arguments?: string | undefined;
1270
1564
  readonly server_label?: string | undefined;
1565
+ } | {
1566
+ readonly type: "configuration_update";
1567
+ readonly reasoning: {
1568
+ readonly effort: OpenResponsesOptions.ReasoningEffort;
1569
+ };
1570
+ } | {
1571
+ readonly [x: string]: unknown;
1572
+ readonly type: string;
1573
+ readonly id: string;
1271
1574
  } | {
1272
1575
  readonly type: "reasoning";
1273
1576
  readonly summary: readonly {
@@ -1355,7 +1658,10 @@ export declare const protocol: Protocol<{
1355
1658
  readonly summary?: "auto" | "concise" | "detailed" | undefined;
1356
1659
  readonly effort?: OpenResponsesOptions.ReasoningEffort | undefined;
1357
1660
  } | undefined;
1358
- readonly tools?: readonly {
1661
+ readonly tools?: readonly ({
1662
+ readonly [x: string]: unknown;
1663
+ readonly type: string;
1664
+ } | {
1359
1665
  readonly type: "function";
1360
1666
  readonly description: string;
1361
1667
  readonly name: string;
@@ -1363,7 +1669,7 @@ export declare const protocol: Protocol<{
1363
1669
  readonly [x: string]: unknown;
1364
1670
  };
1365
1671
  readonly strict?: boolean | undefined;
1366
- }[] | undefined;
1672
+ })[] | undefined;
1367
1673
  readonly text?: {
1368
1674
  readonly verbosity?: OpenResponsesOptions.TextVerbosity | undefined;
1369
1675
  } | undefined;
@@ -1383,9 +1689,10 @@ export declare const protocol: Protocol<{
1383
1689
  readonly top_p?: number | undefined;
1384
1690
  readonly frequency_penalty?: number | undefined;
1385
1691
  readonly presence_penalty?: number | undefined;
1692
+ readonly store?: boolean | undefined;
1693
+ readonly max_output_tokens?: number | undefined;
1386
1694
  readonly prompt_cache_key?: string | undefined;
1387
1695
  readonly parallel_tool_calls?: boolean | undefined;
1388
- readonly store?: boolean | undefined;
1389
1696
  readonly include?: readonly OpenResponsesOptions.ResponseIncludable[] | undefined;
1390
1697
  readonly truncation?: "auto" | "disabled" | undefined;
1391
1698
  readonly stream_options?: {
@@ -1393,7 +1700,6 @@ export declare const protocol: Protocol<{
1393
1700
  } | undefined;
1394
1701
  readonly safety_identifier?: string | undefined;
1395
1702
  readonly top_logprobs?: number | undefined;
1396
- readonly max_output_tokens?: number | undefined;
1397
1703
  readonly max_tool_calls?: number | undefined;
1398
1704
  }, string, {
1399
1705
  readonly [x: string]: unknown;
@@ -1413,18 +1719,21 @@ export declare const protocol: Protocol<{
1413
1719
  readonly name?: string | undefined;
1414
1720
  readonly namespace?: string | undefined;
1415
1721
  readonly arguments?: string | undefined;
1416
- readonly encrypted_content?: string | null | undefined;
1417
1722
  readonly call_id?: string | undefined;
1723
+ readonly encrypted_content?: string | null | undefined;
1418
1724
  }[] | undefined;
1419
1725
  readonly error?: unknown;
1420
1726
  readonly usage?: {
1727
+ readonly [x: string]: unknown;
1421
1728
  readonly input_tokens?: number | undefined;
1422
1729
  readonly output_tokens?: number | undefined;
1423
1730
  readonly output_tokens_details?: {
1731
+ readonly [x: string]: unknown;
1424
1732
  readonly reasoning_tokens?: number | undefined;
1425
1733
  } | null | undefined;
1426
1734
  readonly total_tokens?: number | undefined;
1427
1735
  readonly input_tokens_details?: {
1736
+ readonly [x: string]: unknown;
1428
1737
  readonly cached_tokens?: number | undefined;
1429
1738
  readonly cache_write_tokens?: number | undefined;
1430
1739
  } | null | undefined;
@@ -1441,8 +1750,8 @@ export declare const protocol: Protocol<{
1441
1750
  readonly name?: string | undefined;
1442
1751
  readonly namespace?: string | undefined;
1443
1752
  readonly arguments?: string | undefined;
1444
- readonly encrypted_content?: string | null | undefined;
1445
1753
  readonly call_id?: string | undefined;
1754
+ readonly encrypted_content?: string | null | undefined;
1446
1755
  } | null | undefined;
1447
1756
  readonly delta?: string | undefined;
1448
1757
  readonly arguments?: string | undefined;
@@ -1489,6 +1798,15 @@ export declare const httpTransport: HttpTransport.HttpJsonTransport<{
1489
1798
  readonly error?: unknown;
1490
1799
  readonly arguments?: string | undefined;
1491
1800
  readonly server_label?: string | undefined;
1801
+ } | {
1802
+ readonly type: "configuration_update";
1803
+ readonly reasoning: {
1804
+ readonly effort: OpenResponsesOptions.ReasoningEffort;
1805
+ };
1806
+ } | {
1807
+ readonly [x: string]: unknown;
1808
+ readonly type: string;
1809
+ readonly id: string;
1492
1810
  } | {
1493
1811
  readonly type: "reasoning";
1494
1812
  readonly summary: readonly {
@@ -1576,7 +1894,10 @@ export declare const httpTransport: HttpTransport.HttpJsonTransport<{
1576
1894
  readonly summary?: "auto" | "concise" | "detailed" | undefined;
1577
1895
  readonly effort?: OpenResponsesOptions.ReasoningEffort | undefined;
1578
1896
  } | undefined;
1579
- readonly tools?: readonly {
1897
+ readonly tools?: readonly ({
1898
+ readonly [x: string]: unknown;
1899
+ readonly type: string;
1900
+ } | {
1580
1901
  readonly type: "function";
1581
1902
  readonly description: string;
1582
1903
  readonly name: string;
@@ -1584,7 +1905,7 @@ export declare const httpTransport: HttpTransport.HttpJsonTransport<{
1584
1905
  readonly [x: string]: unknown;
1585
1906
  };
1586
1907
  readonly strict?: boolean | undefined;
1587
- }[] | undefined;
1908
+ })[] | undefined;
1588
1909
  readonly text?: {
1589
1910
  readonly verbosity?: OpenResponsesOptions.TextVerbosity | undefined;
1590
1911
  } | undefined;
@@ -1604,9 +1925,10 @@ export declare const httpTransport: HttpTransport.HttpJsonTransport<{
1604
1925
  readonly top_p?: number | undefined;
1605
1926
  readonly frequency_penalty?: number | undefined;
1606
1927
  readonly presence_penalty?: number | undefined;
1928
+ readonly store?: boolean | undefined;
1929
+ readonly max_output_tokens?: number | undefined;
1607
1930
  readonly prompt_cache_key?: string | undefined;
1608
1931
  readonly parallel_tool_calls?: boolean | undefined;
1609
- readonly store?: boolean | undefined;
1610
1932
  readonly include?: readonly OpenResponsesOptions.ResponseIncludable[] | undefined;
1611
1933
  readonly truncation?: "auto" | "disabled" | undefined;
1612
1934
  readonly stream_options?: {
@@ -1614,7 +1936,6 @@ export declare const httpTransport: HttpTransport.HttpJsonTransport<{
1614
1936
  } | undefined;
1615
1937
  readonly safety_identifier?: string | undefined;
1616
1938
  readonly top_logprobs?: number | undefined;
1617
- readonly max_output_tokens?: number | undefined;
1618
1939
  readonly max_tool_calls?: number | undefined;
1619
1940
  }, string>;
1620
1941
  export * as OpenResponses from "./open-responses.js";