Goose(Block):ローカルAIエージェント、お使いの terminal
はい:goose configureを実行し、Ollamaを選択し、http://localhost:11434はデフォルトのままにし、tool-calling対応のOllamaモデルを指定します。ローカルでは2つの設定が重要です。デフォルトの4096トークンを超えてOLLAMA_CONTEXT_LENGTHを引き上げること、そしてモデルがツールを呼び出す代わりにテキストで説明する場合にtool shim(GOOSE_TOOLSHIM=true)を有効にすることです。GooseはもはやBlock単独ではなく、Agentic AI Foundationのプロジェクトです。
Goose は、コマンドラインとデスクトップアプリで利用できる AI エージェントです。当初は Block が公開し、その後 Agentic AI Foundation に移管されました。このガイドでは、ローカルの Ollama と連携させるための Goose の設定、一部のモデルでネイティブなツール呼び出し機能がないことを補う tool shim、権限モード(デフォルトは自律モード)、そして小型ローカルモデルが Goose の MCP 拡張を扱う際の実際の限界を解説します。
#Goose が現在どのようなものか
Gooseは、コードやワークフロー、さらに幅広い用途に向けたオープンソースのネイティブAIエージェントを掲げています。Rustで書かれており、デスクトップアプリ、CLI、APIを提供します。リポジトリ(現在はaaif-goose/goose)のスター数は2026年9月28日時点で約55,000で、バージョンv1.52.0は2026年9月23日に公開されました。
以前の紹介記事などを読んだ方は、認識を更新してください。GooseはもはやBlock単独のプロジェクトではなく、現在はLinux Foundationの傘下にあるAgentic AI Foundation(AAIF)の一員です。プロジェクトの発祥がBlockであることは変わりませんが、ガバナンスは変わりました。Gooseを基盤にワークフローを構築する前に、プロジェクトの継続性を評価するうえで、この点は重要です。
GooseはAnthropic、OpenAI、Google、Ollama、OpenRouter、Azure、Bedrockなど、15を超えるモデルプロバイダーで動作し、オープンなプロトコルであるMCP(Model Context Protocol)を通じて70を超える拡張機能に接続できます。
Ramalamaに接続する方法もあります。Ramalamaは、Ollama独自の形式ではなく、OCIアーティファクト形式でモデルを提供するローカルエンジンです。APIに互換性があるため、Gooseは専用のコードなしで、Ollamaプロバイダー経由でRamalamaを直接利用できます。Ollamaではなく、PodmanやDockerなどの標準的なコンテナ化ツールを中心にすでに構築されたインフラで役立つ選択肢です。
#Ollamaを接続する
あなたのマシンで動作するエージェント:エージェント型 Cline、MCP、n8n + Ollama、ローカル自動化。
- 永久に利用できるオンラインスペース
- PDF + ファイル
- 生涯アップデート
設定には対話式の設定ウィザードgoose configureを使います。まずプロバイダー、次にホストの入力を求められます。Ollamaの場合、ホストを指定しなければ、Gooseはデフォルトでlocalhost:11434を使用します。スキームを指定しなければ、接頭辞http://が自動的に追加されます。
ネットワーク上の別のマシンで動作するOllamaを使用する場合、設定を開始する前にOLLAMA_HOST=http://{hôte}:{port}を明示的に設定する必要があります。ローカルではなくollama.comでホストされているモデルを使用する場合、選択するプロバイダーはOllama Cloudであり、Ollamaではありません。
#4096トークンのコンテキストの落とし穴
Ollamaのコンテキストウィンドウのデフォルト値は4096トークンで、明示的なエラーを返す代わりに、通知せずに内容を切り詰めます。プロジェクトの指示(.goosehints)、会話履歴、拡張機能の定義を読み込むGooseのようなエージェントでは、この上限にすぐに達してしまいます。
#ツールシム:ツール呼び出しの修正
一部のモデルはツール呼び出しをネイティブにサポートしていないか、セッションの途中で構造化された呼び出しではなくプレーンテキストを出力するようになることがあります。Gooseのtool shimは、こうしたテキスト形式を検出し、実行可能なツール呼び出しに変換します。この機能は、プロジェクト側で実験的なものと位置づけられています。
tool shimは、メインの会話モデルとは別の解釈用モデルを使います。デフォルトではOllama経由でmistral-nemoを使用し、GOOSE_TOOLSHIM_OLLAMA_MODELで変更できます。ドキュメントでは、ネイティブなツール呼び出しに対応していないローカルモデル(Ollama、llama.cpp)を主な用途として明記しています。また、推論タグ(「think」)とツール呼び出しを混在させるモデルも対象として挙げています。この混在は、パース失敗のよくある原因です。
別のモードでは、独立した Ollama インスタンスの代わりに、Goose 内蔵のローカル推論バックエンドを使用します。GOOSE_TOOLSHIM_BACKEND=local を設定し、必須のモデル名を GOOSE_TOOLSHIM_MODEL に指定します。これらを指定しないと、起動に失敗します。
#許可モード:デフォルトで自律モード
Goose は 4 つの権限モードを提供します。完全自律モード(確認なしでファイルを修正・削除)、手動承認モード(各ツールごとに確認を要求)、スマート承認モード(低リスクのアクションを自動的に承認)、会話専用モード(変更なし、ツールなし)。
モードはセッション中も含め、いつでも変更できます。CLI で /mode auto、/mode smart_approve、/mode approve または /mode chat を実行するか、デスクトップアプリの下部メニューから変更します。
#MCP拡張と許可リスト
GooseはMCPプロトコルを介して拡張機能に接続し、デフォルトでは要求された任意のMCPサーバーをインストールします。業務環境向けに、このプロジェクトでは許可リスト(allowlist)を用意しています。これはURL上にホストされ、変数GOOSE_ALLOWLISTで参照されるYAMLファイルで、インストール可能な拡張機能を、識別子とコマンドを明示的に列挙したリストに限定します。
この許可リストがなければ、ユーザー(または自律モードのモデル)が要求した際に、エージェントが未検証のサードパーティ製MCPサーバーをインストールすることを技術的に阻止するものはありません。上記の権限モードの選択と併せて考慮すべき点です。
許可リストは、許可された識別子とコマンドの組を列挙したシンプルなYAMLファイルとして配置します。このファイルをURLで公開し、Gooseは変数GOOSE_ALLOWLISTで指定されたURLから再起動のたびに読み直します。これは企業での導入を想定した仕組みです。管理者は、各ユーザーや自律モードで動作するモデルの判断に任せるのではなく、インストールできる拡張機能を事前に承認したリストに限定できます。
- 01Goose CLIをインストールするcurl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bash, ou télécharger l'application de bureau depuis la documentation officielle.
- 02Ollamaモデルを準備するGoose を設定する前に、Ollama がポート 11434 で動作していることを確認し、ツール呼び出し(tool-calling)への対応が明示されているモデルを起動する。
- 03goose configure を実行するプロバイダーとしてOllamaを選択し、デフォルトで提示されるホスト(localhost:11434)を確定して、読み込まれているモデルの正確な名前を入力する。
- 04必要に応じてコンテキスト長を増やすエージェントが拡張機能や.goosehintsファイルを無視する場合は、セッションを再開する前にOLLAMA_CONTEXT_LENGTHを4096より大きい値に設定する。
- 05権限モードを確認するデフォルトの自律モードを使いたくない場合は、機密性の高い拡張機能を使う最初のセッションの前に、手動承認モードまたはスマート承認モードへ明示的に切り替える。
#利用可能なメモリに応じてどのモデルを選択するか
公式ドキュメントは、しばしば軽視される点について断言しています。Gooseはツール呼び出しに大きく依存しており、ツール呼び出しに対応していないモデルでは簡単な会話しかできません。その場合は、Gooseの拡張機能をすべて無効にする必要があります。したがって、モデル選びは単に回答品質の問題ではありません。MCP拡張機能がそもそも動くかどうかを決める条件です。
| モデルサイズ | VRAMの概算値 | 拡張機能を使った現実的な用途 |
|---|---|---|
| 7-8B | ≈ 5 GB | 複数のツールを連携させるタスクにおいてツール呼び出しの安定性が低いです。モデルの失敗と結論づける前に、GOOSE_TOOLSHIMを使用してテストしてください |
| 14B | ≈ 9 GB | 開発用マシンでの一般的な用途。モデルを読み込む前に、ollama.comでtoolsタグを確認する。 |
| 32B | ≈19-20 GB | 長いツール呼び出しの連続でも信頼性が高い一方、一般向けGPUでは生成に時間がかかります。 |
| 70B | 約 40 GB | 大量のVRAMまたはユニファイドメモリを備えたマシン(Mac Studio、マルチGPUワークステーション)向けです。日常的なローカル利用に適していることはまれです。 |
これらの目安があっても、モデルの紹介ページでtoolsタグを確認する必要があります。ツール呼び出し対応と明記されていないバリアントは、サイズにかかわらず拡張機能で失敗します。これは、上で引用した公式ドキュメントに記載されているとおりです。
#共有デプロイメント前のセキュリティチェックリスト
このガイド内で個別に説明されている3つの設定は、共有ワークステーションやチームサーバーでのデフォルトインストールよりも安全なGooseのデプロイメントの基盤を形成します。
| 確認項目 | 確認すべき設定 |
|---|---|
| 許可モード | 確認なしでファイルが削除されることを望まない場合は、完全自律モードから手動承認またはインテリジェント承認に切り替える |
| インストール可能な拡張機能 | GOOSE_ALLOWLISTを、許可する識別子とコマンドを制限するホスト済みのYAMLファイルを指すように設定する |
| モデルの実際の能力 | 拡張機能を接続する前に、ollama.comでtoolsタグを確認する。使用するモデルが非対応の場合は、すべての拡張機能を無効にする必要がある。 |
| 十分なコンテキスト | セキュリティ指示そのもの(.goosehints)が通知なく切り詰められるのを防ぐため、OLLAMA_CONTEXT_LENGTHを4096より大きい値に引き上げる |
#Gooseにおけるローカルモデルの制限
| 症状 | 文献で示されている可能性の高い原因 |
|---|---|
| 拡張機能が無視され、.goosehintsの指示に従わない | デフォルトのコンテキスト長4096トークンでは短すぎるため、OLLAMA_CONTEXT_LENGTHの値を引き上げる。 |
| セッションの途中でツール呼び出しが止まる | モデルがテキスト出力に切り替わる:GOOSE_TOOLSHIM を有効にする |
| tool shimのインタープリターが遅い | ツール呼び出しを解釈するモデルが重すぎる場合:GOOSE_TOOLSHIM_OLLAMA_MODELで、より小さいモデルに切り替える |
| 推論がツール呼び出しに混ざる | 不要な「think」タグ:tool shimを有効にすると、自動的に除去されます |
公式ドキュメントによると、標準のDeepSeek-R1はツール呼び出しに対応しておらず、代替としてGoose向けに調整されたコミュニティ版が紹介されています。これは、会話能力が高いと評判のモデルと、実際にツールを操作する能力との間にある隔たりを示す具体例です。
推論能力と実行の信頼性との隔たりは、Gooseをローカルにインストールする前に押さえておくべき構造的な限界です。自由回答形式の質問にうまく答えられるモデルでも、形式エラーを起こさずにツール呼び出しを連続して実行できるとは限りません。エージェントに複数段階のタスクを任せる前に、まずファイルを読む、無害なコマンドを実行するといった、単純で検証可能なタスクを試すことが、不向きなモデルを見つける最も手早い方法です。
- OpenCode + Ollama:ターミナル内のコードエージェント
- Cline + Ollama:VS Code内で動作する100%ローカルのコーディングエージェント
- MCPとは?Model Context Protocolを解説
- Ollamaでのツール呼び出し:チュートリアル
- 出典:Gooseリポジトリの公式README
- 出典:各提供元の公式ドキュメント
- 出典:ツールシムの公式ドキュメント
GooseはBlockによって依然として開発されていますか?+
OllamaでGooseが私の拡張機能や.goosehintsファイルを無視する理由は?+
ローカルモデルがGooseでツールを呼び出さない場合、どうすればよいですか?+
Gooseは確認を求めずファイルを削除できますか?+
Gooseをローカルで実行するには、高性能GPUが必要ですか?+
ツール呼び出し機能を持たないローカルモデルは、Gooseと併用可能でしょうか?+
Goose がインストールできる MCP 拡張をどのように制限できますか?+
ご意見、誤りのご指摘、補足はありますか?ぜひお知らせください。皆さんにとってより良いガイドにするために役立ちます。