Skip to content

[FEATURE]: Add TUI/Chamber interface localization (i18n) support #39846

Closed as not planned

Description

@krolikbezobraznik-sys

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

text

Description

Currently, the OpenCode TUI/Chamber interface is entirely in English. There is no way to switch the UI language to other languages (e.g., Russian, Chinese, German, etc.). This makes the tool less accessible for non-English-speaking developers.

Proposed Feature

Add a localization (i18n) system to the TUI/Chamber interface that allows users to switch the UI language. The feature should include:

  1. Language configuration option in both tui.json and opencode.json:
    {
      "locale": "ru-RU"
    }

Localized UI strings for all TUI elements:

Command names and descriptions (e.g., /undo, /help, /themes)
Status bar messages (e.g., "Build mode", "Plan mode")
Dialog/confirmation messages
Permission prompts (e.g., "Allow editing?")
Error and warning messages
Help dialog content
Session list, model list, and other list views
Translation files — a set of locale JSON files (e.g., locales/ru-RU.json, locales/zh-CN.json) that can be contributed to the repository.

Language switcher — either a command (/language) or a keyboard shortcut to switch between installed languages.

Fallback to English — if a string is not translated for the selected locale, fall back to the default English text.

Why This Matters
Non-English-speaking developers would benefit from a native-language interface
Makes OpenCode accessible to a wider global audience
Follows the pattern of many modern CLIs (e.g., npm, nvm, dotnet CLI) that support localization
The OpenCode documentation site already has a language selector with Russian and Chinese support — the TUI should follow suit
Related
The documentation site at opencode.ai already has a language selector (English, Русский, 中文, etc.)
This is a pure TUI/Chamber feature request — not about agent responses or instructions, but about the UI chrome itself
Suggested Implementation Approach
Create a locales/ directory with en-US.json as the default locale
Add a locale field to tui.json schema
Replace all hardcoded UI strings with t() function calls that look up the current locale
Accept community contributions of additional locale files via PRs

Activity

  1. github-actions commented on Jul 31, 2026

    @github-actions
    Contributor

    This issue might be a duplicate of existing issues. Please check:

    Please review those issues and consider whether your request is already covered. If so, add your support there via a reaction or comment rather than opening a new issue.

  2. github-actions commented on Oct 1, 2026

    @github-actions
    Contributor

    To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions