anthropics / anthropics/claude-code

[FEATURE] Add Russian (ru-RU) to the shipped UI locale set

Đang mở
#94,485 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
area:ui duplicate enhancement
Ngôn ngữ chính
Python
Star
145k
Fork
23.1k
Chỉ số merge pull request
Chỉ số pull request đang chờ

Mô tả

### Preflight Checklist

- [X] I have searched existing requests and this feature hasn't been requested yet
- [X] This is a single feature request (not multiple features)

Russian localization was requested in #49570, #50680, #57465 and #69078. The stale bot closed all four without a decision, the last on 2026-09-14, and closed threads are locked. The general i18n request #31413 has been open since March. I am filing again because there is nowhere left to comment.

### Problem Statement

Claude Code ships eleven interface languages: en-US, de-DE, es-419, es-ES, fr-FR, hi-IN, id-ID, it-IT, ja-JP, ko-KR, pt-BR. Russian is not one of them.

On Ethnologue's 2026 figures Russian has 210 million speakers. That is ahead of four languages already shipping: German at 133 million, Japanese at 126 million, Korean at 82 million, Italian at 66 million. Whatever threshold produced the current eleven, Russian clears it.

Those speakers are not one market. Russian is an official language of the United Nations and an official or working language at the IAEA, WHO, ICAO, UNESCO and the World Bank. On Anthropic's own supported countries list it holds official, co-official or recognised minority status in nine: Kazakhstan, Kyrgyzstan, Tajikistan, Armenia, Czechia, Moldova, Romania, Slovakia and Ukraine. Uzbekistan, Azerbaijan, Georgia, Estonia, Latvia, Lithuania, Israel, Germany and the United States are supported too, each with a large Russian-speaking population.

Claude answers in Russian, and the app already maps a Russian system locale for dictation. Only the interface stays English: menus, dialogs, permission prompts, the sidebar, the Code tab. The `language` setting changes Claude's replies, not the UI, so the sole workaround is patching a signed application bundle and redoing it after every update.

### Proposed Solution

Add `ru-RU` to the locales the app ships and accepts. In the shipped macOS build the machinery already exists:

1. Interface strings are per-locale JSON catalogs in the app resources, one for the Electron shell, one for the renderer. A new language is a new catalog, not new code.
2. The shell discovers locales by listing those catalogs on disk, so it picks up a new one unchanged.
3. The renderer tests the requested locale against a fixed array and drops anything outside it. That array is the only code change.
4. Message call sites carry inline English defaults, so a partial catalog should fall back per key rather than break the UI. The high-traffic surfaces can land first and the rest follow.

If translation capacity is the constraint rather than engineering, an opt-in for an incomplete locale would still help, like the pseudo-locales already present in the renderer.

### Priority

Medium - Would be very helpful

### Feature Category

Configuration and settings

### Use Case Example

1. A developer in Almaty works in Russian, in a country where it is co-official and Claude is supported. They grant the desktop app access to a repository.
2. The trust prompt, the permission dialogs and the bypass permissions warning all arrive in English. Those decide what the agent may do on the machine, so a misread costs something real.
3. A Russian catalog renders them in the reader's language while paths, commands, flags and tool names stay untouched. The same holds in Riga, Tbilisi, Tel Aviv and Tashkent.

### Additional Context

Two commenters on #50680 argued that Russian should not be added, and that Russian speakers should lose access to AI tools, until the war ends. I will not argue politics here, only scope.

That objection targets a market Anthropic does not serve. Russia and Belarus are absent from the supported countries list. Every country named above sits inside it. A Russian catalog reaches Almaty, Tashkent, Kyiv, Riga, Tel Aviv and Berlin. It does not extend the product into Russia.

So the question is not whether to serve one country. It is whether tens of millions of speakers in supported countries read their permission dialogs in their own language or in English, for a reason that does not describe them.

The ask is one catalog and one array entry. Whether ru-RU is planned, blocked on translation capacity, or out of scope, an answer would be worth more than another stale close.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.