Borrowing it
Nothing to install: this file belongs to alwkala/tidyfactor-design. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/alwkala/tidyfactor-design/main/.agents/skills/tidyfactor-design/references/commands/i18n.mdgit clone --depth 1 https://github.com/alwkala/tidyfactor-designWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/alwkala/tidyfactor-design/i18n)<a href="https://agentmods.dev/commands/alwkala/tidyfactor-design/i18n"><img src="https://agentmods.dev/badge/commands/alwkala/tidyfactor-design/i18n.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.00789 |
| Opus 5 | $0.00000 | $0.00394 |
| Sonnet 5 | $0.00000 | $0.00158 |
| Haiku 4.5 | $0.00000 | $0.00079 |
Grade A, and why
i18n scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 65 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Command: i18n — Arabic/RTL & Bilingual Sites
Purpose
Arabic support is a first-class capability of this skill, not a translation pass bolted on at the end — this command carries conventions drawn directly from prior production work, not generic RTL guidance. Run this as a real step in every project, even English-only ones, so the decision is explicit.
When to run it
- Always, once, as part of Phase 3 — even to explicitly confirm an English-only project isn't accidentally missing a locale decision.
- User phrasing: "make this bilingual", "add the Arabic version", "flip to
RTL",
i18n.
What it does
- Set
localization.defaultLocale/localization.rtlLocalesinbrand.json; sethtml[lang]/html[dir]per page accordingly. - Typography (non-negotiable): Arabic headings = El Messiri, Arabic
body = Tajawal, defined as
typography.families.arabicHeading/arabicBodytokens. Never Amiri for display/UI text — it reads as calligraphic/traditional, not modern-clean, and has consistently been wrong for this kind of work. - Bilingual sites: pick and document one pattern per project, don't
mix:
- Separate localized pages (
pages/home.html+pages/home.ar.html) — simplest, works with thepagecommand unchanged, best when Arabic and English content genuinely differ in length/structure. - Single page, dual-tree toggle (both language trees present, one
hidden via
[hidden]/dir-scoped CSS,proto-nav.jstoggle switches them) — best for a fast side-by-side client review of both locales.
- Separate localized pages (
- Mirroring vs. not: layout mirrors in RTL (nav, breadcrumbs, form
label alignment, icon-direction for "next/back" arrows) — but numerals,
embedded Latin brand names, and code/data stay LTR inside the RTL flow
(
unicode-bidi: isolatewhere needed). Don't blanket-mirror everything. Logo/wordmark and any Latin brand name stays unmirrored and identical across locales — brand identity doesn't flip. - Re-run the
componentsstates matrix mentally for RTL: hover/focus rings, dropdown open-direction, and modal close-button position all need to make sense mirrored, not just the text direction. - If
voice.doNotUse(brand voice rules) has a localized Arabic block, apply it — don't machine-translate the English voice guide.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago First seen · 65 lines · 0 tokens per session scan A 958a5ee82cba
i18n is a command published in the GitHub repository alwkala/tidyfactor-design (5 stars, last pushed 1mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 789 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
color-palette
Run the full colour workflow — tonal scales, semantic mapping, contrast checks, dark mode, and chart colours — and output a documented palette.
map-states
Model a component's states and transitions end to end — states, events, guards, and edge cases.
design-screen
Design a complete screen layout from a description or requirements.
responsive-audit
Audit a design's responsive behaviour across breakpoints — layout, touch targets, and content reflow.
type-system
Build a typography system end to end — scale, weights, line heights, measure, and responsive behaviour.
perf-audit
Performance audit for web applications.