En direct depuis le registre
Générez des pipelines CI/CD GitHub Actions en analysant le code que vous avez déjà.
cistack analyse votre projet, détecte la stack et écrit des workflows GitHub Actions prêts pour la production pour l’intégration continue, le déploiement, Docker et les releases. Conçu pour de vrais dépôts, pas des démos : il lit les fichiers de verrouillage, les signaux de framework, la config de release, les workspaces monorepo, l’hébergement et les métadonnées de branches Git avant de générer le YAML.
Téléchargements hebdomadaires
2.4k
semaine dernière sur npm
Installation rapide
npx cistackInstallation
npx cistackToujours la dernière version. Pas d’installation globale.
cistack prend en charge Node.js 16+ ; le projet est vérifié en continu sur Node.js 18, 20 et 22 dans GitHub Actions.
Aperçu d’exécution
Sortie CLI animée après analyse d’un projet type.
Référence
Pourquoi cistack
- Détecte automatiquement les langages, frameworks, outils de test, hébergeurs et outils de release
- Utilise la branche Git par défaut du dépôt quand elle est disponible au lieu de supposer main
- Prend en charge les monorepos, les workflows par package et des commandes adaptées au gestionnaire de paquets
- Génère une config Dependabot alignée sur l’écosystème, y compris Bun lorsque bun.lock est présent
- Fusionne intelligemment les workflows générés avec les fichiers existants au lieu d’écraser aveuglément
- Génère des pipelines de déploiement pour Vercel, Netlify, Firebase, GitHub Pages, AWS, Azure, Heroku, Render et Railway
- Inclut des commandes intégrées d’audit et de mise à niveau des workflows
- Prend en charge cistack.config.js typé via index.d.ts
- S’appuie sur une suite de régression automatisée (branches, release, fusion intelligente, scripts monorepo, tests smoke CLI)
Utilisation CLI
Fichiers générés
Détection prise en charge
Clés de configuration de premier niveau
- nodeVersion
- packageManager
- hosting
- frameworks
- testing
- branches
- workflowLayout
- cache
- monorepo
- release
- secrets
- outputDir
Comportement des branches
- Si branches est défini dans la config, cistack l’utilise telle quelle
- Sinon il lit la branche par défaut du dépôt depuis les métadonnées Git quand c’est possible
- Si les métadonnées Git ne sont pas disponibles, il retombe sur des valeurs sûres comme main, master et develop selon le type de workflow
Configuration
Créez cistack.config.js pour surcharger la détection.
Exemple
/** @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',
},
};Secrets
Les workflows de déploiement et de release générés indiquent les secrets nécessaires en tête de fichier. Ajoutez-les dans GitHub : Paramètres → Secrets and variables → Actions.
Lancer les vérifications en local
npm testnpm run test:smokenode bin/ciflow.js audit --path .node bin/ciflow.js upgrade --path . --dry-runAvec le paquet publié, l’exécutable est cistack. Dans le dépôt cistack, le point d’entrée local est bin/ciflow.js.
Développement et qualité
Le projet inclut une suite de régression sur les zones historiquement les plus fragiles :
- gestion des surcharges de configuration
- détection de la branche par défaut
- sélection de la branche de déploiement
- branche de production Netlify
- comportement de fusion intelligente
- résolution des scripts de build par package en monorepo
- détection de la config de release
- génération du workflow de release
- tests smoke CLI en dry-run
Licence MIT
Génération de workflows CI/CD à partir du dépôt que vous avez déjà.
Créé par Edwin Vakayil
© 2026 cistack. Tous droits réservés le cas échéant.