#373
i18n: full English localization of UI, backend, roles and docs
Summary
Full English localization of the platform while keeping Chinese protocol/wire markers byte-identical for compatibility with historical rows and frontend regexes.
Backend
fmt.Errorf, zap logs and handler responses localized by request language viarespondError/respondErrorf/i18nTextdual-accept- Protocol markers (
toolGuardBlockedPrefix, prepare.go validation errors matched bymultiAgentHTTPErrorStatus) kept Chinese byte-identical - Seed skills, roles, agents and tools translated
Roles / agents / skills / tools
- Chinese-named role YAMLs renamed to English, prompts/descriptions/tags translated (Chinese docs preserved as
README_CN.md)
Frontend (web/static/js)
- en-US/ru-RU i18n keys filled with contract across all frontend JS
- All remaining Chinese in
web/static/jstranslated across 40 files (~5,400 lines): inline comments, doc blocks, trailing comments,t()fallback literals, multiline prompt templates (${placeholder}preserved), knowledge.jsdata-i18ntext nodes - Functional regexes made dual-accept: legacy Chinese alternative kept for historical rows, English alternative added (assets sheet/backend messages, chat execute/call-OpenAI failed prefixes, webshell dir/ls parsing, monitor timeout/guard-block/soft-wait, knowledge not-enabled, hitl destructive-score, workflows keyword matching)
- All
.jspassnode --check; remaining CJK is only in deliberate legacy/dual-accept regexes and git-tracked test fixtures
Docs / plugins
- README, CHANGELOG, docs/zh-CN, Burp extension labels, browser-extension panel
Database
- All rows previously holding Chinese content translated; 0 CJK characters remain across all tables
Backends dual-accept both Chinese (historical rows) and English (new rows) text; frontend .test.cjs suites and backend package tests pass (only pre-existing environment failures remain).
👤 Generated with Claude Code