# goose で QCode を使う

> **最終確認**：2026-10-13 · 📄 公式ドキュメント準拠（goose v1.54.0）

## ひと目でわかる

| 項目 | 内容 |
|---|---|
| 使えるモデル | Claude ✅（`Anthropic` provider）· GPT ✅ と中国系モデル ✅（OpenAI 互換側）· Gemini ❌：QCode は Gemini 系列を提供していません。Claude、GPT、または中国系モデルをご利用ください |
| プロトコルと Base URL | Anthropic Messages：`https://api.qcode.cc/api` · OpenAI Chat Completions：`https://api.qcode.cc/openai/v1` |
| 設定場所 | ターミナルの `goose configure`／goose Desktop → Settings → Models／環境変数（`ANTHROPIC_HOST`、`OPENAI_HOST`、`OPENAI_BASE_PATH`、`GOOSE_PROVIDER__HOST`） |
| 公式ドキュメント | [goose-docs.ai — Configure LLM Provider](https://goose-docs.ai/docs/getting-started/providers) |

goose は自身を "your native open source AI agent — desktop app, CLI, and API" と紹介しています。現在は Agentic AI Foundation のプロジェクトで、ドキュメントは `goose-docs.ai` に移りました（以前の `block.github.io/goose` はリダイレクトのみ）。リポジトリは `aaif-goose/goose` ですが、Homebrew の formula 名は依然 `block-goose-cli` です。このページが対応するのは 2026-10-08 公開の安定版 `v1.54.0` です。

## プロトコルの選び方

| 使いたいモデル | goose の provider / API 種類 | 入力するアドレス |
|---|---|---|
| Claude | 内蔵の `Anthropic` provider（`ANTHROPIC_HOST`）、または API 種類を `Anthropic Compatible` にしたカスタム provider | `https://api.qcode.cc/api` |
| GPT と中国系モデル | 内蔵の `OpenAI` provider（`OPENAI_HOST` + `OPENAI_BASE_PATH`）、または API 種類を `OpenAI Compatible` にしたカスタム provider | `https://api.qcode.cc/openai/v1`（リクエストパスは `/openai/v1/chat/completions`） |

**OpenAI 互換エンドポイントで Claude を呼び出さないでください。** QCode が `claude-*` を受け付けるのは Anthropic Messages 側だけで、OpenAI 側は拒否します（`model_not_available_on_endpoint`）。provider は 1 つにまとめず 2 つ作り、セッションごとに `goose run --provider … --model …` で選んでください。詳細は [エンドポイントと API 形式](/docs/getting-started/endpoints-and-api-paths)。

**この欄の名前は base_url ではなく HOST です。** goose が尋ねるのは `ANTHROPIC_HOST`、`OPENAI_HOST`、`GOOSE_PROVIDER__HOST` です。ホストとパスの前置き部分だけを入力し、`/v1/messages` は書かないでください。OpenAI 側のリクエストパスは別の公式フィールドで、公式の表は `OPENAI_BASE_PATH` を "Request path appended to the host (defaults to v1/chat/completions)" と説明しています。`ANTHROPIC_HOST` がメッセージパスとどう結合されるかは公式ドキュメントに明記されていないため、このページでは QCode 側の値を示すにとどめ、実測結果は一切うたっていません。

## インストール

CLI は Homebrew か公式スクリプトで入れます。

```bash
brew install block-goose-cli

# または
curl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bash

goose update
goose --version
```

Desktop 版：macOS は Homebrew かダウンロードボタン、Linux には公式に .deb / .rpm / Flatpak パッケージがあります：

```bash
brew install --cask block-goose
```

## Claude の設定（Anthropic provider）

対話型は公式のプロンプトどおりに進めます。

```bash
goose configure
# Configure Providers (Change provider or update credentials)  -> Anthropic を選択
# Provider Anthropic requires ANTHROPIC_API_KEY, please enter a value  -> QCode のキー
# Enter your desired ANTHROPIC_HOST or press Enter to use the default.  -> https://api.qcode.cc/api
```

ウィザードを使わない場合は、公式の環境変数ページでカスタムエンドポイントの項にまとめられている変数で同じことができます。

```bash
export GOOSE_PROVIDER="anthropic"
export GOOSE_MODEL="claude-sonnet-5"
export GOOSE_PROVIDER__TYPE="anthropic"
export GOOSE_PROVIDER__HOST="https://api.qcode.cc/api"
export GOOSE_PROVIDER__API_KEY="cr_your_qcode_key"
```

`config.yaml`（macOS/Linux では `~/.config/goose/config.yaml`）では、provider の設定は `active_provider` と `providers` のキーに入ります。

```yaml
active_provider: anthropic
providers:
  anthropic:
    enabled: true
    model: claude-sonnet-5
    configured: true
```

- キーはこのファイルに書かないでください。公式の原文は "Provider API keys do not go in config.yaml" です。keyring（`goose configure` から保存）、`secrets.yaml`、または provider の環境変数で扱ってください。
- 地域ノード：host を `https://asia.qcode.cc/api` または `https://us.qcode.cc/api` に置き換えると、同じキーのまま使えます。
- QCode で使える Claude モデル：`claude-sonnet-5`、`claude-sonnet-5-5`、`claude-opus-5`、`claude-opus-5-5`、`claude-haiku-5-5`、`claude-haiku-4-5-20251001`、`claude-sonnet-4-6`、`claude-fable-5`、`claude-fable-5-1`。課金はトークン単位で、モデル別の料金は https://qcode.cc/models に掲載されています

## GPT・中国系モデルの設定（OpenAI 互換）

公式説明では、内蔵の OpenAI provider は "can connect to OpenAI's official API (api.openai.com) or any OpenAI-compatible endpoint" で、こうしたゲートウェイ向けの書き方は "set OPENAI_HOST to your proxy's root (no trailing path) and OPENAI_BASE_PATH to the path it serves (usually v1/chat/completions)" です。

```bash
export OPENAI_API_KEY="cr_your_qcode_key"
export OPENAI_HOST="https://api.qcode.cc"
export OPENAI_BASE_PATH="openai/v1/chat/completions"
export GOOSE_PROVIDER="openai"
export GOOSE_MODEL="gpt-6.1-sol"
```

別の書き方として、公式の既定パスのまま残し、前置き部分を host に移す方法もあります（`export OPENAI_HOST="https://api.qcode.cc/openai"`、`OPENAI_BASE_PATH` は既定の `v1/chat/completions`）。どちらでも、最終的なリクエスト先は公式に示されたエンドポイント `/openai/v1/chat/completions` です。

### 名前付きカスタム provider として

`goose configure` を実行し、**Custom Providers** → **Add A Custom Provider**（メニューの原文は "Add a new OpenAI/Anthropic/Ollama compatible Provider"）を選びます。

| プロンプト | 入力内容 |
|---|---|
| API Type | `OpenAI Compatible (most common)` |
| Name | 任意の名前（例：`qcode`） |
| API URL | `https://api.qcode.cc/openai/v1/chat/completions` — 公式はこの手順を "The base URL of the API endpoint" と書き、同じフィールドの JSON 例ではリクエストパスまで含む形で示されています |
| Authentication Required | Yes を選び、静的な API key を入力 |
| Available Models | カンマ区切りのモデル名一覧（例：`gpt-6.1-sol,gpt-5.6-terra,gpt-5.5,deepseek-v4.1-flash,glm-5.3,kimi-k3`） |
| Streaming Support | オン |

キーは、この provider 用に割り当てた環境変数から読み込まれます。公式の原文 "Then use the api_key_env to set the key for your session" にそった例は次のとおりです。

```bash
export CUSTOM_CORP_API_API_KEY="your-api-key"
goose session start --provider custom_corp_api
```

`custom_corp_api` と `CUSTOM_CORP_API_API_KEY` は、自分でつけた名前に置き換えてください。JSON ファイルを手書きする場合の置き場所は `macOS/Linux: ~/.config/goose/custom_providers/` です。2 点ご注意ください：公式は "Custom providers must use OpenAI, Anthropic, or Ollama compatible API formats." と明記しており、公式例の `engine` には `"engine": "openai"` しか現れません。Anthropic 側の値は公式に記載がないため、Anthropic 互換のカスタム provider は `goose configure` で作らせ、この行は goose 自身に書かせてください。

QCode の中国系モデル ID：`deepseek-v4.1-flash`、`deepseek-v4-flash`、`deepseek-v4-pro`、`glm-5.3`、`glm-5.2`、`qwen3.8-max`、`qwen3.8-flash`、`qwen3.7-plus`、`kimi-k3`。詳しくは [中国系モデル](/docs/usage/cn-models)。

## 動作確認

```bash
goose info
goose run --provider anthropic --model claude-sonnet-5 -t "ping"
```

`goose info` について公式は "Shows goose information, including the version, configuration file location, session storage, and logs." と説明しています。`goose run` の `--provider` と `--model` は、それぞれ "Specify the provider to use for this session (overrides environment variable)" と "Specify the model to use for this session (overrides environment variable)" です。

goose を触る前に、エンドポイント側を確かめてください。

```bash
KEY="cr_your_qcode_key"
curl -X POST https://api.qcode.cc/api/v1/messages \
  -H "x-api-key: $KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-5","max_tokens":32,"messages":[{"role":"user","content":"ping"}]}'
```

レスポンスの JSON に `content` があればエンドポイント側は正常で、残る問題は goose の設定にあります。このページは公式ドキュメントのみに基づいています。検証用キーがないため、ページ内のどのリクエストも QCode で実測していません。

## 既知の制限

| 症状または制限 | 公式の説明と対処 |
|---|---|
| `goose configure` のモデル一覧に使いたい ID がない | 公式原文："goose configure doesn't support entering custom model names. To use a model not in the provider's list, use goose Desktop or edit the GOOSE_MODEL variable in your config.yaml directly." Desktop のピッカーでは "choose Use custom model to enter a specific model name" が使えます。 |
| OpenAI 側で 404 | 公式原文："A 404 usually means OPENAI_BASE_PATH is wrong for your proxy." QCode の chat completions は `/openai/v1/chat/completions` にあります。 |
| `No api key passed in` | 公式原文："goose does not read provider API keys from config.yaml. A key placed there is ignored, which typically surfaces as an authentication failure such as No api key passed in." `goose configure` でキーを入れ直してください。 |
| コンテナやデスクトップなし環境で keyring のエラー | 公式原文：goose は "tries to use the system keyring (keychain on macOS) to store secrets by default" で、keyring が使えない場合は "please try setting secret key(s) via environment variables"、または `GOOSE_DISABLE_KEYRING=1 goose configure` を実行します。 |
| 追加のリクエストヘッダー | 公式原文："Currently, custom headers can only be defined for OpenAI compatible providers in the CLI. For Anthropic or Ollama compatible providers, edit the provider configuration file after creation." |
| QCode で使えないモデル ID | QCode は Gemini 系列を提供していません。gpt-6-luna / gpt-5.6-luna も提供していません。他の GPT モデル（gpt-6.1-sol / gpt-6-sol / gpt-5.6-terra）か Claude・中国系モデルを使ってください。Haiku 4.5 は正式な ID `claude-haiku-4-5-20251001` を書いてください。 |
| 429 | 公式原文："goose may encounter a 429 error (rate limit exceeded) when interacting with LLM providers." モデル一覧は [モデルの選び方](/docs/usage/model-selection)、サイト側の確認手順は [トラブルシューティング](/docs/reference/troubleshooting) を参照してください。 |

料金の記述は一文だけ：トークン単位の課金で、モデル別の料金は https://qcode.cc/models に掲載されています

## 関連ドキュメント

- [エンドポイントと API 形式](/docs/getting-started/endpoints-and-api-paths)：プロトコル × モデル系列
- [ツール互換性](/docs/ide/tool-compatibility)：どのツールがどのプロトコルか
- [OpenCode の設定](/docs/ide/opencode)：同じ 2 系統を使う別のターミナルエージェント
- [Crush の設定](/docs/ide/crush)：同じ provider 構成で、JSON ファイルを使う
- [Aider の設定](/docs/ide/aider)：両系統ともモデル名で選び分ける
- [モデル選択ガイド](/docs/usage/model-selection)
- [中国系モデル](/docs/usage/cn-models)