Files
omarchycn/default/themed/claude.json.tpl
T
19144983e5 Sync Omarchy themes to Claude Code (#6480)
* Sync Omarchy themes to Claude Code

Claude Code 2.1.118 added custom themes as JSON files in
~/.claude/themes, watched and hot-reloaded, so this follows the same
shape as the Pi integration (da53c0ff, bin/omarchy-theme-set-pi).

A claude.json template renders from each theme's colors.toml — no
per-theme files, so every stock and community theme is covered — and
omarchy-theme-set-claude copies the result into
~/.claude/themes/omarchy.json on theme switch, retinting running
sessions without a restart.

The theme just appears as "Omarchy" in the /theme picker, and picking
it once (or running omarchy-theme-set-claude --activate) makes every
future theme switch carry Claude Code along. No ~/.claude directory,
no-op.

* Respect custom Claude config directory

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
2026-08-01 13:06:19 -05:00

44 lines
1.7 KiB
Smarty

{
"name": "Omarchy",
"base": "{{ theme_type }}",
"overrides": {
"claude": "{{ accent }}",
"claudeShimmer": "{{ mix accent foreground 35% }}",
"text": "{{ foreground }}",
"inverseText": "{{ background }}",
"inactive": "{{ mix foreground background 40% }}",
"inactiveShimmer": "{{ mix foreground background 25% }}",
"subtle": "{{ muted }}",
"suggestion": "{{ cyan }}",
"permission": "{{ blue }}",
"permissionShimmer": "{{ mix blue foreground 35% }}",
"remember": "{{ yellow }}",
"success": "{{ green }}",
"error": "{{ red }}",
"warning": "{{ yellow }}",
"warningShimmer": "{{ mix yellow foreground 35% }}",
"merged": "{{ magenta }}",
"promptBorder": "{{ accent }}",
"promptBorderShimmer": "{{ mix accent foreground 35% }}",
"planMode": "{{ cyan }}",
"autoAccept": "{{ yellow }}",
"bashBorder": "{{ bright_yellow }}",
"ide": "{{ bright_cyan }}",
"diffAdded": "{{ mix background green 15% }}",
"diffRemoved": "{{ mix background red 15% }}",
"diffAddedDimmed": "{{ mix background green 8% }}",
"diffRemovedDimmed": "{{ mix background red 8% }}",
"diffAddedWord": "{{ mix background green 32% }}",
"diffRemovedWord": "{{ mix background red 32% }}",
"userMessageBackground": "{{ mix background foreground 6% }}",
"userMessageBackgroundHover": "{{ mix background foreground 10% }}",
"bashMessageBackgroundColor": "{{ mix background foreground 6% }}",
"memoryBackgroundColor": "{{ mix background foreground 6% }}",
"selectionBg": "{{ selection_background }}",
"rate_limit_fill": "{{ accent }}",
"rate_limit_empty": "{{ mix background foreground 20% }}",
"briefLabelYou": "{{ yellow }}",
"briefLabelClaude": "{{ accent }}"
}
}