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?

Claude Code の代替に Goose を週末で動かしてみた実装メモ

0
Posted at

金曜の夜に来た一通のメッセージ

先週末、東京のクライアント側 SE と通話していて、ふと聞かれた。「Claude Code、毎月の固定費が稟議で詰まってる。同じような動きする OSS ない?」

正直、その場では即答できなかった。Anthropic 公式の Claude Code は端末で自律的にコード書いてデバッグまで回せる優秀なやつだ。だが月 $20〜$200 の課金体系は、PoC 段階の小さい会社には確かに重い。

翌朝、コーヒー入れながら GitHub を漁って見つけたのが Block(Square・Cash App の親会社)が出している Goose だった。「OSS で同じことができる」と謳っている。本当か?週末の二日間、セルフホストで実機検証した記録を残しておく。

週末の自宅デスクで OSS の AI エージェントを試している様子

前提・環境

  • macOS Sonoma 14.5(M2 Pro)

  • Python 3.11 (uv で管理)

  • LLM プロバイダ: OpenAI gpt-4o-mini と、ローカルの Ollama llama3.1:8b の二系統で比較

  • Goose CLI: 2026-04 時点の stable

なぜ二系統用意したかというと、出発点が「コストを抑えたい」だったからだ。OpenAI API も「無料」ではない。本当にゼロ円で回したいなら、Ollama 経由のローカル推論まで見ないと比較にならない。

インストール

公式の install スクリプトが提供されているので、それに従う。

curl -fsSL https://github.com/block/goose/releases/download/stable/download_cli.sh | bash

インストール後、初期設定を対話で進める。

goose configure

ここで LLM プロバイダ・モデル・API キーを設定する。YOUR_OPENAI_API_KEY を入れるか、Ollama を選ぶかで挙動が変わる。ベンチを取りやすいので、最初は OpenAI 側から触った方がいい。

最初のセッション

セッションを開いて、対話形式でタスクを投げる。

goose session start

試しに、社内の小さい Python リポジトリで「README が古い。コード読んで現状に合わせて書き直して」と命じてみた。

> このリポジトリの README.md を、現在の src/ 配下の構成と CLI コマンドに合わせて書き直してほしい。

Goose は developer という標準 extension(MCP ベース)を持っていて、ファイル読み書き・shell 実行・edit を自律的にやる。実行ログは大体こんな感じだった。

◇ Reading file: src/__init__.py
◇ Reading file: src/cli.py
◇ Listing directory: src/
◇ Editing file: README.md

5 分ほどで書き直された README が手元に残った。差分を見ると、CLI のサブコマンド名が古いまま残っていた行まで拾って直されていた。正直、想像より良く動いた。

ハマりポイント 3 つ

1. 権限モード(auto-approve vs interactive)で痛い目を見た

初期状態だと、ファイル編集や shell 実行のたびに確認プロンプトが出る。これを auto に切り替えると爆速になるが、何も考えず auto で回したら、検証用ブランチで git reset --hard 相当のことを Goose が自分で打ってしまった(プロンプトの解釈ミス)。

不可逆操作を含むタスクでは絶対に interactive で回す。Claude Code に慣れた手で同じ感覚で auto を選ぶと事故る、というのは触ってみるまで気づきにくい。

2. Ollama で動かすと、長い context で挙動が崩れる

ローカル推論は魅力だが、llama3.1:8b 程度だと、ファイル 5〜6 個読み込んだあたりからツールコールの JSON が壊れ始める。70b 級でないと実用にならない、というのが 2 日触った後の正直な感想だ。MacBook で常用するには厳しい。

つまり「無料で Claude Code 相当」というキャッチコピーは、現時点では半分嘘で半分本当だ。OpenAI / Anthropic の API は使うが、月額固定ではなく従量課金に組み替えられる、というのが正確な書き方だと思う。

3. MCP extension を増やすとトークン消費が膨らむ

Goose の強みは MCP サーバを足せることだ。例えば GitHub MCP を入れると、PR レビューまで自律で回せる。

goose configure
# Add Extension > Command-line Extension
# Command: npx -y @modelcontextprotocol/server-github
# Env: GITHUB_PERSONAL_ACCESS_TOKEN=YOUR_TOKEN

ただし、extension を増やすほど、毎セッションの初期トークンが膨らむ。Ollama を諦めて OpenAI に切り替えた場合、ここのコスト管理が結構効いてくる。30 分ハマったので共有しておく。

応用アイデア

  • 製造業の保守ドキュメントを社内リポジトリに置き、社内ナレッジ MCP 経由で Goose に読ませる(クローズド環境で動かせるのが OSS の強み)

  • 物流の配車ログを CSV で吐き、Goose に集計レポート生成を回す週次バッチ

  • 日本語ドキュメント中心の社内 OSS の英訳・整形(Ollama でも回せる軽さの作業)

  • カスタム MCP サーバを Python で書いて、社内 API を Goose の道具にする

まとめ

Claude Code と Goose、両方触った人間の感想として、「同じことができる」かと言われると半分 Yes、半分 No だ。ツール抽象や MCP 連携は Goose も十分に追いついている。違いが出るのはモデルの賢さで、Anthropic 公式の Claude Code は最新の Claude にフィットしてチューニングされている分、Goose を Claude API 経由で動かしても体験は完全には一致しない。

とはいえ、コスト構造を従量制に組み替えられるのは大きい。「まず触ってみたい」段階の組織には、Goose は十分に現実的な選択肢になる。次は社内向けの MCP サーバを Python で書いて、独自ドメインのタスク自動化まで踏み込んでみたい。

筆者は 5years+ で韓国・日本市場向けの AI エージェント・LLM 業務応用の実装を担当している。週末に触ったものを翌週の現場で使えるか検証する、という生活が最近の習慣になりつつある。

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?