
何が起きたか
CLIをANTHROPIC_BASE_URL環境変数でローカルのモックに向ける手順を解説。モックは/v1/messagesだけを実装し、Bashを呼ぶtool_useブロックを含むSSE応答を返す。
なぜ重要か
課金されるのはモデルだけなので、Claude CodeのフックやMCPサーバーを作る開発者は、CLIは本物のまま繰り返し無料でテストでき、CLIが何を渡しているかを正確に確認できる。
こういう要約が、毎朝あなたのメールに届きます。
Claude Codeは、自分のマシンで動くCLIとAnthropicのサーバーで動くモデルの2つに分かれる。課金されるのはリクエストを読み答えるモデルの仕事だけなので、その部分だけを定型の応答を返す小さなサーバーに差し替えれば、CLIの実際の挙動はそのままに費用をなくせる。リクエストはMessages APIへのHTTP呼び出しとして送られ、応答は別の呼び出しではなくそれらのリクエストへの返信として返るため、モックは/v1/messagesエンドポイントだけを実装すればよい。
この解説では、この仕組みを使ってCLIが実際に何を送っているかを調べている。実行中に取得したリクエストには、CLIが追加するシステムプロンプト、ツール定義、以前の会話が含まれる。例として筆者はUserPromptSubmitフックを追加し、その出力がCLIの追加プリアンブル内の「UserPromptSubmit hook success:」という見出しの下に渡されることを確認した。同じ方法は以前、/compactが会話を要約に置き換える仕組み、MCPサーバーの説明やスキルがモデルに届く経路、MCPツールが120秒後にバックグラウンドへ移される仕組みの確認にも使われた。
調査だけでなく、モックで障害を模擬できることも示している。HTTP 529応答を決めた回数返すと、CLIの再試行の挙動を観察でき、再試行回数はCLAUDE_CODE_MAX_RETRIESで制御する。筆者は自身のmacOSアプリtanacodeでこのパターンを大規模に運用し、GitHub Actionsで毎日モックと本物のCLIを動かして、Claude Codeの更新による破損を検知している。
業界と使っているAIツールを選ぶと、仕事に関係するニュースが毎朝届きます。
登録無料・Googleアカウントなら30秒・いつでも解除できますAITodayについて →
この記事についてわからないことをAIに質問できます。AIはこの記事・AIToday の過去記事・Wikipedia を読み、出典を付けて答えます。Q&Aはこのページに公開され、他の読者も読めます。
Chunghwa Telecom社長のRong-shy Lin氏は、会話型AIから自律型AIエージェントへの移行が企業導入を変え、大規模導入にはデータガバナンス、アクセス制御、説明責任が不可欠だと述べた

AppleとMetaは、ハイエンドMacでの動作を想定した新しいオープンウェイトAIモデルを共同で公開すると発表した

作家兼起業家が毎日のToDoリストを開くと156件が並んでおり、AIアシスタントは仕事を完了させるより速く生成できると結論づけた

Zennの投稿者がAIの使い方を3モードに整理した

非技術者の運営者1人が、Google Playで4本、App Storeで3本のスマホアプリを展開

AIエージェントやボット、定期ジョブに人が見ていない状態で投稿・送信・公開・支払いをさせる前に導入すべき仕組みを、実際に起きた失敗とPython標準ライブラリだけで書いたコードで解説するZennのガイド
