CtrlK
BlogDocsLog inGet started
Tessl Logo

i18n-translate

Complete and maintain frontend i18n translations for this project. Covers finding missing translation keys, detecting untranslated entries, and adding translations for all supported locales (en, zh, zh-TW, fr, ja, ru, vi). Use for any task involving frontend locale files, missing translation keys, untranslated UI text, `t(...)` keys, `useTranslation()`, static i18n keys, button/label/ toast/dialog/placeholder/validation copy, or adding/fixing even a single i18n key. Use when review findings mention missing i18n, when new UI text needs translation, or when the user asks to add translations, fix i18n, or complete missing translations. Always load and follow this skill before translating, adding locale keys, or editing frontend i18n files.

72

Quality

88%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

77%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This is a strong, highly actionable skill with excellent workflow clarity and validation steps. Its main weakness is verbosity: the hard constraint rationale is over-explained, some translation guidelines state things Claude already knows, and the full scripts are inlined rather than referenced. The repeated emphasis on never editing JSON directly (stated at least 4 times) is understandable given the failure mode but contributes to bloat.

Suggestions

Reduce repetition of the 'never edit locale files directly' constraint — state it once clearly in the Hard Constraint section and reference it briefly elsewhere instead of restating it in Scope, Small Fix Path, Step 4, and Key Rules.

Trim the translation guidelines by removing explanations Claude already knows (e.g., UI overflow awareness, what katakana is for) and keep only project-specific conventions like the brand name list and the formal register requirement for Russian.

Consider extracting the three full scripts into bundle files (e.g., scripts/find-missing-keys.mjs.template) and referencing them from SKILL.md with brief descriptions of what each does, reducing the inline content significantly.

DimensionReasoningScore

Conciseness

The skill contains valuable project-specific information but is noticeably verbose in places. The 'Hard Constraint' section repeats the no-direct-edit rule multiple times with extensive justification Claude doesn't need. The translation guidelines section explains concepts like 'UI overflow' that Claude already understands. The full scripts (~100 lines) could potentially be referenced rather than inlined, though their inclusion is defensible since no bundle files exist.

3 / 5

Actionability

Fully executable with copy-paste ready scripts for finding missing keys, finding untranslated entries, and adding translations. Commands are specific (cd web, node scripts/xxx.mjs, bun run i18n:sync), file paths are exact, and the newKeys template shows the precise data structure needed. The small fix path and full workflow both provide concrete, executable steps.

5 / 5

Workflow Clarity

The workflow is clearly sequenced (sync → find missing → find untranslated → add translations → verify). Step 5 includes explicit validation (run find-missing-keys.mjs to verify 'All t() keys found'), followed by a mandatory sync step. The 'Small Fix Path' provides a clear abbreviated workflow. The hard constraint about script-only writes serves as a guardrail against a known failure mode, with clear error recovery guidance.

5 / 5

Progressive Disclosure

The content is well-structured with clear sections and headers, but the three full scripts (~100+ lines total) are inlined rather than being placed in separate referenced files. For a skill of this length (~200+ lines), the scripts could be in bundle files with the SKILL.md providing an overview and references. However, since no bundle files exist, inlining is the only option, which limits the score. The internal organization with sections (Preflight, Scope, Overview, Small Fix, Workflow, Guidelines, Rules) is good.

3 / 5

Total

16

/

20

Passed

Description

100%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

This is an excellent skill description that comprehensively covers what the skill does, when to use it, and includes abundant natural trigger terms. It specifies concrete actions, exact supported locales, relevant code patterns, and UI element types, making it highly distinguishable and easy for Claude to select appropriately.

DimensionReasoningScore

Specificity

Lists multiple concrete actions: finding missing translation keys, detecting untranslated entries, adding translations for all supported locales. Also specifies the exact locales (en, zh, zh-TW, fr, ja, ru, vi) and UI element types (button/label/toast/dialog/placeholder/validation copy).

5 / 5

Completeness

Clearly answers 'what' (find missing keys, detect untranslated entries, add translations for supported locales) and 'when' with explicit trigger phrases ('Use when review findings mention missing i18n, when new UI text needs translation, or when the user asks to add translations, fix i18n, or complete missing translations').

5 / 5

Trigger Term Quality

Comprehensive coverage of natural terms users would say: 'i18n', 'translations', 'locale files', 'missing translation keys', 'untranslated UI text', 't(...) keys', 'useTranslation()', 'add translations', 'fix i18n', plus specific UI element types. Includes both technical terms and natural language variations.

5 / 5

Distinctiveness Conflict Risk

Highly specific niche: frontend i18n translations with explicit scope limited to locale files, specific function patterns (t(...), useTranslation()), and named locales. Very unlikely to conflict with other skills due to the narrow, well-defined domain.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation11 / 11 Passed

Validation for skill structure

No warnings or errors.

Repository
langbot-app/langbot-new-api
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.