You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have verified this feature I'm about to request hasn't been suggested before.
Describe the enhancement you want to request
I would like better chat color customization in the OpenCode desktop GUI.
Currently, user messages, progress updates, tool output, and the final assistant response do not have sufficiently separate theme colors. This makes it difficult to quickly identify where a new instruction begins and where the actual final answer is shown.
Desired behavior:
User messages should have their own theme color.
The final assistant answer should have a different theme color.
Progress updates such as “I’m checking...”, tool output, and status messages should not be styled like the final answer.
The final answer should be detected using the completed assistant message and its last text part, for example when finish: "stop".
The colors should provide sufficient contrast for white text.
Technical suggestion:
Add a dedicated attribute for user messages, such as data-user-message.
Add a dedicated attribute for the final assistant answer, such as data-final-answer="true".
Add separate theme tokens, for example:
message-user-background
message-assistant-final-background
Detect the final answer in the UI code based on the message state instead of relying only on a fragile CSS selector such as :last-child.
Support loading custom GUI themes from a user theme directory or from opencode.json.
Custom themes should remain available after OpenCode updates without requiring users to modify the bundled app.asar file.
Thanks for the detailed request, @tyl0re! As I understand it, you'd like the desktop app to give user messages and the final assistant answer their own theme colors. Progress updates, tool output and status rows would then not look like the final answer. You'd also like to load custom GUI themes from a user theme directory or opencode.json, so they keep working after updates without editing app.asar. The maintainers will consider it.
This can't be done with a plugin today. Plugins can't change the desktop UI's styling or theme tokens, and can't register desktop themes.
Activity
opencodejr commentedon Oct 28, 2026
Thanks for the detailed request, @tyl0re! As I understand it, you'd like the desktop app to give user messages and the final assistant answer their own theme colors. Progress updates, tool output and status rows would then not look like the final answer. You'd also like to load custom GUI themes from a user theme directory or
opencode.json, so they keep working after updates without editingapp.asar. The maintainers will consider it.This can't be done with a plugin today. Plugins can't change the desktop UI's styling or theme tokens, and can't register desktop themes.
Related issues:
~/.config/opencode/themesaren't listed in the desktop/web theme picker (the custom-theme-loading part of your request)