Benchmark Translate
shapeshift/web
Run a quality benchmark of the /translate skill by selecting stratified test keys, capturing ground truth, translating, judging with sub-agents, and compiling a regression report.
Run Django translation workflow - extract untranslated strings, translate them to 59 languages using parallel translator subagents, and apply back to PO files.
$ npx skills add forthecraft/drf-auth-kit --skill translate -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install forthecraft/drf-auth-kit translate --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/forthecraft/drf-auth-kit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/translate .claude/skills/translate && 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 "translate" agent skill from https://github.com/forthecraft/drf-auth-kit/tree/main/.claude/skills/translate into .claude/skills/translate/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate", 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/forthecraft/drf-auth-kit/tree/main/.claude/skills/translateType 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 forthecraft/drf-auth-kit --skill translate -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install forthecraft/drf-auth-kit translate --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forthecraft/drf-auth-kit.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/translate .agents/skills/translate && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "translate" agent skill from https://github.com/forthecraft/drf-auth-kit/tree/main/.claude/skills/translate into .agents/skills/translate/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate", 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 forthecraft/drf-auth-kit --skill translate -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install forthecraft/drf-auth-kit translate --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forthecraft/drf-auth-kit.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/translate .cursor/skills/translate && 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 "translate" agent skill from https://github.com/forthecraft/drf-auth-kit/tree/main/.claude/skills/translate into .cursor/skills/translate/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate", 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/forthecraft/drf-auth-kit.git --path .claude/skills/translate--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 forthecraft/drf-auth-kit --skill translate -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install forthecraft/drf-auth-kit translate --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forthecraft/drf-auth-kit.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/translate .gemini/skills/translate && 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 "translate" agent skill from https://github.com/forthecraft/drf-auth-kit/tree/main/.claude/skills/translate into .gemini/skills/translate/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate", 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 forthecraft/drf-auth-kit translateInstalls 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 forthecraft/drf-auth-kit --skill translate -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/forthecraft/drf-auth-kit.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/translate .github/skills/translate && 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 "translate" agent skill from https://github.com/forthecraft/drf-auth-kit/tree/main/.claude/skills/translate into .github/skills/translate/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate", 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 forthecraft/drf-auth-kit --skill translate -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install forthecraft/drf-auth-kit translate --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forthecraft/drf-auth-kit.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/translate .opencode/skills/translate && 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 "translate" agent skill from https://github.com/forthecraft/drf-auth-kit/tree/main/.claude/skills/translate into .opencode/skills/translate/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "translate", 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.
translateRun Django translation workflow - extract untranslated strings, translate them to 59 languages using parallel translator subagents, and apply back to PO files.
Translate is an agent skill from forthecraft/drf-auth-kit. Run Django translation workflow - extract untranslated strings, translate them to 59 languages using parallel translator subagents, and apply back to PO files. Use when adding new translatable strings or when user asks to translate.
Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `README.md`).
It sits in Writing & Content, covering Translation, Backend development and Subagents. It works with Django. The repository describes itself as: Modern Django REST Framework authentication toolkit with JWT cookies, social login, and 2FA support. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 587986f. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
BashReadWriteGlobTaskFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
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.
Translate loads about 2.4k tokens when it runs. Until then it costs about 61 tokens; SKILL.md has 516 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 noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Bash, Read, Write, Glob, TaskAutomated 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 forthecraft/drf-auth-kit at commit 587986f, republished under its MIT licence (© forthecraft). 516 words, ~2,414 tokens.
.claude/skills/translate/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Automates Django translation with parallel translator subagents and resume capability.
Parse $ARGUMENTS for:
--resume: Skip extraction, continue from existing temp/extracted/--parallel N: Number of parallel translator subagents (default: 4, range: 1-10)Example: $ARGUMENTS = "--resume --parallel 6" means resume mode with 6 parallel agents
Ensure we're in the drf-auth-kit directory:
pwdIf --resume NOT in arguments:
rm -rf temp/If --resume IS in arguments:
If --resume NOT in arguments:
python sandbox/manage.py makemessages --all./scripts/py_clean_and_extract.pyIf --resume IS in arguments:
ls temp/extracted/*.json | xargs -n 1 basenamels temp/translated/*.json 2>/dev/null | xargs -n 1 basename || echo ""Determine pending files:
Report:
📊 Translation Status:
- Total batch files: X
- Already translated: Y
- Pending translation: ZExtract parallel count from $ARGUMENTS:
--parallel N found: use N (clamp to 1-10)For each pending batch file, spawn a translator subagent:
parallel_limit = parsed from arguments (default: 4)
pending_files = [list of pending batch files]
active_agents = [] # [(agent_id, filename), ...]
completed = []
failed = []
# Spawn all agents up to parallel limit
FOR each file in pending_files (up to parallel_limit):
agent_id = Task(
subagent_type: "translator",
description: f"Translate {file}",
run_in_background: true,
prompt: f"""
Translate the Django message batch file: temp/extracted/{file}
Read the input file, translate ALL strings for ALL languages, and write to: temp/translated/{file}
Follow your translation guidelines for quality, placeholder preservation, and JSON formatting.
"""
)
active_agents.append((agent_id, file))
Report: "⏳ Spawned translator for {file}"
# Report initial status
Report: "📊 Status: 0/{len(pending_files)} completed, {len(active_agents)} active, {len(pending_files) - len(active_agents)} pending"
# Monitor completion by checking temp/translated/
WHILE active_agents:
Wait 10 seconds
# Check which files now exist in temp/translated/
completed_files_on_disk = list files in temp/translated/*.json (basenames only)
# Find newly completed agents
newly_completed = []
FOR each (agent_id, file) in active_agents:
IF file in completed_files_on_disk:
completed.append(file)
newly_completed.append(file)
active_agents.remove((agent_id, file))
# Report newly completed
IF newly_completed:
FOR each file in newly_completed:
Report: "✅ Completed {file}"
# Spawn next batch of agents if we have pending files
files_to_spawn = pending_files[len(completed):]
WHILE len(active_agents) < parallel_limit AND files_to_spawn:
file = files_to_spawn.pop(0)
agent_id = Task(
subagent_type: "translator",
description: f"Translate {file}",
run_in_background: true,
prompt: f"""
Translate the Django message batch file: temp/extracted/{file}
Read the input file, translate ALL strings for ALL languages, and write to: temp/translated/{file}
Follow your translation guidelines for quality, placeholder preservation, and JSON formatting.
"""
)
active_agents.append((agent_id, file))
Report: "⏳ Spawned translator for {file}"
# Progress report
total = len(pending_files)
Report: "📊 Progress: {len(completed)}/{total} completed, {len(active_agents)} active, {total - len(completed) - len(active_agents)} pending"
END WHILE
# Final verification
all_expected_files = pending_files
completed_files_on_disk = list files in temp/translated/*.json (basenames only)
failed = [file for file in all_expected_files if file not in completed_files_on_disk]
IF failed:
Report: "❌ Failed to translate: {failed}"
Report: "Run '/translate --resume' to retry failed files"
ELSE:
Report: "✅ All {len(completed)} batch files translated successfully!"After all translations complete (no failed files):
./scripts/py_apply_translations.pyReport results from script output
Final summary:
🎉 Translation Complete!
✅ Translated: X batch files
✅ Updated: Y languages
✅ Applied: Z strings/translate --resume to continueProvide clear, emoji-rich progress updates throughout:
📦 Extraction Phase
⏳ Running makemessages...
✅ Extracted messages for 59 languages
⏳ Cleaning and extracting untranslated strings...
✅ Created 12 batch files in temp/extracted/
- Total untranslated: 1,234 strings
- Languages: 45
🌐 Translation Phase (parallel: 4)
📊 Status: 0/12 completed, 0 active, 12 pending
⏳ Spawned translator for af-ar-az-be.json
⏳ Spawned translator for bg-bs-ca-cs.json
⏳ Spawned translator for cy-da-de-el.json
⏳ Spawned translator for es-et-fa-fi.json
📊 Status: 0/12 completed, 4 active, 8 pending
[Wait 10 seconds...]
Checking temp/translated/ for completed files...
✅ Completed af-ar-az-be.json
✅ Completed bg-bs-ca-cs.json
📊 Status: 2/12 completed, 2 active, 8 pending
⏳ Spawned translator for fr-gl-he-hi.json
⏳ Spawned translator for hr-hu-hy-id.json
📊 Status: 2/12 completed, 4 active, 6 pending
[Wait 10 seconds...]
Checking temp/translated/ for completed files...
✅ Completed cy-da-de-el.json
✅ Completed es-et-fa-fi.json
✅ Completed fr-gl-he-hi.json
📊 Status: 5/12 completed, 3 active, 4 pending
... (continue until all done) ...
Final verification: checking temp/translated/...
✅ All 12 batch files translated successfully!
📥 Application Phase
⏳ Applying translations to PO files...
✅ Applied 1,234 translations to 45 languages
✅ Generated MO files
🎉 Translation Complete!
✅ Translated: 12 batch files
✅ Updated: 45 languages
✅ Applied: 1,234 stringsTask(subagent_type: "translator", ...)run_in_background: true for parallel work/translate
→ Full workflow, 4 parallel translator subagents
/translate --parallel 6
→ Full workflow, 6 parallel translator subagents
/translate --resume
→ Skip extraction, translate remaining files with 4 parallel translator subagents
/translate --resume --parallel 8
→ Skip extraction, translate remaining files with 8 parallel translator subagentsAfter the final summary is shown and the workflow completes, DO NOT RESPOND to any "Agent completed" notifications that arrive afterward. The work is verified complete by checking files on disk. Background subagents may report completion late, but:
Any agent completion notifications after this point are informational only and require no response or acknowledgment.
Note: This skill uses the translator subagent defined in .claude/agents/translator.md. The subagent handles all translation logic, quality standards, and file I/O.
© forthecraft, 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 1 other file in .claude/skills/translate of forthecraft/drf-auth-kit.
Open the folder on GitHubat commit 587986f
Translate 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 |
|---|---|---|---|---|---|---|
| Translate this skillforthecraft/drf-auth-kit | 121 | — | ~2.4k | Automated safety check: Notes | MIT | |
| Benchmark Translateshapeshift/web | 206 | — | ~1.6k | Automated safety check: Pass | MIT | |
| Docs Leadlablup/backend.ai-webui | 133 | — | ~2.9k | Automated safety check: Pass | LGPL-3.0 | |
| Po Translatenatsukium/dotfiles | 106 | — | ~1.4k | Automated safety check: Pass | CC0-1.0 | |
| Saleor Django Schema Migrationsaleor/saleor | 23k | — | ~1k | Automated safety check: Pass | BSD-3-Clause | |
| Translate Bookdeusyu/translate-book | 2.1k | — | ~5.5k | Automated safety check: Notes | MIT |
shapeshift/web
Run a quality benchmark of the /translate skill by selecting stratified test keys, capturing ground truth, translating, judging with sub-agents, and compiling a regression report.
lablup/backend.ai-webui
A skill your agent uses whenever the user mentions docs, the manual, documentation, terminology, translations, or screenshots — including indirect mentions like "이 PR 문서 영향 봐줘", "문서 점검", "용어 통일"…
natsukium/dotfiles
Orchestrate English→Japanese translation of po/ja.po — classify, delegate translation/review to subagents, iterate until clean
saleor/saleor
Generates and splits Django schema migrations for Saleor with manage.py makemigrations, enforcing one new model or one field change per migration file.
deusyu/translate-book
Translate books (PDF/DOCX/EPUB) into any language using parallel sub-agents.
shang-zhu/violin
Dub a video into another language and generate subtitles using the default Together + Cartesia stack.
Works with
Categories
Run Django translation workflow - extract untranslated strings, translate them to 59 languages using parallel translator subagents, and apply back to PO files. Translate is an agent skill from forthecraft/drf-auth-kit. Run Django translation workflow - extract untranslated strings, translate them to 59 languages using parallel translator subagents, and apply back to PO files.
Translate fits situations like: adding new translatable strings; user asks to translate.
Run `npx skills add forthecraft/drf-auth-kit --skill translate -a claude-code`. Or copy the skill folder (.claude/skills/translate in forthecraft/drf-auth-kit) into .claude/skills/translate in your project. Claude Code loads it when a task matches its description.
Run `npx skills add forthecraft/drf-auth-kit --skill translate -a codex`. Or copy the skill folder (.claude/skills/translate in forthecraft/drf-auth-kit) into .agents/skills/translate 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 forthecraft/drf-auth-kit --skill translate -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/translate, .gemini/skills/translate, .github/skills/translate and .opencode/skills/translate in your project.
Going by SKILL.md and its folder, Translate needs the command-line tools its instructions call (python). Our summary lists: Python 3. Its frontmatter pre-approves these tools: Bash, Read, Write, Glob, Task.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Translate is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Translate: Benchmark Translate (shapeshift/web, 206 stars), Docs Lead (lablup/backend.ai-webui, 133 stars), Po Translate (natsukium/dotfiles, 106 stars) and Saleor Django Schema Migration (saleor/saleor, 23k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
forthecraft (a GitHub organization) maintains it in forthecraft/drf-auth-kit, which has 121 GitHub stars. The repository was last updated on August 10, 2026.
Source: forthecraft/drf-auth-kit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.