En vivo desde el registro
Genera pipelines CI/CD de GitHub Actions analizando el código que ya tienes.
cistack analiza tu proyecto, detecta el stack y escribe workflows de GitHub Actions listos para producción: CI, despliegue, Docker y releases. Está pensado para repositorios reales, no demos: lee lockfiles, señales de framework, configuración de release, workspaces monorepo, hosting y metadatos de ramas Git antes de generar el YAML.
Descargas semanales
2.4k
última semana en npm
Instalación rápida
npx cistackInstalación
npx cistackSiempre obtiene la última versión. Sin instalación global.
cistack admite Node.js 16+; el proyecto se verifica de forma continua en Node.js 18, 20 y 22 en GitHub Actions.
Vista previa
Salida CLI animada tras analizar un proyecto típico.
Referencia
Por qué cistack
- Detecta automáticamente lenguajes, frameworks, herramientas de prueba, proveedores de hosting y herramientas de release
- Usa la rama Git por defecto del repositorio cuando está disponible, en lugar de asumir main
- Admite monorepos, workflows por paquete y comandos según el gestor de paquetes
- Genera configuración Dependabot alineada con el ecosistema, incluido Bun si existe bun.lock
- Fusiona de forma inteligente los workflows generados con los archivos existentes sin sobrescribir a ciegas
- Genera pipelines de despliegue para Vercel, Netlify, Firebase, GitHub Pages, AWS, Azure, Heroku, Render y Railway
- Incluye comandos integrados de auditoría y actualización de workflows
- Admite cistack.config.js tipado mediante index.d.ts
- Apoyado en una suite de regresión automatizada (ramas, release, fusión inteligente, scripts monorepo, pruebas smoke del CLI)
Uso del CLI
Qué se genera
Detección admitida
Claves de configuración de nivel superior
- nodeVersion
- packageManager
- hosting
- frameworks
- testing
- branches
- workflowLayout
- cache
- monorepo
- release
- secrets
- outputDir
Comportamiento de ramas
- Si branches está definido en la config, cistack lo usa tal cual
- Si no, lee la rama por defecto del repositorio desde los metadatos de Git cuando sea posible
- Si no hay metadatos de Git, usa valores seguros como main, master y develop según el tipo de workflow
Configuración
Crea cistack.config.js cuando quieras anular la detección.
Ejemplo
/** @type {import('cistack').Config} */
module.exports = {
nodeVersion: '20',
packageManager: 'pnpm',
branches: ['main', 'staging'],
workflowLayout: 'single',
hosting: ['Vercel'],
outputDir: '.github/workflows',
cache: {
npm: true,
cargo: true,
pip: true,
},
monorepo: {
perPackage: true,
},
release: {
tool: 'semantic-release',
},
};Secretos
Los workflows de despliegue y release generados documentan los secretos necesarios al inicio de cada archivo. Añádelos en GitHub: Settings → Secrets and variables → Actions.
Ejecutar comprobaciones en local
npm testnpm run test:smokenode bin/ciflow.js audit --path .node bin/ciflow.js upgrade --path . --dry-runSi usas el paquete publicado, el ejecutable es cistack. En el repositorio de cistack, el punto de entrada local es bin/ciflow.js.
Desarrollo y calidad
El proyecto incluye una suite de regresión en las zonas que históricamente eran más frágiles:
- manejo de anulaciones de configuración
- detección de la rama por defecto
- selección de la rama de despliegue
- rama de producción en Netlify
- comportamiento de fusión inteligente
- búsqueda de scripts de build por paquete en monorepo
- detección de configuración de release
- generación del workflow de release
- pruebas smoke del CLI en dry-run
Licencia MIT
Generación de workflows CI/CD a partir del repositorio que ya tienes.
Creado por Edwin Vakayil
© 2026 cistack. Todos los derechos reservados cuando corresponda.