APIMaster.ai

OpenCode と APIMaster.ai

OpenCode Desktop で APIMaster を OpenAI 互換プロバイダとして追加します。opencode.jsonc でオプションの Reasoning 階層も設定可能です。

OpenCode DesktopOpenCode のグラフィカルクライアントです(現在ベータ版)。ローカルエージェントセッション、ファイル編集、シェル実行を提供します。APIMaster.aiOpenAI 互換 です — 設定 → プロバイダ → カスタムプロバイダ で追加できます。

まず API キーを取得 してください。以下ではプレースホルダ your_apimaster_key を使用します。スクリーンショットでは実際のキーはマスクされています。


前提条件

  1. opencode.ai/download から OpenCode Desktop をインストールします。
    • Windows: opencode-desktop-win-x64.exe
    • macOS: brew install --cask opencode-desktop または .dmg
    • Linux: .deb / .rpm / AppImage
  2. コンソール から APIMaster API キーを取得します。

ステップ 1 — プロバイダを開く

  1. OpenCode Desktop を起動し、ワークスペースを開きます。
  2. 歯車アイコン(左下)をクリックします。
  3. サイドバーで プロバイダ を選択します。
  4. カスタムプロバイダベース URL で OpenAI 互換プロバイダを追加)までスクロールします。
  5. + 接続 をクリックします。

設定 → プロバイダ → カスタムプロバイダ


ステップ 2 — カスタムプロバイダフォーム

フィールド
プロバイダ ID apimaster
表示名 APIMaster.ai
ベース URL https://apimaster.ai/v1
API キー あなたの APIMaster キー

カスタムプロバイダフォーム

ヘッダーのみで認証する場合を除き、ヘッダー は空のままにします。


ステップ 3 — モデルを追加して送信

次の画面でモデルをマッピングします(左 = OpenCode でのラベル、右 = APIMaster に送信される モデル ID — 通常は同じです)。

gpt-5.4 gpt-5.4
claude-sonnet-4-6 claude-sonnet-4-6
  1. 行を追加するには + モデルを追加 をクリックします。
  2. 送信 をクリックします。

モデルを追加して送信

ID はマーケットプレイスから選択してください。エージェントチャットでは画像専用モデル(例: gpt-image-2)は避けてください。


ステップ 4 — モデルを選択

  1. セッションを開始または開きます。
  2. 入力欄の下にある モデルドロップダウン を開きます。
  3. APIMaster.ai の下からモデルを選択します(例: claude-sonnet-4-6)。

モデルピッカー


ステップ 5 — テスト

hello または小さなコーディングタスクを送信します。通常のアシスタント応答(ファイル編集/シェル)が返ってくれば、APIMaster は接続されています。

チャットテスト


詳細設定: opencode.jsonc と Reasoning

上記の UI フローで簡単に開始できます。同じモデル ID に対して Reasoning / thinking effort の階層(lowhighmax など)を設定するには、opencode.jsonc を編集します。

設定ファイルの場所

OS パス
macOS / Linux ~/.config/opencode/opencode.jsonc
Windows C:\Users\<ユーザー名>\.config\opencode\opencode.jsonc

ファイルがない場合は作成してください。保存後、OpenCode Desktop を再起動するか、新しいセッション を開始します。

API キー(jsonc には記述しないでください)

API キーを opencode.jsonc に保存 しないでください

以下のいずれかを使用してください。

  • ターミナルで /connect を実行、または
  • 設定 → プロバイダ → プロバイダに接続(ステップ 1〜2 と同じ)

シークレットは OpenCode の認証ストアに保管し、jsonc にはプロバイダ、モデル、Reasoning バリアントのみを定義します。

jsonc での APIMaster プロバイダ

プロバイダ ID: apimaster。npm パッケージ: @ai-sdk/openai-compatible

baseURL は次のように指定する必要があります:

https://apimaster.ai/v1

https://apimaster.ai/ ではありません — OpenCode は /chat/completions を追加します。/v1 がないと https://apimaster.ai/chat/completions になり、404 Not Found になります。

Reasoning バリアントを含む完全な例 — ダウンロードして OpenCode の設定を上書きします。

  1. opencode.jsonc をダウンロード
  2. 以下に上書き(または保存):
    • macOS / Linux: ~/.config/opencode/opencode.jsonc
    • Windows: C:\Users\<ユーザー名>\.config\opencode\opencode.jsonc
  3. /connect または UI で API キーを設定(jsonc には絶対に記述しない)。
  4. OpenCode Desktop を再起動 するか、新しいセッションを開始します。

上書きする前に既存ファイルをバックアップするか、provider.apimaster ブロックのみをマージしてください。

最小構成:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "apimaster": {
      "name": "APIMaster.ai",
      "npm": "@ai-sdk/openai-compatible",
      "options": { "baseURL": "https://apimaster.ai/v1" },
      "models": {
        "gpt-5.4": {
          "name": "gpt-5.4",
          "variants": {
            "low": { "reasoningEffort": "low" },
            "high": { "reasoningEffort": "high" }
          }
        }
      }
    }
  }
}

Reasoning の基本原則

  • variants = 1 つのモデル ID に対して複数の Reasoning 階層を UI で提供します。
  • OpenAI 互換 API では、OpenCode が reasoningEffort をリクエストボディの reasoning_effort にマッピングします。
  • バリアント名は実際のパラメータと一致させる必要がありますhigh"reasoningEffort": "high")。
  • モデルごとにサポートされる階層は異なります — 公式ドキュメントに従って設定してください。隠れた再マッピングはありません。

モデル別 Reasoning 階層

モデル Reasoning バリアント 備考
gpt-5.4 low, medium, high, xhigh GPT reasoning
gpt-5.5 low, medium, high, xhigh GPT reasoning
deepseek-v4-flash high, max DeepSeek thinking(推奨)
deepseek-v4-pro high, max DeepSeek thinking(推奨)
claude-sonnet-4-6 low, medium, high, max Claude Sonnet effort
claude-opus-4-7 low, medium, high, xhigh, max Claude Opus effort
claude-opus-4-8 low, medium, high, xhigh, max Claude Opus effort
claude-haiku-4-5 なし 未確認の effort 階層なし
minimax-m3 なし 未確認の effort 階層なし

完全なファイルは opencode.jsonc を参照してください。

OpenCode での Reasoning 切り替え

  1. opencode.jsonc を保存し、再起動 または 新しいセッション を開始します。
  2. モデル / Reasoning ドロップダウン を使用します(例: gpt-5.4 / high)。
  3. ビルドでサポートされている場合: Ctrl + Shift + D で Reasoning 階層を切り替えます。

トラブルシューティング

UI 設定

問題 解決策
401 キーを確認。露出した場合はローテーション。
モデルが見つからない ベース URL が https://apimaster.ai/v1 であること、モデル ID がマーケットプレイスと一致していることを確認。
APIMaster モデルが表示されない 設定でプロバイダを編集 → マッピングを追加 → 送信。
遅い / タイムアウト 別のモデルを試す。API Key Tester を使用。

Reasoning / jsonc

なぜ DeepSeek では highmax だけなのか?
DeepSeek の公式 OpenAI 互換 thinking effort は highmax です。low / medium / xhigh は予測不能に再マッピングされるため避けてください。

なぜ Claude Sonnet では xhigh ではなく max なのか?
Sonnet の最上位階層は max です。xhigh は Opus(claude-opus-4-7 / claude-opus-4-8)用です。

なぜ Haiku や MiniMax M3 にはバリアントがないのか?
reasoningEffort の値が文書化されていないため、バリアントはスキップします。モデルは動作しますが、UI に Reasoning サブ階層は表示されません。

それでも 400 エラーが出る場合

  1. baseURL = https://apimaster.ai/v1(サイトルートではありません)。
  2. モデル ID のスペルがマーケットプレイスと一致していること。
  3. /connect または UI でキーが設定されていること。
  4. variants を一時的に削除 — プレーンなリクエストが成功する場合、選択した reasoning_effort がそのモデルでサポートされていない可能性があります。

セキュリティ

  • チャットやマスクされていないスクリーンショットでキーを共有しないでください。
  • スクリーンショットやログに表示されたキーはローテーションしてください。
  • OpenCode はファイルの読み書きやシェルコマンドの実行が可能です — 信頼できるワークスペースのみを使用してください。

チェックリスト

  • OpenCode Desktop をインストール
  • カスタムプロバイダに接続 または opencode.jsoncapimaster を設定
  • ベース URL / baseURL = https://apimaster.ai/v1https://apimaster.ai/ ではない)
  • /connect または UI で API キーを設定(jsonc には記述しない)
  • 少なくとも 1 つのチャットモデルをマッピング
  • (オプション)Reasoning バリアントが公式階層と一致している
  • テストメッセージが成功する

まとめ

  • キー: baseURLhttps://apimaster.ai/v1)、モデル IDAPI キー/connect または UI)、オプションの Reasoning バリアント
  • バリアント 名 = 実際の reasoning_effort
  • 階層は モデルごとに 設定。サポートされていない場合はバリアントをスキップ(Haiku、MiniMax M3 など)。

関連項目