🔧 TECH ARTICLE 🔧
〜 T-06 〜

Claude Code × LM Studio でローカルLLM開発環境を構築する

⚙️ はじめに — この記事でできるようになること
Claude Code は、ターミナル(黒い画面)から使えるAIコーディングアシスタントです。通常はAnthropicのクラウドサーバーにつないで使いますが、LM Studio というアプリを使えば、自分のPC上でAIモデルを動かして、Claude Codeをクラウドなし・料金ゼロで使えるようになります。
この記事を読み終わると、こんな環境が手に入ります:
  • 毎月のAPI料金が0円 — 自分のPCでAIが動くので課金なし
  • ネットがなくても使える — 飛行機の中でもコーディングできる
  • Claude Codeの機能がそのまま使える — Skills、Agent、Toolsなどの便利な機能はそのまま
  • スマホからも同じ環境にアクセス可能 — SSH接続で外出先からも使える
所要時間は約15分です。一緒にやっていきましょう。
⚙️ そもそもの仕組み — なぜこれが動くの?
まず、普通のClaude Codeがどう動いているかを理解しましょう。
【普段の使い方】
  あなたのPC(Claude Code)
       ↓ インターネット経由
  Anthropicのサーバー(Claude Sonnet / Opus)
       ↓
  回答が返ってくる(※ここでAPI料金が発生)
LM Studioを使うと、こう変わります:
【ローカルLLM構成】
  あなたのPC(Claude Code)
       ↓ PC内部の通信(インターネット不要)
  LM Studio(AIモデルを動かすアプリ)
       ↓
  回答が返ってくる(※料金ゼロ!)
LM Studio 0.4.1以降には、Anthropicの通信方式と同じ形式でやりとりできる機能が入っています。Claude Codeからすると「いつものAnthropicサーバーと話している」ように見えるので、特別な改造なしでそのまま動くわけです。
⚙️ 構築に必要なもの
始める前に、以下を準備してください。
必要なもの 説明
パソコン Mac、Windows、Linuxのいずれか
メモリ(RAM) 16GB以上(できれば32GB以上だと快適)
Claude Code Anthropicの公式CLIツール(事前にインストール済みであること)
ストレージ 数GBの空き容量(AIモデルのダウンロードに必要)
Claude Codeがインストールされているか確認するには、ターミナルで以下を実行します:
claude --version
バージョン番号が表示されればOKです。
⚙️ 構築手順 — 4ステップで完了
全体の流れはこうなっています:
STEP 1: LM Studioをインストールして起動する  (5分)
    ↓
STEP 2: AIモデルをダウンロードしてセットする  (5〜10分)
    ↓
STEP 3: Claude Codeの接続先を変更する        (1分)
    ↓
STEP 4: 動作確認                             (1分)
    ↓
完了! 合計 約15分
▸ STEP 1: LM Studioをインストールしてサーバーを起動する
LM Studioは、自分のPCでAIモデルを動かすための無料アプリです。

ダウンロード

公式サイトからお使いのOSに合ったものをダウンロードしてください:
https://lmstudio.ai/download

対応OS: Mac / Windows / Linux
ダウンロードしたらインストールして、一度アプリを起動してください。

Linuxユーザーへの注意

LinuxではAppImage形式で配布されています。以下のコマンドで起動できます:
chmod +x LM_Studio-*.AppImage
./LM_Studio-*.AppImage
重要: Linuxでは、必ず一度GUIを起動してください。これをスキップすると、後で使うコマンドラインツール(lms)がLM Studioを見つけられず、エラーになります。

サーバーを起動する

LM Studioを起動したら、次にターミナルで「サーバーモード」を起動します。これで、Claude Codeからの接続を受け付けられるようになります。
# サーバーを起動(ポート1234で待ち受け)
lms server start --port 1234
起動できたか確認しましょう:
lms status
こう表示されれば成功です:
Server: ON
Port: 1234
▸ STEP 2: AIモデルをダウンロードしてセットする
LM Studioの中で動かすAIモデルを取得します。最初はibm/granite-4-microがおすすめです。軽量で高速、日常的なコーディング作業に十分な性能があります。
# モデルをダウンロード(数分かかります)
lms get ibm/granite-4-micro
ダウンロードが終わったら、モデルを「ロード」(メモリに読み込み)します:
# モデルをメモリに読み込む
lms load ibm/granite-4-micro --context-length 32768

context-length とは?

--context-length 32768 は「AIが一度に覚えていられる文章の量」です。数字が大きいほどたくさん覚えていられますが、そのぶんメモリを消費します。
設定値 どうなるか
4096 Claude Codeでは使えません(すぐに「記憶」があふれます)
16384 最低限。短い会話ならなんとか
32768 おすすめ。日常作業にはこれで十分
65536 メモリに余裕がある方向け
Claude Codeは裏側でたくさんの情報(計画、差分、ツール情報、会話の履歴など)を同時に扱うので、4096では足りません。32768(32K)以上を推奨します。
モデルがちゃんとロードされたか確認:
lms ps
granite-4-micro が表示されていればOKです。
▸ STEP 3: Claude Codeの接続先をローカルに切り替える
ここが今回のキモです。たった2行のコマンドで、Claude Codeの接続先が「Anthropicのクラウド」から「自分のPCのLM Studio」に切り替わります。
export ANTHROPIC_BASE_URL=http://localhost:1234
export ANTHROPIC_AUTH_TOKEN=lmstudio
これだけです。
  • ANTHROPIC_BASE_URL — Claude Codeが「どこに接続するか」を決める設定。localhost:1234 は「自分のPC上のポート1234番」という意味です
  • ANTHROPIC_AUTH_TOKEN — 認証用の文字列。LM Studioは認証チェックをしないので、なんでもOKです(lmstudio はダミーの値)

ターミナルを開くたびに設定するのは面倒?

上のコマンドはターミナルを閉じるとリセットされます。毎回自動で設定されるようにするには、.bashrc(シェルの設定ファイル)に書き込みます:
echo 'export ANTHROPIC_BASE_URL=http://localhost:1234' >> ~/.bashrc
echo 'export ANTHROPIC_AUTH_TOKEN=lmstudio' >> ~/.bashrc
source ~/.bashrc
これで、新しいターミナルを開いても自動で設定されます。
▸ STEP 4: Claude Codeを起動して動作確認
いよいよ起動です:
claude --model ibm/granite-4-micro
以下のようになれば成功です:
  • Claude Codeのプロンプトが表示される
  • 質問を入力すると返答が返ってくる
  • API料金に関する表示が出ない
おめでとうございます! これでクラウドなし・料金ゼロのClaude Code環境が動いています。
💡 もっと便利に使うためのTips
▸ 便利ツール: claude-local コマンド
毎回環境変数を設定するのが面倒なら、専用のコマンドを作ってしまいましょう:
# ~/bin ディレクトリを作成
mkdir -p ~/bin

# claude-local コマンドを作成
cat > ~/bin/claude-local << 'SCRIPT'
#!/usr/bin/env bash
export ANTHROPIC_BASE_URL=http://localhost:1234
export ANTHROPIC_AUTH_TOKEN=lmstudio
exec claude "$@"
SCRIPT

# 実行権限を付与
chmod +x ~/bin/claude-local

# パスに追加
export PATH="$HOME/bin:$PATH"
以降は claude-local と打つだけでローカルLLMにつながります。クラウド版を使いたいときは通常の claude を使えばいいので、使い分けも簡単です。
▸ VS Codeから使う場合
VS Codeの Claude Code 拡張機能を使っている方は、settings.json に以下を追加してください:
"claudeCode.environmentVariables": [
  {
    "name": "ANTHROPIC_BASE_URL",
    "value": "http://localhost:1234"
  },
  {
    "name": "ANTHROPIC_AUTH_TOKEN",
    "value": "lmstudio"
  }
]
VS Code を再起動すると、拡張機能がローカルLLMに接続します。
▸ スマホから使う(SSH経由)
自宅にLM Studioが動いているPCがあれば、外出先からスマホでSSH接続して同じClaude Code環境を使えます。TERMIUSなどのSSHクライアントアプリを使います。
あなたのスマホ(TERMIUSアプリ)
    ↓ SSH接続(インターネット経由)
自宅のPC(LM Studio + Claude Code)
    ↓
回答が返ってくる
サーバー側で .bashrc に環境変数を設定済みなら、SSH接続するだけで自動的にローカルLLM構成になります。確認方法:
# SSH接続後に確認
echo $ANTHROPIC_BASE_URL
# → http://localhost:1234 と表示されればOK
⚠️ 注意: .profile から .bashrc を読み込む設定が必要な場合があります:
# ~/.profile に以下を追加
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi
活用例:
  • 通勤電車で5分 → 昨日のPRをレビュー
  • 昼休みに10分 → 設計メモを整理
  • 帰宅後に15分 → じっくり設計検討
⚙️ モデルの選び方と使い分け
▸ 普段使い: granite-4-micro(軽量・高速)
特徴 内容
サイズ 軽量(数GB)
速度 高速
必要メモリ 16GB〜
得意なこと コードレビュー、差分の要約、設計の整理
苦手なこと 自由な発想、クリエイティブな生成
日常作業にはこれで十分です。常時ロードしておいて、いつでも使える状態にしておくのがおすすめです。
▸ 本気モード: gpt-oss-120b(大型・高性能)
特徴 内容
サイズ 62.76 GB(大きい!)
速度 数十秒〜数分/回答(CPUだと遅い)
必要メモリ 64GB〜(推奨96GB)
得意なこと 深い思考が必要な設計検討、複雑な推論
苦手なこと 長時間の連続使用(メモリ消費が激しい)
必要なときだけロードして使う「スポット運用」がおすすめです。
▸ モデルの切り替え方
# 日常はgraniteを使う
lms load ibm/granite-4-micro --context-length 32768

# 本気タスクのとき → graniteをおろして120Bに切り替え
lms unload ibm/granite-4-micro
lms load gpt-oss-120b --context-length 32768

# 終わったらgraniteに戻す
lms unload gpt-oss-120b
lms load ibm/granite-4-micro --context-length 32768
やってはいけないこと:
  • 2つのモデルを同時にロードする → メモリ不足でPCがフリーズする可能性あり
  • 120Bで長時間作業する → CPU推論だととても遅い
  • context-length 65536を常用する → メモリを大量消費する
⚙️ Python SDKからの利用
自分でPythonプログラムを書いてLM Studioに接続することもできます:
from anthropic import Anthropic

# 接続先をローカルに変更するだけ
client = Anthropic(
    base_url="http://localhost:1234",
    api_key="lmstudio",
)

message = client.messages.create(
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello from LM Studio"}],
    model="ibm/granite-4-micro",
)

print(message.content)
Anthropicの公式Python SDKがそのまま使えます。base_url を変えるだけです。
⚙️ 困ったときは — トラブルシューティング
こんな症状が出たら 原因 対処法
Claude Codeがクラウドに接続してしまう 環境変数が設定されていない echo $ANTHROPIC_BASE_URL で確認。空なら STEP 3 をやり直す
「接続できない」エラーが出る LM Studioのサーバーが起動していない lms status で確認。ONでなければ lms server start --port 1234
何も返答がない AIモデルがロードされていない lms ps で確認。何も表示されなければ STEP 2 をやり直す
ENOENT エラー(Linuxのみ) LM StudioのGUIを起動していない 一度GUIアプリを起動してから、再度コマンドを試す
途中で会話がおかしくなる context-lengthが小さすぎる --context-length 32768 以上でモデルを再ロードする
Tool呼び出しが動かない モデルが対応していない granite か gpt-oss を使う
回答が異常に遅い 大型モデルをCPUで動かしている graniteに切り替える。GPUがあれば改善される
⚙️ まとめ
必要なもの:
  ソフトウェア:  LM Studio + Claude Code CLI
  AIモデル:     ibm/granite-4-micro(日常用)
  設定:        環境変数たった2つ
  構築時間:     約15分

手に入るもの:
  ・毎月のAPI料金ゼロ
  ・ネットなしでも動く
  ・Claude Codeの機能がそのまま使える
  ・スマホからも同じ環境にアクセス
  ・モデルを切り替えて用途に合わせた使い分けができる
AIを「賢くする」ことも大事ですが、「いつでも安定して使えるようにする」ことの方が実務では効きます。graniteのような軽量モデルでも、CLAUDE.md(プロジェクトごとの設定ファイル)で振る舞いを固定すれば、十分に頼れる作業パートナーになります。
ぜひ試してみてください。
⚙️ 参考リンク

この記事はLM StudioとClaude Codeを使ったローカルLLM開発環境の構築記録です。
⚙️ Tech Series – T-06 🔧
Engineering the future…