id = "gemini-cli"
name = "Gemini CLI"
homepage = "https://github.com/google-gemini/gemini-cli"
description = "Gemini CLI brings the power of Gemini models directly to your terminal."
executables = ["gemini"]
[dotfiles]
paths = ["~/.gemini/settings.json"]
secret = ["~/.gemini/.env", "~/.gemini/oauth_creds.json"]
[commands]
format = 1
label = "Run Gemini"
description = "Start Gemini CLI interactively or send a single prompt non-interactively. Sandbox, approval and extension options are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false }
[[commands.source]]
id = "readme"
kind = "help"
url = "https://github.com/google-gemini/gemini-cli#basic-usage"
revision = "2026-10-27"
evidence = """
gemini --include-directories ../lib,../docs
gemini -m gemini-2.5-flash
gemini -p "Explain the architecture of this codebase"
gemini -p "Explain the architecture of this codebase" --output-format json
gemini -p "Run tests and deploy" --output-format stream-json
"""
[[commands.field]]
id = "prompt"
label = "Prompt (non-interactive)"
description = "Run once with this prompt and exit. Leave empty for the interactive session."
type = "string"
option = ["-p"]
sources = ["readme"]
[[commands.field]]
id = "model"
label = "Model"
type = "string"
option = ["-m"]
suggestions = [{ value = "gemini-2.5-flash", label = "Gemini 2.5 Flash" }]
sources = ["readme"]
[[commands.field]]
id = "output_format"
label = "Output format"
description = "Used with a prompt for scripting."
type = "enum"
option = ["--output-format"]
choices = [{ value = "json", label = "JSON" }, { value = "stream-json", label = "Streaming JSON events" }]
sources = ["readme"]
[[commands.field]]
id = "include_directories"
label = "Extra directories"
description = "Comma-separated directories to include in the workspace."
type = "string"
option = ["--include-directories"]
sources = ["readme"]
[[commands.task]]
id = "ask"
label = "Ask once"
fields = ["prompt", "model", "output_format"]
required = ["prompt"]
[[commands.task]]
id = "session"
label = "Interactive session"
fields = ["model", "include_directories"]
required = []
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["prompt", "model", "output_format"]
[[commands.group]]
id = "advanced"
label = "Advanced"
fields = ["include_directories"]