v0.1.0 — Initial release
Initial public release.
What this is
A Claude Code skill that catches Russian-language bugs in code that general linters and LLMs consistently miss: broken pluralization in i18n locale files, case-agreement bugs in string concatenation, terminology drift, transliterated identifiers, and inconsistent language mixing. Code-aware, not prose-focused.
Five checks
- Plural structure — i18next / ICU MessageFormat / vue-i18n Russian plurals missing CLDR categories (
one/few/many/other). Includes Step 2.5 for locale values with{{count}}placeholders but no plural siblings. - Terminology drift — auto-detection of inconsistent Russian translations across locale files, plus optional user glossary at
.claude/russian-glossary.yml. - Concatenation case bug — heuristic detection of Russian prepositions/verbs governing non-nominative cases followed by string interpolation.
- Language mixing — per-file comment-language ratios and inline Russian string detection outside the i18n layer.
- Transliterated identifiers — three-tier detection (dictionary + phonotactic + file context).
Complements, does not compete
- Typography, UX writing, prose quality → use talkstream/ru-text alongside this skill.
- Spelling → use yaspeller.
- ё/е → use eyo.
Install
git clone https://github.com/Anic888/russian-text-quality.git ~/russian-text-quality
ln -s ~/russian-text-quality ~/.claude/skills/russian-text-qualityZero noise on English-only projects
The skill activates only when a project contains at least 10 Cyrillic characters and at least one cluster of 5+ consecutive Cyrillic characters. On pure-English codebases it stays silent.
See CHANGELOG.md for the full feature list, explicit non-goals, and known limitations.