OpenCode の設定

はじめに / OpenCode の設定

OpenCode の設定

OpenCode はオープンソースのターミナル向けコーディングエージェントです。OpenAI 互換のエンドポイントであればどれとでも通信できるため、必要なのは CodeByAI の API キーだけです。このサイトをカスタムプロバイダーとして宣言し、そのモデルを 1 つ選ぶだけで利用できます。

1. OpenCode のインストール

macOS または Linux:

1
curl -fsSL https://opencode.ai/install | bash

npm を使用する場合:

1
npm install -g opencode-ai

Windows では WSL を推奨します。ネイティブインストールも npm install -g opencode-ai で問題なく動作します。

2. 設定ファイルの作成

OpenCode は ~/.config/opencode/(グローバル)にある opencode.json、またはプロジェクトのルートにある opencode.json を読み込みます。グローバル設定はすべての場所に適用されるため、まずはこちらから始めてください:

  • macOS / Linux: ~/.config/opencode/opencode.json
  • Windows: C:\Users\YourUserName\.config\opencode\opencode.json

次の内容でファイルを作成します:

1
{
2
  "$schema": "https://opencode.ai/config.json",
3
  "model": "codebyai/gpt-5.6-terra",
4
  "small_model": "codebyai/gpt-5.6-terra",
5
  "provider": {
6
    "codebyai": {
7
      "npm": "@ai-sdk/openai-compatible",
8
      "name": "CodeByAI",
9
      "options": {
10
        "baseURL": "https://www.codebyai.net/api/agent",
11
        "apiKey": "{env:CODEBYAI_API_KEY}"
12
      },
13
      "models": {
14
        "gpt-5.6-terra": {
15
          "name": "GPT-5.6 Terra",
16
          "limit": { "context": 200000, "output": 65536 }
17
        }
18
      }
19
    }
20
  }
21
}

知っておくと役立つポイントがいくつかあります:

  • npm は通信プロトコルを選択します。@ai-sdk/openai-compatible を指定すると、OpenCode は /chat/completions を呼び出します。
  • baseURL は /api/agent で止めます。/v1 を追加しないでください: ゲートウェイはそのパスより後ろの部分をすべて上流のプロバイダーへ転送するため、/api/agent/v1/chat/completions は 404 page not found を返します。
  • models 以下のキーが、OpenCode が送信するモデル ID になります。モデルプラザ にある任意のモデル(たとえば gpt-6-astra)を追加できます。
  • small_model を明示的に設定しているのは意図的です。OpenCode はこれがない場合、同じプロバイダー内でより安価なモデルを探し、見つからなければメインモデルを使用します。名前を指定しておくことで、タイトル生成時のエラーを避けられます。

3. API キーの設定

上記の apiKey で使用している変数をエクスポートします(先に API キー ページでキーを作成してください):

1
export CODEBYAI_API_KEY="sk-proj-xxxx"

この行を ~/.zshrc または ~/.bashrc に追加すると、新しいターミナルすべてに引き継がれます。環境変数を使いたくない場合は、一度 opencode auth login を実行してキーを貼り付けてください。apiKey を省略した場合は、保存された認証情報が使用されます。

4. OpenCode の起動

1
cd your-project
2
opencode --model codebyai/gpt-5.6-terra

対話インターフェースを使わずに一度だけ質問する場合:

1
opencode run -m codebyai/gpt-5.6-terra "summarise the structure of this repository"

インターフェース内では、/models で設定ファイルに宣言したモデルを切り替えられます。

5. トラブルシューティング

  • 応答に 404 page not found が含まれる場合: baseURL が /v1 で終わっています。削除してください。
  • 応答が Hello! How can I help you with your software engineering tasks today? で始まる場合(HTTP 403): ゲートウェイが API キーを受け取っていないため、OpenCode を起動したターミナルで CODEBYAI_API_KEY が空になっています。Invalid key! という 403 応答は、キー自体が削除されたか誤って入力されたことを意味します。
  • 残高不足: ウォレット ページでチャージしてください。
  • Claude モデルは、このガイドの Claude Code ページで設定する Anthropic 互換エンドポイントから提供されます。このページでは OpenAI 互換の経路について説明しています。