Claude 無料枠だけで OpenClaw モドキを作らせて RTX5070Ti マシンで動かしてみた

以前、「目的を与えない自律型 AI エージェント」を作って遊んでみました。

この時は Google Antigravity、Codex の無料枠をメインに開発を行わせました。

ところで、VSCode 拡張機能や CLI で動作する「Claude Code」は課金が必要ですが、Web 上で利用できる「Claude」には無料枠があります。そしてブラウザ上で少々手間ではありますが、Claude に作らせたファイルをもらったり、逆にコチラからファイルを与えたりしてコーディングを行わせることができます。しかもスゴいのが、Zip に固めたコードベースをまるっと渡しても、Claude on The Web が解凍して認識してくれる点。つまり「途中まで自分で作ったり、Claude に作らせたプロジェクトをローカルで調整したりして、それを元に開発を進めさせる」ということが Claude 無料枠の中で出来ます。

今回は現在無料で使える Claude Sonnet 4.6 を利用して、Web 上での対話でオレオレ OpenClaw モドキを作らせてみました。

目次

機能特化型 AI エージェントをセルフホストしたくなった

以前、GTX1080 環境に Ollama を入れて、OpenClaw エージェントを立ち上げたところ、恐らく認識できるコンテキストが少なかったためにまともに動作しませんでした。そこで、OpenClaw っぽい AI エージェントで、特定の目的に特化した軽量な AI エージェントを自作してみようと思い立ちました。

OpenClaw の中身を細かく見てはいませんが、きっと内部構造はシンプルなはずです。すなわち、

ということで、細かい実装の仕方はともかく、「なんかコレなら出来そう」と想像のつく仕組みで動いていると思われます。

Claude に相談してコーディング開始

なんとなく ChatGPT にコードを書かせたり、VSCode 拡張機能の Codex を利用したりするよりも、Claude の方がコーディングが上手な感じを受けていましたので、今回は Claude のウェブ上で、無料枠で使える Claude Sonnet 4.6 モデルを相手に話しかけてみました。「上述のようなことをやりたい、実現方式を考えて」と。

そして教えてもらったのが「MCP サーバ」や「Tool Calling」といった概念。システムプロンプトで「後処理のために、JSON 形式を厳守して出力してね」などと指示せずとも、特定のツールを使わせる仕組みがあるそうです。この辺を活用して、Ollama 上のモデルで AI エージェントを作っていきましょう、と Claude くんにアドバイスしてもらいました。

MCP サーバ、実は超簡単だった

「MCP サーバ」なんていうと「サーバ」が立ち上がっていないといけないのかと思って身構えていましたが、実態は npx (Node.js) で用意されたツールを叩いて、単発のプロセスとして機能させるモードもあるようで、今回はそれを使いました。

すごく雑に擬似コード化するなら、AI に「以下のスクリプトなら実行して良いよ」と教えて、それを守らせる仕組みが「MCP サーバ」という感じです。

# 指定のパス配下に、指定の名前でディレクトリを作るスクリプト、みたいな
$ npx ./scripts/make-directory.js /PATH/TO/Parent-Directory 'example-directory'

ファイルの読み書きや任意の URL のフェッチなどは npm パッケージの @modelcontextprotocol スコープ配下に用意されていて、前述のとおり npx コマンドで単発実行できる感じです。

Tool Calling も Claude が作ってくれた

MCP サーバ単体では、「そういう機能を実行できる」仕組みだけなので、LLM が「ユーザの要望に答えるには、この外部ツールを使う必要がある。ツールを呼び出させてほしい!」と判断した時にその声を聞く必要があります。そのための仕組みが「Tool Calling」というモノで、Ollama や多くの LLM がその機能に対応しています。既に決まった API があるワケですね。

その辺の「イテレーション」も、Claude にお願いすることでちょっとした while ループとして実装してくれました。

自分でコードを書かずに AI エージェントが作れた

そんなワケで、コチラで用意したのは README だけ。「OpenClaw のようにチャットで指示を出せる AI エージェントを作る」「Ollama を使う」ぐらいのことしか書いてませんが、必要な LLM の選定からエージェントとして振る舞うためのコア機能、会話履歴の保存と読み込みからチャットウィンドウとなる Web フロントエンドまで、自分でコードを書かずとも全て作ってくれました。

Claude は「この機能から順に作っていこうと思います」と宣言してくれて、「OK、そんじゃ実装よろしく」というと、3~5分くらい考えてコードを吐き出してくれます。そのコードを丸コピしてローカルで貼り付けて実行すると、ちゃんと動いてくれました。まれに import 文の相対パスが間違っていたりしましたが、せいぜいその程度で、破綻した間違ったコードはもう吐かない時代になっています

コーディングスタイルの好みに関しても、事前に説明したり、「こっちでリファクタしたコードを参考にして」とファイル添付したりすると、以降は割としっかり守ってくれたりします。この辺の賢さは Codex よりも格段にレベルが高いと思いました。おかげで、出力されたコードを後で自分で読み返して調整したりすることも容易になりました。

無料枠のみ、1チャットスレッドで8時間ぶっ通しで実装、そして完成した

ChatGPT だと、1つのスレッドが長くなってくると動作がもっさりしてきて、回答にもハルシネーションが混じることがちょくちょくありました。

しかし Claude ではそんなことなく、1つのチャットスレッドで、8時間に渡ってぶっ通しで会話し、コーディングさせ続けられました。これはちょっと驚異的です。ハルシネーションも起こらず、むしろ会話履歴を適切に記憶していて、前に言ったことをしっかり守ってくれます。指示を忘れたり、いきなり変なことをしだすこともありませんでした。

…という感じで会話を続けて、8時間ほど利用しましたが、無料枠の制限がかかることもなく、ついに OpenClaw モドキが完成してしまいました。マジで1行も自分でロジック書いてないのに…。

Neo's Claw 完成

出来上がったコードは以下。

WSL 上に Ollama と Node.js を入れてあれば、あとはイイカンジで動きます。

ファイル読み書きとフェッチの MCP を利用しており、後はオリジナルのスキルとして「Zenn と note の記事を検索してニッチなテーマで記事が書けそうか判断してくれる機能」を作ってみました。実は最近、Zenn と note に記事を書き始めたので、どうせなら人と被らない話題を書こうと思って作ってみたスキルです。

パソコンを新調したので、RTX5070Ti (VRAM 16GB) で動くギリギリの性能の LLM を選びました。Qwen2.5 14B (qwen2.5:14b-instruct-q4_k_m) というヤツで、まぁまぁぼちぼちな精度で回答してくれます。ファイルの生成などの操作はちょっと苦手かなと思いましたが、動作速度自体は快適で、「Zenn と note の市場調査」スキルだけに割り切ればうまく使えそうです。

あとまだ試せてないのですが、CanIRun.ai というサイトで RTX5070Ti 上で動きそうなモデルを調べてもらったところ、以下も使えそうだったので、モデルを切り替えて試していきたいと思います。

ちなみに、このコードを作ってくれた Claude Sonnet 4.6 のパラメータ数は公表はされていませんが、100B は優に超えるという数字を見かけました。Opus にいたっては1兆 = 1000B クラスだそうです。100B としても VRAM としては 1TB 程度必要で、データセンター向けの AI 用 GPU である NVIDIA H100 (VRAM 80GB) を数十枚単位で連結しないと動かないそうです。

9B だ 14B だ、20B まで行けるぞ、なんて、目くそ鼻くそレベルです。そりゃあ個人の PC で動く LLM が「その程度の精度」なのはしょうがないのか、という気もしてきました。

実際、8時間近く Claude にコーディングしてもらった AI エージェントがポンコツな動きをちょくちょく見せる点について、Claude 自身も「やはりパラメータサイズが小さいため、回答精度がイマイチです」と言っていました。ローカル LLM に汎用的な AI エージェントとしての賢さを求めるのは酷ですね。

無料枠で全然行けるぞ Claude!

みんな課金タイプの「Claude Code」の話で盛り上がっていて疎外感を抱いていましたが、無料枠の「Claude on The Web」で使える Claude Sonnet 4.6 でも、1日8時間ぶっ通しでコーディングさせることができ、かなり柔軟に色んな提案・改善をしてくれました。本当に優秀です。

実現方式が分からないことでも、「こういう感じのことがやりたい、どうしたらいい?」と尋ねるところから始められますし、「具体的な指示」は後々になってからでも大丈夫です。「やっぱり全部やり直し!」といった無茶な要望も、AI 相手なら遠慮なく出来ます。

無料枠でもコレだけの機能を完成させることができましたので、かなり有用です。Claude オススメ。