Añade el comando /init que permite inicializar la configuración de Claude para un repositorio. El comando es interactivo y solicita al usuario información sobre el proyecto para generar un archivo CLAUDE.md personalizado. Flujo del comando: - Verifica que estamos en un repo git - Analiza la estructura del repositorio automáticamente - Pregunta al usuario sobre descripción, stack, convenciones, flujos y restricciones - Genera .claude/CLAUDE.md con la información recopilada - Confirma con el usuario antes de guardar - Ejecuta git:push automáticamente si el usuario aprueba Esto facilita que Claude entienda el contexto específico de cada proyecto.
6.1 KiB
version, updated, tags
| version | updated | tags | |||
|---|---|---|---|---|---|
| 1.0.0 | 2025-03-18 |
|
Command: init
Inicializa la configuración de Claude para un repositorio. Solicita al usuario que explique cómo funciona su repo, analiza la estructura y genera un archivo CLAUDE.md con instrucciones personalizadas.
Para el usuario
Cuándo usar este comando
- Al configurar Claude Code por primera vez en un repositorio
- Cuando quieras regenerar las instrucciones de Claude para el proyecto
- Después de cambios significativos en la arquitectura del proyecto
Sintaxis
/init
Ejemplos
Ejemplo 1:
/init
Claude te preguntará sobre tu proyecto y generará .claude/CLAUDE.md automáticamente.
Para Claude
Precondiciones
Verificar antes de ejecutar:
- Estamos en la raíz de un repositorio git
- Existe la carpeta
.claude/
Inputs
Este comando es interactivo. Claude debe recopilar la siguiente información del usuario:
descripcion_proyecto: Qué hace el proyecto, su propósito principalstack_tecnologico: Lenguajes, frameworks, herramientas principalesestructura_directorios: Cómo está organizado el código (si el usuario quiere explicarlo)convenciones: Reglas de código, estilo, naming conventionsflujos_trabajo: Cómo se trabaja (branches, PRs, deploys)comandos_importantes: Scripts o comandos que Claude debe conocerrestricciones: Cosas que Claude NO debe hacer en este proyecto
Flujo obligatorio
1. Verificar que estamos en un repo git
git rev-parse --is-inside-work-tree
Si falla, informar al usuario que debe ejecutar desde un repositorio git.
2. Analizar la estructura del repositorio
Ejecutar análisis automático para entender el proyecto:
# Estructura de directorios (primer nivel)
ls -la
# Archivos de configuración comunes
ls -la package.json go.mod Cargo.toml requirements.txt pyproject.toml 2>/dev/null
# Estructura de carpetas principales
find . -maxdepth 2 -type d -not -path '*/\.*' | head -30
# README si existe
cat README.md 2>/dev/null | head -50
3. Solicitar información al usuario
Hacer las siguientes preguntas AL USUARIO (no asumas, pregunta):
Pregunta 1 - Descripción del proyecto:
Cuéntame sobre tu proyecto:
- ¿Qué hace?
- ¿Cuál es su propósito principal?
Pregunta 2 - Stack tecnológico:
¿Qué tecnologías usa el proyecto?
- Lenguajes de programación
- Frameworks principales
- Base de datos (si aplica)
- Otras herramientas importantes
Pregunta 3 - Convenciones de código:
¿Hay convenciones específicas que deba seguir?
- Estilo de código
- Naming conventions
- Patrones de diseño preferidos
- Estructura de archivos
Pregunta 4 - Flujo de trabajo:
¿Cómo es el flujo de trabajo del proyecto?
- ¿Cómo se manejan las ramas? (trunk-based, gitflow, etc.)
- ¿Hay proceso de PR/review?
- ¿Cómo se hace deploy?
Pregunta 5 - Comandos importantes:
¿Qué comandos debo conocer?
- Build
- Test
- Lint
- Deploy
- Otros scripts útiles
Pregunta 6 - Restricciones:
¿Hay algo que NO deba hacer en este proyecto?
- Archivos que no tocar
- Patrones a evitar
- Dependencias prohibidas
- Cualquier otra restricción
4. Generar el archivo CLAUDE.md
Con la información recopilada, generar el archivo .claude/CLAUDE.md con la siguiente estructura:
# Instrucciones para Claude - [Nombre del Proyecto]
## Descripción del proyecto
[Descripción proporcionada por el usuario]
## Stack tecnológico
- [Lista de tecnologías]
## Estructura del proyecto
[Estructura analizada + explicaciones del usuario]
## Convenciones
### Código
- [Convenciones de código]
### Git
- [Flujo de trabajo con git]
## Comandos importantes
| Comando | Descripción |
|---------|-------------|
| `comando` | descripción |
## Restricciones
- [Lista de cosas que Claude NO debe hacer]
## Notas adicionales
[Cualquier otra información relevante]
5. Mostrar el archivo generado y confirmar
Mostrar el contenido completo al usuario:
cat .claude/CLAUDE.md
Preguntar:
He generado el archivo CLAUDE.md con las instrucciones para este proyecto.
¿Te parece bien?
- Si es correcto: se hará commit y push automáticamente
- Si necesitas ajustes: puedes editarlo y luego ejecutar /git:push
Esperar respuesta del usuario:
- Si responde SI / afirmativo → continuar al paso 6
- Si responde NO / necesita cambios → STOP y decir: "Edita el archivo y cuando estés listo ejecuta
/git:push"
6. Ejecutar git:push automáticamente
Una vez confirmado por el usuario, ejecutar /git:push para:
- Crear rama
quick/init-claude-md - Commitear
.claude/CLAUDE.md - Mergear a master
- Push a remoto
Verificación final
cat .claude/CLAUDE.md
Informar al usuario:
✓ CLAUDE.md generado e integrado a master
Claude ahora tiene instrucciones específicas para este proyecto.
El archivo está en: .claude/CLAUDE.md
Para actualizar las instrucciones en el futuro, ejecuta /init nuevamente.
Convenciones
- Preguntar, no asumir: Siempre solicitar la información al usuario, no inventar
- Analizar primero: Usar el análisis automático como contexto, pero priorizar lo que dice el usuario
- Estructura clara: El CLAUDE.md debe ser fácil de leer y mantener
- No duplicar: Si ya existe información en README.md, referenciarla en lugar de copiarla
Troubleshooting
Error: "No es un repositorio git"
Causa: Se ejecutó fuera de un repositorio git
Solución:
git init
Error: "No existe .claude/"
Causa: La carpeta .claude no fue creada
Solución:
mkdir -p .claude
Reglas críticas
- SIEMPRE preguntar al usuario: Este comando es interactivo, no generar contenido sin input del usuario
- Confirmar antes de guardar: Mostrar el CLAUDE.md generado y esperar aprobación
- Respetar la información del usuario: Lo que dice el usuario tiene prioridad sobre lo que se analiza automáticamente
- No sobrescribir sin avisar: Si ya existe CLAUDE.md con contenido, advertir antes de sobrescribir