はじめに
Claude CodeはAnthropicのAPIだけでなく、ANTHROPIC_BASE_URL を切り替えることでOllamaなどローカルLLMのエンドポイントにも接続できます。この仕組みを使うと、Claude Codeという使い慣れたエージェント型のCLIを、ローカルLLMを使って動かせるとのことなので試したことをメモします。
使用環境
- Mac mini / M4 / SSD 256GB / RAM 32GB
- Claude Code CLI
- Ollama
- GPT-OSS:20B
構築手順
全体構成
組織内クライアントPC (複数台)
- Claude Code
- 作業ファイル
|
| SSHトンネル または LAN直接接続
v
Mac mini
- Ollama
- gpt-oss:20b
Claude CodeはクライアントPCのファイルを読み書きし、モデル実行だけをMac mini側のOllamaに依頼します。
1. Mac miniを準備する
新品は高いの中古でも良いかも
2. Mac miniにOllamaを準備する
ターミナルを起動して、以下のコマンドを実行(管理者権限が必要です)
curl -fsSL https://ollama.com/install.sh | sh
Ollamaがインストール済みか確認し、使用するモデルを取得します。
ollama --version
ollama list
ollama pull gpt-oss:20b
Ollamaのサーバーが動作しているか確認します。
curl http://localhost:11434/api/tags
最後にとても重要なのがコンテキストサイズの設定です。
Mac miniの画面にログインして、Ollamaの設定画面で Context length を128kに設定します。
3. Ollamaを組織内に公開する
Mac mini上のOllamaに、他のMacから接続できるようにします。方式は2つあります。
方式A: SSHトンネル(推奨)
11434 ポートをLANに直接公開せず、SSH経由でトンネルします。クライアントPC側で以下を実行し、接続中のまま開いておきます。
ssh -L 11434:localhost:11434 ユーザー名@Mac-miniのIPアドレス
別のターミナルを起動して、クライアントPCが localhost:11434 経由でOllama APIに到達できることを確認します。
curl http://localhost:11434/api/tags
方式B: LAN直接接続
設定は簡単ですが、Ollama APIをLANに公開するため、信頼できるネットワーク内でのみ使います。Mac mini側で待ち受けアドレスを変更し、Ollamaを再起動します。
launchctl setenv OLLAMA_HOST "0.0.0.0:11434"
クライアントPC側からMac miniのIPアドレスを指定して疎通確認します。
curl http://Mac-miniのIPアドレス:11434/api/tags
4. 作業者MacにClaude Codeを準備する
クライアントPCに Claude Code をインストールします。
curl -fsSL https://claude.ai/install.sh | bash
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
claude --version
6. Claude Codeを起動する
SSHトンネル方式の場合、作業フォルダで次を実行するだけです。
export ANTHROPIC_AUTH_TOKEN=ollama
export ANTHROPIC_API_KEY=""
export ANTHROPIC_BASE_URL="http://Mac-miniのIPアドレス:11434"
claude --model gpt-oss:20b
Claude Code本体への追加引数は -- の後に渡せます。
claude --model gpt-oss:20b -- -p "このフォルダの内容を確認して"
7. ダブルクリックで起動できるようにする(任意)
ターミナル操作に慣れていない作業者向けにはスクリプトファイルを用意しておくとFinderからダブルクリックで起動できます。中身は起動スクリプトを固定オプション付きで呼び出すだけのラッパーです。
#!/bin/bash
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
cd "$SCRIPT_DIR" || exit 1
export ANTHROPIC_AUTH_TOKEN=ollama
export ANTHROPIC_API_KEY=""
export ANTHROPIC_BASE_URL="http://Mac-miniのIPアドレス:11434"
claude --model gpt-oss:20b
echo ""
echo "終了しました。Enterキーを押してください。"
read
さいごに
Mac miniをOllamaサーバーとして共有することで、機密情報の扱いを気にすることなく作業ができるようになり、利用者自体に大きなモデルを持たずに作業ができるようになりました。
できた!