aboutsummaryrefslogtreecommitdiff
path: root/docs/next/website/src
diff options
context:
space:
mode:
authorAlex <a.neyman17@gmail.com>2026-08-22 17:18:56 -0400
committerGitHub <noreply@github.com>2026-08-23 00:18:56 +0300
commitdb6f301f1301d85ca7a4271363760836f53ac0d0 (patch)
tree7ac8748407268190f3bea23190fb3cfb07bd4bf2 /docs/next/website/src
parent1d604329b0ded93d18fd6b27f72c7473d1fee20f (diff)
feat: add per-mode theme overrides (#2324)
* feat: add per-mode theme overrides allow [theme.custom.light] and [theme.custom.dark] blocks so custom overrides can differ per resolved appearance when auto_switch flips. precedence: theme defaults, then [theme.custom], then the block for the active mode. configs without the new blocks resolve unchanged. refs #837 * docs: complete per-mode theme documentation --------- Co-authored-by: Ogulcan Celik <ogulcancelik@gmail.com>
Diffstat (limited to 'docs/next/website/src')
-rw-r--r--docs/next/website/src/content/docs/configuration.mdx17
-rw-r--r--docs/next/website/src/content/docs/ja/configuration.mdx17
-rw-r--r--docs/next/website/src/content/docs/zh-cn/configuration.mdx17
-rw-r--r--docs/next/website/src/data/config-reference.json228
4 files changed, 279 insertions, 0 deletions
diff --git a/docs/next/website/src/content/docs/configuration.mdx b/docs/next/website/src/content/docs/configuration.mdx
index 5d4a7ab1..222a5d68 100644
--- a/docs/next/website/src/content/docs/configuration.mdx
+++ b/docs/next/website/src/content/docs/configuration.mdx
@@ -277,6 +277,23 @@ yellow = "#f9e2af"
Color values accept hex, named colors, `rgb(r,g,b)`, or reset aliases like `reset`, `default`, `none`, and `transparent`.
+When `auto_switch` is enabled, optional light and dark subtables layer on top of the shared custom colors:
+
+```toml
+[theme.custom]
+accent = "#89b4fa"
+
+[theme.custom.light]
+panel_bg = "#eff1f5"
+text = "#4c4f69"
+
+[theme.custom.dark]
+panel_bg = "#1e1e2e"
+text = "#cdd6f4"
+```
+
+The active palette is applied in this order: built-in theme, `[theme.custom]`, then `[theme.custom.light]` or `[theme.custom.dark]`. Omitting the mode subtables preserves the existing shared override behavior.
+
## UI and sidebar
The sidebar is the main Herdr dashboard. Search `ui.` in the [Config reference](/docs/config-reference/) for sizing, collapsed mode, Agent panel ordering, mouse behavior, pane borders, and other presentation settings.
diff --git a/docs/next/website/src/content/docs/ja/configuration.mdx b/docs/next/website/src/content/docs/ja/configuration.mdx
index e93c20bd..b2af36c8 100644
--- a/docs/next/website/src/content/docs/ja/configuration.mdx
+++ b/docs/next/website/src/content/docs/ja/configuration.mdx
@@ -273,6 +273,23 @@ yellow = "#f9e2af"
色の値には、hex、名前付きの色、`rgb(r,g,b)`、または `reset`、`default`、`none`、`transparent` のようなリセットエイリアスが使えます。
+`auto_switch` が有効な場合は、ライト/ダーク別のサブテーブルを共有カスタム色の上に重ねられます:
+
+```toml
+[theme.custom]
+accent = "#89b4fa"
+
+[theme.custom.light]
+panel_bg = "#eff1f5"
+text = "#4c4f69"
+
+[theme.custom.dark]
+panel_bg = "#1e1e2e"
+text = "#cdd6f4"
+```
+
+有効なパレットには、組み込みテーマ、`[theme.custom]`、`[theme.custom.light]` または `[theme.custom.dark]` の順で適用されます。モード別のサブテーブルを省略すると、既存の共有上書きの挙動が維持されます。
+
## UI とサイドバー
サイドバーは Herdr のメインダッシュボードです。サイズ、折りたたみモード、Agent パネルの並び順、マウスの挙動、ペインの境界線、その他の表示設定については、[設定リファレンス](/docs/config-reference/)で `ui.` を検索してください。
diff --git a/docs/next/website/src/content/docs/zh-cn/configuration.mdx b/docs/next/website/src/content/docs/zh-cn/configuration.mdx
index 97a923a0..46db8777 100644
--- a/docs/next/website/src/content/docs/zh-cn/configuration.mdx
+++ b/docs/next/website/src/content/docs/zh-cn/configuration.mdx
@@ -273,6 +273,23 @@ yellow = "#f9e2af"
颜色值支持十六进制、命名颜色、`rgb(r,g,b)`,以及 `reset`、`default`、`none`、`transparent` 等重置别名。
+启用 `auto_switch` 后,可以通过明暗模式子表在共享自定义颜色之上应用不同的覆盖值:
+
+```toml
+[theme.custom]
+accent = "#89b4fa"
+
+[theme.custom.light]
+panel_bg = "#eff1f5"
+text = "#4c4f69"
+
+[theme.custom.dark]
+panel_bg = "#1e1e2e"
+text = "#cdd6f4"
+```
+
+有效调色板按以下顺序应用:内置主题、`[theme.custom]`,然后是 `[theme.custom.light]` 或 `[theme.custom.dark]`。省略模式子表时,会保留现有的共享覆盖行为。
+
## UI 与侧边栏
侧边栏是 Herdr 的主仪表盘。在[配置参考](/docs/config-reference/)中搜索 `ui.`,可查看尺寸、折叠模式、Agent 面板排序、鼠标行为、窗格边框和其他显示设置。
diff --git a/docs/next/website/src/data/config-reference.json b/docs/next/website/src/data/config-reference.json
index 1765c10f..147d7056 100644
--- a/docs/next/website/src/data/config-reference.json
+++ b/docs/next/website/src/data/config-reference.json
@@ -171,6 +171,234 @@
"type": "color",
"default": "unset",
"description": "Override the peach color token on top of the base theme. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.accent",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the accent color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.panel_bg",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the panel_bg color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.sidebar_bg",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the sidebar_bg color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.active_row_bg",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the active_row_bg color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.selection_bg",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the selection_bg color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.surface0",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the surface0 color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.surface1",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the surface1 color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.surface_dim",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the surface_dim color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.overlay0",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the overlay0 color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.overlay1",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the overlay1 color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.text",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the text color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.subtext0",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the subtext0 color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.mauve",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the mauve color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.green",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the green color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.yellow",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the yellow color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.red",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the red color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.blue",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the blue color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.teal",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the teal color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.light.peach",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the peach color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.accent",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the accent color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.panel_bg",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the panel_bg color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.sidebar_bg",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the sidebar_bg color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.active_row_bg",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the active_row_bg color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.selection_bg",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the selection_bg color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.surface0",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the surface0 color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.surface1",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the surface1 color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.surface_dim",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the surface_dim color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.overlay0",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the overlay0 color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.overlay1",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the overlay1 color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.text",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the text color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.subtext0",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the subtext0 color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.mauve",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the mauve color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.green",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the green color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.yellow",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the yellow color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.red",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the red color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.blue",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the blue color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.teal",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the teal color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
+ },
+ {
+ "key": "theme.custom.dark.peach",
+ "type": "color",
+ "default": "unset",
+ "description": "Override the peach color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
}
]
},