Configuration
Configuring Ripperdoc models and behavior
Ripperdoc can be configured through configuration files or environment variables.
Configuration Files
Configuration is loaded in order of precedence:
- Global:
~/.ripperdoc.json - Project:
.ripperdoc/config.json
Project configuration overrides global configuration.
Model Configuration
Basic Model Setup
{
"model_profiles": {
"default": {
"provider": "openai_compatible",
"model": "deepseek-chat",
"api_key": "YOUR_DEEPSEEK_KEY",
"api_base": "https://api.deepseek.com",
"max_tokens": 4096,
"temperature": 0.0
}
},
"model_pointers": {
"main": "default",
"quick": "default"
}
}Multiple Models
You can define multiple model profiles:
{
"model_profiles": {
"default": {
"provider": "openai_compatible",
"model": "deepseek-chat",
"api_key": "YOUR_DEEPSEEK_KEY",
"api_base": "https://api.deepseek.com"
},
"reasoner": {
"provider": "openai_compatible",
"model": "deepseek-reasoner",
"api_key": "YOUR_DEEPSEEK_KEY",
"api_base": "https://api.deepseek.com",
"thinking_mode": "deepseek"
},
"local": {
"provider": "openai_compatible",
"model": "llama3.2",
"api_base": "http://localhost:11434/v1",
"api_key": null
}
},
"model_pointers": {
"main": "default",
"quick": "reasoner"
}
}Switch between profiles using the /models command or --model flag (use the profile name from model_profiles):
ripperdoc --model fastProvider Options
| Provider | Required Env Var | API Base |
|---|---|---|
openai_compatible | Provider-specific | Provider-specific (for example https://api.deepseek.com) |
anthropic | ANTHROPIC_API_KEY | https://api.anthropic.com |
gemini | GEMINI_API_KEY | Google AI API |
Custom API Endpoints
For OpenAI-compatible APIs:
{
"model_profiles": {
"custom": {
"provider": "openai_compatible",
"api_base": "https://your-api-endpoint.com/v1",
"api_key": "YOUR_CUSTOM_KEY",
"model": "your-model-name"
}
},
"model_pointers": {
"main": "custom",
"quick": "custom"
}
}Thinking Mode
For models that support extended thinking (DeepSeek, Claude with extended thinking):
{
"model_profiles": {
"reasoning": {
"provider": "openai_compatible",
"model": "deepseek-reasoner",
"api_key": "YOUR_DEEPSEEK_KEY",
"api_base": "https://api.deepseek.com",
"thinking_mode": "deepseek"
}
},
"model_pointers": {
"main": "reasoning",
"quick": "reasoning"
}
}Permission Settings
{
"permissions": {
"mode": "default",
"rules": []
}
}See Permissions for detailed configuration.
CLI Options
| Option | Description |
|---|---|
--model NAME | Use a specific model profile |
--yolo | Skip permission prompts |
--verbose | Enable verbose output |
--max-thinking-tokens N | Set max thinking tokens |
Environment Variables
API keys can be provided in the config file. Environment variables are optional and can be used instead.
| Variable | Description |
|---|---|
ANTHROPIC_API_KEY | Optional if you set api_key in config |
OPENAI_API_KEY | Optional if you set api_key in config |
DEEPSEEK_API_KEY | Optional if you set api_key in config |
GEMINI_API_KEY | Optional if you set api_key in config |
RIPPERDOC_MAX_RETRIES | Max API retries (default: 10) |
RIPPERDOC_API_TIMEOUT | API timeout in seconds (default: 120) |
See Environment Variables for a complete list.