CtrlK
BlogDocsLog inGet started
Tessl Logo

i18n-localization

Internationalization and localization patterns. Detecting hardcoded strings, managing translations, locale files, RTL support.

48

Quality

51%

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

Fix and improve this skill with Tessl

tessl review fix ./plugins/AI-Agents-Safe-Coding-Skills/skills/i18n-localization/SKILL.md

The canonical home for this skill is i18n-localization in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

32%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 skill reads more like a general reference guide or cheat sheet on i18n concepts than an actionable skill for Claude. It spends tokens on concepts Claude already knows (definitions, when to use i18n, basic library usage) while lacking a concrete workflow for the stated purpose of detecting hardcoded strings and managing translations. The referenced checker script is not provided, undermining the skill's primary actionable component.

Suggestions

Remove the terminology table and 'When to Use i18n' decision table — Claude already knows these concepts. Use the saved tokens for a concrete workflow.

Provide the `scripts/i18n_checker.py` script in the bundle, or inline its logic, so the skill's primary action is actually executable.

Add a clear multi-step workflow: run checker → review findings → fix hardcoded strings → re-run checker to validate, with explicit validation checkpoints.

Replace generic best-practices lists with project-specific patterns showing exact translation key naming conventions, file structure rules, and ICU message format examples that go beyond what Claude already knows.

DimensionReasoningScore

Conciseness

The skill explains basic concepts Claude already knows (what i18n, L10n, locale, and RTL mean), includes a 'When to Use i18n' decision table that adds little value for Claude, and has several sections that are general knowledge rather than actionable project-specific guidance. The terminology table and project-type table are padding.

2 / 5

Actionability

Code examples for React, Next.js, Python, and CSS are concrete and executable, but they are basic snippets that Claude already knows. The referenced script `scripts/i18n_checker.py` is mentioned but not provided in the bundle, making it non-actionable. The checklist and best practices are helpful but generic rather than specific enough to be fully executable guidance.

3 / 5

Workflow Clarity

There is no clear multi-step workflow or sequenced process. The checklist at the end is a static list without validation steps or feedback loops. For a skill involving detecting hardcoded strings and managing translations (which could be a batch/destructive operation), there's no workflow showing how to run the checker, review results, fix issues, and re-validate.

2 / 5

Progressive Disclosure

The skill references `scripts/i18n_checker.py` but no bundle files are provided, making the reference unverifiable and non-functional. All content is inlined in a single file with no references to supporting documentation. The content is a monolithic collection of tables and snippets that could benefit from better organization into separate reference files.

2 / 5

Total

9

/

20

Passed

Description

70%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.

The description clearly identifies a distinct domain (i18n/l10n) with several concrete capabilities, making it reasonably effective for skill selection. Its main weaknesses are the lack of an explicit 'Use when...' clause and missing common abbreviations (i18n, l10n) that users frequently use when discussing this topic.

Suggestions

Add a 'Use when...' clause, e.g., 'Use when the user asks about internationalization, localization, translating UI strings, or supporting multiple languages.'

Include common abbreviations and synonyms: 'i18n', 'l10n', 'multi-language support', 'translation keys', and relevant file extensions like '.po', '.xliff', '.json locale files'.

DimensionReasoningScore

Specificity

Lists several specific actions: detecting hardcoded strings, managing translations, locale files, RTL support. These are concrete capabilities, though some could be more detailed (e.g., what format of locale files, what 'managing translations' entails specifically).

4 / 5

Completeness

Has a clear 'what' (detecting hardcoded strings, managing translations, locale files, RTL support) but no explicit 'when' clause. There's no 'Use when...' guidance to tell Claude when to select this skill.

3 / 5

Trigger Term Quality

Includes good natural keywords like 'internationalization', 'localization', 'hardcoded strings', 'translations', 'locale files', 'RTL'. Missing common abbreviations like 'i18n', 'l10n', and file extensions like '.po', '.json', '.xliff' that users might reference.

4 / 5

Distinctiveness Conflict Risk

Internationalization/localization is a very distinct niche. The specific triggers like 'hardcoded strings', 'translations', 'locale files', and 'RTL support' are unlikely to conflict with other skills.

5 / 5

Total

16

/

20

Passed

Validation

90%

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

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

10

/

11

Passed

Repository
administrakt0r/AI-Agents-Safe-Coding-Skills
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.