russian-text-quality skill
A Claude Code skill that finds Russian-language bugs in code: incomplete plural forms, case errors in string concatenation, terminology drift
- 6 ★ on the repository
- Last commit
- MIT
Minimal access
Why this level
- The skill consists of instructions and references
- Locale edits are applied only after approval
Install
- Works in
- Services
In your terminal, with SkillFoxx CLI
npx skillfoxx add skills/russian-text-qualityDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewMinimal accessThe tool runs nothing and makes no network calls.
- The skill consists of instructions and references
- Locale edits are applied only after approval
This is third-party code. Review the repository files before installing.
What it does
The skill checks Russian strings in code and locale files against five rules. The strictest one requires all CLDR plural categories in i18next, ICU and vue-i18n keys and reports gaps as errors. Warnings cover one term translated differently across files, concatenation after words that govern a different case, and mixed comment languages. Transliterated identifiers such as polzovatel are flagged as info. It activates only when the project contains Cyrillic, and writes the report in English so non-Russian reviewers can act on it.
Who it is for. For teams whose code is in English while the UI or comments are in Russian.
Good fit when
- Before merging a PR that touches ru.json, ru.yml or ru.po
- An agent translated or refactored locale files and plurals need checking
- You want consistent terms, for example two different words for user across files
Not a fit when
- You need typography, spelling or yo/ye restoration
- You need UX copy editing rather than structural checks
Example request
Review this project for Russian text quality issues, especially plural forms in locale filesLimitations
The legacy i18next v3 _plural suffix is not supported. Concatenation and transliteration checks are heuristic and produce false positives, so they are never reported as errors. Terms are compared by suffix stripping without full morphology, and nested ICU constructs may be missed. Auto-fix exists only for plurals and only after approval.
How to disable. Delete the russian-text-quality folder or symlink from ~/.claude/skills.
FAQ
Will it add noise on English-only projects?
No, it runs only when code or locale files contain Cyrillic, otherwise it reports that it is not activated.
How do I lock a term translation?
Copy the example glossary to .claude/russian-glossary.yml and set the preferred terms; it overrides automatic drift detection.
Discussion
No questions or reviews yet.
Related
All Russian text toolsRussian proofreading skill covering typography, bureaucratic style and 17 signs of machine text, with a rule cited for every fix
An editor skill and linter for Russian AI-written text: bureaucratese, empty openers, clichés and chatbot wrappers
An editor for AI-written Russian text: removes bureaucratese, cliches and 38 AI patterns while keeping facts intact
Simplified Technical Russian
Упрощенный технический русский (УТР)
A skill that makes the agent write code comments, docs and error messages by the Simplified Technical Russian rules of GOST R 58049-2017, with a linter
A Russian text editing skill: removes bureaucratese, calques and AI mannerisms without touching facts, with a scanner to measure the edit
Infostyle
infostyle
A Russian copy-editing skill based on Ilyakhov's information style: cuts filler and cliches, adds facts, shows before and after
README in short
The README explains which Russian-language bugs linters and models miss and lists five checks with severity levels. Installation is a clone plus a symlink into ~/.claude/skills. It describes activation conditions, a sample report and a candid list of limitations. For typography and spelling the author points to separate tools such as ru-text and yaspeller. MIT license.
README badge
Original SKILL.md
--- name: russian-text-quality description: Use when reviewing or writing code that contains Russian-language UI strings, i18n locale files (ru.json, ru.yml, ru.po), Russian comments, or transliterated identifiers (polzovatel, tovar, kolichestvo). Triggers on mixed English-code + Russian-content projects. Does not cover typography, spelling, or ё/е. --- # Russian Text Quality Review ## Overview Detects Russian-language quality bugs that general linters and LLMs consistently miss in code: broken pluralization in i18n locale files, case-agreement bugs in string concatenation, terminology drift across files, transliterated identifiers, and inconsistent language mixing. Code-aware, not prose-focused. **Core principle:** structural Russian mistakes that survive `eslint` and type-checks but break production UIs. Prose quality is delegated to other tools. ## Activation Run this skill ONLY if BOTH conditions hold: 1. The project contains **≥10 total Cyrillic characters** across code and locale files (excluding `node_modules`, `.git`, `dist`, `build`, and `.gitignore`d paths). 2. At least one file contains **≥5 consecutive Cyrillic characters** (rules out single stray tokens). If either condition fails, respond with `Not activated — no Russian content detected` and stop. Never run on English-only projects. Full activation pseudo-code: `references/activation-logic.md`. ## What this skill checks | # | Check | Detection | Severity | Confidence | |---|---|---|---|---| | 1 | **Plural structure** — i18next/ICU/vue-i18n Russian plurals missing CLDR categories (`one`/`few`/`many`/`other`) | Deterministic parse of locale files + call sites | **Error** | High | | 2 | **Terminology drift** — same source key translated to different Russian terms across files, or known-synonym variance | Normalized value comparison | Warning | Medium | | 3 | **Concatenation case bug** — Russian preposition/verb governing non-nominative case followed by string interpolation | Heuristic regex + closed trigger list | Warning | Medium | | 4 | **Language mixing** — inconsistent comment language in a single file, or inline Russian literals outside i18n | Per-file line-language ratios | Warning | Medium | | 5 | **Transliterated identifiers** — `polzovatel`, `tovar`, `kolichestvo` etc. | Dictionary + phonotactic + file-context (3-tier) | Info | Low |