promptme
v1.4.1
Published
CLI tool to snapshot your codebase for AI analysis
Maintainers
Readme
🧠 promptme
promptme es una herramienta CLI para generar archivos de texto con el contenido estructurado de tu proyecto, pensada especialmente para usarse como contexto en modelos de IA como ChatGPT o GPT-4.
Te permite exportar automáticamente tu código fuente ignorando archivos innecesarios, dividirlo en archivos por tamaño, generar un resumen del proyecto, redirigir la salida al terminal, usar plantillas personalizadas, y más.
🚀 Instalación
Desde NPM
npm install -g promptmeEsto instalará el comando
promptmede forma global.
Desde el código fuente local (modo desarrollo)
Si has clonado este repositorio o lo estás desarrollando tú mismo:
npm install -g .Esto compilará e instalará tu versión local como comando global.
📦 Uso básico
En la raíz de tu proyecto:
promptmeEsto generará uno o varios archivos project_prompt1.txt, project_prompt2.txt, etc., con el contenido del proyecto (ignorando carpetas como node_modules, .git, etc.).
⚙️ Opciones CLI
promptme [options]| Opción | Descripción |
| ------------------------ | --------------------------------------------------------------------- |
| -m, --maxlength | Tamaño máximo (en bytes) por archivo generado (por defecto: 40000) |
| -o, --output | Nombre base de los archivos de salida (por defecto: project_prompt) |
| -f, --format | Formato de salida: txt, md, o json |
| -i, --include | Carpetas a incluir, separadas por coma (ej: src,test) |
| --template <file> | Ruta a una plantilla personalizada (.promptmetemplate) |
| --ignorefile <file> | Ruta a un archivo .promptmeignore personalizado |
| --source <path> | Ruta del proyecto a analizar (por defecto: directorio actual) |
| --outputdir <path> | Ruta donde se escribirán los archivos generados (por defecto: .) |
| --stdout | Imprime la salida por consola en vez de escribir archivos |
| --no-generate-defaults | No genera .promptmetemplate ni .promptmeignore si no existen |
| --summary | Genera un archivo project_summary.txt con lenguajes y dependencias |
🔄 Comando reset
Si has modificado la plantilla o el archivo .promptmeignore y deseas restablecerlos a sus valores por defecto:
promptme resetEsto sobrescribirá los archivos .promptmetemplate y .promptmeignore con las versiones estándar incluidas por defecto.
📝 Ejemplos de uso
1. 📂 Generar prompts con nombre personalizado y formato markdown
promptme --output=context --format=md2. 🧱 Incluir solo ciertas carpetas (ej. src/ y test/)
promptme --include=src,test3. 📚 Usar una plantilla personalizada
promptme --template=plantillas/mi_plantilla.promptmetemplate4. 🔍 Usar un archivo .promptmeignore personalizado
promptme --ignorefile=config/ignore-base.txt5. 📁 Analizar un directorio externo
promptme --source=../proyecto-cliente6. 📤 Generar los archivos en otro directorio
promptme --outputdir=./dump7. 📊 Generar también el resumen del proyecto
promptme --summary8. 🖨️ Mostrar el resultado directamente en consola (sin escribir archivos)
promptme --stdout9. 🙅 No crear automáticamente .promptmetemplate ni .promptmeignore
promptme --no-generate-defaults10. 🧩 Combinar todo: analizar un proyecto externo, sin escribir archivos, usando template personalizado
promptme \
--source=../app1 \
--template=plantillas/app1.promptmetemplate \
--ignorefile=configs/app1.ignore \
--stdout \
--no-generate-defaults \
--include=src,lib \
--format=md🧠 Qué contiene el prompt generado
- Un encabezado introductorio (puedes personalizarlo con una plantilla).
- El contenido completo de los archivos fuente relevantes.
- División automática en archivos si el tamaño supera el límite definido (
--maxlength). - Un mensaje final indicando a la IA que el volcado ha terminado.
📄 Archivos especiales
.promptmeignore
Funciona igual que un .gitignore. Aquí defines qué archivos no se deben incluir.
Se genera automáticamente si no existe, a menos que uses --no-generate-defaults.
.promptmetemplate
Plantilla opcional para el texto inicial del prompt.
Se genera automáticamente si no existe (a menos que lo impidas con --no-generate-defaults).
Puedes modificarla o restablecerla con:
promptme reset📑 Archivo de resumen: project_summary.txt
Si usas la opción --summary, se generará un archivo que contiene:
- 📄 Lenguajes detectados (según extensión de archivo)
- 📦 Dependencias (
dependenciesydevDependencies) listadas enpackage.json
💡 Casos de uso
- Pasar el contexto de tu código a ChatGPT para refactoring o auditoría.
- Compartir snapshots de tu proyecto con un equipo remoto.
- Generar documentación técnica estructurada.
- Onboarding para nuevos colaboradores.
- Revisar dependencias y estructura antes de migraciones.
¿Ideas o mejoras?
Las contribuciones están abiertas. Puedes abrir un issue o pull request directamente en el repositorio.
📄 Licencia
MIT © 2025 - David Dávila
