Files
everything-claude-code/docs/es/CONTRIBUTING.md
Santiago González Siordia ac0f11c640 docs: add Spanish (es) translation (#2095)
Adds a complete Spanish translation of the ECC documentation under
docs/es/, mirroring the Turkish (docs/tr/) translation in scope.
141 files covering agents, commands, rules, skills, contexts, examples,
and core docs. Updates root README.md with the Spanish language link.

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 13:26:42 +08:00

14 KiB

Contribuir a Everything Claude Code

¡Gracias por querer contribuir! Este repositorio es un recurso comunitario para usuarios de Claude Code.

Tabla de Contenidos


Qué Buscamos

Agentes

Nuevos agentes que manejen tareas específicas de forma eficiente:

  • Revisores específicos de lenguaje (Python, Go, Rust)
  • Expertos en frameworks (Django, Rails, Laravel, Spring)
  • Especialistas en DevOps (Kubernetes, Terraform, CI/CD)
  • Expertos de dominio (pipelines de ML, ingeniería de datos, móvil)

Skills

Definiciones de flujos de trabajo y conocimiento de dominio:

  • Mejores prácticas por lenguaje
  • Patrones de frameworks
  • Estrategias de prueba
  • Guías de arquitectura

Hooks

Automatizaciones útiles:

  • Hooks de linting/formateo
  • Verificaciones de seguridad
  • Hooks de validación
  • Hooks de notificación

Comandos

Comandos slash que invocan flujos de trabajo útiles:

  • Comandos de despliegue
  • Comandos de prueba
  • Comandos de generación de código

Inicio Rápido

# 1. Hacer fork y clonar
gh repo fork affaan-m/everything-claude-code --clone
cd everything-claude-code

# 2. Crear una rama
git checkout -b feat/mi-contribucion

# 3. Añadir tu contribución (ver secciones abajo)

# 4. Probar localmente
cp -r skills/mi-skill ~/.claude/skills/  # para skills
# Luego probar con Claude Code

# 5. Enviar PR
git add . && git commit -m "feat: add mi-skill" && git push -u origin feat/mi-contribucion

Contribuir Skills

Las skills son módulos de conocimiento que Claude Code carga según el contexto.

Guía Completa: Para orientación detallada sobre cómo crear skills efectivas, consulta la Guía de Desarrollo de Skills. Cubre:

  • Arquitectura y categorías de skills
  • Escribir contenido efectivo con ejemplos
  • Mejores prácticas y patrones comunes
  • Prueba y validación
  • Galería de ejemplos completos

Estructura de Directorios

skills/
└── nombre-de-tu-skill/
    └── SKILL.md

Plantilla de SKILL.md

---
name: nombre-de-tu-skill
description: Descripción breve mostrada en la lista de skills y usada para activación automática
origin: ECC
---

# Título de Tu Skill

Resumen breve de lo que cubre esta skill.

## Cuándo Activar

Describe los escenarios donde Claude debería usar esta skill. Esto es fundamental para la activación automática.

## Conceptos Clave

Explica patrones y directrices principales.

## Ejemplos de Código

\`\`\`typescript
// Incluye ejemplos prácticos y probados
function ejemplo() {
  // Código bien comentado
}
\`\`\`

## Anti-Patrones

Muestra lo que NO se debe hacer con ejemplos.

## Mejores Prácticas

- Directrices accionables
- Qué hacer y qué no hacer
- Errores comunes que evitar

## Skills Relacionadas

Enlaza a skills complementarias (por ejemplo, `skill-relacionada-1`, `skill-relacionada-2`).

Categorías de Skills

Categoría Propósito Ejemplos
Estándares de Lenguaje Modismos, convenciones, mejores prácticas python-patterns, golang-patterns
Patrones de Framework Orientación específica del framework django-patterns, nextjs-patterns
Flujo de Trabajo Procesos paso a paso tdd-workflow, refactoring-workflow
Conocimiento de Dominio Dominios especializados security-review, api-design
Integración de Herramientas Uso de herramientas/bibliotecas docker-patterns, supabase-patterns
Plantilla Plantillas de skills específicas del proyecto docs/examples/project-guidelines-template.md

Política de Adaptación de Skills

Si estás adaptando una idea de otro repo, plugin, harness o pack de prompts personal, lee la Política de Adaptación de Skills antes de abrir el PR.

Versión corta:

  • copia la idea subyacente, no la identidad del producto externo
  • renombra la skill cuando ECC cambie o amplíe materialmente la superficie
  • prefiere reglas, skills, scripts y MCPs nativos de ECC sobre nuevas dependencias de terceros por defecto
  • no publiques una skill cuyo valor principal sea indicarle a los usuarios que instalen un paquete no verificado

Lista de Verificación de Skills

  • Enfocada en un dominio/tecnología (no demasiado amplia)
  • Incluye sección "Cuándo Activar" para activación automática
  • Incluye ejemplos de código prácticos y reutilizables
  • Muestra anti-patrones (qué NO hacer)
  • Menos de 500 líneas (800 máx)
  • Usa encabezados de sección claros
  • Probada con Claude Code
  • Enlaza a skills relacionadas
  • Sin datos sensibles (claves de API, tokens, rutas)
  • El frontmatter declara name: coincidiendo con el nombre del directorio
  • El description: del frontmatter es una cadena en línea o escalar plegado (>) — no un bloque literal (|, |- o |+), que preserva los saltos de línea internos y rompe los renderizadores de tablas planas

Skills de Ejemplo

Skill Categoría Propósito
coding-standards/ Estándares de Lenguaje Patrones de TypeScript/JavaScript
frontend-patterns/ Patrones de Framework Mejores prácticas de React y Next.js
backend-patterns/ Patrones de Framework Patrones de API y base de datos
security-review/ Conocimiento de Dominio Lista de verificación de seguridad
tdd-workflow/ Flujo de Trabajo Proceso de desarrollo guiado por pruebas
docs/examples/project-guidelines-template.md Plantilla Plantilla de skill específica del proyecto

Contribuir Agentes

Los agentes son asistentes especializados invocados mediante la herramienta Task.

Ubicación del Archivo

agents/nombre-de-tu-agente.md

Plantilla de Agente

---
name: nombre-de-tu-agente
description: Qué hace este agente y cuándo Claude debería invocarlo. ¡Sé específico!
tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob"]
model: sonnet
---

Eres un especialista en [rol].

## Tu Rol

- Responsabilidad principal
- Responsabilidad secundaria
- Qué NO haces (límites)

## Flujo de Trabajo

### Paso 1: Comprender
Cómo abordas la tarea.

### Paso 2: Ejecutar
Cómo realizas el trabajo.

### Paso 3: Verificar
Cómo validas los resultados.

## Formato de Salida

Qué devuelves al usuario.

## Ejemplos

### Ejemplo: [Escenario]
Entrada: [qué proporciona el usuario]
Acción: [qué haces]
Salida: [qué devuelves]

Campos del Agente

Campo Descripción Opciones
name Minúsculas, con guiones code-reviewer
description Usado para decidir cuándo invocar ¡Sé específico!
tools Solo lo que se necesita Read, Write, Edit, Bash, Grep, Glob, WebFetch, Task, o nombres de herramientas MCP (por ejemplo mcp__context7__resolve-library-id, mcp__context7__query-docs) cuando el agente usa MCP
model Nivel de complejidad haiku (simple), sonnet (codificación), opus (complejo)

Agentes de Ejemplo

Agente Propósito
tdd-guide.md Desarrollo guiado por pruebas
code-reviewer.md Revisión de código
security-reviewer.md Análisis de seguridad
build-error-resolver.md Corregir errores de build

Contribuir Hooks

Los hooks son comportamientos automáticos disparados por eventos de Claude Code.

Ubicación del Archivo

hooks/hooks.json

Tipos de Hook

Tipo Disparador Caso de Uso
PreToolUse Antes de que ejecute la herramienta Validar, advertir, bloquear
PostToolUse Después de que ejecute la herramienta Formatear, verificar, notificar
SessionStart Comienza la sesión Cargar contexto
Stop Termina la sesión Limpieza, auditoría

Formato de Hook

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "tool == \"Bash\" && tool_input.command matches \"rm -rf /\"",
        "hooks": [
          {
            "type": "command",
            "command": "echo '[Hook] BLOQUEADO: Comando peligroso' && exit 1"
          }
        ],
        "description": "Bloquear comandos rm peligrosos"
      }
    ]
  }
}

Sintaxis del Matcher

// Coincidir con herramientas específicas
tool == "Bash"
tool == "Edit"
tool == "Write"

// Coincidir con patrones de entrada
tool_input.command matches "npm install"
tool_input.file_path matches "\\.tsx?$"

// Combinar condiciones
tool == "Bash" && tool_input.command matches "git push"

Lista de Verificación de Hooks

  • El matcher es específico (no demasiado amplio)
  • Incluye mensajes de error/info claros
  • Usa códigos de salida correctos (exit 1 bloquea, exit 0 permite)
  • Probado exhaustivamente
  • Tiene descripción

Contribuir Comandos

Los comandos son acciones invocadas por el usuario con /nombre-del-comando.

Ubicación del Archivo

commands/tu-comando.md

Plantilla de Comando

---
description: Descripción breve mostrada en /help
---

# Nombre del Comando

## Propósito

Qué hace este comando.

## Uso

\`\`\`
/tu-comando [args]
\`\`\`

## Flujo de Trabajo

1. Primer paso
2. Segundo paso
3. Paso final

## Salida

Qué recibe el usuario.

MCP y Documentación (por ejemplo, Context7)

Las skills y los agentes pueden usar herramientas MCP (Model Context Protocol) para obtener datos actualizados en lugar de depender solo de los datos de entrenamiento. Esto es especialmente útil para documentación.

  • Context7 es un servidor MCP que expone resolve-library-id y query-docs. Úsalo cuando el usuario pregunte sobre bibliotecas, frameworks o APIs para que las respuestas reflejen la documentación y ejemplos de código actuales.
  • Al contribuir skills que dependen de documentación en vivo (por ejemplo, configuración, uso de API), describe cómo usar las herramientas MCP relevantes (por ejemplo, resolver el ID de la biblioteca, luego consultar documentos) y apunta a la skill documentation-lookup o Context7 como el patrón.
  • Al contribuir agentes que responden preguntas de documentación/API, incluye los nombres de herramientas MCP de Context7 (por ejemplo, mcp__context7__resolve-library-id, mcp__context7__query-docs) en las herramientas del agente y documenta el flujo de trabajo resolver → consultar.
  • mcp-configs/mcp-servers.json incluye una entrada de Context7; los usuarios la habilitan en su harness (por ejemplo, Claude Code, Cursor) para usar la skill de búsqueda de documentación (en skills/documentation-lookup/) y el comando /docs.

Cross-Harness y Traducciones

Subconjuntos de Skills (Codex y Cursor)

ECC incluye subconjuntos de skills para otros harnesses:

  • Codex: .agents/skills/ — las skills listadas en agents/openai.yaml son cargadas por Codex.
  • Cursor: .cursor/skills/ — un subconjunto de skills está empaquetado para Cursor.

Cuando añades una nueva skill que debería estar disponible en Codex o Cursor:

  1. Añade la skill bajo skills/nombre-de-tu-skill/ como de costumbre.
  2. Si debería estar disponible en Codex, añádela a .agents/skills/ (copia el directorio de la skill o añade una referencia) y asegúrate de que esté referenciada en agents/openai.yaml si es necesario.
  3. Si debería estar disponible en Cursor, añádela bajo .cursor/skills/ según el diseño de Cursor.

Consulta las skills existentes en esos directorios para la estructura esperada. Mantener estos subconjuntos sincronizados es manual; menciona en tu PR si los actualizaste.

Traducciones

Las traducciones viven bajo docs/ (por ejemplo, docs/zh-CN, docs/zh-TW, docs/ja-JP). Si cambias agentes, comandos o skills que están traducidos, considera actualizar los archivos de traducción correspondientes o abrir un issue para que los mantenedores o traductores puedan actualizarlos.


Proceso de Pull Request

1. Formato del Título del PR

feat(skills): add rust-patterns skill
feat(agents): add api-designer agent
feat(hooks): add auto-format hook
fix(skills): update React patterns
docs: improve contributing guide

2. Descripción del PR

## Resumen
Qué estás añadiendo y por qué.

## Tipo
- [ ] Skill
- [ ] Agente
- [ ] Hook
- [ ] Comando

## Pruebas
Cómo lo probaste.

## Lista de Verificación
- [ ] Sigue las directrices de formato
- [ ] Probado con Claude Code
- [ ] Sin información sensible (claves de API, rutas)
- [ ] Descripciones claras

3. Proceso de Revisión

  1. Los mantenedores revisan en 48 horas
  2. Atiende el feedback si se solicita
  3. Una vez aprobado, se fusiona a main

Directrices

Haz

  • Mantén las contribuciones enfocadas y modulares
  • Incluye descripciones claras
  • Prueba antes de enviar
  • Sigue los patrones existentes
  • Documenta las dependencias

No Hagas

  • Incluir datos sensibles (claves de API, tokens, rutas)
  • Añadir configuraciones demasiado complejas o de nicho
  • Enviar contribuciones sin probar
  • Crear duplicados de funcionalidad existente

Nombres de Archivo

  • Usa minúsculas con guiones: python-reviewer.md
  • Sé descriptivo: tdd-workflow.md no workflow.md
  • Haz coincidir el nombre con el nombre del archivo

¿Preguntas?


¡Gracias por contribuir! Construyamos juntos un gran recurso.