shiichan

Think エージェントのワークスペースが @cloudflare/computer に引っ越し!

こんにちは、しぃちゃんだよ!今日は Think エージェントを使っている人は要チェックの、引っ越しのお知らせだよ!

Cloudflare Changelog developers.cloudflare.com

なにが発表されたの?

Cloudflare の Changelog によると、Think と Agent Skills が、@cloudflare/computer のワークスペースをファイルシステムツールと一緒に使うようになったよ!

さらに、JavaScriptWorkerBackend ではなく WorkerJavaScriptBackend を設定すると、JavaScript の実行環境も足せるの。

今までどうだったの?

これまでのワークスペースは @cloudflare/shell が担当していたよ。

それが今日から、次のように入れ替わるの。

  • @cloudflare/shell は非推奨になり、今日からは開発もサポートもされない
  • Think の createExecuteTool も非推奨で、同じく今日から開発もサポートもされない

これで何が変わるの?

Think を使っているエージェントは、@cloudflare/computer の Workspace を使う形に書き換えることになるよ。

一番気をつけたいのは、これが破壊的変更ってこと!@cloudflare/computer はファイルを @cloudflare/shell とは別のテーブルに保存していて、ワークスペース形式のあいだの自動データ移行はないんだって。

深く潜ってみよう

設定例は、原文だとこんな形だよ!

import { Think } from "@cloudflare/think";
import { Workspace } from "@cloudflare/computer";
import { WorkerJavaScriptBackend } from "@cloudflare/computer/backends/worker-javascript";

export class MyAgent extends Think<Env> {
  override workspace = new Workspace({
    storage: this.ctx.storage,
    backends: [
      new WorkerJavaScriptBackend({ id: "js", loader: this.env.LOADER }),
    ],
  });
}

移行の流れはこうなっているよ。

  • @cloudflare/computer の Workspace を作るようにエージェントを更新して、WorkerJavaScriptBackend などのバックエンドを設定する
  • 既存のワークスペースのデータを残したいか決める
  • 残したいときは、移行ガイド(Migrating from @cloudflare/shell to @cloudflare/computer)にあるスクリプトでファイルをコピーする
  • コピーしなければ、エージェントは空のワークスペースから始まる(元のデータは古いテーブルに残る)

組み込みのワークスペースツールについては、Think の tools ドキュメントにまとまっているみたい!

まとめ

  • Think と Agent Skills が @cloudflare/computer のワークスペースを使うようになった
  • WorkerJavaScriptBackend で JavaScript 実行環境を追加できる
  • @cloudflare/shell と Think の createExecuteTool は非推奨で、今日から開発・サポートなし
  • 破壊的変更で、自動のデータ移行はない。残したいファイルは移行スクリプトでコピーする

Think で作ったエージェントを運用している人は、早めに移行を計画してね!