BYOK(Bring Your Own Key)は、すべてのプランで Kodus が LLM を使用するデフォルトの方法です — Community、Teams、Enterprise を問わず。自分のプロバイダーアカウントを接続し、任意のモデルを選択し、使用した分だけ支払い、プロバイダーのダッシュボードでコストを直接監視できます。Kodus はトークンに上乗せ料金を請求せず、APIキーを平文で見ることも決してありません。Documentation Index
Fetch the complete documentation index at: https://docs.kodus.io/llms.txt
Use this file to discover all available pages before exploring further.
プランとの対応関係
BYOK は Community では無料、Teams では(トークン費用に加えてアクティブ開発者1人あたり月10ドル)で利用可能、Enterprise では2つのオプションのうちの1つです(もう1つは Kodus が管理する APIキー)。
はじめに
BYOK 画面には2つのパスがあります:キュレートされたカタログから推奨モデルを選ぶ(最速のパス、90%のケース)、または任意のプロバイダーを手動で設定する(カスタムエンドポイントやキュレートされていないモデル向けの脱出ハッチ)。BYOK 設定を開く
app.kodus.io/organization/byok にアクセスします。
APIキーを貼り付けてテスト
各カードはインラインで展開し、単一の入力欄(APIキーのみ)を表示します。Test をクリックしてプロバイダーをプローブするか、Test & save をクリックしてテストを実行し、成功時に設定を保存します。
保存前にテストする。 Test ボタンは、プロバイダーに対して安価なメタデータ呼び出しでプローブします(LLM 推論は実行されません)。無効なキー、誤ったベース URL、ネットワークの問題を、最初のコードレビューが壊れる前に検出します。
推奨モデル
これら6つのモデルはコードレビュー向けにキュレートされています。すべて/organization/byok のカタログに表示され、適切なデフォルト値(temperature、最大出力トークン、reasoning effort は medium)で事前チューニングされています。
Claude Sonnet 4.6
品質とコストの最良のバランスAnthropic の最新 Sonnet。適応的な拡張思考、強力なクロスファイル分析、200K コンテキストウィンドウ。
- プロバイダー: Anthropic
- モデル ID:
claude-sonnet-4-6 - キー: console.anthropic.com
Claude Opus 4.7
フラッグシップ品質最も難しいレビュー向けの最上位 Anthropic モデル。1M コンテキスト、プレミアム価格。
- プロバイダー: Anthropic
- モデル ID:
claude-opus-4-7 - キー: console.anthropic.com
Gemini 3.1 Pro (custom tools)
最大のコンテキストカスタムツールをサポートする Google のフラッグシップ。1M コンテキストウィンドウ — 大規模な PR やモノレポで最強。
- プロバイダー: Google Gemini
- モデル ID:
gemini-3.1-pro-preview-customtools - キー: aistudio.google.com/apikey
GPT-5.4
高速で一貫性があるOpenAI の最新フラッグシップ。信頼性の高い低レイテンシ、幅広い知識、400K コンテキスト。
- プロバイダー: OpenAI
- モデル ID:
gpt-5.4 - キー: platform.openai.com/api-keys
Kimi K2.6 Coding
コーディング特化、安価Moonshot AI のコーディングチューニング済みモデル。2つのプラン:Developer API(ペイパートークン)または Kimi Code Plan(専用エンドポイント付きサブスクリプション)。
- プロバイダー: OpenAI-compatible (Moonshot AI)
- モデル ID:
kimi-k2.6 - キー: platform.moonshot.ai または kimi.com/code
GLM 5.1
最良のサブスクリプション価値Z.ai の最新モデル。2つのプラン:Developer API(ペイパートークン)または GLM Coding Plan(定額サブスクリプション)。
- プロバイダー: OpenAI-compatible (Z.ai)
- モデル ID:
glm-5.1 - キー: z.ai console または z.ai/subscribe
デフォルトの推奨: 最良の全体的なコードレビュー体験には Claude Sonnet 4.6 から始めましょう。コストが優先事項の場合、GLM 5.1 on the Coding Plan または Kimi K2.6 on the Kimi Code Plan が定額サブスクリプションで月額の支出を抑えられます。
プランセレクター(GLM 5.1 と Kimi K2.6)
Z.ai と Moonshot はどちらも、ペイパートークンの Developer API とは 異なるエンドポイント のサブスクリプションプランを提供しています。これらのモデルのキュレートされたカードには Plan セレクターが表示され、キーを貼り付ける前に正しいエンドポイントを選択できます。- GLM 5.1 (Z.ai)
- Kimi K2.6 (Moonshot AI)
| プラン | エンドポイント | キーの取得元 | 最適な用途 |
|---|---|---|---|
| Developer API | https://api.z.ai/api/paas/v4/ | z.ai/manage-apikey | バースト的なワークロード、ペイパートークン |
| Coding Plan | https://api.z.ai/api/coding/paas/v4 | z.ai/subscribe | 予測可能なチーム使用量、定額月額料金 |
手動で設定する
欲しいモデルがキュレートされたリストにない場合(カスタムエンドポイント、セルフホスト LLM、またはベンチマークしていないプロバイダー)、カタログ下部の Configure manually をクリックします。これにより/organization/byok/manual?slot=main が開き、ステップバイステップのウィザードが表示されます:
プロバイダーを選択
OpenAI、Anthropic、Google Gemini、OpenRouter、Novita、または OpenAI Compatible(任意の OpenAI フォーマットのエンドポイント向け)から選択します。
モデル ID を選択または入力
Kodus がプロバイダーからモデルをリスト化できる場合、ドロップダウンが表示されます。そうでない場合(例:セルフホスト、またはプラットフォームキーが未設定)、正確なモデル ID を手動で入力します。
Advanced settings を調整(任意)
Temperature、最大トークン、reasoning effort、最大同時リクエスト数 — すべて任意です。デフォルト値はほとんどのプロバイダーで適切です。
対応プロバイダー
- OpenAI
- Google Gemini
- Anthropic Claude
- Novita AI
- OpenRouter
- OpenAI Compatible
Reasoning / 拡張思考
6つの推奨モデルはすべて reasoning をサポートしています。BYOK フォームでは、Advanced settings の下に Thinking トグル(Off / Low / Medium / High / Custom)が表示され、すべての推奨モデルに Medium が事前入力されています。プリセットレベル
Low / Medium / High を選択すると、Kodus はそのレベルを各プロバイダーのネイティブフォーマットに自動的に変換します:| プロバイダー | ”medium” のマッピング |
|---|---|
| Anthropic (Claude Sonnet 4.6 / Opus 4.7) | thinking: { type: "adaptive" } + outputConfig: { effort: "medium" } |
| Google (Gemini 3.1 Pro) | thinkingConfig: { thinkingLevel: "medium" } |
| OpenAI (GPT-5.4) | reasoningEffort: "medium" |
| OpenRouter | reasoning: { effort: "medium" } |
| OpenAI-compatible (Kimi K2.6 / GLM 5.1) | thinking: { type: "enabled" } — バイナリの on/off、レベルは無視 |
Kimi と GLM は現在、reasoning を単一の on/off フラグとして公開しています。Low、Medium、High のいずれを選んでも同じペイロード(thinking 有効)を生成します。それらの API がレベル粒度を追加した場合、Kodus はそれを転送するようになります。
カスタム JSON オーバーライド
Thinking トグルで Custom を選択すると JSON テキストエリアが表示されます。プロバイダーオプションを直接貼り付けてください — Kodus がアクティブなプロバイダーの名前空間の下に自動でラップします。Vercel AI SDK のルーティングルールを知る必要はありません。 以下の場合に使用します:- Claude に特定の
budgetTokens値が必要な場合(プリセットの effort マッピングの代わり) - OpenAI 互換プロバイダーでモデルごとに thinking を有効/無効にしたい場合
- reasoning 以外のフィールドが必要な場合 — キャッシュ、サービスティア、safety settings、
userタグなど。オーバーライドはproviderOptionsにマージされるため、アダプターの任意のフィールドがそのまま通過します - Kodus がまだラップしていない新しいフィールドがプロバイダーに追加された場合
例(名前空間不要 — そのまま貼り付け)
- Anthropic
- Google Gemini
- OpenAI
- OpenRouter
- OpenAI-compatible (Kimi、GLM など)
Claude の thinking 予算を正確に 20,000 トークンにオーバーライド:プロンプトキャッシュを有効化(reasoning 以外の例):
名前空間を手動で指定する(上級者向け)
JSON にすでに既知の名前空間キー(anthropic、google、openai、openrouter、openaiCompatible)がトップレベルに含まれている場合、Kodus はそれをそのまま残します。複数のプロバイダー名前空間を混在させたい場合や、明示的に記述したい場合に便利です:
| BYOK プロバイダー | 名前空間キー |
|---|---|
anthropic | anthropic |
google_gemini / google_vertex | google |
openai | openai |
open_router | openrouter |
openai_compatible / novita | openaiCompatible |
注意点
- 有効な JSON のみ。 カンマの欠落や末尾のカンマはパースを壊し、Kodus はオーバーライドを無視します。
- 優先順位: JSON オーバーライドは effort プリセットの名前空間ブロックを完全に置き換えます —
anthropic.thinkingをオーバーライドしつつanthropic.outputConfigを忘れると、そのフィールドは送信されません。OpenRouter routing(Pin providers / Allow fallbacks)は唯一の例外で、openrouterの下でオーバーライドとディープマージされます。 - 未知のプロバイダー = ラップなし。 BYOK プロバイダーが上記の名前空間テーブルにない場合、Kodus は JSON をそのまま通過させます。稀なケース — Kodus が認識しないプロバイダーを設定した場合にのみ該当します。
OpenRouter プロバイダーの固定
OpenRouter はルーターです — モデル(例:moonshotai/kimi-k2.5)をリクエストすると、複数の上流プロバイダー(Moonshot 直接、Together、Groq、Fireworks、Novita…)のいずれかに呼び出しを転送します。呼び出しごとに異なるバックエンドに着地する可能性があります。便利ではありますが、サイレントな変動を招きます:
- 品質ドリフト — 上流は異なる精度(FP8、INT4、full)で動作し、同じプロンプトに対して微妙に異なる出力を返します
- ツール呼び出しの不整合 — 一部のバックエンドは関数呼び出しを同じ方法でサポートせず、不正な tool use を引き起こします
- Reasoning フォーマットの変動 — ある上流は
reasoning_effortを尊重し、別の上流はthinking.enabledのみ、また別の上流は両方を無視します - レイテンシの揺れ — ルーティングが変わると p50 が 800ms から 4s に跳ね上がることがあります
- レート制限の意外な発生 — 明示的に選んでいないバックエンドでクォータにヒットします
固定する方法
BYOK プロバイダーが OpenRouter の場合、Advanced settings パネルに2つのフィールドを持つ OpenRouter routing セクションが表示されます:- Pin providers (in order) — 上流名のカンマ区切りリスト(例:
moonshot, together)。OpenRouter は順番に試し、最初に利用可能なものを使用します。 - Allow fallbacks — オフの場合、固定されたプロバイダーのいずれも利用できないとリクエストはハードフェイルします。オン(デフォルト)の場合、OpenRouter はそのモデルを提供する他の任意の上流にフォールバックできます。
上級者向け:生の JSON オーバーライド
order と allow_fallbacks 以外のフィールド(例:ignore、data_collection、require_parameters)が必要な場合は、Advanced settings で Thinking を Custom に切り替え、完全なルーティングペイロードを貼り付けます — 任意の reasoning 設定と並んで providerOptions にマージされます:
同時実行数とレート制限
maxConcurrentRequests フィールド(Advanced settings の下)は、Kodus がプロバイダーに並行して送信するインフライトリクエストの数を制限します。ほとんどの場合、デフォルトで問題ありません — ただし、厳密な同時実行上限があるサブスクリプションプランでは明示的に設定する必要があります。
Kodus が事前入力するデフォルト
| プロバイダー / プラン | 事前入力値 | 理由 |
|---|---|---|
| GLM Coding Plan (Lite/Pro) | 1 | サブスクリプションは1つのインフライトリクエストのみ許可。それ以上は 429 をトリガー。 |
| GLM Coding Plan (Max) | 1(手動で増やす) | Max は最大 30 を許可しますが、安全値をデフォルトにしています。Advanced settings で上げてください。 |
| Kimi Code Plan | 30 | Moonshot のコーディングエンドポイントで文書化された上限。 |
| GLM Developer API | (空) | 制限はキーごとにスケール;適切なグローバルデフォルトはありません。 |
| Kimi Developer API | (空) | リチャージティアとスケール(Tier 1 ≈ 50、Tier 5 ≈ 1000)。 |
| Anthropic / OpenAI / Google / OpenRouter | (空) | プロバイダーは独自の TPM/RPM を適用;Kodus は制限しません。 |
チューニングのタイミング
上げる
- Moonshot/OpenRouter で高ティアのリチャージがあり、大きな PR でより高いスループットが欲しい
- GLM Coding Plan を Max に上げ、30-concurrent の予算をフル活用したい
- マルチファイル PR でレビューがシリアル化されていると感じ、429 が発生していない
下げる
- レビューログに
429やToo much concurrencyエラーが見られる - プロバイダーがダッシュボードでレート制限について警告している
- より多くの PR にわたって Coding Plan のウィンドウ(5時間/週次)を節約したい
フォールバックとの相互作用。 メインが 429 にヒットし、Kodus がフォールバックモデルにフェイルオーバーするとき、フォールバック自身の
maxConcurrentRequests が適用されます。異なるプロバイダーに寛大なフォールバックを設定することは、メインがタイトなサブスクリプション上にある場合にバーストを吸収する良い方法です。ベストプラクティス
セキュリティ
専用キー
Kodus 用の別の APIキーを作成します。使用状況の監査とキーのローテーションが容易になります。
定期的なローテーション
定期的にキーをローテーションし、BYOK 設定で更新します。
使用状況の監視
異常なパターンがないか、プロバイダーのダッシュボードを確認します。
安全な保管
キーをリポジトリにコミットしないでください。Kodus は保存時および転送時に暗号化して保存します。
フォールバック戦略
- メインとフォールバックには異なるプロバイダーを使用します(例:Anthropic メイン、Google フォールバック)。プロバイダー固有の障害から保護します。
- 厳しい同時実行制限のあるサブスクリプション(GLM Coding Plan Lite/Pro、Kimi Code Plan)は単独の構成としては適していません — バースト的な PR が枯渇しないよう、ペイパートークンのフォールバックとペアにします。
トラブルシューティング
Test クリック時の 'Invalid API key'
Test クリック時の 'Invalid API key'
- 余分なスペース、引用符、末尾の改行なしでキーをコピーします。
- 請求が有効になっており、アカウントにクレジットがあることを確認します。
- GLM Coding Plan / Kimi Code Plan のキーについては、カードで一致する Plan を選択したことを確認してください — サブスクリプションキーは Developer API エンドポイントでは動作せず、その逆も同様です。
Test クリック時の 'Endpoint not found'
Test クリック時の 'Endpoint not found'
- ベース URL がプロバイダーと正確に一致していることを確認します(末尾のスラッシュが一部で重要です)。
- OpenAI 互換プロバイダーの場合、models エンドポイントは通常
{baseURL}/modelsです。
レビュー時にモデルが見つからない(キーテストは合格)
レビュー時にモデルが見つからない(キーテストは合格)
- Test ボタンはキー/エンドポイントを検証しますが、特定のモデル ID は検証しません。存在しないモデルを入力した場合(タイプミス)、最初の実際のレビューが失敗します。
- 保存前にプロバイダーのカタログに対してモデル ID をクロスチェックしてください。
'Rate limited' または 'Too much concurrency'
'Rate limited' または 'Too much concurrency'
- Advanced settings で Max concurrent requests を下げます。
- GLM Coding Plan Lite/Pro では 1 concurrent を維持します。より高いスループットが必要な場合は Max(30 concurrent)にアップグレードしてください。
- Kimi Code Plan では文書化された上限は 30 concurrent です。
セルフホスト環境変数が表示されない
セルフホスト環境変数が表示されない
- Kodus が
.env(セルフホスト Fixed Mode)で設定されている場合、BYOK 画面はアクティブなプロバイダー/モデルを表示する青い情報バナーを表示します — セキュリティのためキーは決して表示されません。 .envの上に BYOK 設定を保存すると、オーバーライド前に確認ダイアログが表示されます。
予想外の高コスト
予想外の高コスト
- Reasoning はトークンを追加します。コストが急増している場合、Thinking を Medium から Low に下げるか、メインに安価なモデルに切り替えてください。
- プロバイダーのダッシュボードでモデルごとの内訳を確認します。
- プロバイダーレベルで月次上限を設定します。
よくある質問
いつでもプロバイダーを切り替えられますか?
いつでもプロバイダーを切り替えられますか?
はい。変更は次のレビューに有効になります — 再デプロイは不要です。
APIキーのクレジットがなくなった場合はどうなりますか?
APIキーのクレジットがなくなった場合はどうなりますか?
フォールバックが設定されている場合、レビューは自動的にフォールバックモデルに切り替わります。フォールバックがない場合、レビューは失敗してエラーを返します。常にフォールバックを設定してください。
プライマリ/フォールバックシステムはどのように機能しますか?
プライマリ/フォールバックシステムはどのように機能しますか?
メインはデフォルトで各レビューを処理します。失敗した場合(レート制限、5xx、タイムアウト)、Kodus はフォールバックで一度再試行します。実際にレビューを処理したプロバイダーに対してのみ支払います。
メインとフォールバックに同じプロバイダーを使用すべきですか?
メインとフォールバックに同じプロバイダーを使用すべきですか?
いいえ。異なるプロバイダーはプロバイダー固有の障害から保護します。一般的なペアリング:Anthropic メイン + Google フォールバック、またはスパイクカバレッジ用に GLM Coding Plan メイン + Anthropic フォールバック。
APIキーは安全に保管されますか?
APIキーは安全に保管されますか?
はい。キーは保存時および転送時に暗号化され、平文でログに記録されることはありません。BYOK ステータスエンドポイントは生のキーを返しません。
セルフホスト LLM(例:Ollama、vLLM)を使用できますか?
セルフホスト LLM(例:Ollama、vLLM)を使用できますか?
はい — 手動ウィザードの OpenAI Compatible プロバイダーを介して使用できます。エンドポイントのベース URL、公開しているモデル ID、およびプレースホルダーの APIキーを入力します(ほとんどのセルフホストランタイムはキーヘッダーを無視しますが、依然として必要です)。