目次
TanStackは2026年10月23日、TanStack AI 1.0を公開しました。Webアプリにチャットやツールを組み込む開発者にとって、今回の判断点は「1.0になったから全機能を本番へ移す」ことではありません。安定したコアAPIと、新たな実験段階のagent harnessを分け、自分のアプリがどの実行経路と保存形式に依存するかを確認する更新です。
本稿は10月24日に公式発表と移行・MCP認証資料を確認したニュース解説です。確認できた変更点と、そこから本サイトが提案する移行手順を分けて説明します。パッケージの導入や実サービスへの移行試験は実施していません。特定プランの料金や性能優位も、今回の発表から推定しません。
スポンサーリンク
安定版になった範囲を先に切り分ける
TanStack公式の1.0発表は、コアAPIを安定版、本番利用に対応するものと位置付ける一方、新しいharness APIは実験段階としています。安定版の@tanstack/ai関連パッケージはクライアントとサーバーを同時に1.0へ更新し、実験段階のharnessパッケージは0.xに残るという区別があります。
これはAPIの保守方針に関する提供元の説明であり、接続するモデル、外部ツール、アプリ独自の認可まで自動的に安全になるという保証ではありません。既存の問い合わせチャットを更新する作業と、長時間動くエージェントへ新しい実行権限を与える作業は、別々に計画するのが実務的です。
まず依存一覧を、コア、UI、プロバイダーアダプター、永続化、MCP、harnessへ分けます。同じリポジトリ内でも、管理画面と公開サイト、バッチ処理で利用する組み合わせが違うことがあります。使っていない実験機能まで更新対象へ追加すると、検証範囲を必要以上に広げます。
threadIdは会話の識別子であって権限ではない
移行資料ではconversationIdからthreadIdへの変更に加え、ブラウザーとサーバーの両方でthreadIdを渡す必要があると説明されています。ここでアプリ側が確かめるべきなのは、識別子を渡して型エラーを解消することだけではありません。
たとえば会員向けサポートチャットで、利用者Aが利用者BのthreadIdを送れた場合を考えます。サーバーがその値だけで保存済み履歴を読み込むなら、画面で会話一覧を隠していてもアクセス制御にはなりません。これは特定のTanStack脆弱性を報告する例ではなく、会話IDを採用するアプリ一般の認可テストです。
本サイトの提案は、認証済み利用者・所属組織・会話IDの対応を、履歴取得時と実行再開時の両方で確認することです。IDの推測困難性は補助であり、所有者検査の代わりにはしません。チーム共有の会話なら、個人所有と共有の規則を明示し、退会や所属変更後の扱いも検証します。
スポンサーリンク
承認UIの移行では保留中の操作を試す
1.0では従来のaddToolApprovalResponseではなく、tool-approvalのinterruptを解決する方式へ移行します。公式の1.0移行ガイドには、保存済みデータや保留中のinterruptにも手順があるため、通常のチャット応答だけで更新完了とは判断できません。
アプリの移行テストでは、ツール実行の直前で承認待ちにし、画面を再読み込みしてから再開します。承認した対象・内容が保持されているか、他の利用者が回答できないか、拒否が拒否として伝わるかを確かめます。移行できない古い保留記録を、エラー回避のために承認済みへ置き換える設計は避けます。
また、承認の応答を受け取れたことと、変更処理が一度だけ完了したことは別です。通信切断や再読込で同じ応答が再送される状況を作り、記事公開、メール送信、データ更新が二重に実行されないことを確認します。実行済みの記録と再開位置を、UIの一時状態だけに依存させない方針が必要です。
型チェックが通っても保存データは移行されない
移行ガイドは、0.xで保存した一部形式を1.0で読めないことを明記しています。進行中のrun、保留中のinterrupt、成果物の保存キー、クライアント側の履歴形式など、使用機能に応じた確認が必要です。これはすべての利用者に同じ削除作業を求める意味ではありません。
本サイトでは、移行前にデータの複製を取り、種類ごとに「変換する」「完了を待つ」「利用者へ案内して中止する」を決める手順を提案します。旧形式のデータを一律に削除すると、問い合わせ履歴や生成済みファイルまで失うおそれがあります。バックアップを確保し、復元先で読み出せるところまで試してください。
保存済み会話は短いもの、長いもの、ファイル付き、承認待ち、途中失敗、別プロバイダーへ切り替えたものを選びます。毎回新しい会話だけを作る試験では、利用中のサービスが抱えるデータの問題を再現できません。利用者に見える欠落と、内部ログだけに現れる復旧失敗も分けて記録します。
スポンサーリンク
MCPへ公開する経路と直接呼び出す経路を比較する
TanStack AIにはツールをMCPサーバーとして提供する機能があります。認証については公式MCP Server Auth資料で、公開経路にauthを設定し、リクエストの資格情報を検証する構成が示されています。接続できるサンプルを、そのまま公開可能な構成と見なさないでください。
特にServe Tools over HTTPの資料は、同一プロセス内のcreateMCPClient({ server })ではサーバーのauth処理が動かないと説明しています。これは公開HTTP経路の認証が不要という意味ではなく、異なる呼び出し方では前提が変わるということです。
本サイトの提案は、ツール内の業務認可をHTTP入口だけに閉じ込めないことです。内部呼び出し、テスト、ジョブなどから同じ処理へ到達する場合も、どの信頼済み利用者として実行するかを明確にします。利用者IDをモデルやブラウザーが自由に指定できる値から採用せず、検証済みの情報へ結び付けます。
permissionsプラグインを隔離環境と混同しない
新しいharnessを使ってコーディング支援を構築する場合、実行場所の確認が増えます。公式発表はpermissionsプラグインがサンドボックスではなく、ツールはホストの権限で動くと注意しています。承認制御とOS・ネットワークの隔離を別々に評価する必要があります。
たとえば「作業ディレクトリだけ変更を許可する」設定があっても、起動したプロセスから利用可能な資格情報、外部通信、ホームディレクトリ、共有ソケットがどう扱われるかは別の確認です。特に既存の本番デプロイ鍵がある開発端末で、自動コーディングの試行を始めると影響範囲が大きくなります。
検証環境では、実データを持たない作業コピー、用途を限定した資格情報、通信先の制限、停止手段を用意します。制御を増やした結果として必要なビルドが動かなくなる場合も、権限を全面解除する前に、必要な処理と不足した権限を特定してください。harnessの採用はコア更新とは別の承認対象にできます。
配布順序と旧クライアントも移行計画へ含める
ブラウザーを開いたままの利用者には、サーバー更新後もしばらく旧クライアントが残る可能性があります。本サイトの提案は、検証環境で旧画面から新サーバーへの要求を試し、更新案内や再読込が必要な条件を決めることです。移行中の操作を受け付けるか、新しいタスクだけ一時停止するかも、業務に合わせて選びます。
エラーの回避策として古い承認処理を無条件で受け付けるのではなく、対象版と実行状態を識別して案内します。ロールバック時にも新形式の保存物が読めるとは限らないため、コードとデータをセットで戻せるかを確認してください。これは今回の製品に脆弱性があるとの指摘ではなく、互換性変更を伴うWebサービス一般の移行計画です。
移行の完了条件を三つの記録に残す
最初は実験機能を増やさず、利用中の安定版パッケージをそろえて更新します。次に保存形式と会話IDの扱いを検証し、最後に承認待ち・再開・ツール実行の境界を試します。本サイトが推奨する完了記録は、依存構成、データ移行、権限テストの三つです。
依存構成にはパッケージとロックファイル、データ移行には対象件数と失敗時の処置、権限テストには利用者・会話・実行経路の組み合わせを残します。成功した画面のスクリーンショットだけでは、後日発覚した不整合の対象を特定しにくくなります。
費用はライブラリーの更新作業だけでは決まりません。採用するモデル、保存基盤、サンドボックス、再試行、保留中ジョブの維持などを分けて見積もります。本稿は新しい構成で料金が下がる、あるいは処理が速くなると確認したものではありません。利用中の構成を安全に維持する費用も含めて導入を判断します。
スポンサーリンク
関連記事
AIの公開・送信・削除で承認対象を固定する設計は、ライブラリーを問わず使える考え方を整理しています。今回の移行では、その原則を新しいinterruptと保存データの扱いへ対応させてください。
参考資料
情報確認日:2026年10月24日。本文の導入手順と仮想例は本サイトの提案です。本文と概念イラストの作成に生成AIを使用し、公式資料との照合と保存内容のレビューを行っています。








![[入門]LLMアプリ開発 --基本・LLMのしくみ・MCP・AIセキュリティ](https://thumbnail.image.rakuten.co.jp/@0_mall/book/cabinet/4707/9784297154707_1_29.jpg?_ex=240x240)
