Themes 主题系统
概述
Themes(主题)是 JSON 文件,定义 TUI 的颜色。
主题位置
| 类型 | 路径 |
|---|---|
| 内置 | dark、light |
| 全局 | ~/.pi/agent/themes/*.json |
| 项目 | .pi/themes/*.json |
| CLI | --theme <path> |
选择主题
方式 1: /settings 交互选择
方式 2: settings.json
{
"theme": "my-theme"
}
首次运行时,Pi 会检测终端背景色自动选择 dark 或 light。
创建自定义主题
mkdir -p ~/.pi/agent/themes
vim ~/.pi/agent/themes/my-theme.json
{
"$schema": "https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
"name": "my-theme",
"vars": {
"primary": "#00aaff",
"secondary": 242
},
"colors": {
"accent": "primary",
"border": "primary",
"success": "#00ff00",
"error": "#ff0000",
"warning": "#ffff00",
"text": "",
"thinkingText": "secondary",
"userMessageBg": "#2d2d30",
"toolDiffAdded": "#00ff00",
"toolDiffRemoved": "#ff0000",
"syntaxComment": "secondary",
"syntaxKeyword": "primary",
"syntaxFunction": "#00aaff",
"syntaxVariable": "#ffaa00"
}
}
颜色值
可以使用:
- 十六进制:
"#00aaff" - 颜色名:
"red"、"blue" - 变量引用:
"primary"(引用 vars 中的定义) - 数字(256 色终端):
242
常用颜色 Token
| Token | 说明 |
|---|---|
text | 主文本颜色 |
accent | 强调色 |
border | 边框颜色 |
success | 成功色 |
error | 错误色 |
warning | 警告色 |
muted | 暗淡文字 |
userMessageBg | 用户消息背景 |
toolDiffAdded | 差异新增 |
toolDiffRemoved | 差异删除 |
syntaxKeyword | 语法关键词 |
syntaxFunction | 语法函数 |
syntaxComment | 语法注释 |