ai 7.0.0-beta.111 → 7.0.0-beta.113

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 (95) hide show
  1. package/CHANGELOG.md +60 -0
  2. package/dist/index.d.ts +2640 -2457
  3. package/dist/index.js +1136 -640
  4. package/dist/index.js.map +1 -1
  5. package/dist/internal/index.d.ts +324 -262
  6. package/dist/internal/index.js +23 -20
  7. package/dist/internal/index.js.map +1 -1
  8. package/docs/02-foundations/03-prompts.mdx +13 -10
  9. package/docs/03-agents/01-overview.mdx +16 -0
  10. package/docs/03-agents/02-building-agents.mdx +78 -14
  11. package/docs/03-agents/06-subagents.mdx +3 -1
  12. package/docs/03-agents/07-workflow-agent.mdx +130 -3
  13. package/docs/03-agents/index.mdx +4 -2
  14. package/docs/03-ai-sdk-core/05-generating-text.mdx +53 -23
  15. package/docs/03-ai-sdk-core/15-tools-and-tool-calling.mdx +154 -115
  16. package/docs/03-ai-sdk-core/17-runtime-and-tool-context.mdx +215 -0
  17. package/docs/03-ai-sdk-core/60-telemetry.mdx +115 -27
  18. package/docs/03-ai-sdk-core/65-event-listeners.mdx +176 -153
  19. package/docs/03-ai-sdk-core/index.mdx +6 -0
  20. package/docs/04-ai-sdk-ui/03-chatbot-tool-usage.mdx +46 -4
  21. package/docs/04-ai-sdk-ui/50-stream-protocol.mdx +43 -0
  22. package/docs/07-reference/01-ai-sdk-core/01-generate-text.mdx +172 -128
  23. package/docs/07-reference/01-ai-sdk-core/02-stream-text.mdx +172 -110
  24. package/docs/07-reference/01-ai-sdk-core/05-embed.mdx +4 -16
  25. package/docs/07-reference/01-ai-sdk-core/06-embed-many.mdx +4 -16
  26. package/docs/07-reference/01-ai-sdk-core/06-rerank.mdx +2 -2
  27. package/docs/07-reference/01-ai-sdk-core/15-agent.mdx +4 -4
  28. package/docs/07-reference/01-ai-sdk-core/16-tool-loop-agent.mdx +92 -126
  29. package/docs/07-reference/01-ai-sdk-core/17-create-agent-ui-stream.mdx +1 -1
  30. package/docs/07-reference/01-ai-sdk-core/18-create-agent-ui-stream-response.mdx +1 -1
  31. package/docs/07-reference/01-ai-sdk-core/18-pipe-agent-ui-stream-to-response.mdx +1 -1
  32. package/docs/07-reference/01-ai-sdk-core/20-tool.mdx +12 -1
  33. package/docs/07-reference/01-ai-sdk-core/22-dynamic-tool.mdx +1 -1
  34. package/docs/07-reference/01-ai-sdk-core/23-create-mcp-client.mdx +14 -1
  35. package/docs/07-reference/01-ai-sdk-core/29-filter-active-tools.mdx +14 -2
  36. package/docs/07-reference/01-ai-sdk-core/30-model-message.mdx +5 -2
  37. package/docs/07-reference/02-ai-sdk-ui/31-convert-to-model-messages.mdx +9 -0
  38. package/docs/07-reference/03-ai-sdk-rsc/01-stream-ui.mdx +7 -0
  39. package/docs/07-reference/04-ai-sdk-workflow/01-workflow-agent.mdx +48 -29
  40. package/docs/08-migration-guides/23-migration-guide-7-0.mdx +99 -0
  41. package/package.json +9 -7
  42. package/src/agent/agent.ts +10 -10
  43. package/src/agent/create-agent-ui-stream-response.ts +5 -4
  44. package/src/agent/create-agent-ui-stream.ts +5 -4
  45. package/src/agent/index.ts +0 -4
  46. package/src/agent/pipe-agent-ui-stream-to-response.ts +5 -4
  47. package/src/agent/tool-loop-agent-settings.ts +28 -41
  48. package/src/agent/tool-loop-agent.ts +23 -10
  49. package/src/embed/embed-events.ts +8 -44
  50. package/src/embed/embed-many.ts +14 -34
  51. package/src/embed/embed.ts +11 -23
  52. package/src/generate-object/generate-object.ts +20 -24
  53. package/src/generate-object/index.ts +4 -4
  54. package/src/generate-object/stream-object.ts +26 -27
  55. package/src/generate-object/structured-output-events.ts +4 -25
  56. package/src/generate-text/active-tools.ts +12 -0
  57. package/src/generate-text/content-part.ts +5 -3
  58. package/src/generate-text/create-execute-tools-transformation.ts +80 -38
  59. package/src/generate-text/execute-tool-call.ts +31 -37
  60. package/src/generate-text/filter-active-tools.ts +38 -0
  61. package/src/generate-text/{core-events.ts → generate-text-events.ts} +108 -113
  62. package/src/generate-text/generate-text.ts +214 -167
  63. package/src/generate-text/index.ts +29 -14
  64. package/src/generate-text/language-model-events.ts +79 -0
  65. package/src/generate-text/prepare-step.ts +2 -1
  66. package/src/generate-text/resolve-tool-approval.ts +134 -0
  67. package/src/generate-text/restricted-telemetry-dispatcher.ts +247 -0
  68. package/src/generate-text/step-result.ts +0 -9
  69. package/src/generate-text/stream-language-model-call.ts +245 -35
  70. package/src/generate-text/stream-text-result.ts +5 -0
  71. package/src/generate-text/stream-text.ts +168 -215
  72. package/src/generate-text/to-response-messages.ts +34 -2
  73. package/src/generate-text/tool-approval-configuration.ts +128 -0
  74. package/src/generate-text/tool-approval-request-output.ts +7 -0
  75. package/src/generate-text/tool-approval-response-output.ts +35 -0
  76. package/src/generate-text/tool-execution-events.ts +120 -65
  77. package/src/index.ts +1 -0
  78. package/src/prompt/convert-to-language-model-prompt.ts +1 -1
  79. package/src/prompt/prompt.ts +9 -0
  80. package/src/prompt/standardize-prompt.ts +38 -27
  81. package/src/rerank/index.ts +3 -3
  82. package/src/rerank/rerank-events.ts +8 -44
  83. package/src/rerank/rerank.ts +13 -33
  84. package/src/telemetry/{create-unified-telemetry.ts → create-telemetry-dispatcher.ts} +71 -24
  85. package/src/telemetry/index.ts +1 -1
  86. package/src/telemetry/telemetry.ts +92 -36
  87. package/src/ui/convert-to-model-messages.ts +21 -1
  88. package/src/ui/process-ui-message-stream.ts +48 -1
  89. package/src/ui/ui-messages.ts +10 -0
  90. package/src/ui/validate-ui-messages.ts +10 -0
  91. package/src/ui-message-stream/ui-message-chunks.ts +18 -0
  92. package/src/util/merge-objects.ts +5 -0
  93. package/src/generate-text/filter-active-tool.ts +0 -41
  94. package/src/generate-text/is-tool-approval-needed.ts +0 -66
  95. package/src/generate-text/tool-needs-approval-configuration.ts +0 -21
package/CHANGELOG.md CHANGED
@@ -1,5 +1,65 @@
1
1
  # ai
2
2
 
3
+ ## 7.0.0-beta.113
4
+
5
+ ### Patch Changes
6
+
7
+ - 9f0e36c: trigger release for all packages after provenance setup
8
+ - Updated dependencies [9f0e36c]
9
+ - @ai-sdk/gateway@4.0.0-beta.64
10
+ - @ai-sdk/provider@4.0.0-beta.13
11
+ - @ai-sdk/provider-utils@5.0.0-beta.28
12
+
13
+ ## 7.0.0-beta.112
14
+
15
+ ### Major Changes
16
+
17
+ - cf93359: feat(ai): remove/refactor event data sent via callbacks
18
+ - 116c89f: feat(ai): remove telemetry data from the user-facing event data
19
+ - 4e095b0: fix(ai): reject system messages in messages or prompt by default (opt-in)
20
+
21
+ ### Patch Changes
22
+
23
+ - 5f3749c: refactoring: rename toolNeedsApproval to toolApproval
24
+ - 0a51f7d: fix(ai): enforce `callOptionsSchema` at runtime in `ToolLoopAgent`
25
+
26
+ `ToolLoopAgentSettings.callOptionsSchema` was declared and documented as a runtime schema for `options`, but `tool-loop-agent.ts` never invoked it. Any invariant a developer encoded in the schema was silently bypassed at runtime, and unchecked `options` flowed straight into `prepareCall` and any `instructions` template that interpolated them.
27
+
28
+ `ToolLoopAgent.prepareCall` now validates caller-supplied `options` against `callOptionsSchema` (when set) via `safeValidateTypes`, throwing `InvalidArgumentError` on failure before forwarding to `prepareCall` / `generateText` / `streamText`.
29
+
30
+ - 71d3022: fix(ai): unify generate text event callbacks
31
+ - 67df0a0: feat: add sensitiveContext property to Tool
32
+ - 4181cfe: fix(ai): harden `getMediaTypeFromUrl` against prototype-property collisions
33
+
34
+ `getMediaTypeFromUrl` (used to infer media types for `file-url` / `image-url` parts) used `ext in URL_EXTENSION_TO_MEDIA_TYPE` against a plain object literal. A URL ending in `.constructor` therefore resolved through the prototype chain and returned the `Object` constructor function, violating the helper's `: string` return type and forwarding a non-string value to provider adapters.
35
+
36
+ Switch to `Object.hasOwn(...)` so attacker-controlled extensions like `.constructor` cannot resolve to inherited `Object.prototype` keys.
37
+
38
+ - 51ce232: feat(ai): add sensitiveRuntimeContext option
39
+ - befb78c: refactoring: remove real-time delays in unit tests
40
+ - 29d8cf4: feat(ai): rename the core-event types
41
+ - 58a2ad7: fix: more precise default message for tool execution denial
42
+ - 37d69b2: feat(ai): access runtime context in tool approval functions
43
+ - 1043274: feat(ai): add a ModelCall start/end event
44
+ - 7f59f04: feat(ai): add approval reason to automatic tool approvals
45
+ - 7677c1e: feat(ai): allow tool approval functions to return undefined
46
+ - f58f9bc: fix(ai): remove stopWhen from onStart event
47
+ - e1bfb9c: feat(ai): remove unnecessary data from events
48
+ - e87d71b: feat(ai): support automatic tool approval in ui messages
49
+ - 9d486aa: feat(ai): generic tool approval function
50
+ - 9b0bc8a: fix(mcp): prevent prototype pollution by using secureJsonParse
51
+ - fc92055: feat(ai): automatic tool approval
52
+ - Updated dependencies [785fe16]
53
+ - Updated dependencies [67df0a0]
54
+ - Updated dependencies [befb78c]
55
+ - Updated dependencies [0458559]
56
+ - Updated dependencies [5852c0a]
57
+ - Updated dependencies [baa5f20]
58
+ - Updated dependencies [fc92055]
59
+ - Updated dependencies [f9acbc0]
60
+ - @ai-sdk/provider-utils@5.0.0-beta.27
61
+ - @ai-sdk/gateway@4.0.0-beta.63
62
+
3
63
  ## 7.0.0-beta.111
4
64
 
5
65
  ### Major Changes