Тема OpenCode
OpenCode поддерживает несколько систем тем. Вы можете выбрать встроенную тему, автоматически адаптироваться к теме терминала или полностью настроить тему для единообразного и комфортного взаимодействия с терминалом.
Самый простой способ — ввести команду /themes в поле ввода TUI:
/themes

Затем выберите предпочитаемую тему во всплывающем окне:

Требования к терминалу
Чтобы темы могли работать, ваш терминал должен поддерживатьTrue color (24-bit color)。
- Проверка поддержки:
echo $COLORTERM
Вывод должен быть:
truecolor или 24bit
- Включение true color:
export COLORTERM=truecolor
- Распространённые поддерживаемые терминалы:
- iTerm2
- Alacritty
- Kitty
- Windows Terminal
- GNOME Terminal (новая версия)
Если терминал не поддерживает true color, тема переключится на 256 цветов, что может привести к искажению цветов.
Встроенные темы
OpenCode включает несколько встроенных тем, готовых к использованию:
| Название темы | Описание |
|---|---|
| system | Автоадаптация к теме терминала |
| tokyonight | Стиль Tokyonight |
| everforest | Стиль Everforest |
| ayu | Тёмная тема Ayu |
| catppuccin | Тема Catppuccin |
| catppuccin-macchiato | Вариант Catppuccin |
| gruvbox | Стиль Gruvbox |
| kanagawa | Стиль Kanagawa |
| nord | Стиль Nord |
| matrix | Стиль хакера (чёрный фон с зелёным текстом) |
| one-dark | Atom One Dark |
Системная тема (рекомендуется)
СистемнаяТема автоматически адаптируется к цветовой схеме вашего терминала:
- Создаёт уровни оттенков серого на основе фона терминала
- Использует стандартные цвета ANSI
- Сохраняет стандартный текст и фон терминала
Подходит для:
- Пользователи с собственными темами терминала
- Пользователи, которые хотят единообразный стиль во всех инструментах терминала
Использование тем
Способ 1: Выберите тему в TUI
/themes

Способ 2: Настройка через файл конфигурации
tui.json
{
"$schema": "https://opencode.ai/tui.json",
"theme": "tokyonight"
}
Пользовательские темы
OpenCode поддерживает полностью пользовательские темы, определяемые через JSON.
Приоритет загрузки тем
- Встроенные темы
- Каталог пользователя: ~/.config/opencode/themes/
- Каталог проекта: .opencode/themes/
- Текущий каталог: ./.opencode/themes/
Темы, загруженные позже, переопределяют ранее загруженные.
Создание тем
Темы уровня пользователя:
mkdir -p ~/.config/opencode/themes vim ~/.config/opencode/themes/my-theme.json
Темы уровня проекта:
mkdir -p .opencode/themes vim .opencode/themes/my-theme.json
Описание формата темы
Поддерживаются следующие форматы:
- HEX-цвет: #ffffff
- Цвета ANSI: 0-255
- Ссылка на цвет: primary
- Светлый/тёмный режим:
{
"dark": "#000000",
"light": "#FFFFFF"
}
- Наследовать настройки терминала по умолчанию:
"text": "none"
Полный пример
my-theme.json
{
"$schema": "https://opencode.ai/theme.json",
"defs": {
"bg": "#1E1E2E",
"fg": "#CDD6F4",
"primary": "#89B4FA",
"accent": "#F38BA8",
"success": "#7DB0E3",
"warning": "#F9E2AF"
},
"theme": {
"primary": {
"dark": "primary",
"light": "#005F87"
},
"accent": {
"dark": "accent",
"light": "#D7005F"
},
"background": {
"dark": "bg",
"light": "#FFFFFF"
},
"text": {
"dark": "fg",
"light": "#000000"
},
"border": {
"dark": "#313244",
"light": "#CCCCCC"
},
"syntaxKeyword": {
"dark": "primary",
"light": "#0000FF"
},
"syntaxString": {
"dark": "success",
"light": "#0053A6"
},
"syntaxComment": {
"dark": "#6C7086",
"light": "#999999"
}
}
}
Итог
Система тем OpenCode обладает следующими возможностями:
- Поддерживает встроенные темы, готовые к использованию сразу
- Поддерживает автоматическую адаптацию системы к терминалу
- Поддерживает пользовательские темы в формате JSON
- Поддерживает многоуровневый механизм переопределения
Если вы стремитесь к наилучшему опыту, рекомендуется:
- Включите truecolor в вашем терминале
- Предпочитайте системную тему или пользовательскую тему