Skip to content

User Settings

The .rover/settings.json file stores user-specific preferences that should not be shared across your team. This file is automatically added to .gitignore when you run rover init.

FieldDescription
aiAgentsList of AI agents installed on your machine
defaults.aiAgentYour preferred AI agent to use by default
defaults.modelsDefault model to use for each AI agent
defaults.watchIntervalSecondsPolling interval for rover list --watch (1-60 seconds, default: 3)

Here’s a typical user settings file:

{
// Schema version for automatic migration
"version": "1.0",
// AI agents installed on this machine
"aiAgents": ["claude", "gemini"],
// Default preferences
"defaults": {
"aiAgent": "claude",
"models": {
"claude": "sonnet"
}
}
}

Choose your preferred AI agent:

{
"version": "1.0",
"aiAgents": ["claude", "gemini"],
"defaults": {
"aiAgent": "gemini"
}
}

The default agent is used when you create tasks without explicitly specifying an agent. You can always override this choice for specific tasks:

Terminal window
rover task --agent claude "Fix the login bug"

Configure which model each AI agent should use by default. This is useful when you want to use a specific model tier (like Claude’s Opus or Sonnet) without specifying it every time.

{
"version": "1.0",
"aiAgents": ["claude", "gemini"],
"defaults": {
"aiAgent": "claude",
"models": {
"claude": "opus",
"gemini": "flash"
}
}
}

The available models depend on each AI agent. Common options include:

AgentExample Models
claudeopus, sonnet, haiku
geminipro, flash

You can override the default model for specific tasks using the --agent agent:model syntax:

Terminal window
rover task --agent claude:sonnet "Quick code review"

For a complete list of all available configuration options, see the User Config Reference.