From ai-dev-extensions
Use when writing or editing documentation, code comments, docstrings, README files, CHANGELOG entries, PR descriptions, commit messages, or any committed textual artifact - enforces English as the sole language regardless of the language used in the conversation
How this skill is triggered — by the user, by Claude, or both
Slash command
/ai-dev-extensions:docs-englishThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
All documentation and code artifacts committed to the repository MUST be written in English, even when the user is conversing in another language (French, Spanish, German, etc.). English is the lingua franca of software engineering and ensures maximum discoverability, collaboration, and long-term maintainability.
All documentation and code artifacts committed to the repository MUST be written in English, even when the user is conversing in another language (French, Spanish, German, etc.). English is the lingua franca of software engineering and ensures maximum discoverability, collaboration, and long-term maintainability.
The conversation language is for interacting with the user. The artifact language is always English.
*.md filegit-commit skill, but reinforced here)This skill applies to committed artifacts only. It does NOT change:
.po, .json, .xliff files) whose purpose is to hold non-English translationsRegardless of the conversation language, the output written to files MUST be in English.
<!-- BAD (user asked in French, agent wrote README in French) -->
# Mon Projet
Ce projet est un outil de ligne de commande pour gérer les tâches.
<!-- GOOD -->
# My Project
This project is a command-line tool for managing tasks.
# BAD
def calculer_total(articles):
"""Calcule le total des articles dans le panier."""
...
# GOOD
def calculate_total(items):
"""Calculate the total of items in the cart."""
...
// BAD
// Récupère l'utilisateur depuis la base de données
function getUser(id: string) { ... }
// GOOD
// Fetch the user from the database
function getUser(id: string) { ... }
Variable names, function names, class names, file names, and branch names MUST be in English.
// BAD
const utilisateurs = await db.fetchUsers();
function envoyerEmail(destinataire) { ... }
// GOOD
const users = await db.fetchUsers();
function sendEmail(recipient) { ... }
# BAD
git commit -m "feat: ajouter la page de connexion"
git checkout -b feat/page-connexion
# GOOD
git commit -m "feat: add login page"
git checkout -b feat/login-page
Error messages are documentation for operators and future developers. They MUST be in English.
// BAD
return fmt.Errorf("impossible de se connecter à la base de données: %w", err)
// GOOD
return fmt.Errorf("failed to connect to database: %w", err)
If the user describes a feature in French and asks you to document it, translate the description into clear, idiomatic English before writing.
User (in French): "Ajoute un README qui explique que l'outil synchronise les tâches"
# BAD: copy user's French verbatim into README
# GOOD: translate the intent into English
"This tool synchronizes tasks across devices."
This rule applies to artifacts, not conversation. Continue replying to the user in whatever language they used. Only what you write to files must be English.
| Mistake | Fix |
|---|---|
| Mirroring the user's language into the file because they wrote in French | Translate to English before writing |
| Mixing English code with non-English comments | Keep both in English |
| Using non-English identifiers "because the domain is French" | Use English identifiers; document domain terms in a glossary if needed |
| Writing commit messages in the user's spoken language | Always English per git-commit + this skill |
| Translating i18n resource files to English | Leave locale-specific files alone; they exist to hold translations |
# or // followed by non-English text into a source fileREADME.md, CHANGELOG.md, or commit messageAll of these mean: rewrite in English before saving.
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub using-system/ai-dev-extensions --plugin ai-dev-extensions