OpenCode の設定

OpenCode は @ai-sdk/openai-compatible Provider 経由で InOneAPI を呼び出せます。モデル設定と認証情報を分けて保存します。Provider の定義は設定ファイル、API キーはローカルの認証ファイルに置きます。

Provider の設定

~/.config/opencode/opencode.json を作成または開きます:

{
  "$schema": "https://opencode.ai/config.json",
  "model": "inoneapi/YOUR_MODEL_ID",
  "provider": {
    "inoneapi": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "InOneAPI",
      "options": {
        "baseURL": "https://api.inoneapi.com/v1"
      },
      "models": {
        "YOUR_MODEL_ID": {
          "name": "YOUR_MODEL_ID"
        }
      }
    }
  }
}

model は OpenCode の Provider 名と InOneAPI のモデル ID を結合した inoneapi/YOUR_MODEL_ID 形式になります。

クライアントで認証情報を保存

  1. opencode を起動し、/connect を入力します。
  2. Other を選び、Provider ID に inoneapi を指定します。設定ファイルのキーと完全一致させてください。
  3. InOneAPI の API キーを貼り付け、認証情報の保存は OpenCode に任せます。auth.json を作成・編集する必要はありません。
  4. /connect は認証情報を保存するだけで、カスタム Provider のエンドポイントとモデル定義まで行いません。そのため上記の opencode.json は引き続き必要です。

既定の設定パスは ~/.config/opencode/opencode.json、Windows は %USERPROFILE%\.config\opencode\opencode.json です。XDG_CONFIG_HOME を設定している場合は、その配下の opencode ディレクトリを使用します。

起動と検証

テスト用リポジトリで opencode を実行し、/models で inoneapi/YOUR_MODEL_ID が選択されているか確認します。ファイルを修正しないタスクを 1 件送信した後、コンソールでトレース・Token・費用を照合してください。

よくある問題

  • Provider が表示されない:JSON の構文、$schema、provider.inoneapi がルートオブジェクト直下にあるかを確認します。
  • モデルが見つからない:model には inoneapi/ 接頭辞を付け、models のキーには InOneAPI のモデル ID だけを書きます。
  • 401:認証ファイル内の Provider キーも inoneapi である必要があります。
  • ツール呼び出しが不完全:モデルがツール呼び出しに対応しているか確認します。OpenAI-compatible はプロトコル互換を意味するだけで、どのモデルも同じ機能を持つわけではありません。

複数のモデルを設定する場合は models に項目を追加し、切り替え後にプロジェクトの利用モデル制限を再確認してください。

任意:CC Switch にインポート

モデル詳細ページで本ツールと API キーを選択し、「CC Switch を開いてインポート」をクリックします。CC Switch 公式版 を使用してください。インポートリンクには現在のモデル ID が含まれるため、再入力する必要はありません。インポートを確認した後、本ツールのプロバイダー有効化と既定モデルの設定で接続を完了します。app 非対応と表示された場合は、CC Switch を更新するか本文の手動設定に従ってください。

インポートリンクはプロバイダーを追加するだけで、既定モデルの設定や正常なリクエストを保証するものではありません。リンクには API キーが含まれるため、共有しないでください。手動設定と CC Switch インポートはどちらか一方だけで構いません。

CC Switch でインポート後も、/models でモデルを選択する必要があります。Provider ID はインポート結果に従い、同じ名前のプロバイダーを重複して作成しないでください。

公式リファレンス:OpenCode のカスタム provider。

OpenCode · ドキュメント · InOneAPI