1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ローカル LLM を自律エージェントにした — Claude Code から呼べる ReAct MCP サーバー

1
Posted at

ローカルの Ollama モデルに「ファイルを読んで」「コマンドを実行して」と頼んだら、自分で考えて動いてくれる。そんな仕組みを作りました。

何ができるようになったか

helix-agent v0.4.0 で、ローカル LLM が 自律的にツールを使いながら推論する ReAct エージェント になりました。

タスク: 「pyproject.toml を読んで、プロジェクトの概要を教えて」

Step 1: 「ファイルを読む必要がある」 → read_file 実行
Step 2: ファイル内容を分析 → 「v0.4.0, 依存: fastmcp + httpx」と回答
2ステップで完了

LLM が自分で「何をすべきか」を考え、ツールを呼び出し、結果を見て次の行動を決めます。

従来との違い

従来: ユーザー → Claude Code → helix-agent → LLM「回答」→ 終わり
今回: ユーザー → Claude Code → helix-agent → LLM → ツール → 観察 → 再推論 → 回答

考えて、動いて、結果を見て、また考える。これがエージェントです。

使えるツール(7種類)

ツール できること
read_file ファイルを読む
write_file ファイルに書き込む
list_files ディレクトリ内のファイル一覧
search_in_file ファイル内を正規表現で検索
run_command シェルコマンド実行(git, python, uv, ollama のみ)
calculate 数式を計算
search_memory Qdrant で過去の知識を検索

セキュリティ: PathGuard

エージェントにファイル操作を任せても安全です。

  1. ディレクトリ許可リスト — 指定フォルダ以外アクセス不可
  2. 機密ファイルブロック — .env、credentials、SSH 鍵は自動ブロック
  3. パストラバーサル防止 — ../../ 攻撃を検知・遮断
  4. コマンド制限 — git, python, uv, ollama 以外は実行不可

なぜネイティブ Function Calling ではなく ReAct か

Ollama のネイティブ tools API は Llama 3.1 など一部モデルのみ対応。Qwen3.5 ではバグも報告されています。

helix-agent は プロンプトベースの ReAct + JSON 出力 を採用。全 Ollama モデルで同じように動きます。

セットアップ(2分)

# 1. Ollama でモデルを用意
ollama pull gemma3

# 2. クローンとインストール
git clone https://github.com/tsunamayo7/helix-agent.git
cd helix-agent && uv sync

~/.claude/settings.json に追加:

{
  "mcpServers": {
    "helix-agent": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/helix-agent", "python", "server.py"]
    }
  }
}

Claude Code を再起動すれば使えます。144 テスト通過、MIT ライセンス。

GitHub: https://github.com/tsunamayo7/helix-agent

1
1
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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?