translate — community translate, oinkoin, community, ide skills, Claude Code, Cursor, Windsurf

v1.0.0
GitHub

About this Skill

Perfect for Multilingual Agents needing advanced locale file management and translation capabilities. Oinkoin is a flutter app for helping you managing your expenses. No internet required.

emavgl emavgl
[341]
[34]
Updated: 2/28/2026

Agent Capability Analysis

The translate skill by emavgl is an open-source community AI agent skill for Claude Code and other IDE workflows, helping agents execute tasks with better context, repeatability, and domain-specific guidance.

Ideal Agent Persona

Perfect for Multilingual Agents needing advanced locale file management and translation capabilities.

Core Value

Empowers agents to translate untranslated strings in locale JSON files, leveraging the Oinkoin app's structure and assets/locales/en-US.json as the source of truth, utilizing file formats like .json and protocols for seamless integration.

Capabilities Granted for translate

Translating locale files for internationalization
Updating untranslated strings in it.json, de.json, or pt-BR.json files
Maintaining consistency across all locale files

! Prerequisites & Limits

  • Requires access to locale files in assets/locales/
  • No internet connection required but file system access is necessary
Labs Demo

Browser Sandbox Environment

⚡️ Ready to unleash?

Experience this Agent in a zero-setup browser environment powered by WebContainers. No installation required.

Boot Container Sandbox

translate

Install translate, an AI agent skill for AI agent workflows and automation. Works with Claude Code, Cursor, and Windsurf with one-command setup.

SKILL.md
Readonly

Skill: translate

Translate untranslated strings in a locale JSON file for the Oinkoin app.

Usage

/translate <locale-file>

Example: /translate assets/locales/it.json

If no file is specified, address all the locale files


How translations work in this project

  • All locale files live in assets/locales/ (e.g. it.json, de.json, pt-BR.json).
  • assets/locales/en-US.json is the source of truth: every key AND its English value are listed there.
  • Every other locale file has the same keys. A string is untranslated when its value is identical to its key (i.e. it was never localised and still reads in English).
  • A string is already translated when its value differs from its key. Never touch those.

Step-by-step instructions

0. Sync keys with the codebase (always run first)

Run the sync script from the project root to ensure en-US.json is up-to-date and stale keys are removed from all locale files:

python3 scripts/update_en_strings.py

This regenerates en-US.json from all .i18n strings found in lib/, and removes obsolete keys from every other locale file. Run it before translating so you are working against the current set of keys.

1. Read the target locale file

Read the full file specified by the user.

2. Identify untranslated strings

A string is untranslated when value == key. Collect every such entry.

If there are no untranslated strings, tell the user and stop.

3. For each untranslated string — look up context before translating

Do not guess from the key text alone. For each untranslated key:

  • Search the Dart source code (Grep in lib/) for the exact key string to find where it is used.
  • Look at the surrounding widget/function/page to understand the context (e.g. is it a button label, a dialog title, an error message, a settings toggle description?).
  • Only then choose the most natural, contextually appropriate translation for the target language.

4. Write the translated strings

Edit the locale file, replacing only the untranslated values. Keep every other entry byte-for-byte identical.

5. Report what changed

After editing, print a compact table of the strings you translated:

KeyTranslation

Important rules

  • Never modify already-translated strings (value ≠ key).
  • Never change keys — only values.
  • Preserve placeholders exactly as written: %s, %d, %1$s, etc.
  • Match the tone and terminology of the strings that ARE already translated in the same file — consistency matters more than literal accuracy.
  • For technical or brand terms (e.g. "Oinkoin Pro", "PIN", "CSV", "JSON") keep them untranslated.
  • If a string has no natural translation (e.g. it is already the correct word in the target language), it is fine to leave the value equal to the key — but note this in your report.
  • Process the whole file in one pass; do not ask for confirmation before each string.

Exceptions

For British english use en-GB.json - in this case, key and value will most of case matches. Consider all the strings as already translated and skip it.

FAQ & Installation Steps

These questions and steps mirror the structured data on this page for better search understanding.

? Frequently Asked Questions

What is translate?

Perfect for Multilingual Agents needing advanced locale file management and translation capabilities. Oinkoin is a flutter app for helping you managing your expenses. No internet required.

How do I install translate?

Run the command: npx killer-skills add emavgl/oinkoin/translate. It works with Cursor, Windsurf, VS Code, Claude Code, and 19+ other IDEs.

What are the use cases for translate?

Key use cases include: Translating locale files for internationalization, Updating untranslated strings in it.json, de.json, or pt-BR.json files, Maintaining consistency across all locale files.

Which IDEs are compatible with translate?

This skill is compatible with Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer. Use the Killer-Skills CLI for universal one-command installation.

Are there any limitations for translate?

Requires access to locale files in assets/locales/. No internet connection required but file system access is necessary.

How To Install

  1. 1. Open your terminal

    Open the terminal or command line in your project directory.

  2. 2. Run the install command

    Run: npx killer-skills add emavgl/oinkoin/translate. The CLI will automatically detect your IDE or AI agent and configure the skill.

  3. 3. Start using the skill

    The skill is now active. Your AI agent can use translate immediately in the current project.

Related Skills

Looking for an alternative to translate or another community skill for your workflow? Explore these related open-source skills.

View All

widget-generator

Logo of f
f

f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.

149.6k
0
AI

flags

Logo of vercel
vercel

flags is a Next.js feature management skill that enables developers to efficiently add or modify framework feature flags, streamlining React application development.

138.4k
0
Browser

zustand

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
AI

data-fetching

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
AI