Claude Code
Claude Codeは、そのAnthropic互換のアドレス、https://api.uberllm.devを介してUberLLMと通信します。アドレスとキーを設定すると、Claude Codeのコマンドとツールは以前と同様に機能し、リクエストはUberLLMの残高に請求されます。
手動でセットアップする
Claude Code自体以外、何も実行する必要はありません。キーページ]でキーを作成し、その後:
export ANTHROPIC_BASE_URL=https://api.uberllm.dev
export ANTHROPIC_AUTH_TOKEN=ull_your_key
claude
Windows PowerShell:
$env:ANTHROPIC_BASE_URL = "https://api.uberllm.dev"
$env:ANTHROPIC_AUTH_TOKEN = "ull_your_key"
claude
これは現在のターミナルセッション中のみ有効です。シェルプロファイルにキーを保持するには、自分だけが読み取れるファイルにキーを保存してください:
mkdir -p ~/.uberllm && chmod 700 ~/.uberllm
printf '%s\n' 'ull_your_key' > ~/.uberllm/key && chmod 600 ~/.uberllm/key
そしてこれを~/.claude/settings.json(すべてのプロジェクト)または<project>/.claude/settings.local.json(1つのプロジェクト)に配置してください:
{
"apiKeyHelper": "cat ~/.uberllm/key",
"env": {
"ANTHROPIC_BASE_URL": "https://api.uberllm.dev"
}
}
またはインストーラーを使用する
インストーラーはあなたのために同じことを行い、ブラウザを通じてキーを取得します。よろしければ、まずお読みください。これはuberllm.dev/install/claude-code.sh]にあるプレーンテキストです。
claude-code.shのSHA-256:f5aa1c4610992d8f4ecc1b1cd777bc731c5fad9da6a38cac46989834b194d66cclaude-code.ps1のSHA-256:60d631b48e60a2e3f17e5eee19136d47a255f143627986e86b6ceb379858a3b9
実行する前に確認するには:
curl -fsSL https://uberllm.dev/install/claude-code.sh -o claude-code.sh
shasum -a 256 claude-code.sh # compare with the hash above
sh claude-code.sh
このコンピューター上のすべてのプロジェクト:
curl -fsSL https://uberllm.dev/install/claude-code.sh | sh
1つのプロジェクトのみ (プロジェクト内で実行してください。他のプロジェクトはあなたのAnthropicプランに残ります):
curl -fsSL https://uberllm.dev/install/claude-code.sh | sh -s -- --project
--projectの後にフォルダーを追加して、現在のプロジェクト以外のプロジェクトを設定します。
Windows PowerShell (すべてのプロジェクト):
irm https://uberllm.dev/install/claude-code.ps1 | iex
まずAPIキーは必要ありません。コマンドを貼り付ける際にサインインしている必要もありません。インストーラーはブラウザでリンク (https://uberllm.dev/cli/link?code=XXXX-XXXX) を開き、ターミナルに同じ確認コードを表示します。サインインし、コードが一致することを確認して、Approveを押してください。
承認すると、あなたのアカウントにAPIキーが作成され、待機中のインストーラーに渡されます。ターミナルに表示されるコードは秘密ではありません。リクエストを開始したインストーラーのみがキーを収集でき、キーは一度だけ渡され、リクエストは15分後に期限切れになります。
このコンピューターでClaude Codeがまだ設定されていない場合は、まずすべてのプロジェクトのインストールを使用してください。Claude Codeは、そのフォルダーを信頼した後でのみプロジェクト自身の設定を読み取るため、新規インストールでもログインを求められることがあります。
何も書き込まずにコンピューターの設定ブロックを表示するには:
curl -fsSL https://uberllm.dev/install/claude-code.sh | sh -s -- --print
インストーラーが書き込む内容
キーはあなただけが読み取れるファイルに書き込まれます (フォルダーモード 700, ファイルモード 600):
| インストール | キーファイル | 設定ファイル |
|---|---|---|
| すべてのプロジェクト | ~/.uberllm/key |
~/.claude/settings.json (または $CLAUDE_CONFIG_DIR/settings.json) |
| 単一プロジェクト | ~/.uberllm/key-<folder>-<number> |
<project>/.claude/settings.local.json |
設定ファイルには、アドレスとキーファイルを読み取る apiKeyHelper が記述されます。
キー自体が設定ファイルに書き込まれることは決してないため、バックアップ、dotfiles repository、またはscreen shareに漏れることはありません。
{
"apiKeyHelper": "cat \"/Users/you/.uberllm/key\"",
"env": {
"ANTHROPIC_BASE_URL": "https://api.uberllm.dev",
"CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY": "1"
}
}
Claude Code は、キーを取得するために apiKeyHelper を実行し、それを Authorization: Bearer と x-api-key の両方として送信するため、UberLLM のようなgatewayで動作します。回答は5分間保持されます (CLAUDE_CODE_API_KEY_HELPER_TTL_MS で変更可能)。
インストーラーは既存のファイルを置き換えるのではなくマージするため、hooks、permissions、MCP serversは保持され、古いファイルはまず <file>.bak-<timestamp> にコピーされます。古いインストールによって残されたplain-text ANTHROPIC_AUTH_TOKEN を削除します。その後、gatewayを介して実際の要求を1回実行するため、成功メッセージは要求が正常に処理されたことを意味します。
Windowsインストーラーは、引き続きキーを settings.json に ANTHROPIC_AUTH_TOKEN として書き込みます。
どの設定が優先されるか
Claude Code は設定をこの順序で読み込み、最初に見つかったものが優先されます。
- 管理設定(会社によって設定されている場合)
claude --settings <file><project>/.claude/settings.local.json<project>/.claude/settings.json~/.claude/settings.json
設定ファイルのenvブロックにある変数は、ほとんどのセッションでシェル内の同じ変数よりも優先されます。ここで重要な2つの例外があります。
- キー。 Claude Code は最初に
ANTHROPIC_AUTH_TOKENを、次にANTHROPIC_API_KEYを、そしてapiKeyHelperを使用します。シェルでエクスポートされたトークンは、保存されたキーを上書きします。 - モデル。 セッション内の
/modelが優先され、次にclaude --model、次にANTHROPIC_MODEL、そしてmodel設定が続きます。シェル内のANTHROPIC_MODELはmodel設定よりも優先されます。
そのため、シェルおよびシェルプロファイル(~/.zshrc、~/.bashrc)からすべてのANTHROPIC_*変数を削除し、設定ファイルに保持してください。インストーラーはそれを見つけたときに警告します。
他のモデルを使う
デフォルトでは、モデルは固定されていません。Claude Codeは独自のモデル名(opus、sonnet、haiku、claude-opus-5-5…)を要求し、UberLLMは同じClaudeモデルを提供します。
Claude CodeをDeepSeek、GLM、Qwen、GPT、またはその他のモデルで動かすには、Claude Codeの各モデルスロットを、envブロックでUberLLMのモデルIDにマッピングしてください。
| 変数 | 設定内容 |
|---|---|
ANTHROPIC_MODEL |
セッションが開始されるモデル。 |
ANTHROPIC_DEFAULT_OPUS_MODEL |
opusが意味するもの。 |
ANTHROPIC_DEFAULT_SONNET_MODEL |
sonnetが意味するもの。 |
ANTHROPIC_DEFAULT_HAIKU_MODEL |
haikuが意味するもの。Claude Codeは、タイトルや要約などのバックグラウンド作業にもこれを使用します。 |
CLAUDE_CODE_SUBAGENT_MODEL |
サブエージェントが実行されるモデル。 |
{
"apiKeyHelper": "cat \"/Users/you/.uberllm/key\"",
"env": {
"ANTHROPIC_BASE_URL": "https://api.uberllm.dev",
"ANTHROPIC_MODEL": "deepseek/deepseek-v4-pro",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek/deepseek-v4-pro",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "deepseek/deepseek-v4-pro",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "deepseek/deepseek-v4-flash",
"CLAUDE_CODE_SUBAGENT_MODEL": "deepseek/deepseek-v4-pro"
}
}
すべてのスロットをマッピングしてください。設定されていないスロットはClaudeモデルを要求し続け、その分のClaude料金を支払うことになります。
インストーラーはプロファイルを使ってこれを実行します。
curl -fsSL 'https://uberllm.dev/install/claude-code.sh?profile=glm' | sh
プロファイルはclaude-native(デフォルト、何も固定しません)、glm、deepseek、およびgptです。変数を手動で設定すれば、モデルテーブル]のどのモデルIDでも機能します。GET https://api.uberllm.dev/v1/modelsにそれらがリストされています。
コンテキストと圧縮
Claude CodeはClaudeモデルのコンテキストサイズのみを認識しています。その他のモデルについては、200,000トークンと仮定し、それ以前に会話を圧縮します。
- モデルが1百万トークンのコンテキストを持つ場合(uberllm.devのそのモデルのページにコンテキストが表示されています)、そのIDの末尾に
[1m]を追加してください。例えば"ANTHROPIC_MODEL": "deepseek/deepseek-v4-pro[1m]"やclaude --model 'deepseek/deepseek-v4-pro[1m]'のように。するとClaude Codeは1Mを想定します。 - その他のサイズの場合は、モデルのコンテキストに
CLAUDE_CODE_MAX_CONTEXT_TOKENSを設定してください。例えば"CLAUDE_CODE_MAX_CONTEXT_TOKENS": "400000"のように。 - 圧縮するタイミングを選択するには:
autoCompactWindow設定(またはCLAUDE_CODE_AUTO_COMPACT_WINDOW変数)は、100,000から1,000,000までのトークン数を取ります。CLAUDE_AUTOCOMPACT_PCT_OVERRIDE(1–100)は、そのウィンドウの割合で、より早く圧縮します。autoCompactEnabled: falseはそれをオフにします。
モデルが持つコンテキストよりも大きなコンテキストを設定すると、会話がモデルの容量を超えたときにリクエストが失敗します。
変更点
- claude.aiのログインは利用されません。 claude.aiコネクタ、
/schedule、Remote Controlなど、それを必要とする機能は、UberLLMで実行されるセッションでは利用できません。 - Claude Codeが表示する費用は、お客様の請求額ではありません。 Claude Codeは、Anthropicの定価に基づいてお客様のコンピューターで費用を計算するため、他のモデルには役立つ情報を表示しません。お客様が支払う金額は、Dashboard → Activity]にあります。作業中に確認できるよう、残高をステータスライン(下記)に追加してください。
- お客様のコードはサードパーティのモデルプロバイダーに送信されます。 セッションが読み取るすべての情報はモデルに送信され、そのモデルはUberLLMマーケット上のサードパーティのモデルプロバイダーによって実行されます。secrets、credentials、または顧客データを保持するリポジトリでは使用しないでください。
ステータスラインでの残高
curl -fsSL https://uberllm.dev/install/statusline.sh | sh -s -- --install
これは小さなスクリプトを~/.uberllm/statusline.shに保存し、Claude CodeのstatusLineとして~/.claude/settings.jsonに追加します(代わりにこのプロジェクトの.claude/settings.local.jsonに配置するには、--installの後に--projectを追加します)。プロンプトの下に、次のように表示されます。
UberLLM $12.40 · $0.35 held · Opus
これは、利用可能な残高、実行中のリクエストのために保留されている金額、およびモデルです。Claude Codeが使用するのと同じキーで、1分間に最大1回GET /v1/balanceを読み取ります。必要なのはsh、curl、sedだけです。まず、uberllm.dev/install/statusline.sh]で読んでください。
確認
Claude Code を起動し、/status を実行してください。APIアドレスは https://api.uberllm.dev です。その後、何か質問してみてください。リクエストは1分以内にダッシュボード → アクティビティ]に表示されます。
同じキーは Messages API でも応答します。
curl https://api.uberllm.dev/v1/messages \
-H "Authorization: Bearer $(cat ~/.uberllm/key)" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model":"claude-haiku-4-5","max_tokens":16,"messages":[{"role":"user","content":"ping"}]}'
もしリクエストが Your apiKeyHelper script is failing で失敗した場合、キーファイルが見つからないか読み取り不可能です。インストーラーを再度実行してください。
アンインストールと無効化
curl -fsSL https://uberllm.dev/install/claude-code.sh | sh -s -- --uninstall
単一プロジェクトへのインストールの場合、プロジェクト内で sh -s -- --project --uninstall を実行してください。まず設定ファイルをバックアップし、追加したものだけを削除し、保存されたキーファイルを削除します。次回起動時には、Claude Code は Anthropic のログインに戻ります。
アンインストールしてもキーは無効化されません。単にその使用を停止するだけです。キーが二度と使用されないように、キーページ でキーを削除してください。信頼できないコンピューターや、開始していないリクエストを承認してしまった場合は、そうしてください。