Конфигурация
OpenCode использует систему конфигурации JSON для настройки. Схема конфигурации определена по адресу opencode.ai/config.json, обеспечивая валидацию и автодополнение в редакторе.
Поддержка форматов
OpenCode принимает как JSON, так и JSONC (JSON с комментариями) форматы.
{
"$schema": "https://opencode.ai/config.json",
"theme": "opencode",
"model": "anthropic/claude-sonnet-4-5",
"autoupdate": true
}Расположение конфигурации и приоритет
Настройки объединяются, а не заменяются. Порядок загрузки (более поздние источники переопределяют конфликты):
- Удалённая конфигурация – Организационные настройки по умолчанию из
.well-known/opencode - Глобальная конфигурация – Пользовательские настройки в
~/.config/opencode/opencode.json - Пользовательская конфигурация – Переменная окружения
OPENCODE_CONFIG - Проектная конфигурация –
opencode.jsonв корне проекта - Директории
.opencode– Агенты, команды, плагины - Встроенная конфигурация – Переменная окружения
OPENCODE_CONFIG_CONTENT
Глобальная конфигурация
Разместите пользовательские настройки в ~/.config/opencode/opencode.json:
{
"theme": "catppuccin",
"model": "anthropic/claude-sonnet-4-5"
}Проектная конфигурация
Добавьте opencode.json в корень проекта для специфичных настроек.
Пользовательский путь
export OPENCODE_CONFIG=/path/to/config.json
opencode run "Hello world"Схема конфигурации
Настройки TUI
{
"tui": {
"scroll_speed": 3,
"scroll_acceleration": {
"enabled": true
},
"diff_style": "auto"
}
}Настройки сервера
{
"server": {
"port": 4096,
"hostname": "0.0.0.0",
"mdns": true,
"cors": ["http://localhost:5173"]
}
}Конфигурация инструментов
{
"tools": {
"write": false,
"bash": false
}
}Модели и провайдеры
{
"provider": {},
"model": "anthropic/claude-sonnet-4-5",
"small_model": "anthropic/claude-haiku-4-5"
}Агенты
{
"agent": {
"code-reviewer": {
"description": "Reviews code for best practices",
"model": "anthropic/claude-sonnet-4-5",
"prompt": "You are a code reviewer...",
"tools": {
"write": false,
"edit": false
}
}
}
}Пользовательские команды
{
"command": {
"test": {
"template": "Run full test suite with coverage report.",
"description": "Run tests with coverage",
"agent": "build"
}
}
}Разрешения
{
"permission": {
"edit": "ask",
"bash": "ask"
}
}Сжатие контекста
{
"compaction": {
"auto": true,
"prune": true
}
}MCP серверы
{
"mcp": {}
}Плагины
{
"plugin": ["opencode-helicone-session", "@my-org/custom-plugin"]
}Подстановка переменных
Переменные окружения
{
"model": "{env:OPENCODE_MODEL}",
"provider": {
"anthropic": {
"options": {
"apiKey": "{env:ANTHROPIC_API_KEY}"
}
}
}
}Содержимое файлов
{
"provider": {
"openai": {
"options": {
"apiKey": "{file:~/.secrets/openai-key}"
}
}
}
}