Chatbox i18n Translator
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.
This skill should be used when editing, translating, or reviewing an Astro-style i18n string corpus (files of the form export default { en: {...}, ru: {...} } under src/i18n/strings), or when the…
$ npx skills add glebis/claude-skills --skill i18n-studio -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install glebis/claude-skills i18n-studio --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/glebis/claude-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/i18n-studio .claude/skills/i18n-studio && 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-studio" agent skill from https://github.com/glebis/claude-skills/tree/main/i18n-studio into .claude/skills/i18n-studio/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-studio", 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/glebis/claude-skills/tree/main/i18n-studioType 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 glebis/claude-skills --skill i18n-studio -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install glebis/claude-skills i18n-studio --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/glebis/claude-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/i18n-studio .agents/skills/i18n-studio && 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-studio" agent skill from https://github.com/glebis/claude-skills/tree/main/i18n-studio into .agents/skills/i18n-studio/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-studio", 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 glebis/claude-skills --skill i18n-studio -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install glebis/claude-skills i18n-studio --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/glebis/claude-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/i18n-studio .cursor/skills/i18n-studio && 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-studio" agent skill from https://github.com/glebis/claude-skills/tree/main/i18n-studio into .cursor/skills/i18n-studio/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-studio", 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/glebis/claude-skills.git --path i18n-studio--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 glebis/claude-skills --skill i18n-studio -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install glebis/claude-skills i18n-studio --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/glebis/claude-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/i18n-studio .gemini/skills/i18n-studio && 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-studio" agent skill from https://github.com/glebis/claude-skills/tree/main/i18n-studio into .gemini/skills/i18n-studio/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-studio", 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 glebis/claude-skills i18n-studioInstalls 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 glebis/claude-skills --skill i18n-studio -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/glebis/claude-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/i18n-studio .github/skills/i18n-studio && 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-studio" agent skill from https://github.com/glebis/claude-skills/tree/main/i18n-studio into .github/skills/i18n-studio/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-studio", 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 glebis/claude-skills --skill i18n-studio -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install glebis/claude-skills i18n-studio --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/glebis/claude-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/i18n-studio .opencode/skills/i18n-studio && 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-studio" agent skill from https://github.com/glebis/claude-skills/tree/main/i18n-studio into .opencode/skills/i18n-studio/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "i18n-studio", 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-studioThis skill should be used when editing, translating, or reviewing an Astro-style i18n string corpus (files of the form export default { en: {...}, ru: {...} } under src/i18n/strings), or when the…
I18n Studio is an agent skill from glebis/claude-skills. This skill should be used when editing, translating, or reviewing an Astro-style i18n string corpus (files of the form export default { en: {...}, ru: {...} } under src/i18n/strings), or when the user wants to fill in missing translations, audit coverage, accept/review translations, propagate an edit across duplicate strings, get translation candidates, bulk-edit UI microcopy, or open a visual/keyboard translation editor. Drives the standalone i18n Studio tool at ~/aiprojects/i18n-studio (AST-safe minimal-diff…
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including scripts and reference files (for example `references/api.md`).
It sits in Frontend & Design, covering Translation and Internationalization. It works with Astro. The repository describes itself as: Collection of Claude Code skills for enhanced AI workflows. The licence is MIT.
Read from SKILL.md and the folder at commit 3b88261. 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.
Ships 1 file in scripts/ (JavaScript), which the agent can run.
Shell commands in SKILL.md call:
nodenpmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, 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 Studio loads about 1.9k tokens when it runs, and up to ~3k if it reads all its reference files. Until then it costs about 161 tokens; SKILL.md has 833 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); the scripts in this folder are not scanned.
The full file from glebis/claude-skills at commit 3b88261, republished under its MIT licence (© glebis). 833 words, ~1,859 tokens.
.claude/skills/i18n-studio/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.i18n Studio edits Astro-style i18n string files safely: files shaped like
export default { en: {...}, ru: {...} } where leaves are UI strings. It writes
one string literal at a time through a ts-morph AST, so every save is a minimal
one-line diff with all surrounding formatting preserved, and a running dev server
hot-reloads. It also produces Claude translation candidates that preserve HTML
tags and tone.
Use it instead of hand-editing .ts string files with Edit/sed: manual edits
risk formatting churn, broken quoting/escaping, and desynced languages. The AST
layer avoids all three.
Applies to any repo whose translations follow the export default { <lang>: {...} }
convention, not one specific project.
The tool defaults to <cwd>/src/i18n/strings. Confirm the real location before
starting (it may differ):
ls src/i18n/strings 2>/dev/null || find . -path '*/i18n/strings' -type d -not -path '*/node_modules/*' | headUse that path as --dir below. Ensure the tool is installed once:
cd ~/ai_projects/i18n-studio && npm install.
Start it in the background, pointed at the target strings dir, and wait until it is reachable:
node ~/ai_projects/i18n-studio/server.mjs --dir "$PWD/src/i18n/strings" --port 4331 &
until curl -sf http://localhost:4331/api/strings >/dev/null; do sleep 0.5; donePass --langs en,ru,de if the corpus has languages beyond the en,ru default,
and --voice "<one-line tone brief>" to steer suggestion style. Stop it with
kill %1 (or the printed PID) when finished.
For a human to edit visually, start the server the same way and share the URL
(http://localhost:4331); do not try to click the web UI programmatically.
scripts/i18n.mjs (dependency-free, Node 18+) wraps the API. Point it at the
server with I18N_URL if the port is not 4331.
S=~/ai_projects/claude-skills/i18n-studio/scripts/i18n.mjs
node "$S" audit --to ru # status breakdown + untranslated/missing
node "$S" audit --to ru --pending # also list translated-but-unaccepted
node "$S" get Hero.ts en h1 # read a value
node "$S" suggest Hero.ts h1 --from en --to ru # 3 candidates (proposals only)
node "$S" set Hero.ts ru h1 "Сначала — результат" # AST-safe write (→ pending)
node "$S" accept Hero.ts ru h1 # mark reviewed/accepted
node "$S" unaccept Hero.ts ru h1 # back to pending
node "$S" ignore Dream.ts ru s2 # mark n/a — "doesn't need translation"
node "$S" unignore Dream.ts ru s2 # back to untranslated/pendingTypical translation-fill loop: audit --to <lang> to see the breakdown and gaps →
for each gap, suggest from the source language → review the candidate (see rules
below) → set the chosen value → accept once it is right.
Acceptance is a durable review state (sidecar .i18n-status.json); editing a
value automatically drops it back to pending. A cell can instead be marked n/a
("doesn't need translation" — a name, a fragment, a shared token): ignore drops
it out of the untranslated/pending gap counts so it stops nagging, and — unlike
accept — works on an empty/untranslated cell. Like acceptance it is value-coupled,
so translating the cell later re-surfaces it. For a human reviewer, the fullscreen
review mode (below) is faster than the CLI.
The raw routes (GET /api/strings, POST /api/save, POST /api/suggest), data
shapes, dot-path rules, config flags, and a no-server library path are documented
in references/api.md. Read it before doing anything beyond the CLI above.
For a human, the browser UI is the fast path. Start the server, share the URL, and point out:
×N). The n/a
toggle marks a string as not needing translation — it works even on empty cells and
removes them from the untranslated queue.review ▸): steps through the filtered set one at a time,
fully keyboard driven with a visible legend — ←/→ or j/k move, a accept &
next, p pending, i mark n/a & next, e edit, s suggest, 1/2/3 apply a suggestion, u undo,
Esc close, > focus. Tab lands on the edit field; clicking the file name
filters the list to that file. This is the tool for grinding through thousands.Shift + .): hides all chrome, leaving only the strings.set, verify the candidate keeps the
same HTML tags and entities as the source (<b>, <span ...>, , ',
—) in the same positions, and does not translate code identifiers or
proper nouns. Suggestions are proposals, not decisions.${...} come back editable: true, interp: true (badged ${…}); translate
the prose but keep every ${...} placeholder exactly. Only non-string leaves
(numbers, identifiers) stay read-only and must be edited in the .ts source.weeks.2.sessions.1.t.© glebis, 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 2 other files (scripts, references) in i18n-studio of glebis/claude-skills.
Open the folder on GitHubat commit 3b88261
I18n Studio 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 Studio this skillglebis/claude-skills | 390 | — | ~1.9k | 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 | |
| Translation ReviewDevolutions/UniGetUI | 26k | — | ~1.3k | Automated safety check: Pass | MIT |
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.
Devolutions/UniGetUI
Reviews UniGetUI .json language files for localization quality, detects parity issues, English-equal entries, wrong-script content, and cross-language outliers, then generates a dataset for…
langflow-ai/langflow
Add, change, or review user-facing text in the Langflow frontend using the i18n system (i18next / react-i18next).
glebis/claude-skills
Runs a human-first workflow for labeling PII spans in a transcript, then scores inter-annotator agreement and drafts an adjudicated gold set.
glebis/claude-skills
Automates a dedicated, logged-in Chrome instance per profile without ever closing the user's own open tabs or browser windows.
glebis/claude-skills
This skill should be used when conducting comprehensive research on any topic using the OpenAI Deep Research API.
glebis/claude-skills
This skill should be used for elimination-style research where the user wants to choose from a shortlist of products, tools, services, vendors, or other options using explicit criteria, numeric…
glebis/claude-skills
Generates a self-contained HTML presentation with article and slides modes, ElevenLabs voiceover narration and optional GPT Image 2 illustrations.
glebis/claude-skills
Writes fictional but realistic coaching or therapy session transcripts for evals, demos and few-shot examples, in several modalities and export formats.
Works with
Categories
This skill should be used when editing, translating, or reviewing an Astro-style i18n string corpus (files of the form export default { en: {...}, ru: {...} } under src/i18n/strings), or when the…. I18n Studio is an agent skill from glebis/claude-skills.} } under src/i18n/strings), or when the user wants to fill in missing translations, audit coverage, accept/review translations, propagate an edit across duplicate strings, get translation candidates, bulk-edit UI microcopy, or open a visual/keyboard translation editor.
I18n Studio fits situations like: wants to fill in missing translations; accept/review translations; propagate an edit across duplicate strings; get translation candidates.
Run `npx skills add glebis/claude-skills --skill i18n-studio -a claude-code`. Or copy the skill folder (i18n-studio in glebis/claude-skills) into .claude/skills/i18n-studio in your project. Claude Code loads it when a task matches its description.
Run `npx skills add glebis/claude-skills --skill i18n-studio -a codex`. Or copy the skill folder (i18n-studio in glebis/claude-skills) into .agents/skills/i18n-studio 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 glebis/claude-skills --skill i18n-studio -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-studio, .gemini/skills/i18n-studio, .github/skills/i18n-studio and .opencode/skills/i18n-studio in your project.
Going by SKILL.md and its folder, I18n Studio needs JavaScript for the scripts in its folder and the command-line tools its instructions call (node and npm). Our summary lists: Node.js.
SKILL.md contains no URLs. Its commands use npm, 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
I18n Studio is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.4k 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 1.1k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with I18n Studio: Chatbox i18n Translator (chatboxai/chatbox, 42k stars), Internationalization Workflow with i18n (iOfficeAI/AionUi, 33k stars), Enforce Rules For I18n (moeru-ai/airi, 50k stars) and Claude Desktop Chinese Localization (javaht/claude-desktop-zh-cn, 7.5k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
glebis (a GitHub user) maintains it in glebis/claude-skills, which has 390 GitHub stars. The repository holds 92 skills in this directory. The repository was last updated on October 8, 2026.
Source: glebis/claude-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.