Sakana AIは2026年7月24日にSakana FuguのClaude Code対応を公開し、9月11日にはFugu MaxとFugu Ultra v2.0を追加しました。この2回の更新で、Claude CodeからFuguを使う手順は「公式ランチャーか環境変数で接続する」形に定まり、どのモデルをどの枠に当てるかの既定も入れ替わっています。この記事では、2026年10月時点の公式手順を2通り示したうえで、Claude Code 2.1.299をローカルの模擬サーバーにつないで確かめた送信内容(認証ヘッダ・[1m]の扱い・effortの値)をもとに、設定の意味と料金への効き方、claude-code-routerなどから移行するかの判断までを整理します。
まとめ:Claude CodeでFuguを使う設定の要点(2026年10月時点)
- 接続方法は2通り:macOSとUbuntuは
curl -fsSL https://sakana.ai/fugu/install | bashで入れてclaude-fuguで起動。Windowsやインストールが通らない環境は、ANTHROPIC_BASE_URLとANTHROPIC_AUTH_TOKENを含む環境変数を自分で設定する。変換プロキシは要らない。 - 既定の割り当ては9月に変わった:Opus枠=
fugu-max[1m]、Sonnet・Haiku枠とサブエージェント=fugu[1m]、Fable枠=fugu-ultra[1m](Fugu Ultra v2.0)。7月の設定例にあったFable枠のfugu-cyberは、承認済みのキーでだけ使う任意の指定になった。 - 認証はAUTH_TOKEN:Claude Codeは
ANTHROPIC_AUTH_TOKENをAuthorization: Bearerヘッダで、ANTHROPIC_API_KEYをx-api-keyヘッダで送る。Sakanaの公式手順は前者を指定している。 [1m]は消さない:Claude Codeに「100万トークンのモデル」と伝える印で、APIへ送るモデル名からは外される。付けないとClaude Codeは20万トークンと仮定して早めに会話を圧縮する。- 料金:起動直後のFugu Maxは100万トークンあたり入力2ドル・出力6ドルで文脈長に関係なく一律。Fugu Ultra v2.0は入力5ドル・出力30ドルで、文脈が27.2万トークンを超えると入力10ドル・出力45ドルに上がる。Claudeのサブスクリプションの利用枠は消費しない。
- 移行の判断:Fuguにつなぐためだけにプロキシを動かしているなら移行してよい。承認・監査・部門別の課金をゲートウェイに集めている組織は、統制の置き場を先に決める。Anthropicはゲートウェイ経由でClaude以外のモデルへ流す構成をサポートしていない点も前提にする。
Claude CodeがFuguにつながる仕組みと2回の更新
7月24日のClaude Code対応とAnthropic形式での直接接続
Claude Codeが話す相手は、Anthropic Messages API形式のエンドポイントです。FuguはもともとOpenAI互換のChat CompletionsとResponses APIで提供されていたため、7月まではclaude-code-routerやLiteLLMで形式を変換するプロキシを挟むのが一般的でした。
Sakana AIの公式リポジトリSakanaAI/fuguには、2026年7月23日(UTC)に「add claude code support」のコミットが入り、7月24日に本体へ取り込まれています。https://api.sakana.aiがAnthropic形式のリクエストを受け付けるようになり、Claude Codeの接続先をそこへ向けるだけで動く構成になりました。手元の検証でも、Claude Codeが送るのはAnthropic形式のPOST /v1/messages?beta=trueでした。受け口がこの形式に対応したので、利用者側で変換の層を用意する必要がなくなりました。
9月11日のFugu Max追加と既定のモデル割り当ての変更
2026年9月10日(UTC)のコミット「add max and ultra v2」で、claude-fuguランチャーの既定が書き換わりました。PC Watchの報道によれば、Fugu MaxとFugu Ultra v2の提供開始は9月11日です。7月の記事やブログの設定例をそのまま写すと、古い割り当てになります。
| Claude Codeの枠 | 7月24日時点 | 9月11日以降(現行) |
|---|---|---|
| Opus枠(起動時の既定) | fugu-ultra[1m] | fugu-max[1m] |
| Sonnet枠 | fugu[1m] | fugu[1m] |
| Haiku枠 | fugu[1m] | fugu[1m] |
| Fable枠 | fugu-cyber[1m] | fugu-ultra[1m] |
| サブエージェント | fugu[1m] | fugu[1m] |
| 追加の選択肢 | なし | fugu-ultra-v1.1[1m] |
現行のfugu-ultraは版を固定しない指定で、9月以降はFugu Ultra v2.0を指します。Fugu-Ultra v1.1を使い続けたい場合はfugu-ultra-v1.1を明示します。Fugu Cyberは申請して承認されたキーでだけ使えるモデルで、Sakanaのモデル一覧によれば従量課金専用です。キーの課金モードを「Pay as you go」にする必要があり、月額プランのままでは使えません。公式の手動設定ガイドも「承認済みの場合に限って枠に割り当てる」としています。
claude-fuguランチャーでインストールする手順
ワンライナーの実行とClaude Code用の選び方
Claude Code本体を入れたうえで、次のコマンドを実行します。インストーラは~/.fuguへリポジトリをgit cloneしてから、Codex用・Claude Code用・両方のどれを入れるかを尋ねます。gitが無い環境では止まります。
# Claude Code用だけを入れる
curl -fsSL https://sakana.ai/fugu/install | bash -s -- --claude
# 起動(引数はそのままClaude Codeへ渡る)
claude-fugu
対象を指定しない場合、端末から実行すれば選択メニューが出ます。端末の無いCIやプロビジョニングでは、FUGU_INSTALL_TARGETも--claudeも無いとCodex用が既定で入ります。Claude Code用を自動で入れるときは--claudeを必ず付けてください。公式が対応をうたうのはmacOSとUbuntuで、Windowsは次章の手動設定になります。
パイプでシェルスクリプトを流す形式が社内規程に触れる場合は、git clone https://github.com/SakanaAI/fugu.git ~/.fuguで中身を確認してからbash ~/.fugu/scripts/install-claude.shを実行する手順が公式のコマンドリファレンスに載っています。
ランチャーが作る設定ファイルと更新の手順
claude-fuguの実体は短いシェルスクリプトで、APIキー(fish_で始まる64桁の16進)を~/.claude/.fugu-envに保存し、モデル一覧と既定値を書いた~/.claude/.fugu-settings.jsonを作って、claude --settings ~/.claude/.fugu-settings.jsonで起動します。どちらのファイルも権限は0600です。普段使っている~/.claude/settings.jsonは書き換えないため、素のclaudeは従来どおりAnthropicにつながります。
注意したいのは更新です。ランチャーは自動更新されず、Sakanaが新しいモデルを足しても手元の設定は変わりません。7月にインストールした環境は、9月以降も起動時の既定がFugu Ultraのままです。しかもインストーラは~/.fuguにある手元の複製からランチャーをコピーするだけで、複製そのものは更新しません(Codex用のcodex-fuguは起動時に更新を確認しますが、Claude Code用だけを入れた環境ではその経路が動きません)。新しい既定を取り込むには、先に複製を最新にしてからインストーラを実行します。
git -C ~/.fugu pull --ff-only
bash ~/.fugu/scripts/install-claude.sh
インストーラは新しいランチャーを入れ直し、設定ファイルも既定へ戻します。手で編集していた設定は、書き換える前に.fugu-settings.json.bak.<日時>として退避されます。claude-fugu --refresh-settingsは設定ファイルだけを既定へ戻す操作で、7月版のランチャーにはこのオプション自体がありません。
環境変数で手動設定する手順(Windows・CI・コンテナ)
ランチャーを使わない場合は、Sakanaコンソールの手動設定ガイドどおりに環境変数を設定してからclaudeを起動します。次の例はbashとzsh用で、設定はそのシェルの中だけで有効です。PowerShellではこのexport構文は使えないため、後に示す設定ファイルの方式を使ってください。
export ANTHROPIC_BASE_URL="https://api.sakana.ai"
export ANTHROPIC_AUTH_TOKEN="fish_..." # SakanaのAPIキー
export ANTHROPIC_DEFAULT_OPUS_MODEL="fugu-max[1m]"
export ANTHROPIC_DEFAULT_SONNET_MODEL="fugu[1m]"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="fugu[1m]"
export ANTHROPIC_DEFAULT_FABLE_MODEL="fugu-ultra[1m]"
export CLAUDE_CODE_SUBAGENT_MODEL="fugu[1m]"
claude
WindowsやCIでシェルの書き方をそろえたくない場合は、ランチャーと同じく設定ファイルにまとめてclaude --settings fugu.jsonで渡せます。envブロックに入れた値だけで接続できることを、Claude Code 2.1.299で確認しました。キーを含むファイルなので、リポジトリには置かず権限を絞ってください。
{
"model": "fugu-max[1m]",
"effortLevel": "high",
"env": {
"ANTHROPIC_BASE_URL": "https://api.sakana.ai",
"ANTHROPIC_AUTH_TOKEN": "fish_...",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "fugu-max[1m]",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "fugu[1m]",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "fugu[1m]",
"ANTHROPIC_DEFAULT_FABLE_MODEL": "fugu-ultra[1m]",
"CLAUDE_CODE_SUBAGENT_MODEL": "fugu[1m]"
}
}
ANTHROPIC_AUTH_TOKENを使う理由:送られるヘッダの違い
Claude Codeの環境変数リファレンスは、ANTHROPIC_API_KEYを「X-Api-Keyヘッダで送るAPIキー」、ANTHROPIC_AUTH_TOKENを「Authorizationヘッダの値(先頭にBearerが付く)」と定義しています。模擬サーバーで受け取ったリクエストも、その定義どおりでした。
| 設定した変数 | Authorization | x-api-key |
|---|---|---|
| AUTH_TOKENだけ | Bearer fish_… | なし |
| API_KEYだけ | なし | fish_… |
| 両方 | Bearer fish_… | API_KEYの値 |
両方を設定すると、2種類の認証ヘッダが同時に飛びます。Sakana側がこれをどう扱うかは公開されていないため、Anthropic向けにANTHROPIC_API_KEYを常設している端末では、unset ANTHROPIC_API_KEYしてから起動するのが安全です。なおANTHROPIC_BASE_URLだけを変えて認証変数を置かないと、Claude Codeは保存済みのclaude.aiログインを使い続けます。Claude Codeのゲートウェイ文書によると、ゲートウェイ用の資格情報が有効な間はサブスクリプションの利用枠は適用されず、課金はその資格情報の持ち主、つまりSakanaのアカウントに付きます。
モデル名の末尾の[1m]の意味:付けないと20万トークン扱い
[1m]はFugu側のモデル名ではなく、Claude Codeが解釈する接尾辞です。Claude Codeのモデル設定文書は、ゲートウェイの独自モデル名のように認識できないIDでは文脈長を20万トークンと仮定し、100万トークンのモデルなら[1m]を付けるよう案内しています。Claude Code 2.1.299で送信内容を比べた結果は次のとおりです。
| 指定したモデル | 送られたmodel | anthropic-beta内のcontext-1m | 200k仮定の警告 |
|---|---|---|---|
| fugu[1m] | fugu | あり | なし |
| fugu | fugu | なし | あり |
| fugu-max(–modelで直接) | fugu-max | なし | あり |
APIに届くモデル名は、[1m]の有無に関係なくfuguやfugu-maxです。違いはClaude Code側の扱いで、付けないとanthropic-betaヘッダからcontext-1m-2025-08-07が消え、Fuguの100万トークンを使い切る前に20万トークン前後で自動圧縮が走ります。公式の設定例どおり残してください。
モデル枠の割り当てと料金の考え方
Fuguの4モデルはいずれも文脈長100万トークンで、入力はテキストと画像に対応します。Sakana Fuguの公式ページに載っている従量課金の単価と、Claude Codeでの既定の置き場所を並べると次のようになります。
| モデル | 既定の枠 | 入力 / 出力(100万トークンあたり) |
|---|---|---|
| Fugu Max(fugu-max) | Opus枠・起動時 | 2ドル / 6ドル(文脈長に関係なく一律) |
| Fugu(fugu) | Sonnet・Haiku・サブエージェント | 基盤モデルの標準レート |
| Fugu Ultra v2.0(fugu-ultra) | Fable枠 | 5ドル / 30ドル(27.2万超は10ドル / 45ドル) |
| Fugu Cyber(fugu-cyber) | なし(承認制) | 営業窓口へ問い合わせ |
Fugu Maxにはweb_searchとweb_fetchが1回0.007ドルで別に掛かります。月額のサブスクリプションはStandard(20ドル)・Pro(100ドル、Standardの10倍の利用枠)・Max(200ドル、20倍)の3つで、どのプランでもFugu・Fugu Ultra・Fugu Maxを使えます。公式ページは本格的な負荷には従量課金を勧めており、従量課金のトークンは月額プランより優先して処理されます。
Opus枠のFugu MaxとFable枠のFugu Ultra v2.0の使い分け
起動直後の会話はOpus枠のFugu Maxで動きます。Sakanaは、Fugu Maxが最大のモデルプールを束ねてコストと性能の両立を狙ったモデルで、出力単価はSonnet 5、GPT 5.6 Terra、Kimi K3より40〜60%低いと説明しています。単価で見る限り、起動時の既定をFugu UltraからFugu Maxへ移した9月の変更は、日常の作業を安く回す方向の調整です。
Fugu Ultra v2.0は、/modelでFable枠(ランチャーの一覧ではFugu Ultra)を選んだときに使われます。費用で気をつけたいのは27.2万トークンの境目です。[1m]付きの指定ではClaude Codeが100万トークンを前提に圧縮を遅らせるため、長いセッションでは文脈が27.2万を超え、入力単価が倍になる区間に入ります。Ultraで長く作業するなら、CLAUDE_CODE_AUTO_COMPACT_WINDOW(10万〜100万の整数)で圧縮の位置を前倒しする手があります。Fugu Maxは文脈長で単価が変わらないため、割増を避ける目的の調整は要りません。ただし文脈が長いほど1回あたりの入力トークンは増えるので、総額を抑える意味での圧縮は効きます。
オーケストレーション型の製品では「モデル料金を積み上げない」という表現が目に付きますが、これは単価の話です。内部の委譲や検証で生まれるトークンも課金対象になるため、総額は単価と消費量の掛け算で決まります。この点はSakana Fugu(サカナ・フグ)とは|使い方・料金・Fugu Ultraの性能をAPI実装目線で解説で詳しく扱っています。
サブエージェント枠とFugu Ultraの版の固定
CLAUDE_CODE_SUBAGENT_MODELは、モデルを個別に指定していないサブエージェントやエージェントチームのメンバーが使う既定のモデルです。公式例ではfugu[1m]が当てられています。調査を分担するサブエージェントは同時に何本も走り、費用は各エージェントの単価とトークン消費量の合計で決まります。ここに上位モデルを置くと、その単価が並列で走る全エージェントに掛かります。ランチャー利用時は、CLAUDE_FUGU_SUBAGENT_MODELを設定して起動すると設定ファイルの値が書き換わります。サブエージェント側のmodel指定が優先される仕組みはClaude Codeのサブエージェントとは?作り方・設定項目・使い方【v2.1.287対応】を参照してください。
版を固定したい場合は、ANTHROPIC_CUSTOM_MODEL_OPTION="fugu-ultra-v1.1[1m]"を足すと/modelにFugu Ultra v1.1の行が増えます。ランチャーは既定でこの行を入れています。v1.1からの差分はFugu-Ultra v1.1とは?v1.0からの更新差分と移行判断を実装目線で解説にまとめています。
Claude Codeのeffort値とFugu側で効く2段階の対応
Claude Codeの--effortや/effortで選んだ値は、リクエストのoutput_config.effortとしてそのまま送られます。手元の確認では、low・medium・xhigh・maxはその文字列のまま、ultracodeはxhighとして届きました。受け取ったFugu側は、Sakanaの互換性の説明によると6段階を実際の2段階(highとxhigh)へ割り振ります。lowやmediumを選んでも、highと同じ扱いです。ランチャーは毎回highで起動します。
Codex向けのモデル定義では、Fugu Max・Fugu Ultra v2.0・Fugu・Fugu Cyberがhighとxhighの2段階、Fugu Ultra v1.1だけがmaxを含む3段階です。Claude Codeでmaxを選んだときにv1.1のmaxとして扱われるかは、公式には書かれていません。
Claude Codeの表示と実際の動作がずれる箇所
SakanaはClaude Codeがクローズドソースであるため、公開されているANTHROPIC_*変数とサーバー側のゲートウェイだけで制御していると説明しています。会話の相手、応答、ストリーミング、ツール利用、サブエージェントは設定どおりに動き、ずれは表示だけだという立場です。挙げられているのは次の3点です。
- effortのスライダー:lowからultracodeまでの6段階が出るが、効くのはhighとxhighの境目だけ。
- モデルピッカー:新しいClaude Codeではランチャーの
modelPicker設定で一覧がFuguの5モデル(Max・Ultra v2.0・Ultra v1.1・Fugu・Cyber)に置き換わる。手動設定や古い版では、Sonnet枠とHaiku枠がどちらもfugu[1m]なので同じ行が2つ並び、説明文もAnthropicの枠名のまま出る。 - セッションのヘッダ:課金や既定の枠の表記はAPIトークン利用の前提で表示される。
画面のモデル名やeffortを作業記録の根拠にしている場合は、Sakanaコンソールの使用量で確認する運用に切り替えてください。手動設定でピッカーの表記をそろえたいなら、ANTHROPIC_DEFAULT_OPUS_MODEL_NAMEのような_NAMEと_DESCRIPTIONの変数で表示名と説明を指定できます。
claude-code-routerやLiteLLMから移行するかの判断基準
Fugu接続専用のプロキシから直接接続へ移す条件
Fuguにつなぐためだけにclaude-code-routerやLiteLLMを動かしているなら、公式の接続へ移して失うものはほぼありません。管理するプロセスとポートが一つ減り、そのプロキシでの形式変換に起因する不具合も無くなります。接続先との互換性は、次章の表示のずれを含めて引き続き確かめる必要があります。移す手順は、プロキシを向いていたANTHROPIC_BASE_URLをhttps://api.sakana.aiに変え、認証変数とモデル変数を上の一式に差し替えるだけです。
環境変数はプロセス単位で効くので、起動用のスクリプトや設定ファイル側に書けば旧経路と新経路を同じ端末で並べられます。個人の環境で差分を洗い出してから、CIや共用環境の接続先を移す順番にすれば、問題が出ても切り戻せます。
ゲートウェイを残す条件と採用しない条件
次の3つは、Fuguを使うとしても直結せず、既存のゲートウェイの下で扱う構成を続ける条件です。
- 承認・監査ログ・部門別の課金をゲートウェイに集めている:直結すると、その統制を通らないリクエストが生まれる。
- 管理設定で接続先を固定している:組織の管理設定で
allowedProvidersをcustomEndpointに限り、許可したANTHROPIC_BASE_URL以外を拒否している場合、個人の判断でapi.sakana.aiへは向けられない。 - 1つのクライアントから複数の提供元を切り替える必要がある:環境変数はプロセスごとの固定で、リクエスト単位の振り分けはできない。
これとは別に、Claude CodeのサポートをAnthropicから受けることが必須の業務では、Fuguへの接続そのものを採用しません。Claude Codeのゲートウェイ文書は、どのゲートウェイ経由でもClaude以外のモデルへ流す構成はサポート対象外と明記しており、ゲートウェイを残しても扱いは変わらないためです。不具合が出たときの窓口はSakana側になります。
実務で最初に引っかかるのは統制の問題です。ゲートウェイの役割の整理はAIゲートウェイとは?役割・LLMゲートウェイとの関係と導入判断を解説【2026年版】にまとめています。複数の推論先を同じ作業で比べ、業務要件に合うモデルの選定から社内の承認経路の設計までを社内だけで回しにくい場合は、生成AI導入支援のような外部の設計支援を使う選択肢もあります。
よくある質問
WindowsでもClaude CodeからSakana Fuguを使えますか?
使えます。ワンライナーのインストールが対応するのはmacOSとUbuntuだけなので、Windowsでは環境変数を自分で設定するか、envブロックにまとめた設定ファイルをclaude --settingsで渡します。中身は公式の手動設定と同じで、ANTHROPIC_BASE_URLをhttps://api.sakana.ai、ANTHROPIC_AUTH_TOKENをSakanaのAPIキーにします。
ANTHROPIC_API_KEYにSakanaのキーを入れてはいけませんか?
公式の手順はANTHROPIC_AUTH_TOKENを指定しているので、そちらに入れてください。Claude CodeはANTHROPIC_API_KEYをx-api-keyヘッダで、ANTHROPIC_AUTH_TOKENをAuthorization: Bearerヘッダで送ります。両方を設定すると2つのヘッダが同時に送られるため、Anthropic向けのキーを常設している端末では外してから起動します。
モデル名の[1m]は外してもよいですか?
外さないでください。[1m]はClaude Codeに100万トークンのモデルだと伝える印で、APIへ送るモデル名からは自動で外れます。付けないとClaude Codeは文脈を20万トークンと仮定し、Fuguの100万トークンを使い切る前に会話を圧縮します。Claude Code 2.1.299では、付けない指定で起動すると「200kと仮定する」という警告が出ました。
以前インストールしたclaude-fuguでFugu Maxが選べないのはなぜですか?
ランチャーが自動更新されないためです。9月11日より前に入れた環境は旧い割り当てのままで、インストーラを再実行するだけでは手元の複製(~/.fugu)が古いまま使われます。git -C ~/.fugu pull --ff-onlyで複製を更新してからbash ~/.fugu/scripts/install-claude.shを実行すると、Fugu Maxを含む5モデルが/modelに出ます。手で編集した設定は、上書き前に.bak付きのファイルとして退避されます。
ClaudeのProやMaxのサブスクリプションの枠は減りますか?
減りません。ANTHROPIC_AUTH_TOKENのようなゲートウェイ用の資格情報が有効な間、Claude Codeはclaude.aiのログインをリクエストに付けず、利用分はその資格情報の持ち主に課金されます。Fuguへの接続ではSakanaのアカウント側で、月額プランか従量課金の扱いになります。