Gemini CLIで毎回許可を求められるコマンドを事前に許可する設定方法。 この記事の設定を適用するとGeminiが自動的にコマンドを実行するようになる。セキュリティリスクがあるため自己責任で行うこと。

設定ファイルの場所

  • グローバル設定ファイル: ~/.gemini/settings.json
  • プロジェクトごとの設定ファイル: <プロジェクトルート>/.gemini/settings.json

設定

tools.allowedに許可するコマンドを配列で指定する。
シェルコマンドはrun_shell_command(<コマンド>)の形式で指定する。

{
  "tools": {
    "allowed": [
      "run_shell_command(cat)",
      "run_shell_command(grep)"
    ]
  }
}

特定のサブコマンドのみ許可することも可能。

{
  "tools": {
    "allowed": [
      "run_shell_command(git status)",
      "run_shell_command(git show)",
      "run_shell_command(git diff)",
      "run_shell_command(git log)",
      "run_shell_command(gh pr view)",
      "run_shell_command(gh pr diff)",
      "run_shell_command(gh pr list)",
      "run_shell_command(gh pr checks)"
    ]
  }
}

注意点

許可したコマンドはGeminiが自動的に実行するようになるため、副作用のないコマンドのみを許可するとよい。
例えばrmコマンドなど、ファイルを削除するコマンドを許可すると、意図しないファイルを削除する可能性がある。