Skip to content

CLI cheatsheet

This page provides a reference for commonly used Gemini CLI commands, options, and parameters.

CommandDescriptionExample
geminiStart interactive REPLgemini
gemini "query"Query non-interactively, then exitgemini "explain this project"
gemini -p "query"Query via SDK, then exitgemini -p "explain this function"
cat file | gemini -p "query"Process piped contentcat logs.txt | gemini -p "explain"
gemini -i "query"Execute and continue interactivelygemini -i "What is the purpose of this project?"
gemini -r "latest"Continue most recent sessiongemini -r "latest"
gemini -r "latest" "query"Continue session with a new promptgemini -r "latest" "Check for type errors"
gemini -r "<session-id>" "query"Resume session by IDgemini -r "abc123" "Finish this PR"
gemini updateUpdate to latest versiongemini update
gemini extensionsManage extensionsSee Extensions Management
gemini mcpConfigure MCP serversSee MCP Server Management
ArgumentTypeDescription
querystring (variadic)Positional prompt. Defaults to one-shot mode. Use -i/--prompt-interactive to execute and continue interactively.
OptionAliasTypeDefaultDescription
--debug-dbooleanfalseRun in debug mode with verbose logging
--version-v--Show CLI version number and exit
--help-h--Show help information
--model-mstringautoModel to use. See Model Selection for available values.
--prompt-pstring-Prompt text. Appended to stdin input if provided. Deprecated: Use positional arguments instead.
--prompt-interactive-istring-Execute prompt and continue in interactive mode
--sandbox-sbooleanfalseRun in a sandboxed environment for safer execution
--approval-mode-stringdefaultApproval mode for tool execution. Choices: default, auto_edit, yolo
--yolo-ybooleanfalseDeprecated. Auto-approve all actions. Use --approval-mode=yolo instead.
--experimental-acp-boolean-Start in ACP (Agent Code Pilot) mode. Experimental feature.
--experimental-zed-integration-boolean-Run in Zed editor integration mode. Experimental feature.
--allowed-mcp-server-names-array-Allowed MCP server names (comma-separated or multiple flags)
--allowed-tools-array-Tools that are allowed to run without confirmation (comma-separated or multiple flags)
--extensions-earray-List of extensions to use. If not provided, all extensions are enabled (comma-separated or multiple flags)
--list-extensions-lboolean-List all available extensions and exit
--resume-rstring-Resume a previous session. Use "latest" for most recent or index number (e.g. --resume 5)
--list-sessions-boolean-List available sessions for the current project and exit
--delete-session-string-Delete a session by index number (use --list-sessions to see available sessions)
--include-directories-array-Additional directories to include in the workspace (comma-separated or multiple flags)
--screen-reader-boolean-Enable screen reader mode for accessibility
--output-format-ostringtextThe format of the CLI output. Choices: text, json, stream-json

The --model (or -m) flag allows you to specify which Gemini model to use. You can use either model aliases (user-friendly names) or concrete model names.

These are convenient shortcuts that map to specific models:

AliasResolves ToDescription
autogemini-2.5-pro or gemini-3-pro-previewDefault. Resolves to the preview model if preview features are enabled, otherwise resolves to the standard pro model.
progemini-2.5-pro or gemini-3-pro-previewFor complex reasoning tasks. Uses preview model if enabled.
flashgemini-2.5-flashFast, balanced model for most tasks.
flash-litegemini-2.5-flash-liteFastest model for simple tasks.
CommandDescriptionExample
gemini extensions install <source>Install extension from Git URL or local pathgemini extensions install https://github.com/user/my-extension
gemini extensions install <source> --ref <ref>Install from specific branch/tag/commitgemini extensions install https://github.com/user/my-extension --ref develop
gemini extensions install <source> --auto-updateInstall with auto-update enabledgemini extensions install https://github.com/user/my-extension --auto-update
gemini extensions uninstall <name>Uninstall one or more extensionsgemini extensions uninstall my-extension
gemini extensions listList all installed extensionsgemini extensions list
gemini extensions update <name>Update a specific extensiongemini extensions update my-extension
gemini extensions update --allUpdate all extensionsgemini extensions update --all
gemini extensions enable <name>Enable an extensiongemini extensions enable my-extension
gemini extensions disable <name>Disable an extensiongemini extensions disable my-extension
gemini extensions link <path>Link local extension for developmentgemini extensions link /path/to/extension
gemini extensions new <path>Create new extension from templategemini extensions new ./my-extension
gemini extensions validate <path>Validate extension structuregemini extensions validate ./my-extension

See Extensions Documentation for more details.

CommandDescriptionExample
gemini mcp add <name> <command>Add stdio-based MCP servergemini mcp add github npx -y @modelcontextprotocol/server-github
gemini mcp add <name> <url> --transport httpAdd HTTP-based MCP servergemini mcp add api-server http://localhost:3000 --transport http
gemini mcp add <name> <command> --env KEY=valueAdd with environment variablesgemini mcp add slack node server.js --env SLACK_TOKEN=xoxb-xxx
gemini mcp add <name> <command> --scope userAdd with user scopegemini mcp add db node db-server.js --scope user
gemini mcp add <name> <command> --include-tools tool1,tool2Add with specific toolsgemini mcp add github npx -y @modelcontextprotocol/server-github --include-tools list_repos,get_pr
gemini mcp remove <name>Remove an MCP servergemini mcp remove github
gemini mcp listList all configured MCP serversgemini mcp list

See MCP Server Integration for more details.