ai 6.0.289 → 6.0.291
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.
- package/CHANGELOG.md +28 -0
- package/dist/index.d.mts +13 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.js +326 -250
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +263 -182
- package/dist/index.mjs.map +1 -1
- package/dist/internal/index.js +4 -2
- package/dist/internal/index.js.map +1 -1
- package/dist/internal/index.mjs +4 -2
- package/dist/internal/index.mjs.map +1 -1
- package/docs/03-ai-sdk-core/16-mcp-tools.mdx +57 -0
- package/docs/04-ai-sdk-ui/03-chatbot-tool-usage.mdx +7 -0
- package/package.json +4 -3
- package/src/embed/embed-many.ts +19 -3
- package/src/generate-speech/generated-audio-file.ts +0 -8
- package/src/generate-text/generated-file.ts +0 -4
- package/src/generate-text/parse-tool-call.ts +30 -23
- package/src/generate-text/stream-text.ts +9 -1
- package/src/generate-text/to-response-messages.ts +7 -0
- package/src/generate-text/tool-call.ts +26 -0
- package/src/generate-text/validate-tool-approvals.ts +20 -2
- package/src/middleware/extract-reasoning-middleware.ts +1 -1
- package/src/middleware/wrap-embedding-model.ts +12 -2
- package/src/model/get-embedding-model-provider-options-transformer.ts +17 -0
- package/src/prompt/content-part.ts +2 -0
- package/src/ui/chat.ts +108 -17
- package/src/ui/convert-to-model-messages.ts +8 -0
- package/src/ui/process-ui-message-stream.ts +6 -0
- package/src/ui/ui-messages.ts +10 -0
- package/src/ui/validate-ui-messages.ts +79 -114
- package/src/ui-message-stream/ui-message-chunks.ts +2 -0
- package/src/util/write-to-server-response.ts +0 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,33 @@
|
|
|
1
1
|
# ai
|
|
2
2
|
|
|
3
|
+
## 6.0.291
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [1915a6f]
|
|
8
|
+
- @ai-sdk/gateway@3.0.201
|
|
9
|
+
|
|
10
|
+
## 6.0.290
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- 069a945: Fix Google `embedMany` calls with more than 100 values by keeping per-value multimodal content aligned across automatic batches, including text-only entries. Validate content length before sending requests and validate each batch's provider options after middleware transforms them.
|
|
15
|
+
- 7f42b4d: fix(ai): resume tool approvals from earlier messages
|
|
16
|
+
- d1a36d2: fix(ai): execute manually approved tool inputs produced by schema transforms
|
|
17
|
+
|
|
18
|
+
Preserve approved inputs during revalidation and reject histories whose reconstructed schema output differs, including signed approvals with missing original input. Validate transformed UI tool inputs against the reconstructed output before returning them as static tool parts.
|
|
19
|
+
|
|
20
|
+
- f7f36d2: chore: enable dead code lint rules
|
|
21
|
+
- 7c41f5e: fix(ai): preserve parsed metadata and data values when validating UI messages
|
|
22
|
+
- Updated dependencies [069a945]
|
|
23
|
+
- Updated dependencies [d1a36d2]
|
|
24
|
+
- Updated dependencies [f7f36d2]
|
|
25
|
+
- Updated dependencies [be4ca16]
|
|
26
|
+
- Updated dependencies [ffb9507]
|
|
27
|
+
- Updated dependencies [bbd0115]
|
|
28
|
+
- @ai-sdk/provider-utils@4.0.54
|
|
29
|
+
- @ai-sdk/gateway@3.0.200
|
|
30
|
+
|
|
3
31
|
## 6.0.289
|
|
4
32
|
|
|
5
33
|
### Patch Changes
|
package/dist/index.d.mts
CHANGED
|
@@ -1759,6 +1759,7 @@ type UIToolInvocation<TOOL extends UITool | Tool> = {
|
|
|
1759
1759
|
descriptor?: unknown;
|
|
1760
1760
|
reason?: never;
|
|
1761
1761
|
signature?: string;
|
|
1762
|
+
inputSchemaInput?: unknown;
|
|
1762
1763
|
};
|
|
1763
1764
|
} | {
|
|
1764
1765
|
state: 'approval-responded';
|
|
@@ -1772,6 +1773,7 @@ type UIToolInvocation<TOOL extends UITool | Tool> = {
|
|
|
1772
1773
|
descriptor?: unknown;
|
|
1773
1774
|
reason?: string;
|
|
1774
1775
|
signature?: string;
|
|
1776
|
+
inputSchemaInput?: unknown;
|
|
1775
1777
|
};
|
|
1776
1778
|
} | {
|
|
1777
1779
|
state: 'output-available';
|
|
@@ -1787,6 +1789,7 @@ type UIToolInvocation<TOOL extends UITool | Tool> = {
|
|
|
1787
1789
|
descriptor?: unknown;
|
|
1788
1790
|
reason?: string;
|
|
1789
1791
|
signature?: string;
|
|
1792
|
+
inputSchemaInput?: unknown;
|
|
1790
1793
|
};
|
|
1791
1794
|
} | {
|
|
1792
1795
|
state: 'output-error';
|
|
@@ -1802,6 +1805,7 @@ type UIToolInvocation<TOOL extends UITool | Tool> = {
|
|
|
1802
1805
|
descriptor?: unknown;
|
|
1803
1806
|
reason?: string;
|
|
1804
1807
|
signature?: string;
|
|
1808
|
+
inputSchemaInput?: unknown;
|
|
1805
1809
|
};
|
|
1806
1810
|
} | {
|
|
1807
1811
|
state: 'output-denied';
|
|
@@ -1815,6 +1819,7 @@ type UIToolInvocation<TOOL extends UITool | Tool> = {
|
|
|
1815
1819
|
descriptor?: unknown;
|
|
1816
1820
|
reason?: string;
|
|
1817
1821
|
signature?: string;
|
|
1822
|
+
inputSchemaInput?: unknown;
|
|
1818
1823
|
};
|
|
1819
1824
|
});
|
|
1820
1825
|
type ToolUIPart<TOOLS extends UITools = UITools> = ValueOf<{
|
|
@@ -1864,6 +1869,7 @@ type DynamicToolUIPart = {
|
|
|
1864
1869
|
descriptor?: unknown;
|
|
1865
1870
|
reason?: never;
|
|
1866
1871
|
signature?: string;
|
|
1872
|
+
inputSchemaInput?: unknown;
|
|
1867
1873
|
};
|
|
1868
1874
|
} | {
|
|
1869
1875
|
state: 'approval-responded';
|
|
@@ -1877,6 +1883,7 @@ type DynamicToolUIPart = {
|
|
|
1877
1883
|
descriptor?: unknown;
|
|
1878
1884
|
reason?: string;
|
|
1879
1885
|
signature?: string;
|
|
1886
|
+
inputSchemaInput?: unknown;
|
|
1880
1887
|
};
|
|
1881
1888
|
} | {
|
|
1882
1889
|
state: 'output-available';
|
|
@@ -1892,6 +1899,7 @@ type DynamicToolUIPart = {
|
|
|
1892
1899
|
descriptor?: unknown;
|
|
1893
1900
|
reason?: string;
|
|
1894
1901
|
signature?: string;
|
|
1902
|
+
inputSchemaInput?: unknown;
|
|
1895
1903
|
};
|
|
1896
1904
|
} | {
|
|
1897
1905
|
state: 'output-error';
|
|
@@ -1906,6 +1914,7 @@ type DynamicToolUIPart = {
|
|
|
1906
1914
|
descriptor?: unknown;
|
|
1907
1915
|
reason?: string;
|
|
1908
1916
|
signature?: string;
|
|
1917
|
+
inputSchemaInput?: unknown;
|
|
1909
1918
|
};
|
|
1910
1919
|
} | {
|
|
1911
1920
|
state: 'output-denied';
|
|
@@ -1919,6 +1928,7 @@ type DynamicToolUIPart = {
|
|
|
1919
1928
|
descriptor?: unknown;
|
|
1920
1929
|
reason?: string;
|
|
1921
1930
|
signature?: string;
|
|
1931
|
+
inputSchemaInput?: unknown;
|
|
1922
1932
|
};
|
|
1923
1933
|
});
|
|
1924
1934
|
/**
|
|
@@ -2051,6 +2061,7 @@ type UIMessageChunk<METADATA = unknown, DATA_TYPES extends UIDataTypes = UIDataT
|
|
|
2051
2061
|
approvalId: string;
|
|
2052
2062
|
toolCallId: string;
|
|
2053
2063
|
approvalDescriptor?: unknown;
|
|
2064
|
+
inputSchemaInput?: unknown;
|
|
2054
2065
|
signature?: string;
|
|
2055
2066
|
} | {
|
|
2056
2067
|
type: 'tool-output-available';
|
|
@@ -3848,6 +3859,7 @@ declare abstract class AbstractChat<UI_MESSAGE extends UIMessage> {
|
|
|
3848
3859
|
private onFinish?;
|
|
3849
3860
|
private onData?;
|
|
3850
3861
|
private sendAutomaticallyWhen?;
|
|
3862
|
+
private pendingApprovalMessageId;
|
|
3851
3863
|
private activeResponse;
|
|
3852
3864
|
private activeResumeRequest;
|
|
3853
3865
|
private jobExecutor;
|
|
@@ -3917,6 +3929,7 @@ declare abstract class AbstractChat<UI_MESSAGE extends UIMessage> {
|
|
|
3917
3929
|
*/
|
|
3918
3930
|
stop: () => Promise<void>;
|
|
3919
3931
|
private shouldSendAutomatically;
|
|
3932
|
+
private makeRequestForToolApproval;
|
|
3920
3933
|
private makeRequest;
|
|
3921
3934
|
}
|
|
3922
3935
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1759,6 +1759,7 @@ type UIToolInvocation<TOOL extends UITool | Tool> = {
|
|
|
1759
1759
|
descriptor?: unknown;
|
|
1760
1760
|
reason?: never;
|
|
1761
1761
|
signature?: string;
|
|
1762
|
+
inputSchemaInput?: unknown;
|
|
1762
1763
|
};
|
|
1763
1764
|
} | {
|
|
1764
1765
|
state: 'approval-responded';
|
|
@@ -1772,6 +1773,7 @@ type UIToolInvocation<TOOL extends UITool | Tool> = {
|
|
|
1772
1773
|
descriptor?: unknown;
|
|
1773
1774
|
reason?: string;
|
|
1774
1775
|
signature?: string;
|
|
1776
|
+
inputSchemaInput?: unknown;
|
|
1775
1777
|
};
|
|
1776
1778
|
} | {
|
|
1777
1779
|
state: 'output-available';
|
|
@@ -1787,6 +1789,7 @@ type UIToolInvocation<TOOL extends UITool | Tool> = {
|
|
|
1787
1789
|
descriptor?: unknown;
|
|
1788
1790
|
reason?: string;
|
|
1789
1791
|
signature?: string;
|
|
1792
|
+
inputSchemaInput?: unknown;
|
|
1790
1793
|
};
|
|
1791
1794
|
} | {
|
|
1792
1795
|
state: 'output-error';
|
|
@@ -1802,6 +1805,7 @@ type UIToolInvocation<TOOL extends UITool | Tool> = {
|
|
|
1802
1805
|
descriptor?: unknown;
|
|
1803
1806
|
reason?: string;
|
|
1804
1807
|
signature?: string;
|
|
1808
|
+
inputSchemaInput?: unknown;
|
|
1805
1809
|
};
|
|
1806
1810
|
} | {
|
|
1807
1811
|
state: 'output-denied';
|
|
@@ -1815,6 +1819,7 @@ type UIToolInvocation<TOOL extends UITool | Tool> = {
|
|
|
1815
1819
|
descriptor?: unknown;
|
|
1816
1820
|
reason?: string;
|
|
1817
1821
|
signature?: string;
|
|
1822
|
+
inputSchemaInput?: unknown;
|
|
1818
1823
|
};
|
|
1819
1824
|
});
|
|
1820
1825
|
type ToolUIPart<TOOLS extends UITools = UITools> = ValueOf<{
|
|
@@ -1864,6 +1869,7 @@ type DynamicToolUIPart = {
|
|
|
1864
1869
|
descriptor?: unknown;
|
|
1865
1870
|
reason?: never;
|
|
1866
1871
|
signature?: string;
|
|
1872
|
+
inputSchemaInput?: unknown;
|
|
1867
1873
|
};
|
|
1868
1874
|
} | {
|
|
1869
1875
|
state: 'approval-responded';
|
|
@@ -1877,6 +1883,7 @@ type DynamicToolUIPart = {
|
|
|
1877
1883
|
descriptor?: unknown;
|
|
1878
1884
|
reason?: string;
|
|
1879
1885
|
signature?: string;
|
|
1886
|
+
inputSchemaInput?: unknown;
|
|
1880
1887
|
};
|
|
1881
1888
|
} | {
|
|
1882
1889
|
state: 'output-available';
|
|
@@ -1892,6 +1899,7 @@ type DynamicToolUIPart = {
|
|
|
1892
1899
|
descriptor?: unknown;
|
|
1893
1900
|
reason?: string;
|
|
1894
1901
|
signature?: string;
|
|
1902
|
+
inputSchemaInput?: unknown;
|
|
1895
1903
|
};
|
|
1896
1904
|
} | {
|
|
1897
1905
|
state: 'output-error';
|
|
@@ -1906,6 +1914,7 @@ type DynamicToolUIPart = {
|
|
|
1906
1914
|
descriptor?: unknown;
|
|
1907
1915
|
reason?: string;
|
|
1908
1916
|
signature?: string;
|
|
1917
|
+
inputSchemaInput?: unknown;
|
|
1909
1918
|
};
|
|
1910
1919
|
} | {
|
|
1911
1920
|
state: 'output-denied';
|
|
@@ -1919,6 +1928,7 @@ type DynamicToolUIPart = {
|
|
|
1919
1928
|
descriptor?: unknown;
|
|
1920
1929
|
reason?: string;
|
|
1921
1930
|
signature?: string;
|
|
1931
|
+
inputSchemaInput?: unknown;
|
|
1922
1932
|
};
|
|
1923
1933
|
});
|
|
1924
1934
|
/**
|
|
@@ -2051,6 +2061,7 @@ type UIMessageChunk<METADATA = unknown, DATA_TYPES extends UIDataTypes = UIDataT
|
|
|
2051
2061
|
approvalId: string;
|
|
2052
2062
|
toolCallId: string;
|
|
2053
2063
|
approvalDescriptor?: unknown;
|
|
2064
|
+
inputSchemaInput?: unknown;
|
|
2054
2065
|
signature?: string;
|
|
2055
2066
|
} | {
|
|
2056
2067
|
type: 'tool-output-available';
|
|
@@ -3848,6 +3859,7 @@ declare abstract class AbstractChat<UI_MESSAGE extends UIMessage> {
|
|
|
3848
3859
|
private onFinish?;
|
|
3849
3860
|
private onData?;
|
|
3850
3861
|
private sendAutomaticallyWhen?;
|
|
3862
|
+
private pendingApprovalMessageId;
|
|
3851
3863
|
private activeResponse;
|
|
3852
3864
|
private activeResumeRequest;
|
|
3853
3865
|
private jobExecutor;
|
|
@@ -3917,6 +3929,7 @@ declare abstract class AbstractChat<UI_MESSAGE extends UIMessage> {
|
|
|
3917
3929
|
*/
|
|
3918
3930
|
stop: () => Promise<void>;
|
|
3919
3931
|
private shouldSendAutomatically;
|
|
3932
|
+
private makeRequestForToolApproval;
|
|
3920
3933
|
private makeRequest;
|
|
3921
3934
|
}
|
|
3922
3935
|
|