IntlPull
Tutorial
12 min read

Claude Code Skills para i18n: Automatiza flujos de traducción desde la terminal

Aprende a usar Claude Code skills para automatizar tareas de internacionalización. Extrae strings, gestiona traducciones y optimiza flujos de localización directamente desde tu terminal.

IntlPull Team
IntlPull Team
03 Feb 2026, 11:44 AM [PST]
On this page
Summary

Aprende a usar Claude Code skills para automatizar tareas de internacionalización. Extrae strings, gestiona traducciones y optimiza flujos de localización directamente desde tu terminal.

He estado usando Claude Code durante unos meses, y ha cambiado cómo manejo la internacionalización. En lugar de cambiar entre mi editor, terminal y panel de traducción, simplemente escribo un comando slash y dejo que Claude maneje las partes tediosas.

Aquí está lo que he aprendido sobre crear skills personalizados de i18n para Claude Code.

¿Qué son los Claude Code Skills?

Claude Code es el CLI de Anthropic que trae Claude directamente a tu terminal. Los skills son comandos slash personalizados que defines - piensa en ellos como instrucciones de IA reutilizables para tareas comunes.

Para trabajo de i18n, esto es perfecto. Las tareas de traducción son repetitivas y siguen patrones consistentes. En lugar de explicar lo que quieres cada vez, creas un skill una vez y lo invocas con un comando simple.

Tu primer skill: Encontrar strings hardcoded

Empecemos con algo simple. Crea un archivo en .claude/commands/i18n-scan.md:

MARKDOWN
1# i18n-scan
2
3Escanea el archivo actual o archivos especificados en busca de strings hardcoded que deberían internacionalizarse.
4
5## Qué buscar:
6- Contenido de texto JSX entre etiquetas
7- Literales de string en contextos de cara al usuario (labels, mensajes, títulos)
8- Template literals que contienen texto visible para el usuario
9- Texto placeholder en inputs
10
11## Qué ignorar:
12- Mensajes console.log
13- Mensajes de error para desarrolladores (a menos que sean de cara al usuario)
14- Nombres de clases CSS
15- Rutas de importación
16- Claves de objeto que son identificadores internos
17
18## Formato de salida:
19Para cada string hardcoded encontrado, mostrar:
20- Número de línea
21- El string hardcoded
22- Clave de traducción sugerida (siguiendo patrón namespace.section.element)
23- Contexto sobre dónde aparece

Ahora cuando ejecutas /i18n-scan en Claude Code, sabe exactamente qué buscar.

El skill de extracción

Este es el skill que más uso. No solo encuentra strings - realmente los extrae y actualiza tu código.

Crea .claude/commands/i18n-extract.md:

MARKDOWN
1# i18n-extract
2
3Extrae strings hardcoded y conviértelos en claves de traducción.
4
5## Proceso:
61. Identificar todos los strings hardcoded de cara al usuario
72. Generar claves de traducción apropiadas siguiendo convención de nombres
83. Actualizar el archivo para usar función de traducción (t() o equivalente)
94. Agregar imports necesarios
105. Crear o actualizar archivo de traducción con nuevas claves
11
12## Convención de nombres:
13Las claves deben seguir el patrón `namespace.section.element`:
14- `settings.profile.title` → "Configuración de perfil"
15- `common.buttons.save` → "Guardar"
16- `errors.validation.required` → "Este campo es obligatorio"
17
18## Detección de framework:
19- Si react-i18next: usar hook useTranslation y función t()
20- Si next-intl: usar hook useTranslations
21- Si vue-i18n: usar $t() en templates, t() en setup
22- Si FormatJS: usar FormattedMessage o useIntl

Ejecuta /i18n-extract en cualquier archivo, y Claude maneja todo el proceso de extracción.

Conectando a tu TMS

El verdadero poder viene de integrar con tu sistema de gestión de traducciones. Con MCP (Model Context Protocol), Claude puede interactuar con IntlPull directamente.

Crea .claude/commands/i18n-translate.md:

MARKDOWN
1# i18n-translate
2
3Traduce strings faltantes usando integración MCP de IntlPull.
4
5## Prerequisitos:
6- El servidor MCP de IntlPull debe estar conectado
7- El proyecto debe estar configurado en IntlPull
8
9## Proceso:
101. Usar MCP de IntlPull para obtener estado actual del proyecto
112. Identificar claves con traducciones faltantes
123. Para cada traducción faltante:
13   - Obtener texto fuente
14   - Obtener traducciones existentes para contexto
15   - Generar traducción apropiada
16   - Enviar a IntlPull con flag de calidad "needs_review"
17
18## Manejo de idiomas:
19- Traducir a todos los idiomas del proyecto por defecto
20- O especificar: `/i18n-translate spanish`
21
22## Control de calidad:
23- Marcar todas las traducciones de IA como "needs_review"
24- Incluir notas de traducción para términos ambiguos
25- Marcar términos que deberían usar entradas de glosario

Ahora /i18n-translate spanish envía strings faltantes para traducción de IA, marcadas para revisión humana.

Verificando cobertura de traducción

Antes de desplegar, quiero saber qué falta. Crea .claude/commands/i18n-status.md:

MARKDOWN
1# i18n-status
2
3Genera un reporte de cobertura de traducción.
4
5## El reporte debe incluir:
6- Porcentaje de cobertura general por idioma
7- Namespaces con traducciones faltantes
8- Claves agregadas recientemente sin traducciones
9- Claves marcadas como "needs_review"
10- Traducciones potencialmente desactualizadas
11
12## Formato de visualización:
13Tabla mostrando:
14- Idioma
15- Cobertura %
16- Cantidad faltante
17- Cantidad necesita revisión
18
19Luego listar claves faltantes específicas agrupadas por namespace.
20
21## Fuente de datos:
22- Si MCP de IntlPull conectado: obtener datos en vivo
23- De lo contrario: analizar archivos de traducción locales

Validación para CI

Crea .claude/commands/i18n-validate.md para detectar problemas antes del despliegue:

MARKDOWN
1# i18n-validate
2
3Verifica problemas de traducción. Diseñado para CI pero funciona localmente.
4
5## Verificaciones:
6
7### Problemas estructurales:
8- Traducciones faltantes en idiomas no fuente
9- Claves huérfanas (existen en traducciones pero no en código)
10- Sintaxis JSON/YAML inválida
11- Anidamiento inconsistente entre idiomas
12
13### Problemas de contenido:
14- Traducciones vacías
15- Desajustes de placeholder ({name} en fuente pero no en traducción)
16- Traducciones sospechosamente largas (podrían romper UI)
17- Traducciones sospechosamente cortas (podrían estar incompletas)
18- Contenido sin traducir (igual que idioma fuente)
19
20### Problemas de código:
21- Llamadas t() con claves no existentes
22- Strings hardcoded en cambios staged
23- Construcción dinámica de claves (difícil de rastrear)
24
25## Niveles de salida:
26- Error: debe corregirse antes de desplegar
27- Warning: debería revisarse
28- Info: para conocimiento
29
30## Códigos de salida:
31- Exit 0 si no hay errores
32- Exit 1 si se encuentran errores (para integración CI)

Mi flujo de trabajo diario

Así es como se ve en la práctica:

  1. Iniciar rama de feature: git checkout -b feature/user-settings

  2. Escribir código con strings hardcoded. No te preocupes por i18n mientras construyes.

  3. Antes de hacer commit, en cada archivo modificado: /i18n-extract

  4. Generar traducciones: /i18n-translate

  5. Validar: /i18n-validate

  6. Commit todo en un commit atómico

Tiempo total agregado: 2-3 minutos por feature. Compara eso con la hora que solía gastar.

Consejos pro

Sé específico sobre tu stack. Los skills genéricos funcionan, pero los skills específicos del stack funcionan mejor. Si estás usando Next.js con next-intl, crea skills que entiendan esa configuración.

Construye incrementalmente. Comienza con /i18n-extract y /i18n-status. Agrega más skills cuando te encuentres repitiendo instrucciones.

Control de versiones para tus skills. Pon .claude/commands/ en git. Cuando los compañeros actualicen Claude Code, obtienen tus skills automáticamente.

Combina con reglas de proyecto. En tu CLAUDE.md, agrega pautas de i18n para que Claude siga estos estándares incluso fuera de invocaciones de skills.

Usa MCP para superpoderes. Con el servidor MCP de IntlPull, los skills pueden crear claves de traducción, obtener traducciones, enviar actualizaciones y activar flujos de trabajo. Esto convierte los skills de "sugerencias de IA" en "acciones de IA".

Comenzando

  1. Instala Claude Code: npm install -g @anthropic-ai/claude-code

  2. Crea .claude/commands/ en tu proyecto

  3. Agrega el skill i18n-extract de este post

  4. Pruébalo en un archivo con strings hardcoded

  5. Itera basándote en lo que funciona para tu stack

La configuración toma quizás una hora. El ahorro de tiempo se acumula cada día.


Actualización 2026: ¿Buscas flujos de trabajo más avanzados? Consulta nuestra guía 2026 sobre construcción de comandos de automatización de traducción personalizados con operaciones masivas, pipelines de validación y flujos de trabajo basados en agentes.

¿Quieres skills listos para usar? IntlPull mantiene una colección de skills de Claude Code para i18n. Nuestro servidor MCP le da a Claude acceso directo para gestionar traducciones desde tu terminal.

Tags
claude-code
skills
automation
i18n
cli
developer-tools
anthropic
2025
IntlPull Team
IntlPull Team
Engineering

Building tools to help teams ship products globally. Follow us for more insights on localization and i18n.