Claude Code Custom Themes: Create, Edit, and Ship Named Terminal Themes

Claude Code

Claude Code v2.1.118 introduces a fully extensible theme system, allowing developers to create and switch between named custom themes from the /theme command, hand-edit theme definitions as JSON files stored in ~/.claude/themes/, and bundle themes inside Claude Code plugins for distribution. Previously, theming was limited to a small set of built-in options with no way to define custom color palettes. This release transforms theming from a static selector into a first-class customization surface that the broader plugin ecosystem can build on.


Custom Terminal Themes Are Now a First-Class Feature in Claude Code

Anthropic introduced a full custom theme system in Claude Code v2.1.118, moving beyond the previous handful of built-in options and enabling developers to define, name, store, and distribute their own terminal color palettes.

How the New Theme System Works

The /theme command now acts as both a selector and a creation interface. Developers can:

  1. Create named themes directly from within /theme β€” define a palette, give it a name, and it persists across sessions
  2. Hand-edit JSON theme files stored in ~/.claude/themes/ β€” each file maps Claude Code's UI elements to color values, supporting rgb(r,g,b) notation or standard ANSI color names
  3. Bundle themes in plugins β€” any Claude Code plugin can include a themes/ directory, allowing theme authors and teams to distribute palettes alongside skills, hooks, or MCP configurations

The new "Auto (match terminal)" option is the zero-configuration entry point: it detects the terminal's current dark or light preference and adjusts Claude Code's color scheme automatically.

Why This Matters

Claude Code's previous theming model served basic accessibility needs β€” colorblind-friendly variants, ANSI-only palettes for older terminals β€” but offered no way to align Claude Code's colors with a developer's existing terminal theme. Many developers spend effort maintaining a coherent color scheme across their editor, shell, and tooling. Until now, Claude Code sat outside that system.

With JSON-editable theme files and plugin distribution, the community can now build and share themes the same way it builds and shares skills. The claude-code-themes GitHub topic already hosts community-authored palettes; this update provides the native infrastructure to use them without third-party workarounds.

Plugin Authors: Ship Themes with Your Plugin

For plugin authors, the themes/ directory support is particularly significant. A plugin that installs a specialized workflow can now also install a matching visual theme, giving users a coherent experience without requiring manual color configuration. Theme distribution follows the same marketplace and install flow as other plugin assets.

Related Change: /cost and /stats Merged into /usage

The same release consolidates the /cost and /stats commands into /usage, which now presents both cost and token statistics in a tabbed interface. Both legacy commands remain as shortcuts that open the relevant tab, so existing workflows continue to work. This is a minor but welcome simplification for users who previously had to remember which command showed which metric.