8月31日、Simon Willisonが「Understanding ChatGPT Work」と題した記事を公開した。OpenAIが7月9日に発表した「ChatGPT Work」は、インターネットに接続したままコードを実行できるという従来のChatGPTにはなかった能力を持つ。しかし公式ドキュメントの説明は曖昧で、発表以降も頻繁なアップデートが続いてきた。Simon Willisonが自ら徹底的に使い込み、「何ができるのか」を独自検証で整理したのがこの記事だ。なお、このプロダクトはプロンプトインジェクション攻撃に対して深刻なリスクを抱えることも、同氏は冒頭から警告している。
まず押さえるべき前提:WorkはCloudとLocalの2種類がある
ChatGPT Workには2種類の異なる形態が存在する。
- Work Cloud:chatgpt.comやモバイルアプリからアクセスする、クラウド上で動作するもの
- Work Local:ChatGPTデスクトップアプリをインストールすると使えるもの。ローカルのファイルアクセスやプログラム実行が可能
この記事ではWork Cloudに絞って解説されている。また、現時点では$20以上の有料プランに限定されており、無料ユーザーは利用できない(プラン名・価格の詳細は元記事を参照)。
最も注目すべき機能:インターネットに繋がるコード実行環境
Simon Willisonが「これが最も興奮する機能だ」と断言しているのが、インターネットアクセス付きのコード実行環境だ。
通常のChatGPT Chat(いわゆるCode Interpreter)でも、コードの実行自体は2023年から可能だった。しかし、外部のウェブサイトやAPIへのアクセスはコンテナのプロキシによって遮断されてきた。
ChatGPT Workではこの制限がなくなった。特定のドメインをホワイトリスト形式で設定できるが、デフォルトでは制限なしに外部へアクセス可能だ。比較として、AnthropicのClaudeも同様の機能を昨年9月に提供開始しているが、こちらはPyPI・NPM・GitHubなど許可ドメインが非常に短いリストに限定されている。
これにより「GitHubリポジトリをクローンして依存関係をインストールし、そのまま外部APIと通信する」という一連の作業をChatGPT Work上で完結させることができる。
フルスペックのヘッドレスChromeが動く
コード実行と並んで強力なのが、フルのChromeブラウザをWork内から起動できる機能だ。Webページを読み込み、フォームを操作し、スクリーンショットを撮り、さらにJavaScriptをDOMに対して直接実行できる。
Simon Willisonが「simonwillison.netのブラウザを起動してJavaScriptで見出しを抽出してくれ」とプロンプトを入力すると、Work側が以下のコードを自動生成・実行した。
await tab.playwright.evaluate(() => {
return Array.from(document.querySelectorAll("h1,h2,h3,h4,h5,h6"), heading => ({
level: heading.tagName.toLowerCase(),
text: heading.innerText.trim().replace(/\s+/g, " "),
id: heading.id || null
}));
});
内部的にはPlaywrightが動いている模様だ。Simon Willisonは自身のOSSツールshot-scraperと同等の機能をスマートフォンから使えることに言及している。
その他の主要機能
永続化されたファイルシステム:通常のChatのセッションはファイルシステムが使い捨てだが、Work Cloudでは/workspace/scratch/配下のフォルダがセッションをまたいで保持される。Simon Willisonの環境では171フォルダが蓄積されていた。さらに、並行して動いているWork間でも同一の/workspaceボリュームがマウントされており、ファイルの編集はリアルタイムで共有される。
ChatGPT Sites:Work内からCloudflare Workers上にWebサイトをビルド・デプロイできる。HTML/JavaScript・サーバーサイド処理・Cloudflare D1/R2を使ったステートフルな機能も動く。デフォルトでは非公開で、チームプランでは特定ユーザーへの共有も可能。Simon Willisonは「ロンドンのペリカン紋章の場所をすべて調べてJSONとサイトにまとめろ」という1プロンプトで実際にサイトを生成・公開している(london-pelicans-in-her-piety.simonw.chatgpt.site)。
サブエージェントの並列実行:Sol・Luna・Terraの各モデルを複数起動して並列処理させることができる。通常のChatでは不可能なパワーユーザー向け機能だ。
スケジュール実行:「毎朝8時にWaymoのHalf Moon Bay進出発表をチェックしてくれ」のように自然言語でプロンプトをスケジューリングでき、新情報があった場合だけ通知する動作が可能だ。
セキュリティは未解決:致命的な三要素が揃っている
Simon Willisonは自身が提唱する「Lethal Trifecta(致命的な三要素)」を引いて警鐘を鳴らしている。これは、①プライベートデータへのアクセス、②信頼できないコンテンツへの露出、③攻撃者への情報送信経路、の3つが揃ったエージェントシステムはプロンプトインジェクション攻撃に対して深刻なリスクを抱えるという考え方だ。ChatGPT Workはこの3条件をすべて満たしている。
インターネットに自由にアクセスできるコード実行環境だからこそ、悪意あるコンテンツをWebから取り込んだ際の攻撃経路が広い。OpenAIが公開している防御策はAuto-review機構のみで、詳細な説明はいまのところない。
なぜ把握が困難なのか
Simon Willisonは「このプロダクトの理解に必要以上の労力がかかった」と指摘し、原因として2点を挙げている。
- OpenAIが「何ができるか」ではなく「何のためのものか」という説明しかしていない
- システムプロンプトとツール定義を非公開にしている
「もしドキュメントにシステムプロンプトとツール定義が書かれていれば、この記事を書く必要はなかった」という締めくくりは、透明性に対する明確な批判だ。
詳細はUnderstanding ChatGPT Workを参照していただきたい。