hermes - 💡(How to fix) Fix Chinese (Simplified) localization — community patch set, offer to contribute

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Fix Action

Fix / Workaround

We've been maintaining a community Chinese (Simplified) localization patch set for personal use. Here's a rough summary of what it covers:

Scope: ~820+ string patches across:

  • Mode A (direct string replacement): For pure UI strings with no side effects — source strings are patched to Chinese directly via a patch runner.
  • Mode B (display-layer lookup): For strings that also serve as logic keys (config persistence, dict membership, API parameters) — we keep the English key in the source and inject a lookup call at the render point. This avoids breaking logic while still showing Chinese in the UI. Example: approval popup descriptions are stored as English internally but localized at display time via localize_description().
RAW_BUFFERClick to expand / collapse

Chinese (Simplified) Localization — Community Implementation & Offer to Contribute

Hi! I noticed the recent i18n work landing in the repo — particularly #20231 (initial display.language support for zh/ja/de/es) and #22914 (gateway commands + web dashboard localization, now 16 locales). Great to see this getting first-class support!

What we've built locally

We've been maintaining a community Chinese (Simplified) localization patch set for personal use. Here's a rough summary of what it covers:

Scope: ~820+ string patches across:

ModuleCoverage
cli.pyCLI banners, spinner labels, tool progress messages, session reset/tip strings, approval popup descriptions
run_agent.pySelf-improvement review messages (💾 Self-improvement review), memory update labels (Memory updated, User profile updated)
gateway/platforms/base.pyApproval flow strings for messaging platforms
tools/approval.pyDangerous command description lookup table (_DANGER_DESC_I18N_ZH — 51 entries), with a localize_description() helper

Two translation strategies used:

  • Mode A (direct string replacement): For pure UI strings with no side effects — source strings are patched to Chinese directly via a patch runner.
  • Mode B (display-layer lookup): For strings that also serve as logic keys (config persistence, dict membership, API parameters) — we keep the English key in the source and inject a lookup call at the render point. This avoids breaking logic while still showing Chinese in the UI. Example: approval popup descriptions are stored as English internally but localized at display time via localize_description().

Current gap vs. upstream locales/zh.yaml

The official zh.yaml covers ~350 lines focused on gateway commands. Our patch set extends into the CLI layer and agent core which still has many hard-coded English strings not yet wired into the i18n key system.

Offer

If it would be helpful, we're happy to:

  1. Share our string inventory — the full list of UI-visible strings in cli.py / run_agent.py that aren't yet covered by locales/, as a starting point for extending the i18n key system.
  2. Help draft zh.yaml entries for the uncovered strings.
  3. Contribute the Mode B pattern (localize_description / display-layer lookup) as a reference for handling strings that double as logic keys.

Happy to open a PR if the team is interested, or just drop the data here if a lightweight reference would be more useful. Let us know what would be most helpful!

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - 💡(How to fix) Fix Chinese (Simplified) localization — community patch set, offer to contribute