Gemini CLI のエラー

Please set an Auth method in your <path>/settings.json

結論

認証方法がどこにも設定されていない状態。終了コード41で、接続を試す前に止まる。

確認した版 Gemini CLI v0.58.0
確認日 2026年9月3日
最終更新 2026年9月3日
根拠 実機で確認

エラー文字列

Gemini CLI
Please set an Auth method in your <path>/settings.json

⚠️ 標準エラーに出て、終了コードは 41 です。

Please set an Auth method in your C:\Users\<名前>\.gemini\settings.json or specify one of
the following environment variables before running: GEMINI_API_KEY,
GOOGLE_GENAI_USE_VERTEXAI, GOOGLE_GENAI_USE_GCA

何が起きているか

認証方法が1つも決まっていません。 キーが間違っているのではなく、どうやって認証するかを選んでいない状態です。

接続を試す前に止まります。 ネットワークやモデル名は関係ありません。

選べる方法は3つ

環境変数 使う場面
GEMINI_API_KEY AI Studio のキーで使う。最も手軽
GOOGLE_GENAI_USE_VERTEXAI Google Cloud の Vertex AI 経由で使う
GOOGLE_GENAI_USE_GCA Google アカウントでログインして使う

⚠️ どれか1つを選べば足ります。 全部設定する必要はありません。

対話では出ないことがあります

対話モードなら起動時に選択画面が出ます。このメッセージが出るのは、選ぶ機会が無い場合です。

状況
-p / --prompt を付けた 明示的に非対話
標準出力が端末でない パイプやリダイレクトも自動的に非対話
CI・cron・スクリプト 上に該当する

🔴 手元では動くのに CI だけ落ちる、という形で出ます。手元には一度選んだ記録が残っているためです。

直し方

1. APIキーを使う(最も手軽)

Google AI Studio でキーを発行して設定します。

export GEMINI_API_KEY=あなたのキー
gemini --skip-trust -p "hello"
$env:GEMINI_API_KEY = "あなたのキー"
gemini --skip-trust -p "hello"

🔴 キーを設定しただけでは使えないことがあります。 そのプロジェクトで Generative Language API を有効にしてください(詳細)。

2. CI に置く場合

GitHub Actions

env:
  GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}
  GEMINI_CLI_TRUST_WORKSPACE: "true"

⚠️ 信頼の設定も一緒に要ります。 片方だけでは別のエラーで止まります(詳細)。

🔴 キーをワークフローに直接書かないこと。 必ずシークレットを使ってください。

3. 設定ファイルに書く場合

~/.gemini/settings.json に書くこともできます。

⚠️ JSON を壊さないよう注意してください。 壊れていると終了コード 52 で止まります(詳細)。

キーそのものを設定ファイルに書かないほうが安全です。 リポジトリに入ったり、バックアップに残ったりします。環境変数を勧めます。

4. Vertex AI を使う場合

export GOOGLE_GENAI_USE_VERTEXAI=true
export GOOGLE_CLOUD_PROJECT=あなたのプロジェクトID
export GOOGLE_CLOUD_LOCATION=us-central1

⚠️ 別途 gcloud auth application-default login などの資格情報が要ります。

5. 通ったか確かめる

gemini --skip-trust -p "hello"; echo "exit=$?"

41 以外になれば、認証方法は選べています。 次のエラーが出たら、それは別の問題です。

終了コードの一覧(実測)

コード 意味
41 認証方法が設定されていない(このページ)
52 設定ファイルが壊れている(詳細
55 信頼していないディレクトリ(詳細
1 APIキーが拒否された等(詳細

再発防止

  • 3つのうち1つを選ぶだけ。 迷ったら GEMINI_API_KEY
  • CI では認証と信頼の両方を設定する。片方だけでは通らない
  • キーは環境変数(CIではシークレット)に置く。設定ファイルに直接書かない
  • 終了コード 41 を「認証未設定」として判別できるようにしておく

この手順で直りませんでしたか?

環境を添えて報告いただければ、追加の原因を検証してこのページに反映します。

エラーを報告する