Grok CLI と Grok Build:導入と設定
xAI 公式 Grok Build とコミュニティ版 Grok CLI を区別し、BetterToken API Key、Base URL、Model ID で設定する方法を説明します。
「Grok CLI」は、現在 2 つの異なるツールを指します。
- Grok Build — xAI 公式の coding agent。
- コミュニティ版 Grok CLI — xAI と提携していないオープンソースプロジェクト。
GPT モデルを使った macOS のテストでは、Community Grok CLI 1.1.7 はテキストリクエストで OK を返しましたが、ファイル読み取りのケースは正常に完了しませんでした。Grok Build 1.0.67 は api_backend = "chat_completions" でテキストリクエストとファイル読み取りのツール呼び出しを完了しました。Responses ストリームはクライアント側の解析に失敗しました(Grok Buildを参照)。どちらの設定でも BetterToken API Key、Base URL、Model ID を使います。
Grok CLI と Grok Build の違い
| 比較 | 公式 Grok Build | コミュニティ版 Grok CLI |
|---|---|---|
| 開発元 | xAI | superagent-ai/grok-cli、xAI とは無関係 |
| 適したユーザー | xAI 公式の coding agent を使いたい人 | カスタム Base URL でモデルを呼び出したい人 |
| 認証 | ブラウザログインまたは XAI_API_KEY | GROK_API_KEY |
| カスタム Base URL | ~/.grok/config.toml | GROK_BASE_URL |
| モデル | 設定内の alias | GROK_MODEL |
| BetterToken 経由のモデル呼び出し | テキストとファイル読み取りのツール呼び出しに成功(1.0.67、chat_completions) | テキストで OK を返却、ファイル読み取りは失敗(1.1.7) |
| コマンド | grok | grok |
このガイドでは BetterToken 経由のテキストおよびコードモデルのリクエストのみを扱います。X Search、音声文字起こし、画像生成、動画生成など xAI 固有の API は対象外です。
コミュニティ版 Grok CLI を BetterToken で使う
次のコマンドは macOS、Linux、WSL 向けです。コミュニティ版の Windows ネイティブ環境は未検証です。
インストール
curl -fsSL https://raw.githubusercontent.com/superagent-ai/grok-cli/main/install.sh | bashgrok --versionBun がインストール済みの場合:
bun add -g grok-devBetterToken を設定
export GROK_BASE_URL="https://bettertoken.ai/v1"export GROK_API_KEY="YOUR_API_KEY"export GROK_MODEL="YOUR_MODEL_ID"YOUR_MODEL_ID をモデル広場の完全な Model ID に置き換え、BetterToken API Keyを使います。
接続を確認
grok -p "Reply with only: OK"モデル応答が返った場合のみ、API Key、Base URL、Model ID が有効だと確認できます。環境変数を変更したら再起動してください。
公式 Grok Build
Grok Build は xAI 公式のターミナル coding agent です。
インストールとログイン
macOS / Linux / WSL
curl -fsSL https://x.ai/cli/install.sh | bashgrok --versionWindows PowerShell
irm https://x.ai/cli/install.ps1 | iexgrok --version初回起動時はブラウザが開きます。ブラウザのない環境では次を使います。
export XAI_API_KEY="YOUR_XAI_API_KEY"grokGrok Build で BetterToken を設定
[model.bettertoken]model = "YOUR_MODEL_ID"base_url = "https://bettertoken.ai/v1"name = "BetterToken"env_key = "BETTERTOKEN_API_KEY"api_backend = "chat_completions"
[models]default = "bettertoken"BETTERTOKEN_API_KEY は例として付けた変数名です。Grok Build は env_key で指定した変数を読み取ります。
export BETTERTOKEN_API_KEY="YOUR_API_KEY"grok inspectgrok -p "Reply with only: OK" -m bettertoken補助モデルへのリクエスト
両クライアントは、Community Grok CLI の grok-4.20-non-reasoning や Grok Build の grok-4.6 など、自ら選択したモデルに補助リクエストを送信する場合があります。テストでは、メインモデルのリクエストが成功しても、BetterToken はこれらの補助モデルに対して No available channel を伴う 503 model_not_found を返しました。メインリクエストが完了した場合は補助モデルのエラーを無視できます。選択した Model ID が失敗したことを示すものではありません。
grok コマンドの競合を避ける
macOS / Linux / WSL
type -a grokgrok --versionWindows PowerShell
Get-Command grok -Allgrok --versionよくあるエラー
| 問題 | 確認事項 |
|---|---|
| 別のクライアントが起動する | 各 grok のパスとバージョンを確認します。 |
Grok Build で unknown variant response.metadata が発生する | BetterToken モデルに api_backend = "chat_completions" を設定し、grok inspect を再実行してください。 |
| 公式 Grok Build でブラウザが開く | Grok Build のデフォルト認証フローです。xAI を使う場合はそのまま続行し、BetterToken を使う場合はカスタムモデルを設定します。 |
401 または Unauthorized | Grok Build のカスタムモデルは env_key で指定した変数を読み、コミュニティ版は GROK_API_KEY を読みます。現在のクライアントで使う変数だけを設定してください。 |
model not found | モデル広場から完全な Model ID をコピーし、再起動します。 |
| リクエストが xAI に送信される | Community クライアントでは GROK_BASE_URL を確認します。Grok Build では grok inspect を実行し、base_url と有効なモデル alias を確認してください。 |
| xAI 固有の機能が動作しない | BetterToken が扱うのはここで説明するモデルリクエストのみです。X Search、音声、メディア機能には公式 xAI API を使います。 |
モデルと機能の制限
モデル広場の OpenAI-compatible な完全な Model ID を使用してください。X Search、音声、画像、動画などの xAI 固有 API は対象外です。

