0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Windows環境でLLMエージェント開発環境を10ドルで構築した話

Last updated at Posted at 2025-11-06

執筆日:2025/11/06
初めまして、ゲノムちゃんです。経緯がどうでもいいなら前書きは飛ばしてください。


目次


前書き

スクリーンショット 2025-11-03 120548.png

執筆時点で、OpenAIのCodexを毎週付与される枠で使い切ってしまいました(2025年11月3日 12:00頃)。
リセットまで6日。ゲノムちゃんは現在「LLM無職」なので開発できなくても他の事をするので困りませんが、有職だったら代替手段を考えざるを得ません。

VSCodeを引っ張り出して Continue や Cline を使うか、Gemini CLI や Claude、Qwen に逃げるか、あるいは諦めてクレジットを追加するか、Pro にするか──。

VSCodeを利用した記事はこちらに記載しています。気が向いたらどうぞ。
👉 VSCode+Clineで作るバイブコーディング環境 (Zenn)


VSCodeでは限界を感じた話

さて、ゲノムちゃんはどうしたか?
一旦VSCodeにCline+Continueを入れて続行を試みたのですが……。

スクリーンショット 2025-11-06 112436.png

狭い。狭すぎる。モニターも一枚しかない。
縦型モニターなら多少マシかもしれませんが、結局狭い。

そもそも VSCode 自体が「人力コーディング」向けのUIなので、
バイブコーディング(LLM主導の開発) には窮屈なんです。
例えるならお好み焼きにケチャップをかけて食べるようなチグハグ感。1
さらに LLM も 2体までしか扱えません。どうしろというのでしょう。

半日ほど試して断念しました。


Vibe Kanbanとの出会い

というわけで発想を転換。
カンバンツール上で LLM 開発ができたら最高じゃない?」という結論に至り、
OSSを探して見つけたのが Vibe Kanban
ただし、エージェントCLIとの接続しかできません。

そこで、Vibe Kanban のエージェント選択肢にある「QWEN_CODE」をベースに、
LiteLLM でラップして OpenRouter の無料 LLM を利用する構成を作り、
結果として 10ドルで LLM エージェント開発環境を構築した──という話です。


TL;DR

  • Windows 11 上に以下を組み合わせて格安エージェントツールを構築します:

  • コストは OpenRouter に $10 クレジットを入れる構成

    • $10 入れると free モデルの上限が 1,000 req/日まで伸びるので、かなり実用になります(OpenRouter Limits)。
  • 常時起動が必要なのは Vibe KanbanLiteLLM Proxy の2プロセス。
    Qwen Code CLI は使うときだけ立ち上げるツールです。

  • 各サービスの詳細やAPIキーの発行とか前提条件のインストールとかは調べたりAIに聞いてください。


この記事でやること

  1. OpenRouter アカウントを作り、$10 クレジットを入れる
  2. LiteLLM Proxy を立てて OpenRouter を裏でしゃべらせる
  3. Vibe Kanban を LiteLLM 経由で使えるようにする
  4. Qwen Code CLI を OpenRouter 直結で動かす

前提環境

  • OS: Windows 11

  • シェル: PowerShell / CMD どちらでも可(以下は PowerShell 想定)

  • 事前インストール:

    • Node.js 20 以上(Qwen Code CLI が Node 20+ 前提) → Zitnik Lab
    • Python 3.10 以上(LiteLLM Proxy 用)
    • Git
  • GPU は不要(今回はクラウド推論構成です)


全体構成

[Vibe Kanban]
   └─▶ (エージェント選択: Qwen Code)
           └─▶ (OpenAI互換API) ──▶ [LiteLLM Proxy] ──▶ [OpenRouter]
                                         │
                                         └─▶ (各種LLM: GPT-5-nanoなど)

Step 0. OpenRouter の準備

  1. OpenRouter にサインアップし、APIキーを発行 → OpenRouter Docs
  2. 「Credits」からクレジットを購入し、$10以上入れておく → OpenRouter Pricing

💡 補足
無料ユーザーの free モデル利用は 1日 50 req ですが、
クレジットが $10 以上あると free モデルが 1日 1,000 req まで増えます(2025年11月時点)。

環境変数:

$env:OPENROUTER_API_KEY = "sk-or-..."   # 実際のキーに置き換え

Step 1. LiteLLM Proxy を立てる

LiteLLM は「OpenAI互換 API で、いろんな LLM サービスをまとめて叩けるプロキシ」です。
👉 LiteLLM Proxy 解説記事(note)

1-1. インストール

pip install "litellm[proxy]"

1-2. 設定ファイル litellm.config.yaml

💡 注意: UTF-8 / スペース2個インデント / タブ禁止。

model_list:
  - model_name: qwen-code-dev
    litellm_params:
      model: openrouter/z-ai/glm-4.5-air:free
      api_base: https://openrouter.ai/api/v1
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: gpt-5-nano
    litellm_params:
      model: gpt-5-nano
      api_key: os.environ/OPENAI_API_KEY

litellm_settings:
  drop_params: true

general_settings:
  master_key: litellm-local-master-key

1-3. 起動

cd C:\LLM\litellm
litellm --config litellm.config.yaml --port 4000

http://127.0.0.1:4000 上に OpenAI 互換の API が立ち上がります。
このプロセスは常駐させておく必要があります。

💡 UnicodeDecodeError: 'cp932' が出る場合はUTF-8で再保存を。


Step 2. Qwen Code CLI を LiteLLM 経由で使う

Vibe Kanban で Qwen Code エージェントを選ぶ前に、一度セットアップします。

2-1. インストール

npm install -g @qwen-code/qwen-code
qwen --version

2-2. LiteLLM接続設定

$env:OPENAI_API_KEY  = "litellm-local-master-key"
$env:OPENAI_BASE_URL = "http://127.0.0.1:4000"
$env:OPENAI_MODEL    = "qwen-code-dev"

テスト起動:

qwen

初回は認証が走るので案内に従ってください。
完了後は閉じてOK。常駐不要です。


Step 3. Vibe Kanban を LiteLLM 経由で動かす

Vibe Kanban は「AI コーディングエージェントをカンバンボードで管理する Web アプリ」です。
👉 GitHub: Vibe Kanban

3-1. 起動

npx vibe-kanban

初回は対話形式でセットアップが走ります。

3-2. LLM設定

項目
Provider OpenAI互換
Base URL http://127.0.0.1:4000
API Key litellm-local-master-key
Model qwen3-coder-openrouter

経路イメージ:

Vibe Kanban → LiteLLM Proxy → OpenRouter → glm-4.5-air


実際の運用フロー(起動順まとめ)

1️⃣ LiteLLM Proxy を起動

cd C:\LLM\litellm
litellm --config litellm.config.yaml --port 4000

2️⃣ Vibe Kanban を起動

npx vibe-kanban

補足:PowerShellスクリプト化して自動起動する例
(ExecutionPolicyはRemoteSigned推奨)

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

🔧 自動起動バッチの例(bat+PowerShell)

面倒なので、私は以下のようにスクリプト化して一発起動できるようにしています。
ExecutionPolicyRestricted の場合は、先に以下を実行してください:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

env_files/llm-env.ps1

# llm-env.ps1
$env:LITELLM_MASTER_KEY = "litellm-local-master-key"

$env:OPENAI_API_KEY     = "sk-prhogehoge"
$env:GEMINI_API_KEY     = "AIpiyopiyo"
$env:OPENROUTER_API_KEY = "sk-or-hugahuga"

start_litellm_proxy.ps1

# start_litellm_proxy.ps1

# このスクリプト自身があるディレクトリを基準に動く
$baseDir = Split-Path -Parent $MyInvocation.MyCommand.Path

# 環境変数を読み込み
. "$baseDir\env_files\llm-env.ps1"

# プロジェクトディレクトリへ移動
Set-Location "$baseDir\vibe-kanban"

# LiteLLM プロキシ起動
litellm --config .\litellm_config.yaml --port 4000

start_litellm_proxy.bat

@echo off
setlocal

rem この bat が置いてあるディレクトリ(末尾に \ が付く)
set "BASE_DIR=%~dp0"

rem PowerShell スクリプトを実行
powershell -NoExit -ExecutionPolicy Bypass -File "%BASE_DIR%start_litellm_proxy.ps1"

endlocal

これで start_litellm_proxy.bat をダブルクリックするだけで、
環境変数 → LiteLLM 起動まで自動で流せます。
起動ログがコンソールに出続けるので、停止は Ctrl + C で。


「10ドルでどこまで遊べるか」の感覚値

  • OpenRouter の free モデルを使う限り、$10 クレジットで

    • 1日 1,000 req / freeモデル上限(2025年11月時点)
  • 1タスク 20〜50 req 程度なら 1日 10〜30タスクは余裕

  • 「$10で構築」ではなく
    $10で“快適なfree枠環境”を得たというのが実態

快適性を求めるなら Gemini Flash 2.5 や GPT-5 の利用をするといいでしょう。
本末転倒かも。

エビデンスたち
https___qiita-image-store.s3.ap-northeast-1.amazonaws.com_0_501190_df05c244-f7cb-4a12-8156-bce384ef8df7.png
ちょっと内容は恥ずかしいので見せません。
スクリーンショット 2025-11-06 132915.png
大体一度に動かして25reqですし内容もまあまあいい感じです。
無料枠を毎日使うことでCodexのクレジット足りない問題は解決しそうです。


まとめ

  • 常時起動:LiteLLM Proxy / Vibe Kanban

  • Qwen Code CLI は必要時のみ起動

  • OpenRouter に $10 入れると free モデル 1,000 req/日

  • Vibe Kanban でタスク管理+Qwen Codeでローカル修正
    → トップTier一歩手前の環境が格安で再現可能

    追記:定期的に認証欲しがられるので起動してすぐ動かせるって感じじゃなくて
    都度、認証を通す設定にすると良いと思います。


本記事の作成にあたり、多くの参考資料を参照させていただきました。
また、引用させていただいた記事について、誠にありがとうございます。

余談

スクリーンショット 2025-11-06 105425.png
詫びクレジット助かる~~~!!

スクリーンショット 2025-11-06 105407.png
レートリミット回復してる~~~!!!

(執筆中開発ing....)

スクリーンショット 2025-11-06 113933.png

3日も持たなそうです(※リクエスト上限的な意味で)。

  1. 洋風お好み焼きとして作ったなら美味しくなる組み合わせだと思う。あくまでも例え話。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?