上級 12 分エージェント

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 拡張を扱う際の実際の限界を解説します。

著者 Mohamed Meguedmi·更新 2026-09-28·Windows・macOS・Linuxでテスト済み

#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 run qwen2.5
# dans un second terminal
goose configure

ネットワーク上の別のマシンで動作するOllamaを使用する場合、設定を開始する前にOLLAMA_HOST=http://{hôte}:{port}を明示的に設定する必要があります。ローカルではなくollama.comでホストされているモデルを使用する場合、選択するプロバイダーはOllama Cloudであり、Ollamaではありません。

i
初心者向けに推奨されるモデル
公式ドキュメントでは、Gooseを設定する前に起動するモデルの例としてqwen2.5を挙げています。その際、ツール呼び出し(tool-calling)に対応していると明示されているモデルを使う必要があり、汎用チャットモデルなら何でもよいわけではないと強調しています。

#4096トークンのコンテキストの落とし穴

Ollamaのコンテキストウィンドウのデフォルト値は4096トークンで、明示的なエラーを返す代わりに、通知せずに内容を切り詰めます。プロジェクトの指示(.goosehints)、会話履歴、拡張機能の定義を読み込むGooseのようなエージェントでは、この上限にすぐに達してしまいます。

!
典型的な症状
Gooseが.goosehintsファイルを無視したり、拡張機能を有効にすると話の流れを見失うように見えたりする場合、公式ドキュメントでは、まずこのデフォルトのコンテキスト長が短すぎることを原因として挙げています。ほかの原因を探す前に、環境変数OLLAMA_CONTEXT_LENGTHでコンテキスト長を増やしてください。
拡張コンテキスト
export OLLAMA_CONTEXT_LENGTH=32768

#ツールシム:ツール呼び出しの修正

一部のモデルはツール呼び出しをネイティブにサポートしていないか、セッションの途中で構造化された呼び出しではなくプレーンテキストを出力するようになることがあります。Gooseのtool shimは、こうしたテキスト形式を検出し、実行可能なツール呼び出しに変換します。この機能は、プロジェクト側で実験的なものと位置づけられています。

tool shimを有効にする
export GOOSE_TOOLSHIM=true
ollama pull mistral-nemo

tool shimは、メインの会話モデルとは別の解釈用モデルを使います。デフォルトではOllama経由でmistral-nemoを使用し、GOOSE_TOOLSHIM_OLLAMA_MODELで変更できます。ドキュメントでは、ネイティブなツール呼び出しに対応していないローカルモデル(Ollama、llama.cpp)を主な用途として明記しています。また、推論タグ(「think」)とツール呼び出しを混在させるモデルも対象として挙げています。この混在は、パース失敗のよくある原因です。

別のモードでは、独立した Ollama インスタンスの代わりに、Goose 内蔵のローカル推論バックエンドを使用します。GOOSE_TOOLSHIM_BACKEND=local を設定し、必須のモデル名を GOOSE_TOOLSHIM_MODEL に指定します。これらを指定しないと、起動に失敗します。

#許可モード:デフォルトで自律モード

Goose は 4 つの権限モードを提供します。完全自律モード(確認なしでファイルを修正・削除)、手動承認モード(各ツールごとに確認を要求)、スマート承認モード(低リスクのアクションを自動的に承認)、会話専用モード(変更なし、ツールなし)。

!
自律モードはインストール時に自動的に有効になります。
公式ドキュメントには、自律モード(Autonomous Mode)がデフォルトで適用されることが明記されています。Gooseがファイルの削除やコマンドの実行を行える拡張機能にアクセスできる端末では、最初のセッションを始める前にモードを明示的に変更することは、省略してはいけない予防措置です。

モードはセッション中も含め、いつでも変更できます。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から再起動のたびに読み直します。これは企業での導入を想定した仕組みです。管理者は、各ユーザーや自律モードで動作するモデルの判断に任せるのではなく、インストールできる拡張機能を事前に承認したリストに限定できます。

  1. 01
    Goose 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.
  2. 02
    Ollamaモデルを準備する
    Goose を設定する前に、Ollama がポート 11434 で動作していることを確認し、ツール呼び出し(tool-calling)への対応が明示されているモデルを起動する。
  3. 03
    goose configure を実行する
    プロバイダーとしてOllamaを選択し、デフォルトで提示されるホスト(localhost:11434)を確定して、読み込まれているモデルの正確な名前を入力する。
  4. 04
    必要に応じてコンテキスト長を増やす
    エージェントが拡張機能や.goosehintsファイルを無視する場合は、セッションを再開する前にOLLAMA_CONTEXT_LENGTHを4096より大きい値に設定する。
  5. 05
    権限モードを確認する
    デフォルトの自律モードを使いたくない場合は、機密性の高い拡張機能を使う最初のセッションの前に、手動承認モードまたはスマート承認モードへ明示的に切り替える。

#利用可能なメモリに応じてどのモデルを選択するか

公式ドキュメントは、しばしば軽視される点について断言しています。Gooseはツール呼び出しに大きく依存しており、ツール呼び出しに対応していないモデルでは簡単な会話しかできません。その場合は、Gooseの拡張機能をすべて無効にする必要があります。したがって、モデル選びは単に回答品質の問題ではありません。MCP拡張機能がそもそも動くかどうかを決める条件です。

メモリ使用量の目安(Q4、重みのみ)とGooseで現実的に可能な用途
モデルサイズ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を他のユーザーに開放したり、機密性に関わる拡張機能と連携させたりする前のチェックリスト
確認項目確認すべき設定
許可モード確認なしでファイルが削除されることを望まない場合は、完全自律モードから手動承認またはインテリジェント承認に切り替える
インストール可能な拡張機能GOOSE_ALLOWLISTを、許可する識別子とコマンドを制限するホスト済みのYAMLファイルを指すように設定する
モデルの実際の能力拡張機能を接続する前に、ollama.comでtoolsタグを確認する。使用するモデルが非対応の場合は、すべての拡張機能を無効にする必要がある。
十分なコンテキストセキュリティ指示そのもの(.goosehints)が通知なく切り詰められるのを防ぐため、OLLAMA_CONTEXT_LENGTHを4096より大きい値に引き上げる
!
許可リストはモード選択の代わりにはなりません
適切に設定されたallowlistは、インストールできる拡張機能を制限しますが、自律モードのエージェントが許可済みの拡張機能を確認なしで使うことは防げません。この2つの設定は互いを補完するものであり、どちらか一方で他方を代替することはできません。

#Gooseにおけるローカルモデルの制限

小型のローカルモデルで最初に問題が生じる箇所
症状文献で示されている可能性の高い原因
拡張機能が無視され、.goosehintsの指示に従わないデフォルトのコンテキスト長4096トークンでは短すぎるため、OLLAMA_CONTEXT_LENGTHの値を引き上げる。
セッションの途中でツール呼び出しが止まるモデルがテキスト出力に切り替わる:GOOSE_TOOLSHIM を有効にする
tool shimのインタープリターが遅いツール呼び出しを解釈するモデルが重すぎる場合:GOOSE_TOOLSHIM_OLLAMA_MODELで、より小さいモデルに切り替える
推論がツール呼び出しに混ざる不要な「think」タグ:tool shimを有効にすると、自動的に除去されます

公式ドキュメントによると、標準のDeepSeek-R1はツール呼び出しに対応しておらず、代替としてGoose向けに調整されたコミュニティ版が紹介されています。これは、会話能力が高いと評判のモデルと、実際にツールを操作する能力との間にある隔たりを示す具体例です。

推論能力と実行の信頼性との隔たりは、Gooseをローカルにインストールする前に押さえておくべき構造的な限界です。自由回答形式の質問にうまく答えられるモデルでも、形式エラーを起こさずにツール呼び出しを連続して実行できるとは限りません。エージェントに複数段階のタスクを任せる前に、まずファイルを読む、無害なコマンドを実行するといった、単純で検証可能なタスクを試すことが、不向きなモデルを見つける最も手早い方法です。

よくある質問
GooseはBlockによって依然として開発されていますか?+
このプロジェクトを立ち上げたのはBlockですが、Gooseは現在、Linux FoundationがホストするAgentic AI Foundationの一員です。GitHubリポジトリの所属組織も変わり、block/gooseからaaif-goose/gooseへ移っています。Blockは引き続きプロジェクトに関わっていますが、Goose上にチームのワークフローを構築する前に、このガバナンスの変更を把握しておく必要があります。
OllamaでGooseが私の拡張機能や.goosehintsファイルを無視する理由は?+
最もよくある原因は、Ollamaのデフォルトのコンテキスト長が4096トークンに制限されており、明示的なエラーを返す代わりに、通知なくコンテキストが切り詰められることです。公式ドキュメントでは、他の原因を探す前に、環境変数OLLAMA_CONTEXT_LENGTHで上限を例えば32768に引き上げることを推奨しています。
ローカルモデルがGooseでツールを呼び出さない場合、どうすればよいですか?+
GOOSE_TOOLSHIM=trueでtool shimを有効にする。この実験的な機能は、ツール呼び出しをネイティブにサポートしないモデルがプレーンテキストで記述したツール呼び出しを検出し、別の解釈用モデルを介して実行可能なツール呼び出しに変換します。解釈用モデルはデフォルトではmistral-nemoで、GOOSE_TOOLSHIM_OLLAMA_MODELで変更できます。モデルがツール呼び出しに推論タグを混在させた場合も、tool shimを有効にすると、それらのタグを自動的に除去します。
Gooseは確認を求めずファイルを削除できますか?+
はい、デフォルトのモードでは可能です。公式ドキュメントによると、インストール直後から有効な完全自律モードでは、Gooseが承認なしでファイルを変更・削除できます。手動承認モードまたはスマート承認モードに切り替えると、この動作が変わります。注意が必要な拡張機能を使う最初のセッションの前に、モードを切り替えてください。
Gooseをローカルで実行するには、高性能GPUが必要ですか?+
Goose自体はRustで書かれた軽量クライアントで、負荷の大部分は、Ollamaまたは別のローカルプロバイダー経由で選択したモデルに依存します。tool shimのインタープリターモデルは、会話モデルとは別に追加の推論負荷を発生させます。応答が遅くなる場合は、このインタープリターモデルをより小さいものにしてください。
ツール呼び出し機能を持たないローカルモデルは、Gooseと併用可能でしょうか?+
はい、ただし会話に限られます。公式ドキュメントでは、Gooseはツール呼び出しに大きく依存しており、これに対応していないモデルでは単純な会話しかできず、その場合はすべての拡張機能を無効にする必要があると明記されています。モデルを読み込む前にollama.comでtoolsタグを確認すれば、この制限を避けられます。
Goose がインストールできる MCP 拡張をどのように制限できますか?+
許可する拡張機能の識別子とコマンドを列挙した、ホストされているYAMLファイルを指すように変数 GOOSE_ALLOWLIST を設定する。Gooseは再起動のたびにそのファイルを読み直します。これは企業での導入を想定した対策であり、単独で使うのではなく、自律実行を許可しない権限モードと組み合わせて使うものです。

このガイドは役に立ちましたか?

ご意見、誤りのご指摘、補足はありますか?ぜひお知らせください。皆さんにとってより良いガイドにするために役立ちます。