diff --git a/.changeset/ai-computer-use.md b/.changeset/ai-computer-use.md deleted file mode 100644 index 931e6ceb0b..0000000000 --- a/.changeset/ai-computer-use.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -'@tanstack/ai-computer-use': minor -'@tanstack/ai-computer-playwright': minor -'@tanstack/ai-computer-sandbox': minor -'@tanstack/ai-computer-local': minor -'@tanstack/ai': minor -'@tanstack/openai-base': minor -'@tanstack/ai-openai': minor -'@tanstack/ai-anthropic': minor ---- - -Add computer use that runs the same code on OpenAI and on Anthropic. A driver controls the machine. The Playwright and sandbox drivers give each thread its own machine. - -New packages: - -- `@tanstack/ai-computer-use` adds `createComputerUse()`. It returns `tools`, a middleware, a safety-check interrupt, and `close`. Each `threadId` gets its own machine, action queue, and approvals. A thread that stays idle for `idleTimeout` (10 minutes by default) closes. -- `@tanstack/ai-computer-playwright` adds `playwrightComputer()`, which opens one browser page for each thread. `createPlaywrightComputerDriver()` controls one page that you give it. Both add a `navigate` tool that opens `http:` and `https:` URLs. -- `@tanstack/ai-computer-sandbox` adds `sandboxComputer()`, which creates one Linux desktop sandbox for each thread from any `@tanstack/ai-sandbox` provider, like `e2bSandbox({ template: 'desktop' })`. `createSandboxComputerDriver()` controls one sandbox that you give it. -- `@tanstack/ai-computer-local` adds `localComputer()`, which lets the model use the mouse, keyboard, and main screen of the machine that runs `chat()`. It works on Windows, macOS, and Linux with `@jitsi/robotjs`. - -Changes in existing packages: - -- `@tanstack/ai` adds `threadId` to `ToolExecutionContext`. It also adds the computer tool metadata reader in `@tanstack/ai/adapter-internals`. -- `@tanstack/ai-anthropic` and `@tanstack/openai-base` send the generic computer tool to the model as the native computer tool of the provider. -- `@tanstack/ai-openai` marks the models that support the `computer` tool. - -```ts -const computerUse = createComputerUse({ - driver: playwrightComputer({ startUrl: 'https://tanstack.com' }), -}) - -chat({ - adapter, - messages, - threadId, - tools: computerUse.tools, - middleware: [computerUse.middleware], - interrupts: [computerUse.interrupt], -}) - -await computerUse.close(threadId) // one thread -await computerUse.close() // every thread, and the browser -``` - -The `ai-core` agent skill routes computer use to `@tanstack/ai-computer-use` and its three drivers. diff --git a/.changeset/anthropic-computer-toolset.md b/.changeset/anthropic-computer-toolset.md deleted file mode 100644 index 94212459f0..0000000000 --- a/.changeset/anthropic-computer-toolset.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@tanstack/ai-anthropic': minor ---- - -Run computer use on every Claude model that supports it. - -- `computerUseTool()` takes `computer_toolset_20260801`, the only computer use version of Claude Opus 5.5, Sonnet 5.5, and Haiku 5.5. The model calls each action as its own tool. The adapter runs each call as one `computer` call with the action in `input.action`, and sends it back to Claude in the form that Claude sent. So one `execute` works for every version. -- `computerUseTool()` takes `computer_20251124`, with its `computer-use-2025-11-24` beta header. -- Each model now takes only the computer use versions that it supports. For example, `computer_20250124` on `claude-opus-4-6` is a type error, because Anthropic rejects that pair. -- `@anthropic-ai/sdk` is now `^0.135.0`. diff --git a/.changeset/anthropic-computer-use-beta.md b/.changeset/anthropic-computer-use-beta.md deleted file mode 100644 index 780f25cd02..0000000000 --- a/.changeset/anthropic-computer-use-beta.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tanstack/ai-anthropic': patch ---- - -Send the `anthropic-beta` header that `computerUseTool()` needs: `computer-use-2025-01-24` for `computer_20250124`, and `computer-use-2024-10-22` for `computer_20241022`. Before, a request with the tool had no computer use beta, so Anthropic rejected it. diff --git a/.changeset/daytona-spawn-unhandled-rejection.md b/.changeset/daytona-spawn-unhandled-rejection.md deleted file mode 100644 index af8180ad8f..0000000000 --- a/.changeset/daytona-spawn-unhandled-rejection.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tanstack/ai-sandbox-daytona': patch ---- - -A background process from `spawn()` no longer crashes Node with an unhandled rejection when its status poll fails, for example after `destroy()`. `wait()` still rejects with the error. diff --git a/.changeset/openai-computer-call-loop.md b/.changeset/openai-computer-call-loop.md deleted file mode 100644 index afce6105da..0000000000 --- a/.changeset/openai-computer-call-loop.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@tanstack/openai-base': patch ---- - -The computer use loop of `computerUseTool()` runs. A `computer_call` from the model is now a tool call to `computer_use_preview`, with the `action` and the `pending_safety_checks` as its input. The tool result goes back as `computer_call_output`, with the first image of the result as the screenshot. When the call does not fail, the output acknowledges the safety checks of the call. - -A failed computer call sends the newest screenshot of the conversation, because the failed call has no screenshot of its own. A computer call output has no text, so the reason for the failure goes to the model in a user message after the call outputs. - -A computer tool result with no image fails the run with an error. Before, the adapter sent an empty screenshot. diff --git a/.changeset/openai-computer-tool.md b/.changeset/openai-computer-tool.md deleted file mode 100644 index 40fbc8cab4..0000000000 --- a/.changeset/openai-computer-tool.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tanstack/openai-base': minor -'@tanstack/ai-openai': minor ---- - -`computerUseTool({ type: 'computer' })` adds the computer tool of the newer OpenAI models, for example `gpt-6.1-sol`. The tool name is `computer`. Each call has the batched `actions` of the model and the `pending_safety_checks`, and the replay sends the actions back as they came. `computerUseTool({ type: 'computer_use_preview', ... })` for the `computer-use-preview` model works as before. The Responses tool choice type also accepts `computer`. Computer screenshots now go out with `detail: 'original'`, as in OpenAI's computer use guide. diff --git a/.changeset/sandbox-skill-computer-use.md b/.changeset/sandbox-skill-computer-use.md deleted file mode 100644 index 5b6bc96e7b..0000000000 --- a/.changeset/sandbox-skill-computer-use.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tanstack/ai-sandbox': patch ---- - -The `ai-sandbox` skill now says how to use a sandbox provider for computer use, with `sandboxComputer()` from `@tanstack/ai-computer-sandbox`. diff --git a/examples/ag-ui/CHANGELOG.md b/examples/ag-ui/CHANGELOG.md index 1de9bf89b7..5bef40703f 100644 --- a/examples/ag-ui/CHANGELOG.md +++ b/examples/ag-ui/CHANGELOG.md @@ -1,5 +1,13 @@ # ag-ui +## 0.0.40 + +### Patch Changes + +- Updated dependencies []: + - @tanstack/ai-client@0.40.1 + - @tanstack/ai-react@0.31.1 + ## 0.0.39 ### Patch Changes diff --git a/examples/ag-ui/package.json b/examples/ag-ui/package.json index 99d2a055cd..0481e15f98 100644 --- a/examples/ag-ui/package.json +++ b/examples/ag-ui/package.json @@ -2,7 +2,7 @@ "name": "ag-ui", "private": true, "type": "module", - "version": "0.0.39", + "version": "0.0.40", "scripts": { "detect-servers": "node scripts/detect-servers.mjs", "predev": "node scripts/detect-servers.mjs", diff --git a/packages/ai-acp/CHANGELOG.md b/packages/ai-acp/CHANGELOG.md index 9b45d9e3e6..b7956d6e1c 100644 --- a/packages/ai-acp/CHANGELOG.md +++ b/packages/ai-acp/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-acp +## 0.3.27 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-sandbox@0.5.25 + ## 0.3.26 ### Patch Changes diff --git a/packages/ai-acp/package.json b/packages/ai-acp/package.json index 025896210d..32922967e1 100644 --- a/packages/ai-acp/package.json +++ b/packages/ai-acp/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-acp", - "version": "0.3.26", + "version": "0.3.27", "description": "Shared Agent Client Protocol (ACP) transport, session, and AG-UI translation for TanStack AI harness adapters.", "author": "", "license": "MIT", diff --git a/packages/ai-angular/CHANGELOG.md b/packages/ai-angular/CHANGELOG.md index 8575902aa9..4a8fda6058 100644 --- a/packages/ai-angular/CHANGELOG.md +++ b/packages/ai-angular/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-angular +## 0.14.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-client@0.40.1 + ## 0.14.0 ### Minor Changes diff --git a/packages/ai-angular/package.json b/packages/ai-angular/package.json index c8ba9854fc..8daada07ea 100644 --- a/packages/ai-angular/package.json +++ b/packages/ai-angular/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-angular", - "version": "0.14.0", + "version": "0.14.1", "description": "Angular signals integration for TanStack AI streaming chat, structured outputs, and media generation.", "author": "", "license": "MIT", diff --git a/packages/ai-anthropic/CHANGELOG.md b/packages/ai-anthropic/CHANGELOG.md index f9b53dcb31..5445c4c3d4 100644 --- a/packages/ai-anthropic/CHANGELOG.md +++ b/packages/ai-anthropic/CHANGELOG.md @@ -1,5 +1,55 @@ # @tanstack/ai-anthropic +## 0.23.0 + +### Minor Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - Add computer use that runs the same code on OpenAI and on Anthropic. A driver controls the machine. The Playwright and sandbox drivers give each thread its own machine. + + New packages: + - `@tanstack/ai-computer-use` adds `createComputerUse()`. It returns `tools`, a middleware, a safety-check interrupt, and `close`. Each `threadId` gets its own machine, action queue, and approvals. A thread that stays idle for `idleTimeout` (10 minutes by default) closes. + - `@tanstack/ai-computer-playwright` adds `playwrightComputer()`, which opens one browser page for each thread. `createPlaywrightComputerDriver()` controls one page that you give it. Both add a `navigate` tool that opens `http:` and `https:` URLs. + - `@tanstack/ai-computer-sandbox` adds `sandboxComputer()`, which creates one Linux desktop sandbox for each thread from any `@tanstack/ai-sandbox` provider, like `e2bSandbox({ template: 'desktop' })`. `createSandboxComputerDriver()` controls one sandbox that you give it. + - `@tanstack/ai-computer-local` adds `localComputer()`, which lets the model use the mouse, keyboard, and main screen of the machine that runs `chat()`. It works on Windows, macOS, and Linux with `@jitsi/robotjs`. + + Changes in existing packages: + - `@tanstack/ai` adds `threadId` to `ToolExecutionContext`. It also adds the computer tool metadata reader in `@tanstack/ai/adapter-internals`. + - `@tanstack/ai-anthropic` and `@tanstack/openai-base` send the generic computer tool to the model as the native computer tool of the provider. + - `@tanstack/ai-openai` marks the models that support the `computer` tool. + + ```ts + const computerUse = createComputerUse({ + driver: playwrightComputer({ startUrl: 'https://tanstack.com' }), + }) + + chat({ + adapter, + messages, + threadId, + tools: computerUse.tools, + middleware: [computerUse.middleware], + interrupts: [computerUse.interrupt], + }) + + await computerUse.close(threadId) // one thread + await computerUse.close() // every thread, and the browser + ``` + + The `ai-core` agent skill routes computer use to `@tanstack/ai-computer-use` and its three drivers. + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - Run computer use on every Claude model that supports it. + - `computerUseTool()` takes `computer_toolset_20260801`, the only computer use version of Claude Opus 5.5, Sonnet 5.5, and Haiku 5.5. The model calls each action as its own tool. The adapter runs each call as one `computer` call with the action in `input.action`, and sends it back to Claude in the form that Claude sent. So one `execute` works for every version. + - `computerUseTool()` takes `computer_20251124`, with its `computer-use-2025-11-24` beta header. + - Each model now takes only the computer use versions that it supports. For example, `computer_20250124` on `claude-opus-4-6` is a type error, because Anthropic rejects that pair. + - `@anthropic-ai/sdk` is now `^0.135.0`. + +### Patch Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - Send the `anthropic-beta` header that `computerUseTool()` needs: `computer-use-2025-01-24` for `computer_20250124`, and `computer-use-2024-10-22` for `computer_20241022`. Before, a request with the tool had no computer use beta, so Anthropic rejected it. + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.22.1 ### Patch Changes diff --git a/packages/ai-anthropic/package.json b/packages/ai-anthropic/package.json index ff946b18c2..aa79348862 100644 --- a/packages/ai-anthropic/package.json +++ b/packages/ai-anthropic/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-anthropic", - "version": "0.22.1", + "version": "0.23.0", "description": "Anthropic Claude adapter for TanStack AI chat, tool calling, thinking, and structured outputs.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-bedrock/CHANGELOG.md b/packages/ai-bedrock/CHANGELOG.md index d825b14ce7..c74e747141 100644 --- a/packages/ai-bedrock/CHANGELOG.md +++ b/packages/ai-bedrock/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-bedrock +## 0.6.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/openai-base@0.16.0 + ## 0.6.1 ### Patch Changes diff --git a/packages/ai-bedrock/package.json b/packages/ai-bedrock/package.json index ddf0f89525..d84efd371b 100644 --- a/packages/ai-bedrock/package.json +++ b/packages/ai-bedrock/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-bedrock", - "version": "0.6.1", + "version": "0.6.2", "type": "module", "description": "Amazon Bedrock adapter for TanStack AI — OpenAI-compatible chat, responses, tools, and reasoning.", "author": "", diff --git a/packages/ai-byteplus/CHANGELOG.md b/packages/ai-byteplus/CHANGELOG.md index 904c6ebe45..13951dd01c 100644 --- a/packages/ai-byteplus/CHANGELOG.md +++ b/packages/ai-byteplus/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-byteplus +## 0.7.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/openai-base@0.16.0 + ## 0.7.1 ### Patch Changes diff --git a/packages/ai-byteplus/package.json b/packages/ai-byteplus/package.json index 35fd64edfc..7dd853019a 100644 --- a/packages/ai-byteplus/package.json +++ b/packages/ai-byteplus/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-byteplus", - "version": "0.7.1", + "version": "0.7.2", "description": "BytePlus ModelArk adapter for TanStack AI: Seed LLM chat, Seedance video, Seedream image, and Seed Speech TTS/ASR.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-claude-code/CHANGELOG.md b/packages/ai-claude-code/CHANGELOG.md index 561578d4b9..e4eb58e043 100644 --- a/packages/ai-claude-code/CHANGELOG.md +++ b/packages/ai-claude-code/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-claude-code +## 0.9.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-sandbox@0.5.25 + ## 0.9.1 ### Patch Changes diff --git a/packages/ai-claude-code/package.json b/packages/ai-claude-code/package.json index 7b4f378cab..f94e0e7c34 100644 --- a/packages/ai-claude-code/package.json +++ b/packages/ai-claude-code/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-claude-code", - "version": "0.9.1", + "version": "0.9.2", "description": "Claude Code harness adapter for TanStack AI — run Claude Code as a chat backend with local tool execution and stateful sessions.", "author": "", "license": "MIT", diff --git a/packages/ai-client/CHANGELOG.md b/packages/ai-client/CHANGELOG.md index a76b9c2b41..198ba79276 100644 --- a/packages/ai-client/CHANGELOG.md +++ b/packages/ai-client/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-client +## 0.40.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.40.0 ### Minor Changes diff --git a/packages/ai-client/package.json b/packages/ai-client/package.json index 4c24f1c6d5..39608a00ab 100644 --- a/packages/ai-client/package.json +++ b/packages/ai-client/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-client", - "version": "0.40.0", + "version": "0.40.1", "description": "Framework-agnostic headless client for TanStack AI chat, realtime sessions, streaming transports, and media generations.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-cloudflare/CHANGELOG.md b/packages/ai-cloudflare/CHANGELOG.md index 514abced24..22bfb434c1 100644 --- a/packages/ai-cloudflare/CHANGELOG.md +++ b/packages/ai-cloudflare/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-cloudflare +## 0.3.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/openai-base@0.16.0 + ## 0.3.1 ### Patch Changes diff --git a/packages/ai-cloudflare/package.json b/packages/ai-cloudflare/package.json index 41ee6d31a4..bb49f5680a 100644 --- a/packages/ai-cloudflare/package.json +++ b/packages/ai-cloudflare/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-cloudflare", - "version": "0.3.1", + "version": "0.3.2", "description": "Cloudflare adapter for TanStack AI — Workers AI chat, embeddings, images, speech, transcription, and summarization over the AI binding or REST, with AI Gateway routing for any provider.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-code-mode-snippets/CHANGELOG.md b/packages/ai-code-mode-snippets/CHANGELOG.md index 80bbbe62f1..9621360849 100644 --- a/packages/ai-code-mode-snippets/CHANGELOG.md +++ b/packages/ai-code-mode-snippets/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-code-mode-snippets +## 0.4.27 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-code-mode@0.5.5 + ## 0.4.26 ### Patch Changes diff --git a/packages/ai-code-mode-snippets/package.json b/packages/ai-code-mode-snippets/package.json index 40f0235414..684bc85ad8 100644 --- a/packages/ai-code-mode-snippets/package.json +++ b/packages/ai-code-mode-snippets/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-code-mode-snippets", - "version": "0.4.26", + "version": "0.4.27", "description": "Persistent runtime snippet library for TanStack AI Code Mode agents and sandboxed tool orchestration.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-code-mode/CHANGELOG.md b/packages/ai-code-mode/CHANGELOG.md index ee71f18544..b6cd83f612 100644 --- a/packages/ai-code-mode/CHANGELOG.md +++ b/packages/ai-code-mode/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-code-mode +## 0.5.5 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.5.4 ### Patch Changes diff --git a/packages/ai-code-mode/package.json b/packages/ai-code-mode/package.json index ffbdc1e067..f1de94db34 100644 --- a/packages/ai-code-mode/package.json +++ b/packages/ai-code-mode/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-code-mode", - "version": "0.5.4", + "version": "0.5.5", "description": "Secure TypeScript Code Mode for TanStack AI agents to execute sandboxed tool orchestration programs.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-codex/CHANGELOG.md b/packages/ai-codex/CHANGELOG.md index 2f5a392097..280bba119a 100644 --- a/packages/ai-codex/CHANGELOG.md +++ b/packages/ai-codex/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-codex +## 0.6.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-sandbox@0.5.25 + ## 0.6.1 ### Patch Changes diff --git a/packages/ai-codex/package.json b/packages/ai-codex/package.json index 25156d6964..029c505e5f 100644 --- a/packages/ai-codex/package.json +++ b/packages/ai-codex/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-codex", - "version": "0.6.1", + "version": "0.6.2", "description": "Codex harness adapter for TanStack AI — run OpenAI Codex as a chat backend with local tool execution and stateful sessions.", "author": "", "license": "MIT", diff --git a/packages/ai-cohere/CHANGELOG.md b/packages/ai-cohere/CHANGELOG.md index f35395dc16..850f1591d5 100644 --- a/packages/ai-cohere/CHANGELOG.md +++ b/packages/ai-cohere/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-cohere +## 0.4.19 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.4.18 ### Patch Changes diff --git a/packages/ai-cohere/package.json b/packages/ai-cohere/package.json index a240e4db8f..79efeaed77 100644 --- a/packages/ai-cohere/package.json +++ b/packages/ai-cohere/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-cohere", - "version": "0.4.18", + "version": "0.4.19", "description": "Cohere adapter for TanStack AI — multimodal embeddings and document reranking.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-compaction/CHANGELOG.md b/packages/ai-compaction/CHANGELOG.md index 59ea5c864a..aa8c650d5d 100644 --- a/packages/ai-compaction/CHANGELOG.md +++ b/packages/ai-compaction/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-compaction +## 0.3.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.3.0 ### Minor Changes diff --git a/packages/ai-compaction/package.json b/packages/ai-compaction/package.json index 964cac4af8..5421f30476 100644 --- a/packages/ai-compaction/package.json +++ b/packages/ai-compaction/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-compaction", - "version": "0.3.0", + "version": "0.3.1", "description": "Context-window compaction middleware for TanStack AI chat()", "author": "", "license": "MIT", diff --git a/packages/ai-computer-local/CHANGELOG.md b/packages/ai-computer-local/CHANGELOG.md new file mode 100644 index 0000000000..3ed198c6fa --- /dev/null +++ b/packages/ai-computer-local/CHANGELOG.md @@ -0,0 +1,43 @@ +# @tanstack/ai-computer-local + +## 0.1.0 + +### Minor Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - Add computer use that runs the same code on OpenAI and on Anthropic. A driver controls the machine. The Playwright and sandbox drivers give each thread its own machine. + + New packages: + - `@tanstack/ai-computer-use` adds `createComputerUse()`. It returns `tools`, a middleware, a safety-check interrupt, and `close`. Each `threadId` gets its own machine, action queue, and approvals. A thread that stays idle for `idleTimeout` (10 minutes by default) closes. + - `@tanstack/ai-computer-playwright` adds `playwrightComputer()`, which opens one browser page for each thread. `createPlaywrightComputerDriver()` controls one page that you give it. Both add a `navigate` tool that opens `http:` and `https:` URLs. + - `@tanstack/ai-computer-sandbox` adds `sandboxComputer()`, which creates one Linux desktop sandbox for each thread from any `@tanstack/ai-sandbox` provider, like `e2bSandbox({ template: 'desktop' })`. `createSandboxComputerDriver()` controls one sandbox that you give it. + - `@tanstack/ai-computer-local` adds `localComputer()`, which lets the model use the mouse, keyboard, and main screen of the machine that runs `chat()`. It works on Windows, macOS, and Linux with `@jitsi/robotjs`. + + Changes in existing packages: + - `@tanstack/ai` adds `threadId` to `ToolExecutionContext`. It also adds the computer tool metadata reader in `@tanstack/ai/adapter-internals`. + - `@tanstack/ai-anthropic` and `@tanstack/openai-base` send the generic computer tool to the model as the native computer tool of the provider. + - `@tanstack/ai-openai` marks the models that support the `computer` tool. + + ```ts + const computerUse = createComputerUse({ + driver: playwrightComputer({ startUrl: 'https://tanstack.com' }), + }) + + chat({ + adapter, + messages, + threadId, + tools: computerUse.tools, + middleware: [computerUse.middleware], + interrupts: [computerUse.interrupt], + }) + + await computerUse.close(threadId) // one thread + await computerUse.close() // every thread, and the browser + ``` + + The `ai-core` agent skill routes computer use to `@tanstack/ai-computer-use` and its three drivers. + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai-computer-use@0.1.0 diff --git a/packages/ai-computer-local/package.json b/packages/ai-computer-local/package.json index a747398766..ac973f70b5 100644 --- a/packages/ai-computer-local/package.json +++ b/packages/ai-computer-local/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-computer-local", - "version": "0.0.0", + "version": "0.1.0", "description": "Local computer driver for TanStack AI computer use. The model controls the mouse, keyboard, and screen of the machine that runs the server.", "author": "", "license": "MIT", diff --git a/packages/ai-computer-playwright/CHANGELOG.md b/packages/ai-computer-playwright/CHANGELOG.md new file mode 100644 index 0000000000..e7f5fe093b --- /dev/null +++ b/packages/ai-computer-playwright/CHANGELOG.md @@ -0,0 +1,43 @@ +# @tanstack/ai-computer-playwright + +## 0.1.0 + +### Minor Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - Add computer use that runs the same code on OpenAI and on Anthropic. A driver controls the machine. The Playwright and sandbox drivers give each thread its own machine. + + New packages: + - `@tanstack/ai-computer-use` adds `createComputerUse()`. It returns `tools`, a middleware, a safety-check interrupt, and `close`. Each `threadId` gets its own machine, action queue, and approvals. A thread that stays idle for `idleTimeout` (10 minutes by default) closes. + - `@tanstack/ai-computer-playwright` adds `playwrightComputer()`, which opens one browser page for each thread. `createPlaywrightComputerDriver()` controls one page that you give it. Both add a `navigate` tool that opens `http:` and `https:` URLs. + - `@tanstack/ai-computer-sandbox` adds `sandboxComputer()`, which creates one Linux desktop sandbox for each thread from any `@tanstack/ai-sandbox` provider, like `e2bSandbox({ template: 'desktop' })`. `createSandboxComputerDriver()` controls one sandbox that you give it. + - `@tanstack/ai-computer-local` adds `localComputer()`, which lets the model use the mouse, keyboard, and main screen of the machine that runs `chat()`. It works on Windows, macOS, and Linux with `@jitsi/robotjs`. + + Changes in existing packages: + - `@tanstack/ai` adds `threadId` to `ToolExecutionContext`. It also adds the computer tool metadata reader in `@tanstack/ai/adapter-internals`. + - `@tanstack/ai-anthropic` and `@tanstack/openai-base` send the generic computer tool to the model as the native computer tool of the provider. + - `@tanstack/ai-openai` marks the models that support the `computer` tool. + + ```ts + const computerUse = createComputerUse({ + driver: playwrightComputer({ startUrl: 'https://tanstack.com' }), + }) + + chat({ + adapter, + messages, + threadId, + tools: computerUse.tools, + middleware: [computerUse.middleware], + interrupts: [computerUse.interrupt], + }) + + await computerUse.close(threadId) // one thread + await computerUse.close() // every thread, and the browser + ``` + + The `ai-core` agent skill routes computer use to `@tanstack/ai-computer-use` and its three drivers. + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai-computer-use@0.1.0 diff --git a/packages/ai-computer-playwright/package.json b/packages/ai-computer-playwright/package.json index f642c94699..8d58c9f421 100644 --- a/packages/ai-computer-playwright/package.json +++ b/packages/ai-computer-playwright/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-computer-playwright", - "version": "0.0.0", + "version": "0.1.0", "description": "Playwright browser driver for TanStack AI computer use.", "author": "", "license": "MIT", diff --git a/packages/ai-computer-sandbox/CHANGELOG.md b/packages/ai-computer-sandbox/CHANGELOG.md new file mode 100644 index 0000000000..a8547a4c22 --- /dev/null +++ b/packages/ai-computer-sandbox/CHANGELOG.md @@ -0,0 +1,44 @@ +# @tanstack/ai-computer-sandbox + +## 0.1.0 + +### Minor Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - Add computer use that runs the same code on OpenAI and on Anthropic. A driver controls the machine. The Playwright and sandbox drivers give each thread its own machine. + + New packages: + - `@tanstack/ai-computer-use` adds `createComputerUse()`. It returns `tools`, a middleware, a safety-check interrupt, and `close`. Each `threadId` gets its own machine, action queue, and approvals. A thread that stays idle for `idleTimeout` (10 minutes by default) closes. + - `@tanstack/ai-computer-playwright` adds `playwrightComputer()`, which opens one browser page for each thread. `createPlaywrightComputerDriver()` controls one page that you give it. Both add a `navigate` tool that opens `http:` and `https:` URLs. + - `@tanstack/ai-computer-sandbox` adds `sandboxComputer()`, which creates one Linux desktop sandbox for each thread from any `@tanstack/ai-sandbox` provider, like `e2bSandbox({ template: 'desktop' })`. `createSandboxComputerDriver()` controls one sandbox that you give it. + - `@tanstack/ai-computer-local` adds `localComputer()`, which lets the model use the mouse, keyboard, and main screen of the machine that runs `chat()`. It works on Windows, macOS, and Linux with `@jitsi/robotjs`. + + Changes in existing packages: + - `@tanstack/ai` adds `threadId` to `ToolExecutionContext`. It also adds the computer tool metadata reader in `@tanstack/ai/adapter-internals`. + - `@tanstack/ai-anthropic` and `@tanstack/openai-base` send the generic computer tool to the model as the native computer tool of the provider. + - `@tanstack/ai-openai` marks the models that support the `computer` tool. + + ```ts + const computerUse = createComputerUse({ + driver: playwrightComputer({ startUrl: 'https://tanstack.com' }), + }) + + chat({ + adapter, + messages, + threadId, + tools: computerUse.tools, + middleware: [computerUse.middleware], + interrupts: [computerUse.interrupt], + }) + + await computerUse.close(threadId) // one thread + await computerUse.close() // every thread, and the browser + ``` + + The `ai-core` agent skill routes computer use to `@tanstack/ai-computer-use` and its three drivers. + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai-computer-use@0.1.0 + - @tanstack/ai-sandbox@0.5.25 diff --git a/packages/ai-computer-sandbox/package.json b/packages/ai-computer-sandbox/package.json index e5ba7519b7..d3764fdeab 100644 --- a/packages/ai-computer-sandbox/package.json +++ b/packages/ai-computer-sandbox/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-computer-sandbox", - "version": "0.0.0", + "version": "0.1.0", "description": "Sandbox desktop driver for TanStack AI computer use. Works with any @tanstack/ai-sandbox provider.", "author": "", "license": "MIT", diff --git a/packages/ai-computer-use/CHANGELOG.md b/packages/ai-computer-use/CHANGELOG.md new file mode 100644 index 0000000000..19c4a6d87d --- /dev/null +++ b/packages/ai-computer-use/CHANGELOG.md @@ -0,0 +1,43 @@ +# @tanstack/ai-computer-use + +## 0.1.0 + +### Minor Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - Add computer use that runs the same code on OpenAI and on Anthropic. A driver controls the machine. The Playwright and sandbox drivers give each thread its own machine. + + New packages: + - `@tanstack/ai-computer-use` adds `createComputerUse()`. It returns `tools`, a middleware, a safety-check interrupt, and `close`. Each `threadId` gets its own machine, action queue, and approvals. A thread that stays idle for `idleTimeout` (10 minutes by default) closes. + - `@tanstack/ai-computer-playwright` adds `playwrightComputer()`, which opens one browser page for each thread. `createPlaywrightComputerDriver()` controls one page that you give it. Both add a `navigate` tool that opens `http:` and `https:` URLs. + - `@tanstack/ai-computer-sandbox` adds `sandboxComputer()`, which creates one Linux desktop sandbox for each thread from any `@tanstack/ai-sandbox` provider, like `e2bSandbox({ template: 'desktop' })`. `createSandboxComputerDriver()` controls one sandbox that you give it. + - `@tanstack/ai-computer-local` adds `localComputer()`, which lets the model use the mouse, keyboard, and main screen of the machine that runs `chat()`. It works on Windows, macOS, and Linux with `@jitsi/robotjs`. + + Changes in existing packages: + - `@tanstack/ai` adds `threadId` to `ToolExecutionContext`. It also adds the computer tool metadata reader in `@tanstack/ai/adapter-internals`. + - `@tanstack/ai-anthropic` and `@tanstack/openai-base` send the generic computer tool to the model as the native computer tool of the provider. + - `@tanstack/ai-openai` marks the models that support the `computer` tool. + + ```ts + const computerUse = createComputerUse({ + driver: playwrightComputer({ startUrl: 'https://tanstack.com' }), + }) + + chat({ + adapter, + messages, + threadId, + tools: computerUse.tools, + middleware: [computerUse.middleware], + interrupts: [computerUse.interrupt], + }) + + await computerUse.close(threadId) // one thread + await computerUse.close() // every thread, and the browser + ``` + + The `ai-core` agent skill routes computer use to `@tanstack/ai-computer-use` and its three drivers. + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 diff --git a/packages/ai-computer-use/package.json b/packages/ai-computer-use/package.json index 3f0d0fddba..939b359c46 100644 --- a/packages/ai-computer-use/package.json +++ b/packages/ai-computer-use/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-computer-use", - "version": "0.0.0", + "version": "0.1.0", "description": "Provider-agnostic computer use for TanStack AI.", "author": "", "license": "MIT", diff --git a/packages/ai-devtools/CHANGELOG.md b/packages/ai-devtools/CHANGELOG.md index eacda42f71..a2dd662ebf 100644 --- a/packages/ai-devtools/CHANGELOG.md +++ b/packages/ai-devtools/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-devtools-core +## 0.5.30 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.5.29 ### Patch Changes diff --git a/packages/ai-devtools/package.json b/packages/ai-devtools/package.json index 9b98ef87f3..06bb2f0133 100644 --- a/packages/ai-devtools/package.json +++ b/packages/ai-devtools/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-devtools-core", - "version": "0.5.29", + "version": "0.5.30", "description": "Core TanStack AI Devtools plugin for inspecting chat messages, tool calls, streams, and errors.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-durable-stream/CHANGELOG.md b/packages/ai-durable-stream/CHANGELOG.md index 83c560301b..68387b3eb9 100644 --- a/packages/ai-durable-stream/CHANGELOG.md +++ b/packages/ai-durable-stream/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-durable-stream +## 0.1.29 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.1.28 ### Patch Changes diff --git a/packages/ai-durable-stream/package.json b/packages/ai-durable-stream/package.json index b5560762a7..f06d340cde 100644 --- a/packages/ai-durable-stream/package.json +++ b/packages/ai-durable-stream/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-durable-stream", - "version": "0.1.28", + "version": "0.1.29", "description": "Delivery durability for TanStack AI over the durable-streams HTTP protocol — a resumable StreamDurability transport sink (append/read/resume) that stores zero delivery events itself.", "author": "", "license": "MIT", diff --git a/packages/ai-elevenlabs/CHANGELOG.md b/packages/ai-elevenlabs/CHANGELOG.md index 32ecbecc15..397f32e54e 100644 --- a/packages/ai-elevenlabs/CHANGELOG.md +++ b/packages/ai-elevenlabs/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-elevenlabs +## 0.6.14 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.6.13 ### Patch Changes diff --git a/packages/ai-elevenlabs/package.json b/packages/ai-elevenlabs/package.json index b4a2ecd14d..2785454af2 100644 --- a/packages/ai-elevenlabs/package.json +++ b/packages/ai-elevenlabs/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-elevenlabs", - "version": "0.6.13", + "version": "0.6.14", "description": "ElevenLabs adapter for TanStack AI realtime voice, text-to-speech, transcription, music, and sound effects.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-fal/CHANGELOG.md b/packages/ai-fal/CHANGELOG.md index 9434244bc0..29ffba633d 100644 --- a/packages/ai-fal/CHANGELOG.md +++ b/packages/ai-fal/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-fal +## 0.16.6 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.16.5 ### Patch Changes diff --git a/packages/ai-fal/package.json b/packages/ai-fal/package.json index 0bcb8cf0f2..409150cdab 100644 --- a/packages/ai-fal/package.json +++ b/packages/ai-fal/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-fal", - "version": "0.16.5", + "version": "0.16.6", "description": "fal.ai adapter for TanStack AI image, video, live, audio, speech, and transcription generation.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-gemini/CHANGELOG.md b/packages/ai-gemini/CHANGELOG.md index c380cdf76b..51a2f71b65 100644 --- a/packages/ai-gemini/CHANGELOG.md +++ b/packages/ai-gemini/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-gemini +## 0.38.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.38.1 ### Patch Changes diff --git a/packages/ai-gemini/package.json b/packages/ai-gemini/package.json index f95cc67e03..c6974937fe 100644 --- a/packages/ai-gemini/package.json +++ b/packages/ai-gemini/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-gemini", - "version": "0.38.1", + "version": "0.38.2", "description": "Google Gemini adapter for TanStack AI chat, images, speech, audio generation, and structured outputs.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-grok-build/CHANGELOG.md b/packages/ai-grok-build/CHANGELOG.md index 74c3a08116..8363c732f3 100644 --- a/packages/ai-grok-build/CHANGELOG.md +++ b/packages/ai-grok-build/CHANGELOG.md @@ -1,5 +1,14 @@ # @tanstack/ai-grok-build +## 0.5.22 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-sandbox@0.5.25 + - @tanstack/ai-acp@0.3.27 + ## 0.5.21 ### Patch Changes diff --git a/packages/ai-grok-build/package.json b/packages/ai-grok-build/package.json index 22cf65c4e3..1acd71305e 100644 --- a/packages/ai-grok-build/package.json +++ b/packages/ai-grok-build/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-grok-build", - "version": "0.5.21", + "version": "0.5.22", "description": "Grok Build harness adapter for TanStack AI — run Grok Build as a chat backend with local tool execution and stateful sessions.", "author": "", "license": "MIT", diff --git a/packages/ai-grok/CHANGELOG.md b/packages/ai-grok/CHANGELOG.md index 5495f6cad3..77881ac795 100644 --- a/packages/ai-grok/CHANGELOG.md +++ b/packages/ai-grok/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-grok +## 0.22.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/openai-base@0.16.0 + ## 0.22.1 ### Patch Changes diff --git a/packages/ai-grok/package.json b/packages/ai-grok/package.json index b509b9519a..87701a07b5 100644 --- a/packages/ai-grok/package.json +++ b/packages/ai-grok/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-grok", - "version": "0.22.1", + "version": "0.22.2", "description": "xAI Grok adapter for TanStack AI chat, image generation, realtime, and structured outputs.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-groq/CHANGELOG.md b/packages/ai-groq/CHANGELOG.md index ce9063e850..3a36e7b660 100644 --- a/packages/ai-groq/CHANGELOG.md +++ b/packages/ai-groq/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-groq +## 0.10.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/openai-base@0.16.0 + ## 0.10.0 ### Minor Changes diff --git a/packages/ai-groq/package.json b/packages/ai-groq/package.json index 3a1a7e4c18..2e25d80ab0 100644 --- a/packages/ai-groq/package.json +++ b/packages/ai-groq/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-groq", - "version": "0.10.0", + "version": "0.10.1", "description": "Groq adapter for TanStack AI low-latency chat, tool calling, and structured outputs.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-llmgateway/CHANGELOG.md b/packages/ai-llmgateway/CHANGELOG.md index 1508fc8490..bd7c6dc1c7 100644 --- a/packages/ai-llmgateway/CHANGELOG.md +++ b/packages/ai-llmgateway/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-llmgateway +## 0.3.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/openai-base@0.16.0 + ## 0.3.1 ### Patch Changes diff --git a/packages/ai-llmgateway/package.json b/packages/ai-llmgateway/package.json index ae057cb70b..e01e35981b 100644 --- a/packages/ai-llmgateway/package.json +++ b/packages/ai-llmgateway/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-llmgateway", - "version": "0.3.1", + "version": "0.3.2", "description": "LLM Gateway adapter for TanStack AI — one OpenAI-compatible endpoint for chat, tool calling, and structured outputs across many providers and models.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-lovable/CHANGELOG.md b/packages/ai-lovable/CHANGELOG.md index 5b3a1a9825..27bc91218c 100644 --- a/packages/ai-lovable/CHANGELOG.md +++ b/packages/ai-lovable/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-lovable +## 0.6.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/openai-base@0.16.0 + ## 0.6.1 ### Patch Changes diff --git a/packages/ai-lovable/package.json b/packages/ai-lovable/package.json index 8449aa6dfd..ec49914f97 100644 --- a/packages/ai-lovable/package.json +++ b/packages/ai-lovable/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-lovable", - "version": "0.6.1", + "version": "0.6.2", "description": "Lovable AI Gateway adapter for TanStack AI chat, embeddings, image, video, speech, and transcription.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-mcp/CHANGELOG.md b/packages/ai-mcp/CHANGELOG.md index 8f843a5274..7c030f64a9 100644 --- a/packages/ai-mcp/CHANGELOG.md +++ b/packages/ai-mcp/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-mcp +## 0.9.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.9.1 ### Patch Changes diff --git a/packages/ai-mcp/package.json b/packages/ai-mcp/package.json index 08bd7361ee..8cb679242a 100644 --- a/packages/ai-mcp/package.json +++ b/packages/ai-mcp/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-mcp", - "version": "0.9.1", + "version": "0.9.2", "description": "Host-side Model Context Protocol client for TanStack AI: discover and run MCP server tools, resources, and prompts in any adapter's chat() loop, with generated end-to-end types.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-memory/CHANGELOG.md b/packages/ai-memory/CHANGELOG.md index 07befa00a4..9b661b61f4 100644 --- a/packages/ai-memory/CHANGELOG.md +++ b/packages/ai-memory/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-memory +## 0.2.16 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.2.15 ### Patch Changes diff --git a/packages/ai-memory/package.json b/packages/ai-memory/package.json index 8e9900af46..a4e9bf4984 100644 --- a/packages/ai-memory/package.json +++ b/packages/ai-memory/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-memory", - "version": "0.2.15", + "version": "0.2.16", "description": "Pluggable memory adapters for TanStack AI memoryMiddleware", "author": "", "license": "MIT", diff --git a/packages/ai-mistral/CHANGELOG.md b/packages/ai-mistral/CHANGELOG.md index 8a20caa967..14310106a4 100644 --- a/packages/ai-mistral/CHANGELOG.md +++ b/packages/ai-mistral/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-mistral +## 0.7.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.7.1 ### Patch Changes diff --git a/packages/ai-mistral/package.json b/packages/ai-mistral/package.json index 4aab5968d7..c9344b988f 100644 --- a/packages/ai-mistral/package.json +++ b/packages/ai-mistral/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-mistral", - "version": "0.7.1", + "version": "0.7.2", "type": "module", "description": "Mistral adapter for TanStack AI", "author": "", diff --git a/packages/ai-octane/CHANGELOG.md b/packages/ai-octane/CHANGELOG.md index 4a14e800a1..cdd1f1da60 100644 --- a/packages/ai-octane/CHANGELOG.md +++ b/packages/ai-octane/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-octane +## 0.9.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-client@0.40.1 + ## 0.9.0 ### Minor Changes diff --git a/packages/ai-octane/package.json b/packages/ai-octane/package.json index 06c4f64463..c1cf09be60 100644 --- a/packages/ai-octane/package.json +++ b/packages/ai-octane/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-octane", - "version": "0.9.0", + "version": "0.9.1", "description": "Octane bindings for TanStack AI streaming chat, structured outputs, and media generation.", "author": "Dominic Gannaway", "license": "MIT", diff --git a/packages/ai-ollama/CHANGELOG.md b/packages/ai-ollama/CHANGELOG.md index b8bed650d3..e88bd14a24 100644 --- a/packages/ai-ollama/CHANGELOG.md +++ b/packages/ai-ollama/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-ollama +## 0.12.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.12.1 ### Patch Changes diff --git a/packages/ai-ollama/package.json b/packages/ai-ollama/package.json index 63e251452d..5154c12ed1 100644 --- a/packages/ai-ollama/package.json +++ b/packages/ai-ollama/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-ollama", - "version": "0.12.1", + "version": "0.12.2", "description": "Ollama adapter for TanStack AI local LLM chat, tool calling, and structured outputs.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-ollaya/CHANGELOG.md b/packages/ai-ollaya/CHANGELOG.md index f03815a2cd..aa50144e5f 100644 --- a/packages/ai-ollaya/CHANGELOG.md +++ b/packages/ai-ollaya/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-ollaya +## 0.2.7 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.2.6 ### Patch Changes diff --git a/packages/ai-ollaya/package.json b/packages/ai-ollaya/package.json index 90ca852a60..75a8df488b 100644 --- a/packages/ai-ollaya/package.json +++ b/packages/ai-ollaya/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-ollaya", - "version": "0.2.6", + "version": "0.2.7", "description": "Ollaya adapter for TanStack AI — typed evaluate decisions against a local Ollaya / laya decision server.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-openai/CHANGELOG.md b/packages/ai-openai/CHANGELOG.md index 2b0cfbefad..aa092f0233 100644 --- a/packages/ai-openai/CHANGELOG.md +++ b/packages/ai-openai/CHANGELOG.md @@ -1,5 +1,50 @@ # @tanstack/ai-openai +## 0.31.0 + +### Minor Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - Add computer use that runs the same code on OpenAI and on Anthropic. A driver controls the machine. The Playwright and sandbox drivers give each thread its own machine. + + New packages: + - `@tanstack/ai-computer-use` adds `createComputerUse()`. It returns `tools`, a middleware, a safety-check interrupt, and `close`. Each `threadId` gets its own machine, action queue, and approvals. A thread that stays idle for `idleTimeout` (10 minutes by default) closes. + - `@tanstack/ai-computer-playwright` adds `playwrightComputer()`, which opens one browser page for each thread. `createPlaywrightComputerDriver()` controls one page that you give it. Both add a `navigate` tool that opens `http:` and `https:` URLs. + - `@tanstack/ai-computer-sandbox` adds `sandboxComputer()`, which creates one Linux desktop sandbox for each thread from any `@tanstack/ai-sandbox` provider, like `e2bSandbox({ template: 'desktop' })`. `createSandboxComputerDriver()` controls one sandbox that you give it. + - `@tanstack/ai-computer-local` adds `localComputer()`, which lets the model use the mouse, keyboard, and main screen of the machine that runs `chat()`. It works on Windows, macOS, and Linux with `@jitsi/robotjs`. + + Changes in existing packages: + - `@tanstack/ai` adds `threadId` to `ToolExecutionContext`. It also adds the computer tool metadata reader in `@tanstack/ai/adapter-internals`. + - `@tanstack/ai-anthropic` and `@tanstack/openai-base` send the generic computer tool to the model as the native computer tool of the provider. + - `@tanstack/ai-openai` marks the models that support the `computer` tool. + + ```ts + const computerUse = createComputerUse({ + driver: playwrightComputer({ startUrl: 'https://tanstack.com' }), + }) + + chat({ + adapter, + messages, + threadId, + tools: computerUse.tools, + middleware: [computerUse.middleware], + interrupts: [computerUse.interrupt], + }) + + await computerUse.close(threadId) // one thread + await computerUse.close() // every thread, and the browser + ``` + + The `ai-core` agent skill routes computer use to `@tanstack/ai-computer-use` and its three drivers. + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - `computerUseTool({ type: 'computer' })` adds the computer tool of the newer OpenAI models, for example `gpt-6.1-sol`. The tool name is `computer`. Each call has the batched `actions` of the model and the `pending_safety_checks`, and the replay sends the actions back as they came. `computerUseTool({ type: 'computer_use_preview', ... })` for the `computer-use-preview` model works as before. The Responses tool choice type also accepts `computer`. Computer screenshots now go out with `detail: 'original'`, as in OpenAI's computer use guide. + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/openai-base@0.16.0 + ## 0.30.1 ### Patch Changes diff --git a/packages/ai-openai/package.json b/packages/ai-openai/package.json index c42ee2be18..f35c9d1e1e 100644 --- a/packages/ai-openai/package.json +++ b/packages/ai-openai/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-openai", - "version": "0.30.1", + "version": "0.31.0", "description": "OpenAI adapter for TanStack AI chat, tools, images, video, speech, transcription, realtime, and structured outputs.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-opencode/CHANGELOG.md b/packages/ai-opencode/CHANGELOG.md index 4a427ee202..f0acc9e03d 100644 --- a/packages/ai-opencode/CHANGELOG.md +++ b/packages/ai-opencode/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-opencode +## 0.5.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-sandbox@0.5.25 + ## 0.5.1 ### Patch Changes diff --git a/packages/ai-opencode/package.json b/packages/ai-opencode/package.json index 530a7efe3b..f693624c12 100644 --- a/packages/ai-opencode/package.json +++ b/packages/ai-opencode/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-opencode", - "version": "0.5.1", + "version": "0.5.2", "description": "OpenCode harness adapter for TanStack AI — run OpenCode as a chat backend with local tool execution and stateful sessions.", "author": "", "license": "MIT", diff --git a/packages/ai-openrouter/CHANGELOG.md b/packages/ai-openrouter/CHANGELOG.md index 98fa2c7aba..113c105024 100644 --- a/packages/ai-openrouter/CHANGELOG.md +++ b/packages/ai-openrouter/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-openrouter +## 0.23.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.23.0 ### Minor Changes diff --git a/packages/ai-openrouter/package.json b/packages/ai-openrouter/package.json index 09ac9b74e8..d7e4e50f2d 100644 --- a/packages/ai-openrouter/package.json +++ b/packages/ai-openrouter/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-openrouter", - "version": "0.23.0", + "version": "0.23.1", "description": "TanStack AI adapter for OpenRouter chat, provider tools, structured outputs, and access to hundreds of LLMs.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-perplexity/CHANGELOG.md b/packages/ai-perplexity/CHANGELOG.md index 5a740a8809..38e9af84f0 100644 --- a/packages/ai-perplexity/CHANGELOG.md +++ b/packages/ai-perplexity/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-perplexity +## 0.2.27 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.2.26 ### Patch Changes diff --git a/packages/ai-perplexity/package.json b/packages/ai-perplexity/package.json index a90892ccdc..e28ab02f91 100644 --- a/packages/ai-perplexity/package.json +++ b/packages/ai-perplexity/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-perplexity", - "version": "0.2.26", + "version": "0.2.27", "description": "Perplexity Search API client and tool for TanStack AI", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-persistence/CHANGELOG.md b/packages/ai-persistence/CHANGELOG.md index 2d5685396f..2893ed8bcb 100644 --- a/packages/ai-persistence/CHANGELOG.md +++ b/packages/ai-persistence/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-persistence +## 0.10.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.10.0 ### Minor Changes diff --git a/packages/ai-persistence/package.json b/packages/ai-persistence/package.json index 5b617adbfb..ba972502ac 100644 --- a/packages/ai-persistence/package.json +++ b/packages/ai-persistence/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-persistence", - "version": "0.10.0", + "version": "0.10.1", "description": "Composable state persistence for TanStack AI messages, runs, interrupts, metadata, and locks.", "author": "", "license": "MIT", diff --git a/packages/ai-preact/CHANGELOG.md b/packages/ai-preact/CHANGELOG.md index 5f79d82615..0c1221f3b4 100644 --- a/packages/ai-preact/CHANGELOG.md +++ b/packages/ai-preact/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-preact +## 0.21.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-client@0.40.1 + ## 0.21.0 ### Minor Changes diff --git a/packages/ai-preact/package.json b/packages/ai-preact/package.json index fefcd3563e..0002f722e7 100644 --- a/packages/ai-preact/package.json +++ b/packages/ai-preact/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-preact", - "version": "0.21.0", + "version": "0.21.1", "description": "Preact hooks for TanStack AI streaming chat and typed messages.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-react/CHANGELOG.md b/packages/ai-react/CHANGELOG.md index 21ce0a52f0..b0c8b3fce2 100644 --- a/packages/ai-react/CHANGELOG.md +++ b/packages/ai-react/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-react +## 0.31.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-client@0.40.1 + ## 0.31.0 ### Minor Changes diff --git a/packages/ai-react/package.json b/packages/ai-react/package.json index cad15dbd3a..053b03587a 100644 --- a/packages/ai-react/package.json +++ b/packages/ai-react/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-react", - "version": "0.31.0", + "version": "0.31.1", "description": "React hooks for TanStack AI streaming chat, realtime voice, structured outputs, and media generation.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-reactor/CHANGELOG.md b/packages/ai-reactor/CHANGELOG.md index 3ea001ba23..9ffe10f1e4 100644 --- a/packages/ai-reactor/CHANGELOG.md +++ b/packages/ai-reactor/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-reactor +## 0.2.17 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.2.16 ### Patch Changes diff --git a/packages/ai-reactor/package.json b/packages/ai-reactor/package.json index 92feb3c3f2..3d18d13b97 100644 --- a/packages/ai-reactor/package.json +++ b/packages/ai-reactor/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-reactor", - "version": "0.2.16", + "version": "0.2.17", "description": "Reactor adapter for TanStack AI live world and video generation (Orbis, Happy Oyster, LingBot, Helios, FastH3).", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-remix/CHANGELOG.md b/packages/ai-remix/CHANGELOG.md index d99bc61a2c..a2307c1173 100644 --- a/packages/ai-remix/CHANGELOG.md +++ b/packages/ai-remix/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-remix +## 0.7.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-client@0.40.1 + ## 0.7.0 ### Minor Changes diff --git a/packages/ai-remix/package.json b/packages/ai-remix/package.json index 634c43ed60..722ae4a370 100644 --- a/packages/ai-remix/package.json +++ b/packages/ai-remix/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-remix", - "version": "0.7.0", + "version": "0.7.1", "description": "Remix 3 bindings for TanStack AI streaming chat, structured outputs, and media generation.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-sandbox-cloudflare/CHANGELOG.md b/packages/ai-sandbox-cloudflare/CHANGELOG.md index 4574fdb1ad..04919a3c52 100644 --- a/packages/ai-sandbox-cloudflare/CHANGELOG.md +++ b/packages/ai-sandbox-cloudflare/CHANGELOG.md @@ -1,5 +1,14 @@ # @tanstack/ai-sandbox-cloudflare +## 0.4.17 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-sandbox@0.5.25 + - @tanstack/ai-sandbox-local-process@0.2.6 + ## 0.4.16 ### Patch Changes diff --git a/packages/ai-sandbox-cloudflare/package.json b/packages/ai-sandbox-cloudflare/package.json index f6c1e8bd38..d193c368ec 100644 --- a/packages/ai-sandbox-cloudflare/package.json +++ b/packages/ai-sandbox-cloudflare/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-sandbox-cloudflare", - "version": "0.4.16", + "version": "0.4.17", "description": "Cloudflare sandbox provider for TanStack AI — run harness adapters inside Cloudflare Containers (edge) through the uniform SandboxHandle.", "author": "", "license": "MIT", diff --git a/packages/ai-sandbox-daytona/CHANGELOG.md b/packages/ai-sandbox-daytona/CHANGELOG.md index 8d8128b3dc..71caa96a3a 100644 --- a/packages/ai-sandbox-daytona/CHANGELOG.md +++ b/packages/ai-sandbox-daytona/CHANGELOG.md @@ -1,5 +1,14 @@ # @tanstack/ai-sandbox-daytona +## 0.3.5 + +### Patch Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - A background process from `spawn()` no longer crashes Node with an unhandled rejection when its status poll fails, for example after `destroy()`. `wait()` still rejects with the error. + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai-sandbox@0.5.25 + ## 0.3.4 ### Patch Changes diff --git a/packages/ai-sandbox-daytona/package.json b/packages/ai-sandbox-daytona/package.json index ec4735c301..5c141b53c7 100644 --- a/packages/ai-sandbox-daytona/package.json +++ b/packages/ai-sandbox-daytona/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-sandbox-daytona", - "version": "0.3.4", + "version": "0.3.5", "description": "Daytona sandbox provider for TanStack AI — run harness adapters inside isolated Daytona cloud sandboxes through the uniform SandboxHandle.", "author": "", "license": "MIT", diff --git a/packages/ai-sandbox/CHANGELOG.md b/packages/ai-sandbox/CHANGELOG.md index 078c85dee1..e1ad980508 100644 --- a/packages/ai-sandbox/CHANGELOG.md +++ b/packages/ai-sandbox/CHANGELOG.md @@ -1,5 +1,16 @@ # @tanstack/ai-sandbox +## 0.5.25 + +### Patch Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - The `ai-sandbox` skill now says how to use a sandbox provider for computer use, with `sandboxComputer()` from `@tanstack/ai-computer-sandbox`. + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-persistence@0.10.1 + - @tanstack/ai-skills@0.1.21 + ## 0.5.24 ### Patch Changes diff --git a/packages/ai-sandbox/package.json b/packages/ai-sandbox/package.json index f84665e65c..26e6d457ee 100644 --- a/packages/ai-sandbox/package.json +++ b/packages/ai-sandbox/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-sandbox", - "version": "0.5.24", + "version": "0.5.25", "description": "Provider-agnostic sandbox layer for TanStack AI — run harness adapters inside isolated sandboxes (defineSandbox, defineWorkspace, withSandbox) with a uniform SandboxHandle, workspace bootstrap, policy, and resumable lifecycle.", "author": "", "license": "MIT", diff --git a/packages/ai-skills/CHANGELOG.md b/packages/ai-skills/CHANGELOG.md index 8067fd8625..85e6b7f2a9 100644 --- a/packages/ai-skills/CHANGELOG.md +++ b/packages/ai-skills/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-skills +## 0.1.21 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.1.20 ### Patch Changes diff --git a/packages/ai-skills/package.json b/packages/ai-skills/package.json index 30a3e893e2..8ff794b614 100644 --- a/packages/ai-skills/package.json +++ b/packages/ai-skills/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-skills", - "version": "0.1.20", + "version": "0.1.21", "description": "Portable Agent Skills (SKILL.md) as a first-class chat() middleware for TanStack AI.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-solid/CHANGELOG.md b/packages/ai-solid/CHANGELOG.md index 6c9e2ed20d..8b9a126900 100644 --- a/packages/ai-solid/CHANGELOG.md +++ b/packages/ai-solid/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-solid +## 0.27.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-client@0.40.1 + ## 0.27.0 ### Minor Changes diff --git a/packages/ai-solid/package.json b/packages/ai-solid/package.json index fb10fae67e..a4d659d90c 100644 --- a/packages/ai-solid/package.json +++ b/packages/ai-solid/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-solid", - "version": "0.27.0", + "version": "0.27.1", "description": "Solid hooks for TanStack AI streaming chat, structured outputs, and media generation.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-svelte/CHANGELOG.md b/packages/ai-svelte/CHANGELOG.md index bb265c07d3..00aeff9438 100644 --- a/packages/ai-svelte/CHANGELOG.md +++ b/packages/ai-svelte/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-svelte +## 0.26.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-client@0.40.1 + ## 0.26.0 ### Minor Changes diff --git a/packages/ai-svelte/package.json b/packages/ai-svelte/package.json index 2b26aa42e4..73c95d4b1a 100644 --- a/packages/ai-svelte/package.json +++ b/packages/ai-svelte/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-svelte", - "version": "0.26.0", + "version": "0.26.1", "description": "Svelte 5 bindings for TanStack AI streaming chat, structured outputs, and media generation.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-typesafe/CHANGELOG.md b/packages/ai-typesafe/CHANGELOG.md index 5e429a4e64..ac1921596a 100644 --- a/packages/ai-typesafe/CHANGELOG.md +++ b/packages/ai-typesafe/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-typesafe +## 0.1.14 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.1.13 ### Patch Changes diff --git a/packages/ai-typesafe/package.json b/packages/ai-typesafe/package.json index 7456bdab2b..f249a0f6ea 100644 --- a/packages/ai-typesafe/package.json +++ b/packages/ai-typesafe/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-typesafe", - "version": "0.1.13", + "version": "0.1.14", "description": "TypeSafe Jev adapter for TanStack AI — typed evaluate decisions over HTTP.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-vercel-gateway/CHANGELOG.md b/packages/ai-vercel-gateway/CHANGELOG.md index 2cff4d6fe9..a7e40452b7 100644 --- a/packages/ai-vercel-gateway/CHANGELOG.md +++ b/packages/ai-vercel-gateway/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-vercel-gateway +## 0.4.2 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325), [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/openai-base@0.16.0 + ## 0.4.1 ### Patch Changes diff --git a/packages/ai-vercel-gateway/package.json b/packages/ai-vercel-gateway/package.json index d9cabaf173..f6f1fb0a54 100644 --- a/packages/ai-vercel-gateway/package.json +++ b/packages/ai-vercel-gateway/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-vercel-gateway", - "version": "0.4.1", + "version": "0.4.2", "description": "Vercel AI Gateway adapter for TanStack AI chat, embeddings, and image generation.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-vertex/CHANGELOG.md b/packages/ai-vertex/CHANGELOG.md index b64e2ea531..e14ae31d94 100644 --- a/packages/ai-vertex/CHANGELOG.md +++ b/packages/ai-vertex/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-vertex +## 0.2.31 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-gemini@0.38.2 + ## 0.2.30 ### Patch Changes diff --git a/packages/ai-vertex/package.json b/packages/ai-vertex/package.json index 35e75bfb03..f57ffd119a 100644 --- a/packages/ai-vertex/package.json +++ b/packages/ai-vertex/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-vertex", - "version": "0.2.30", + "version": "0.2.31", "description": "Google Vertex AI adapter for TanStack AI. Runs Gemini models on Vertex with regional endpoints and Google Cloud credentials.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-vue/CHANGELOG.md b/packages/ai-vue/CHANGELOG.md index dc26d07a8a..bc16da21ea 100644 --- a/packages/ai-vue/CHANGELOG.md +++ b/packages/ai-vue/CHANGELOG.md @@ -1,5 +1,13 @@ # @tanstack/ai-vue +## 0.27.1 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + - @tanstack/ai-client@0.40.1 + ## 0.27.0 ### Minor Changes diff --git a/packages/ai-vue/package.json b/packages/ai-vue/package.json index a2efd1b6d0..a9f208aab3 100644 --- a/packages/ai-vue/package.json +++ b/packages/ai-vue/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-vue", - "version": "0.27.0", + "version": "0.27.1", "description": "Vue composables for TanStack AI streaming chat, structured outputs, and media generation.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai-worldlabs/CHANGELOG.md b/packages/ai-worldlabs/CHANGELOG.md index c57bba1b49..bc302c010d 100644 --- a/packages/ai-worldlabs/CHANGELOG.md +++ b/packages/ai-worldlabs/CHANGELOG.md @@ -1,5 +1,12 @@ # @tanstack/ai-worldlabs +## 0.1.10 + +### Patch Changes + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.1.9 ### Patch Changes diff --git a/packages/ai-worldlabs/package.json b/packages/ai-worldlabs/package.json index 641d9ac66c..89ed7da490 100644 --- a/packages/ai-worldlabs/package.json +++ b/packages/ai-worldlabs/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai-worldlabs", - "version": "0.1.9", + "version": "0.1.10", "description": "World Labs adapter for TanStack AI world generation (Marble).", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/ai/CHANGELOG.md b/packages/ai/CHANGELOG.md index db4228abc2..1386ff10d0 100644 --- a/packages/ai/CHANGELOG.md +++ b/packages/ai/CHANGELOG.md @@ -1,5 +1,42 @@ # @tanstack/ai +## 0.71.0 + +### Minor Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - Add computer use that runs the same code on OpenAI and on Anthropic. A driver controls the machine. The Playwright and sandbox drivers give each thread its own machine. + + New packages: + - `@tanstack/ai-computer-use` adds `createComputerUse()`. It returns `tools`, a middleware, a safety-check interrupt, and `close`. Each `threadId` gets its own machine, action queue, and approvals. A thread that stays idle for `idleTimeout` (10 minutes by default) closes. + - `@tanstack/ai-computer-playwright` adds `playwrightComputer()`, which opens one browser page for each thread. `createPlaywrightComputerDriver()` controls one page that you give it. Both add a `navigate` tool that opens `http:` and `https:` URLs. + - `@tanstack/ai-computer-sandbox` adds `sandboxComputer()`, which creates one Linux desktop sandbox for each thread from any `@tanstack/ai-sandbox` provider, like `e2bSandbox({ template: 'desktop' })`. `createSandboxComputerDriver()` controls one sandbox that you give it. + - `@tanstack/ai-computer-local` adds `localComputer()`, which lets the model use the mouse, keyboard, and main screen of the machine that runs `chat()`. It works on Windows, macOS, and Linux with `@jitsi/robotjs`. + + Changes in existing packages: + - `@tanstack/ai` adds `threadId` to `ToolExecutionContext`. It also adds the computer tool metadata reader in `@tanstack/ai/adapter-internals`. + - `@tanstack/ai-anthropic` and `@tanstack/openai-base` send the generic computer tool to the model as the native computer tool of the provider. + - `@tanstack/ai-openai` marks the models that support the `computer` tool. + + ```ts + const computerUse = createComputerUse({ + driver: playwrightComputer({ startUrl: 'https://tanstack.com' }), + }) + + chat({ + adapter, + messages, + threadId, + tools: computerUse.tools, + middleware: [computerUse.middleware], + interrupts: [computerUse.interrupt], + }) + + await computerUse.close(threadId) // one thread + await computerUse.close() // every thread, and the browser + ``` + + The `ai-core` agent skill routes computer use to `@tanstack/ai-computer-use` and its three drivers. + ## 0.70.0 ### Minor Changes diff --git a/packages/ai/package.json b/packages/ai/package.json index 202c2eef89..25c0b269ba 100644 --- a/packages/ai/package.json +++ b/packages/ai/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/ai", - "version": "0.70.0", + "version": "0.71.0", "description": "Type-safe TypeScript AI SDK for streaming chat, tool calling, agents, structured outputs, and multimodal generation.", "author": "Tanner Linsley", "license": "MIT", diff --git a/packages/openai-base/CHANGELOG.md b/packages/openai-base/CHANGELOG.md index c75b4e4f54..0c2db2f6c4 100644 --- a/packages/openai-base/CHANGELOG.md +++ b/packages/openai-base/CHANGELOG.md @@ -1,5 +1,55 @@ # @tanstack/openai-base +## 0.16.0 + +### Minor Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - Add computer use that runs the same code on OpenAI and on Anthropic. A driver controls the machine. The Playwright and sandbox drivers give each thread its own machine. + + New packages: + - `@tanstack/ai-computer-use` adds `createComputerUse()`. It returns `tools`, a middleware, a safety-check interrupt, and `close`. Each `threadId` gets its own machine, action queue, and approvals. A thread that stays idle for `idleTimeout` (10 minutes by default) closes. + - `@tanstack/ai-computer-playwright` adds `playwrightComputer()`, which opens one browser page for each thread. `createPlaywrightComputerDriver()` controls one page that you give it. Both add a `navigate` tool that opens `http:` and `https:` URLs. + - `@tanstack/ai-computer-sandbox` adds `sandboxComputer()`, which creates one Linux desktop sandbox for each thread from any `@tanstack/ai-sandbox` provider, like `e2bSandbox({ template: 'desktop' })`. `createSandboxComputerDriver()` controls one sandbox that you give it. + - `@tanstack/ai-computer-local` adds `localComputer()`, which lets the model use the mouse, keyboard, and main screen of the machine that runs `chat()`. It works on Windows, macOS, and Linux with `@jitsi/robotjs`. + + Changes in existing packages: + - `@tanstack/ai` adds `threadId` to `ToolExecutionContext`. It also adds the computer tool metadata reader in `@tanstack/ai/adapter-internals`. + - `@tanstack/ai-anthropic` and `@tanstack/openai-base` send the generic computer tool to the model as the native computer tool of the provider. + - `@tanstack/ai-openai` marks the models that support the `computer` tool. + + ```ts + const computerUse = createComputerUse({ + driver: playwrightComputer({ startUrl: 'https://tanstack.com' }), + }) + + chat({ + adapter, + messages, + threadId, + tools: computerUse.tools, + middleware: [computerUse.middleware], + interrupts: [computerUse.interrupt], + }) + + await computerUse.close(threadId) // one thread + await computerUse.close() // every thread, and the browser + ``` + + The `ai-core` agent skill routes computer use to `@tanstack/ai-computer-use` and its three drivers. + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - `computerUseTool({ type: 'computer' })` adds the computer tool of the newer OpenAI models, for example `gpt-6.1-sol`. The tool name is `computer`. Each call has the batched `actions` of the model and the `pending_safety_checks`, and the replay sends the actions back as they came. `computerUseTool({ type: 'computer_use_preview', ... })` for the `computer-use-preview` model works as before. The Responses tool choice type also accepts `computer`. Computer screenshots now go out with `detail: 'original'`, as in OpenAI's computer use guide. + +### Patch Changes + +- [#1837](https://github.com/TanStack/ai/pull/1837) [`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325) - The computer use loop of `computerUseTool()` runs. A `computer_call` from the model is now a tool call to `computer_use_preview`, with the `action` and the `pending_safety_checks` as its input. The tool result goes back as `computer_call_output`, with the first image of the result as the screenshot. When the call does not fail, the output acknowledges the safety checks of the call. + + A failed computer call sends the newest screenshot of the conversation, because the failed call has no screenshot of its own. A computer call output has no text, so the reason for the failure goes to the model in a user message after the call outputs. + + A computer tool result with no image fails the run with an error. Before, the adapter sent an empty screenshot. + +- Updated dependencies [[`824ee98`](https://github.com/TanStack/ai/commit/824ee98060983dd2b5728f288cecefa6a1250325)]: + - @tanstack/ai@0.71.0 + ## 0.15.0 ### Minor Changes diff --git a/packages/openai-base/package.json b/packages/openai-base/package.json index c31a679a99..05f85dcb62 100644 --- a/packages/openai-base/package.json +++ b/packages/openai-base/package.json @@ -1,6 +1,6 @@ { "name": "@tanstack/openai-base", - "version": "0.15.0", + "version": "0.16.0", "description": "Shared OpenAI SDK base adapters for TanStack AI providers using Chat Completions and Responses APIs.", "author": "Tanner Linsley", "license": "MIT",