Agent skill

Translation Sync

by kdeldycke in kdeldycke/dotfiles

Detect stale translations in readme..md and contributing..md files.

BSD-2-ClauseAuto-check: notesWriting & Content

Install Translation Sync

skills CLI
$ npx skills add kdeldycke/dotfiles --skill translation-sync -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install kdeldycke/dotfiles translation-sync --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/kdeldycke/dotfiles.git skills-src && mkdir -p .claude/skills && cp -r skills-src/dotfiles/.agents/skills/translation-sync .claude/skills/translation-sync && rm -rf skills-src

Use ~/.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/

Facts

Skill name
translation-sync
GitHub stars
173
Token cost
~1.7k tokens
SKILL.md length
716 words
Files
1
Skills in repo
25
Repo updated
First seen
Licence
BSD-2-Clause

At a glance

Detect stale translations in readme..md and contributing..md files.

  • Works in 6 steps: Discover translation pairs → Structural comparison → Content drift detection → …
  • Tasks that involve Translation
  • SKILL.md covers Context and Instructions
  • Reaches img.shields.io

What it does

Translation Sync is an agent skill from kdeldycke/dotfiles. Detect stale translations in readme..md and contributing..md files. Compare their structure and content against the English source, then draft new translations for the changed sections.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Designed for Claude Code. Recommended model: Sonnet.

It sits in Writing & Content, covering Translation. It works with GitHub. The repository describes itself as: 🍎 macOS dotfiles for Python developers. The licence is BSD-2-Clause.

When your agent uses it

  • Tasks that involve Translation

Example prompts

  • “/translation-sync”

Requirements

  • Compatibility (from SKILL.md): Designed for Claude Code. Recommended model: Sonnet.
  • Pre-approved tools (allowed-tools): Bash, Read, Grep, Glob, Agent

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Discover translation pairs
  2. Structural comparison
  3. Content drift detection
  4. Staleness report
  5. Draft translations for stale sections
  6. Validate language badges

What it can do on your machine

Read from SKILL.md and the folder at commit 7947d0f. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read
    • Grep
    • Glob
    • Agent

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • img.shields.io

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Designed for Claude Code. Recommended model: Sonnet.

    From compatibility in the SKILL.md frontmatter.

Context cost

Translation Sync loads about 1.7k tokens when it runs. Until then it costs about 51 tokens; SKILL.md has 716 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~51
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

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.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read, Grep, Glob, Agent

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.

SKILL.md

The full file from kdeldycke/dotfiles at commit 7947d0f, republished under its BSD-2-Clause licence (© kdeldycke). 716 words, ~1,672 tokens.

Download SKILL.mdSave it as .claude/skills/translation-sync/SKILL.md (or your agent's skills folder).
name
translation-sync
description
Detect stale translations in readme.*.md and contributing.*.md files. Compare their structure and content against the English source, then draft new translations for the changed sections.
allowed-tools
Bash, Read, Grep, Glob, Agent
compatibility
Designed for Claude Code. Recommended model: Sonnet.
argument-hint
[lang-code]

Context

!ls readme.*.md 2>/dev/null || echo "No readme translations" !ls .github/contributing.*.md 2>/dev/null || echo "No contributing translations" ![ -f repomatic/__init__.py ] && echo "CANONICAL_REPO" || echo "DOWNSTREAM" ![ -d repomatic/data/awesome_template ] && echo "HAS_AWESOME_TEMPLATE" || echo "NO_AWESOME_TEMPLATE"

Instructions

You synchronize translated markdown files with their English sources. The translation workflow in these repositories is documented in contributing.md § Pull-requests and issues: contributors propagate changes to all readme.*.md files using automatic translation tools, and bilingual contributors refine the result later.

This skill automates the detection side: find what drifted, show the delta, and draft updated translations for the stale sections.

Scope

In downstream awesome-* repos: Sync readme.*.md files against readme.md.

In the repomatic canonical repo: Sync contributing.*.md against contributing.md inside repomatic/data/awesome_template/.github/. The awesome-template is the source of truth for contributing guides synced to all downstream repos, so keeping its translations current benefits every downstream project.

Argument handling
  • $ARGUMENTS can be a language code (e.g., zh, fr, ja) to limit the sync to one language. If empty, process all *.{lang}.md translation files found.
Step 1: Discover translation pairs

Find all files matching the *.{lang}.md pattern (e.g., readme.zh.md, contributing.fr.md). For each, identify the English source by stripping the language suffix (e.g., readme.zh.md pairs with readme.md).

If context shows CANONICAL_REPO and HAS_AWESOME_TEMPLATE, look inside repomatic/data/awesome_template/.github/ instead of the repo root.

Report the discovered pairs as a table:

English sourceTranslationLanguage
readme.mdreadme.zh.mdzh

If no translation files are found, tell the user and suggest creating one.

Step 2: Structural comparison

For each pair, compare the heading structure (all #, ##, ###, #### headings). Report:

  1. Heading count match — same number of headings at each level.
  2. Missing sections — headings present in English but absent from the translation.
  3. Extra sections — headings in the translation with no English counterpart (may indicate stale removed sections).
  4. Order alignment — whether sections appear in the same order.
Step 3: Content drift detection

For each section (delimited by headings), compare the English and translated versions:

  1. Link inventory — extract all URLs from both. Flag URLs present in English but missing from the translation, or vice versa. URLs should be identical (not translated).
  2. List item count — count bullet points and numbered items per section. A mismatch signals added or removed entries.
  3. Code block count — code blocks should match 1:1.
  4. Badge/image parity — compare ![ image references and shield.io badge URLs.
  5. HTML block parity — compare <p>, <table>, and other HTML blocks that should be structurally identical.
Show full SKILL.md (323 more words)Show less
Step 4: Staleness report

Present findings grouped by severity:

Structure breaks (sections added/removed in English but not reflected):

SectionIssueEnglishTranslation
## New SectionMissing from translationline 45—

Content drift (section exists in both but content diverged):

SectionSignalDetails
## Billing3 links added in Englishexample.com/a, example.com/b, example.com/c
## IAM2 list items removedEnglish has 12, translation has 14

Cosmetic (non-blocking but worth fixing):

IssueLocation
Language badge links inconsistentline 20-21
Trailing whitespace in translationline 134
Step 5: Draft translations for stale sections

For each section flagged as drifted or missing, draft an updated translation:

  1. Show the current English section content.
  2. Show the current translation (if it exists).
  3. Draft the updated translation, preserving:
    • All URLs, code blocks, and HTML exactly as in the English source.
    • The translation style and terminology already established in the file (read the existing translation to learn the voice).
    • Markdown formatting and indentation.
  4. Present the draft as a diff the user can review and apply.

Do not auto-apply changes. Present all drafts for user review first.

Step 6: Validate language badges

Check that both the English source and translation include matching language switcher badges. The expected pattern (from existing repos):

markdown
<p align="center">
  <a href="..." hreflang="en"><img src="https://img.shields.io/badge/lang-English-blue?style=flat-square" lang="en" alt="English"></a>
  <a href="..." hreflang="zh"><img src="https://img.shields.io/badge/lang-中文-blue?style=flat-square" lang="zh" alt="中文"></a>
</p>

Flag files missing the badge block or with mismatched language entries.

Guidelines
  • URLs, code blocks, and HTML tags are never translated. They must be identical in source and translation.
  • Section ordering in the translation must match the English source.
  • When drafting translations, match the register and terminology of the existing translated content. Do not impose a different style.
  • For awesome-falsehood, sections are in alphabetical order (per contributing.md). Verify the translation preserves this.
  • The PR template checklist item "I applied the changes to all translatations in readme.*.md files" is the contributor-facing enforcement. This skill is the maintainer-facing verification.
Next steps

Suggest the user run:

  • /awesome-triage to check if any open PRs need translation updates before merging.
  • /repomatic-audit to verify broader upstream/downstream alignment.

© kdeldycke, BSD-2-Clause. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in dotfiles/.agents/skills/translation-sync of kdeldycke/dotfiles.

Open the folder on GitHubat commit 7947d0f

Compare with similar skills

Translation Sync 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.

Translation Sync compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Translation Sync this skillkdeldycke/dotfiles173—~1.7kAutomated safety check: NotesBSD-2-Clause
Ghfsantfu/ghfs276—~1.5kAutomated safety check: PassMIT
Update Gui TranslationsArduPilot/MethodicConfigurator165—~1.5kAutomated safety check: PassGPL-3.0
Dalamud Gamewindow Workflowlokinmodar/Echoglossian121—~882Automated safety check: PassCC-BY-4.0
Dalamud Stringarraydata Workflowlokinmodar/Echoglossian121—~651Automated safety check: PassCC-BY-4.0
Video Translatorshang-zhu/violin1.1k—~1kAutomated safety check: NotesMIT

Similar skills

  • Ghfs

    antfu/ghfs

    Manages ghfs local mirror files in .ghfs/, especially translating user instructions into valid execute operations (execute.md, execute.yml, or per-item edits), running ghfs execute / ghfs sync, and…

    276 GitHub stars~1.5k tokensUpdated 3 mo ago
    Writing & ContentAuto-check passed
  • Update Gui Translations

    ArduPilot/MethodicConfigurator

    Update existing GUI translations using AI assistance. An agent skill from ArduPilot/MethodicConfigurator.

    165 GitHub stars~1.5k tokensUpdated today
    Writing & ContentAuto-check passed
  • Dalamud Gamewindow Workflow

    lokinmodar/Echoglossian

    Work on ActionMenu, MainCommand, AddonContextMenuTitle, and the shared DB-first GameWindow runtime using the repo's game-window flow docs and instructions.

    121 GitHub stars~882 tokensUpdated yesterday
    Writing & ContentAuto-check passed
  • Dalamud Stringarraydata Workflow

    lokinmodar/Echoglossian

    Work on Character-family StringArrayData runtime behavior and shared structured StringArrayData helpers using the repo's structured payload and ownership docs.

    121 GitHub stars~651 tokensUpdated yesterday
    Writing & ContentAuto-check passed
  • Video Translator

    shang-zhu/violin

    Dub a video into another language and generate subtitles using the default Together + Cartesia stack.

    1.1k GitHub stars~1k tokensUpdated 1 mo ago
    Media & CreativeAuto-check: notes
  • Publish Release

    Ayuilos/Miffan

    Publish a GitHub release for this fork, with a bilingual changelog that separates fork-owned changes from changes introduced by upstream merges.

    208 GitHub stars~635 tokensUpdated today
    DevelopmentAuto-check passed

More from kdeldycke/dotfiles

All 25 skills in this repo
  • Agent Config Self Tune

    kdeldycke/dotfiles

    Audit and tune the configuration of coding agents across Claude Code and pi - settings files (settings.json, settings.local.json), permission rules, instruction files (CLAUDE.md, AGENTS.md), skill…

    173 GitHub stars~3.4k tokensUpdated 4 days ago
    Auto-check: notes
  • Audit Repo Issues

    kdeldycke/dotfiles

    Analyze a GitHub repository's issues and PRs to find unaddressed feature requests, dismissed ideas, maintenance signals, and opportunities relevant to the current project.

    173 GitHub stars~2.5k tokensUpdated 4 days ago
    Auto-check passed
  • Brand Assets

    kdeldycke/dotfiles

    Create project logo and banner SVGs, then export them to light and dark PNG variants.

    173 GitHub stars~4.7k tokensUpdated 4 days ago
    Auto-check passed
  • Fill Web Form

    kdeldycke/dotfiles

    Fill a web form using data extracted from local documents (PDFs, images, spreadsheets).

    173 GitHub stars~2.3k tokensUpdated 4 days ago
    Auto-check passed
  • Rename With Dates

    kdeldycke/dotfiles

    Rename documents and files (PDFs, images, screenshots, etc.) by reading their content to extract the effective/publication date, then renaming them with a "YYYY-MM-DD - Clear descriptive title.ext"…

    173 GitHub stars~3.5k tokensUpdated 4 days ago
    Auto-check passed
  • Repomatic Test Matrix

    kdeldycke/dotfiles

    Choose what a repository's CI test matrix covers. An agent skill from kdeldycke/dotfiles.

    173 GitHub stars~2.2k tokensUpdated 4 days ago
    Auto-check: notes

Works with

Questions about Translation Sync

What does Translation Sync do?

Detect stale translations in readme..md and contributing..md files. Translation Sync is an agent skill from kdeldycke/dotfiles.md files.

When should I use Translation Sync?

Translation Sync fits situations like: tasks that involve Translation.

How do I install Translation Sync in Claude Code?

Run `npx skills add kdeldycke/dotfiles --skill translation-sync -a claude-code`. Or copy the skill folder (dotfiles/.agents/skills/translation-sync in kdeldycke/dotfiles) into .claude/skills/translation-sync in your project. Claude Code loads it when a task matches its description.

How do I install Translation Sync in Codex?

Run `npx skills add kdeldycke/dotfiles --skill translation-sync -a codex`. Or copy the skill folder (dotfiles/.agents/skills/translation-sync in kdeldycke/dotfiles) into .agents/skills/translation-sync in your project. Codex loads it when a task matches its description.

Can I use Translation Sync in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add kdeldycke/dotfiles --skill translation-sync -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/translation-sync, .gemini/skills/translation-sync, .github/skills/translation-sync and .opencode/skills/translation-sync in your project.

What does Translation Sync need to run?

SKILL.md names no scripts, command-line tools or credentials: Translation Sync is instructions for the agent only. Its frontmatter pre-approves these tools: Bash, Read, Grep, Glob, Agent. Compatibility (from SKILL.md): Designed for Claude Code. Recommended model: Sonnet..

Does Translation Sync access the network?

SKILL.md names 1 domain. In commands or code: img.shields.io; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Translation Sync safe to install?

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.

What licence does Translation Sync use?

Translation Sync is published under the BSD-2-Clause licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Translation Sync use?

About 1.7k tokens (SKILL.md is roughly 6.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Translation Sync?

Skills that share tags, products or a category with Translation Sync: Ghfs (antfu/ghfs, 276 stars), Update Gui Translations (ArduPilot/MethodicConfigurator, 165 stars), Dalamud Gamewindow Workflow (lokinmodar/Echoglossian, 121 stars) and Dalamud Stringarraydata Workflow (lokinmodar/Echoglossian, 121 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Translation Sync?

kdeldycke (a GitHub user) maintains it in kdeldycke/dotfiles, which has 173 GitHub stars. The repository holds 25 skills in this directory. The repository was last updated on October 4, 2026.

Source: kdeldycke/dotfiles on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.