Impeccable
bestofjs/bestofjs
A skill your agent uses when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt, animate, colorize, extract, or otherwise improve a…
MANDATORY for every coding agent and contributor touching localized content — keep all five localization surfaces (dashboard UI keys, wiki page, full mirrored guides, locale-aware formatting…
$ npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill i18n-parity -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install hoangsonww/Claude-Code-Agent-Monitor i18n-parity --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/hoangsonww/Claude-Code-Agent-Monitor.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.codex/skills/i18n-parity .claude/skills/i18n-parity && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "i18n-parity" agent skill from https://github.com/hoangsonww/Claude-Code-Agent-Monitor/tree/master/.codex/skills/i18n-parity into .claude/skills/i18n-parity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-parity", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/hoangsonww/Claude-Code-Agent-Monitor/tree/master/.codex/skills/i18n-parityType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill i18n-parity -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install hoangsonww/Claude-Code-Agent-Monitor i18n-parity --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hoangsonww/Claude-Code-Agent-Monitor.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.codex/skills/i18n-parity .agents/skills/i18n-parity && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "i18n-parity" agent skill from https://github.com/hoangsonww/Claude-Code-Agent-Monitor/tree/master/.codex/skills/i18n-parity into .agents/skills/i18n-parity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-parity", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill i18n-parity -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install hoangsonww/Claude-Code-Agent-Monitor i18n-parity --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hoangsonww/Claude-Code-Agent-Monitor.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.codex/skills/i18n-parity .cursor/skills/i18n-parity && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "i18n-parity" agent skill from https://github.com/hoangsonww/Claude-Code-Agent-Monitor/tree/master/.codex/skills/i18n-parity into .cursor/skills/i18n-parity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-parity", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/hoangsonww/Claude-Code-Agent-Monitor.git --path .codex/skills/i18n-parity--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill i18n-parity -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install hoangsonww/Claude-Code-Agent-Monitor i18n-parity --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hoangsonww/Claude-Code-Agent-Monitor.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.codex/skills/i18n-parity .gemini/skills/i18n-parity && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "i18n-parity" agent skill from https://github.com/hoangsonww/Claude-Code-Agent-Monitor/tree/master/.codex/skills/i18n-parity into .gemini/skills/i18n-parity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-parity", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install hoangsonww/Claude-Code-Agent-Monitor i18n-parityInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill i18n-parity -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/hoangsonww/Claude-Code-Agent-Monitor.git skills-src && mkdir -p .github/skills && cp -r skills-src/.codex/skills/i18n-parity .github/skills/i18n-parity && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "i18n-parity" agent skill from https://github.com/hoangsonww/Claude-Code-Agent-Monitor/tree/master/.codex/skills/i18n-parity into .github/skills/i18n-parity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-parity", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill i18n-parity -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install hoangsonww/Claude-Code-Agent-Monitor i18n-parity --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hoangsonww/Claude-Code-Agent-Monitor.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.codex/skills/i18n-parity .opencode/skills/i18n-parity && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "i18n-parity" agent skill from https://github.com/hoangsonww/Claude-Code-Agent-Monitor/tree/master/.codex/skills/i18n-parity into .opencode/skills/i18n-parity/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-parity", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
i18n-parityMANDATORY for every coding agent and contributor touching localized content — keep all five localization surfaces (dashboard UI keys, wiki page, full mirrored guides, locale-aware formatting…
I18n Parity is an agent skill from hoangsonww/Claude-Code-Agent-Monitor. MANDATORY for every coding agent and contributor touching localized content — keep all five localization surfaces (dashboard UI keys, wiki page, full mirrored guides, locale-aware formatting, language switchers) in parity across every supported language. Use automatically (without being asked) whenever you add or change user-visible UI copy, add an i18n key, edit README-EN.md or a localized guide, edit wiki/index.html, or add a language surface.
Its SKILL.md is about 3.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including reference files (for example `agents/openai.yaml`, `references/new-language-checklist.md` and `references/translation-style.md`).
It sits in Frontend & Design, covering Internationalization. The repository describes itself as: 🚀 A real-time monitoring dashboard for Claude Code & Codex, built with SQLite3, Node.js, Express, React, Vite, TailwindCSS, & WebSockets. It tracks sessions, agent activity… The licence is MIT.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit a06db03. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npmbashnpxclaudeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm and npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
I18n Parity loads about 3.4k tokens when it runs, and up to ~7.6k if it reads all its reference files. Until then it costs about 115 tokens; SKILL.md has 1,617 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from hoangsonww/Claude-Code-Agent-Monitor at commit a06db03, republished under its MIT licence (© hoangsonww). 1,617 words, ~3,411 tokens.
.claude/skills/i18n-parity/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Mirror. The canonical copy of this skill — and the
i18n-audit.shscript it tells you to run — live at.claude/skills/i18n-parity/. Keep the two in sync; edit the canonical copy first.
This repository is localized on five independent surfaces, each with its own mechanism. A change that lands on one and not the others leaves the product half-translated: the English falls through, and the gap is invisible to anyone working in English. This skill states the invariant, maps every surface to the exact files, and gives one command that proves parity.
The invariant: English is the source of truth on every surface, and no change is done until every supported language carries it in the same PR. A fallback to English is a safety net, never a completed translation.
Supported languages are declared in one place — supportedLngs in
client/src/i18n/index.ts. Today:
en, zh, vi, ko, es. Everything below derives from that list; the
audit script reads it rather than hard-coding.
| # | Surface | English source of truth | Translations live in | Automated gate |
|---|---|---|---|---|
| 1 | Dashboard UI | client/src/i18n/locales/en/*.json | client/src/i18n/locales/<xx>/*.json (same 15 namespaces) | client/src/i18n/__tests__/i18n.test.ts — key, type, and interpolation-token parity |
| 2 | Wiki page | English text in the wiki/index.html DOM | wiki/script.js (T, ATTRIBUTE_TRANSLATIONS, META, languageLabels, the two language ladders) + wiki/i18n-content.js (window.__WIKI_CONTENT_I18N, both the body bundles and plain) | client/tests/wiki-i18n.test.ts — live-DOM prose coverage, inline-tag preservation, block-length budgets, asset-version sync |
| 3 | Full mirrored guides | README-EN.md | README-CN.md (zh), README-VN.md (vi), README-KO.md (ko), README-ES.md (es) | partial — scripts/i18n-audit.sh (existence, heading count, cross-links) and server/__tests__/plugins-marketplace.test.js (documented counts); prose parity is review-only |
| 4 | Language switchers | — | client/src/components/Sidebar.tsx, client/src/lib/paletteCommands.ts, the two .lang-select-menu blocks in wiki/index.html, nav.json languageNames / languageShort | scripts/i18n-audit.sh |
| 5 | Locale-aware formatting | — | client/src/lib/format.ts (SupportedLanguage union, getCurrentLanguage() whitelist, getCurrentLocale() BCP-47 map) | client/src/lib/__tests__/format.test.ts |
Verified against the tree — do not go looking for translation hooks in these, and do not add them without being asked:
index.html has no i18n layer. Do not add
data-lang markup; put localized long-form content in the wiki instead. Its
one language-aware element is the Languages (en/zh/…) stat label, which just
enumerates the codes.README.md is a concise English-only entry
point. It links every complete language guide but is not itself mirrored.
Full technical content belongs in README-EN.md and its four translations.client/index.html is an English shell: <html lang="en">,
og:locale=en_US, and English <title>/meta. The React app never reassigns
document.documentElement.lang when the user switches language — a known gap,
not something a translation PR is expected to fix.bin/ccam.js + cli/), the MCP server (mcp/), the Express server
(server/), the desktop shell (desktop/), the VS Code extension, and the
statusline contain no i18n wiring at all. Their output is English.client/src/lib/event-summary.ts and event-grouping.ts build tool-event
headlines and bullets from English template literals (Last message: …,
3 lines stdout, 2 matches). Their MODULE_GUIDE boilerplate claims strings
belong in i18n JSON, but neither file imports i18next. They sit outside the
key system today; do not "fix" them as part of a localization change.format.ts
helpers are used. Most components call toLocaleString() /
toLocaleString(undefined, …) directly, which follows the browser locale
rather than the chosen UI language. In new code prefer getCurrentLocale()
from format.ts; leave existing call sites alone unless asked.Find what you touched in the left column and ship everything in the right column in the same PR.
| You changed | You must also do |
|---|---|
| Added/renamed a UI string or i18n key | Add the key to en and every other locale in the same namespace file. Same key path, same value type, same {{interpolation}} tokens. |
Added a new namespace (new *.json) | Create it for every locale, then register the imports, the resources entry per language, and the ns array in client/src/i18n/index.ts. |
Added user-visible wiki text in wiki/index.html | Follow .claude/rules/wiki-i18n.md: scannable layer (the PLAIN selector set — .logo-sub, .section-label, .nav-section, .nav-empty, .stat-label, .t-label, h2/h3/h4, th, .hero-desc, plus .nav-link / .hero-badge trailing text nodes) → T in wiki/script.js; body prose (the HTML_SEL set — p, li, td, th, captions, .callout-body > strong, .route-desc, footer) → wiki/i18n-content.js keyed by whitespace-normalized innerHTML; new alt/aria-label/title/placeholder → ATTRIBUTE_TRANSLATIONS. Then bump CACHE_NAME in wiki/sw.js and the matching ?v= query strings. |
Edited the English-only landing README.md | Keep it concise and ensure it still links README-EN.md and every localized full guide. Do not copy landing-page prose into the full guides. |
Edited a section of README-EN.md | Mirror the same edit at the corresponding section of README-CN.md, README-VN.md, README-KO.md, and README-ES.md. All four, every time. |
| Changed behavior that the README/wiki document (env var, event type, route, CLI command, feature) | Run the update-project-docs (.claude/skills/update-project-docs/SKILL.md) skill — it owns the change→docs mapping — then come back here for the translation propagation it triggers. |
| Changed a documented count (plugins, skills, namespaces, languages) | The count can appear in the landing README, all five full guides, ARCHITECTURE.md, docs/*.md, index.html, wiki/index.html, wiki/i18n-content.js, and server/__tests__/plugins-marketplace.test.js. Grep the old number repo-wide; update every hit. |
This is a large, exact, mechanical change. Read
references/new-language-checklist.md
and work through it top to bottom — it lists every file, in dependency order,
with the exact edit for each.
The three things contributors most often ship incomplete, stated up front:
README-<XX>.md is a full mirror of
README-EN.md — every section, every table row, every code block, every mermaid
diagram, in the same order. Do not summarize, do not drop "less important"
sections, do not stop halfway. Diff the heading list against README-EN.md
before you open the PR — the audit script compares heading counts, which
catches a truncated mirror but not a reordered or silently condensed one.<xx> bundle in wiki/i18n-content.js (thousands of body strings), a
full <xx> block in T, META, and every entry of ATTRIBUTE_TRANSLATIONS
in wiki/script.js. A locale that only fills T renders a page with
translated headings over English paragraphs, which is worse than English.Never translate: code inside <code>/backticks, commands, file and directory
paths, URLs, env-var names, HTTP methods and status codes, CLI flags, code
identifiers, numbers with units, brand and product names (Claude Code, MCP,
Codex), Claude Code hook event names (PreToolUse, Stop, …), and Claude
Code tool names (Bash, Agent, Read, Edit). Translate only the prose
around them. A block that is entirely code or identifiers needs no wiki
entry — it correctly falls back to English.
Two different things are spelled Agent. The Claude Code tool named
Agent (alongside Bash, Read, Edit) is an identifier and stays literal in
every locale, everywhere it appears — hook-event tables, tool lists, event
names. The UI noun for an agent (common:agent / common:subagent) is
product vocabulary with a per-locale contract, and only that noun has the
Spanish exception below. Never carry the exception into the tool name.
The UI noun's contract, asserted by client/src/i18n/__tests__/i18n.test.ts:
zh, vi, and ko keep Agent / Subagent literal; es renders them
agente / subagente. A new locale must decide this explicitly and add its
row to that test.
Terminology, per-locale conventions, and the shared glossary live in
references/translation-style.md. Read it
before translating; drifting terminology across pages is the most common
review comment on localization PRs.
client/tests/wiki-i18n.test.ts parses wiki/script.js by exact source
markers. It slices the file between literal strings — " const T = " …
"\n\n const PLAIN", " const ATTRIBUTE_TRANSLATIONS = " …
"\n const ATTR", " const META = " … "\n const trH" — and evals
what it finds. Renaming, reordering, or re-indenting those declarations
breaks the test with a confusing error. Add locales inside the existing
objects; leave the declaration lines alone.localStorage["wiki-lang"], not a URL
parameter. There is no ?lang= support. First visit falls back to a
navigator.language prefix ladder in wiki/script.js. To preview a locale,
use the switcher, or run
localStorage.setItem("wiki-lang", "<xx>") in the console and reload.The canonical copy — and both scripts — live at .claude/skills/i18n-parity/.
It is mirrored, with links rewritten to repo-root-relative paths and an
agents/openai.yaml interface added, to:
.agents/skills/i18n-parity/ (the shared/OpenAI skill tree).codex/skills/i18n-parity/ (Codex)Editing this skill means regenerating the mirrors — edit the canonical copy, then run:
bash .claude/skills/i18n-parity/scripts/sync-agent-mirrors.shi18n-audit.sh runs that script in --check mode, so a stale mirror is a
reported gap rather than silent drift. The mirrors carry no scripts: they point
back at the canonical ones by repo-root path.
# 1. Cross-surface parity: locale sets, namespace files, key parity, switcher
# entries, wiki bundles, full-guide mirrors and cross-links, agent-skill mirrors.
bash .claude/skills/i18n-parity/scripts/i18n-audit.sh
# 2. UI key/type/interpolation parity + locale formatting
npm run test:client
# 3. Wiki live-DOM coverage, inline tags, metadata, cache versions
cd client && npx vitest run tests/wiki-i18n.test.ts && cd ..
# 4. Documented counts asserted against the source tree
npm run test:server
# 5. The static wiki files and locale JSON are Prettier-managed
npm run formati18n-audit.sh exits non-zero and names the exact file and locale for every
gap. Every check is a structural one — a named thing is present or it is not —
with a single exception: the wiki/i18n-content.js bundle-size check is a
stub detector (it flags a locale holding under 60% of the largest bundle's
entries). Exact per-string wiki coverage is asserted by
client/tests/wiki-i18n.test.ts, which walks the live DOM.
State explicitly which surfaces you updated and which you intentionally skipped
(with the reason), per the repo's verification policy in CLAUDE.md.
grep -rn "<neighbouring English text>" client/src/i18n/locales/en wiki/i18n-content.js wiki/script.js.CACHE_NAME / ?v= bump means
returning visitors never see the translation you just shipped.© hoangsonww, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (references) in .codex/skills/i18n-parity of hoangsonww/Claude-Code-Agent-Monitor.
Open the folder on GitHubat commit a06db03
I18n Parity next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| I18n Parity this skillhoangsonww/Claude-Code-Agent-Monitor | 1.1k | — | ~3.4k | Automated safety check: Pass | MIT | |
| Impeccablebestofjs/bestofjs | 3.1k | 26 repos | ~2.6k | Automated safety check: Pass | MIT | |
| Chatbox i18n Translatorchatboxai/chatbox | 42k | — | ~508 | Automated safety check: Pass | GPL-3.0 | |
| Internationalization Workflow with i18niOfficeAI/AionUi | 33k | 1 repos | ~1.9k | Automated safety check: Pass | Apache-2.0 | |
| Enforce Rules For I18nmoeru-ai/airi | 50k | — | ~1.5k | Automated safety check: Pass | MIT | |
| Claude Desktop Chinese Localizationjavaht/claude-desktop-zh-cn | 7.5k | — | ~1.6k | Automated safety check: Pass | MIT |
bestofjs/bestofjs
A skill your agent uses when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt, animate, colorize, extract, or otherwise improve a…
chatboxai/chatbox
Translates new or changed i18n keys from a Chatbox Pro diff, staged changes or a commit range, writing the locale JSON files directly with a built-in glossary.
iOfficeAI/AionUi
Standards for keeping all user-facing text translatable: read the i18n config first, use namespaced keys, reuse shared strings and follow the key naming rules.
moeru-ai/airi
Review pending AIRI translations on Crowdin in a batch, then sync them into the repository.
javaht/claude-desktop-zh-cn
Adds missing Simplified and Traditional Chinese translations to the Claude Desktop Chinese patch across three layers, then checks how many mappings actually hit.
jd-opensource/taro-ui
Guides installing, configuring, styling and using taro-ui (At* components) in Taro apps for WeChat, Alipay, H5 and React Native.
hoangsonww/Claude-Code-Agent-Monitor
Choose and apply the correct semantic version bump for this repository.
hoangsonww/Claude-Code-Agent-Monitor
Define a spend budget for Claude Code and, optionally, create a cost alert rule that fires when usage crosses the limit, via POST /api/alerts/rules on the Agent Monitor dashboard.
hoangsonww/Claude-Code-Agent-Monitor
Analyze prompt-cache effectiveness for Claude Code usage from the Agent Monitor dashboard — cache hit rate (totalcacheread / (totalcacheread + totalinput)), cachewrite vs cacheread reuse, cache-read…
hoangsonww/Claude-Code-Agent-Monitor
Break down Claude Code costs using the Agent Monitor pricing engine.
hoangsonww/Claude-Code-Agent-Monitor
Render the multi-agent orchestration DAG for a session — parent→child subagent edges, tree depth, and fan-out — from the Agent Monitor workflow intelligence API.
hoangsonww/Claude-Code-Agent-Monitor
Quick dashboard health and status overview — checks the Agent Monitor API (port 4820), reports session/agent/event counts from /api/stats, confirms WebSocket connectivity, reads the redacted hook…
Categories
MANDATORY for every coding agent and contributor touching localized content — keep all five localization surfaces (dashboard UI keys, wiki page, full mirrored guides, locale-aware formatting…. I18n Parity is an agent skill from hoangsonww/Claude-Code-Agent-Monitor. MANDATORY for every coding agent and contributor touching localized content — keep all five localization surfaces (dashboard UI keys, wiki page, full mirrored guides, locale-aware formatting, language switchers) in parity across every supported language.
I18n Parity fits situations like: tasks that involve Internationalization.
Run `npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill i18n-parity -a claude-code`. Or copy the skill folder (.codex/skills/i18n-parity in hoangsonww/Claude-Code-Agent-Monitor) into .claude/skills/i18n-parity in your project. Claude Code loads it when a task matches its description.
Run `npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill i18n-parity -a codex`. Or copy the skill folder (.codex/skills/i18n-parity in hoangsonww/Claude-Code-Agent-Monitor) into .agents/skills/i18n-parity in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill i18n-parity -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/i18n-parity, .gemini/skills/i18n-parity, .github/skills/i18n-parity and .opencode/skills/i18n-parity in your project.
Going by SKILL.md and its folder, I18n Parity needs the command-line tools its instructions call (npm, bash, npx and claude).
SKILL.md contains no URLs. Its commands use npm and npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
I18n Parity is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.4k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with I18n Parity: Impeccable (bestofjs/bestofjs, 3.1k stars), Chatbox i18n Translator (chatboxai/chatbox, 42k stars), Internationalization Workflow with i18n (iOfficeAI/AionUi, 33k stars) and Enforce Rules For I18n (moeru-ai/airi, 50k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
hoangsonww (a GitHub user) maintains it in hoangsonww/Claude-Code-Agent-Monitor, which has 1,058 GitHub stars. The repository holds 78 skills in this directory. The repository was last updated on October 10, 2026.
Source: hoangsonww/Claude-Code-Agent-Monitor on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.