Skip to content

Feature Request: Custom Logo Configuration #12016

@jobrk

Description

@jobrk

Feature hasn't been suggested before.

  • I have verified this feature I'm about to request hasn't been suggested before.

Describe the enhancement you want to request

Summary

Add the ability to customize or disable the OpenCode logo displayed in the CLI and TUI. This is useful for enterprise deployments, custom branding, or users who prefer a minimal interface.

Motivation

  • Enterprise branding: Organizations deploying OpenCode internally may want to display their own branding
  • White-labeling: Enables custom distributions of OpenCode with different branding
  • Minimal UI: Some users may prefer to disable the logo entirely for a cleaner interface

Proposed Solution

Add a logo configuration option that accepts:

  • false - Disable the logo entirely
  • A file path (string) - Path to a custom logo text file

Example Configuration

{
  "logo": "~/.config/opencode/my-logo.txt"
}

Or to disable:

{
  "logo": false
}

Logo File Format

Plain text ASCII art. ANSI escape codes are supported in CLI output but stripped in the TUI (which uses theme-based colors).

╔══════════════════════════════════════╗
║       My Company Name                ║
║       Powered by OpenCode            ║
╚══════════════════════════════════════╝

Implementation Details

  • Custom logo appears in:
    • TUI home screen
    • opencode web command
    • opencode upgrade command
    • opencode uninstall command
  • CLI help (--help) continues to show the default OpenCode logo (set synchronously at startup)
  • Falls back to default logo if configured file is not found

Alternatives Considered

  1. Environment variable only: Less flexible than config file approach
  2. Inline logo in config: Would make config files unwieldy for multi-line ASCII art
  3. Theme-based logos: More complex, could be a future enhancement

Metadata

Metadata

Assignees

Labels

discussionUsed for feature requests, proposals, ideas, etc. Open discussion

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions