[Feature] User-customizable UI themes for ZCode agent
Nobody has claimed this yet.
- Dominant language
- No language data
- Stars
- 22
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
Problem
ZCode currently exposes no way to customize the interface appearance. The only user-level config file (~/.zcode/cli/config.json) supports behavioral settings like hooks, but there is no theme, colors, or appearance key, and no theme file is documented. Users who want to personalize the agent's look (color palette, accent color, light/dark/custom variants) have no supported path — the UI is fixed by the compiled client.
Proposal
Add support for user-customizable UI themes. A few options, any of which would help:
- A
themesection in user settings (config.json), e.g.:{ "theme": { "preset": "tokyo-night", "accent": "#7aa2f7" } } - A standalone theme file at
~/.zcode/cli/theme.jsondefining a color palette (background, foreground, accents, syntax highlighting) that the client reads on startup. - A small set of built-in presets (e.g.
dark,light,solarized,monokai) switchable viaconfig.jsonor a/themecommand, with the option to define a custom palette on top.
Why
- Personalization improves long-form coding comfort (eye strain, contrast preference).
- Other agent CLIs are beginning to offer this; users coming from terminal-heavy workflows expect palette control.
- Keeps the change opt-in — default theme is unchanged for users who don't care.
Notes
Happy to help spec this out further if useful. Not sure whether the TUI/CLI client and the web client (chat.z.ai) share rendering — if so, one theme format could serve both.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the user-level settings at ~/.zcode/cli/config.json and determine whether the TUI/CLI client or web client owns theme rendering. Compare the proposed config, standalone theme file, presets, and /theme command before defining a single approach. Done means users can opt into documented light, dark, or custom appearance settings while the default theme remains unchanged.
Written by the indexing model from the issue text.
Assessment
- Domain
- cli, design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100