主题与自定义颜色
选择内置或 system 主题,设置 truecolor,并按层级加载自定义主题 JSON。
默认主题为 opencode。可以选择其他内置主题、跟随终端的 system,或提供自己的主题 JSON。
终端颜色与主题选择
完整调色板需要终端支持 24-bit truecolor。官方建议检查 echo $COLORTERM 是否输出 truecolor 或 24bit,必要时设置 COLORTERM=truecolor;环境变量本身不能让不支持的终端获得该能力。
在 tui.json 使用 theme,例如:
{
"$schema": "https://opencode.ai/tui.json",
"theme": "system"
}Themes 页提到 /theme,TUI 命令参考列出 /themes;两处名称不一致。本页优先给出明确的配置方式,交互命令以当前版本帮助为准,不假定两个名称都存在。
System 与内置主题
system 根据终端背景生成灰阶,使用 ANSI 0–15 色,并以 none 保留默认文本和背景。适合已有终端配色的用户。
官方内置示例还包括 tokyonight、everforest、ayu、catppuccin、catppuccin-macchiato、gruvbox、kanagawa、nord、matrix、one-dark;列表会增加,以实际选择器为准。
自定义主题位置
同名主题按以下顺序覆盖,后者优先:
- 内置主题。
~/.config/opencode/themes/*.json或$XDG_CONFIG_HOME/opencode/themes/*.json。- 项目根
.opencode/themes/*.json。 - 当前工作目录
.opencode/themes/*.json。
配置文件名决定自定义主题名称。不要将当前目录和项目根不同的场景简化为只有一层项目主题。
JSON 颜色格式
主题 schema 为 https://opencode.ai/theme.json。可选 defs 定义复用色值,theme 设置实际颜色字段。
支持十六进制颜色、0–255 ANSI 色号、颜色引用、dark/light 分支和 none。text: "none" 使用默认前景,background: "none" 使用默认背景或透明效果。
官方完整样例覆盖基础色、边框、diff、Markdown 与语法高亮。定制时同时检查这些内容在明暗背景下的对比,不能只调整主色就假定所有代码和差异文本都清楚可读。