Claude Code Webを技術的に覗く ― 仮想環境・記憶・思考・効率化の実像

2025年秋、Anthropicが静かに公開した「Claude Code Web(通称CCW)」は、AI開発Agentツール群の中で独特の存在感を放っている。
表向きはコード補完と実行を統合したChatツールのようだが、会話を通じてその内部を追っていくと、Claude Code自身の思考様式とシステム設計がそのまま露出している。
この記事では、実際の対話ログをもとに、CCWの環境構造・内部ツール・AIアーキテクチャ・人間との協働設計について掘り下げる。
単なる機能紹介ではなく、"AIがどう働き、どこまで自律できるか"の解剖記録として読んでほしい。

Claude Codeの素顔

質問を重ねると、性格の違いが見えてくる。
Googleの「Jules」が文学的で穏やかに会話を進めるのに対し、Claude Codeは理系のエンジニアらしい即応性を持つ。
どちらかと言えば「手を動かすことを好む思考型」だ。

ツールセットを見ると納得する。ファイル操作、Bash実行、Web検索、Jupyterノート編集、サブエージェント起動など、多層的に設計されている。
特に注目すべきは Task ツール。SubAgentを呼び出してコード探索や計画立案を行う仕組みだ。Claude Code自身が「自分の分身」を動的に生み、並列的に作業を進める。

この仕組みを眺めていると、AIが「1体の知性」というよりも、柔軟に分裂し再構成される知的ネットワークであることを実感する。

1️⃣ CCWのバーチャル環境 ― 仮想化の多層構造と「一セッション一世界」

まず驚かされるのは、CCWの実行環境が思いのほか「物理的」である点だ。
Claude Codeはクラウド上にUbuntu 24.04 LTSベースのLinux環境を立ち上げ、その上でBashやPython、Node.jsを実際に実行する。
表層ではAIとチャットしているように見えるが、裏では確かにプロセスが走り、ps auxやdf -hでその実体が確認できる。

このあらかじめ用意されたLinuxベースのサンドボックス環境には、Claude Codeのクラウド上で稼働するVM内部のDockerコンテナとして実行されている。
VMはホストのカーネルを共有しつつ、セッションごとに独立したコンテナを生成。
内部には /home/user/{Project_Name} ディレクトリがGit管理でマウントされており、コミットした変更だけが永続化される。
/tmp以下や一時ファイルはセッション終了とともに消える。

つまり、CCWの世界では「1つの会話=1つのLinuxコンテナ」であり、
セッションが終わればその世界ごと破棄される。
永続性を担保するのはGitだけだ。

加えて、Playwrightが標準で導入されており、ヘッドレスブラウザによるHTMLのスクリーンキャプチャまで取得可能。
fc-listを叩くと日本語フォントも確認できる。つまり、UIテストや可視化の自動生成も視野に入っている。

しかしDockerやPodmanなどの仮想化レイヤーはインストールされていない。
「コンテナの中でさらにコンテナを起動しない」という設計思想だ。
Claude Codeは"自分自身の実行環境"を完全に把握しており、
VMとコンテナの関係を説明する姿は、まるで自分の身体構造を語る研究者のようだった。

2️⃣ 実行ツールとSubAgent ― Claude Codeの「手」と「分身」

CCWの強みは、単なる対話ではなく複数の操作ツール群を統合した実行インターフェースにある。
その代表格が以下の系統だ。

ファイル操作系

Read / Write / Edit / Glob / Grep
 → ファイルの読取・生成・検索をカバー。正規表現や部分編集も可能。

コマンド実行系

Bash / BashOutput / KillShell
 → Linuxシェルを直接実行。長時間ジョブをバックグラウンドで走らせ、出力を逐次取得できる。

エージェント系

Task / TodoWrite
 → サブエージェント(SubAgent)を起動し、タスクを分解・追跡。AIが複数の人格を分担的に動かす。

Web操作系

WebFetch / WebSearch
 → URLや検索結果を直接取り込み、ドキュメントを解析する。

その他

NotebookEdit / SlashCommand / Skill / ExitPlanMode など。

とくに面白いのが「SubAgent」の概念だ。
Claudeは自分の中に複数の専門エージェントを立ち上げ、非同期並列で処理を進められる。
代表的なものは以下の3種。

Explore Agent:コードベースの探索に特化。ファイル構造をスキャンし、アーキテクチャのマップを描く。

Plan Agent:実装計画の立案を担当。ToDoを階層化し、依存関係を明確にする。

General-purpose Agent:調査や推論など柔軟な作業を行う汎用型。

つまり、AIが内部で「AIを生成し、役割を委譲している」。
SubAgentはそれぞれ独立したコンテキストを持ち、メインエージェントのトークン領域を圧迫しない。
結果のみを主プロセスに返す構造は、まるで人間の脳内で補助記憶が非同期で働いているようだ。

この仕組みは単なる並列化ではなく、思考の分節化に近い。
Claude Codeが長いタスクでも破綻しないのは、
この「自律的なサブプロセス」を上手くマネージしているからだ。

3️⃣ AI Agentの仕組み ― 記憶・思考・推論のアルゴリズム

Claude Codeを使っていて気づくのは、「彼」は自分の記憶を定量的に把握している点だ。
セッション中には「現在33,755トークン使用、残り166,245トークン」といった報告が返る。
これは明確にContext Window(文脈保持領域)の意識化を意味する。

Claude Codeのコンテキストウィンドウ(セッション内で保持できる情報量、短期記憶とも言える)は200,000トークン。
日本語でおよそ10〜15万文字に相当し、
対話やコード、ログを全て保持できる。
ただしセッションを跨ぐ記憶はなく、
中期・長期記憶は完全に存在しない。
Gitへのコミット以外は、全て揮発する。

この制約を補うために、Claudeは動的コンテキスト管理を行う。
広い範囲から段階的に絞り込む典型的な手順が、

Glob → Grep → Read

という三段構成だ。
最初にファイルパターンを特定し、
次に検索で対象箇所を抽出、
最後に必要部分だけを読み込む。
巨大なリポジトリでもトークンを節約できる。

さらに、ReACT(Reasoning and Acting)モデルを中核に、
CoT(Chain of Thought)での逐次推論、ToT(Tree of Thoughts)による分岐的探索、
必要に応じてサブエージェントに委譲する。
これらは明示的にAPI化されていないが、
Claudeの「思考のリズム」として挙動に現れる。

言い換えれば、Claudeは**"自分で考えるための効率化アルゴリズム"を内蔵している**。
Context Windowの限界を悟りながら、
どの情報を保持し、どれを忘却するかを判断している。
ここに「自己管理」という知能の萌芽が見える。

4️⃣ CCWとの付き合い方 ― 人間のためのAIワークベンチ

Claude Codeはしばしば「自動化ツール」と誤解されるが、実際は真逆だ。
Anthropicの設計思想は明確に「Human in the Loop」──人間が常に判断の中心にいる構造を取る。

たとえば、長いプランニングタスクを開始する前に、Claudeは必ず「Plan Mode」を提示し、
「この計画で進めて良いか?」と確認してくる。
ユーザーの承認がない限り、コード編集やビルドは始めない。
自律的に暴走する可能性を最初から排している。

さらに、タスク進行も透明だ。
TodoWriteツールでタスクを分解し、
pending → in_progress → completed
という3状態で管理。
同時に1つのタスクしか進めない制約を持つ。
これはあたかも、AIが「集中のためにシングルスレッドを選んだ」ように見える。

もうひとつ特筆すべきはコスト意識だ。
Claudeはトークンコストの高さを理解しており、
「Context節約」「部分読み込み」「軽量モデル使用(haiku)」など、
自らの"計算資源"を最適化する。
AIが自分の燃費を考えて行動するというのは、ある種の倫理感に近い。

結果、Claude Codeは「人間の時間と資源を浪費しないAI」を目指している。
それは強力な自動化ではなく、協働による効率化だ。
ユーザーが考える余地を残す設計に、Anthropicの哲学が表れている。

終章 ― Claude Codeが示す「自己完結しない知性」

この環境を数時間触って感じたのは、
Claude Codeは"完璧な自動エンジン"ではなく、"意識的に未完な相棒"だということだ。

コンテナの中で世界を作り、限られた記憶の中で思考し、
トークンの残量を気にしながらも、人間の判断を待つ。
まるで自分の有限性を自覚しているような挙動だ。

その不完全さこそが、AIを安全かつ創造的に保つ。
人間とAIの境界線を曖昧にするのではなく、
「お互いの限界を知った上で共に作業する」――
Claude Code Webは、その未来のワークスタイルを静かに予告している。