Ao vivo do registro
Gere pipelines CI/CD no GitHub Actions analisando o código que você já tem.
O cistack analisa seu projeto, detecta o stack e grava workflows do GitHub Actions prontos para produção: CI, deploy, Docker e releases. Feito para repositórios reais, não demos: lê lockfiles, sinais de framework, config de release, workspaces monorepo, hospedagem e metadados de branches Git antes de gerar o YAML.
Downloads semanais
2.4k
última semana no npm
Instalação rápida
npx cistackInstalação
npx cistackSempre busca a versão mais recente. Sem instalação global.
O cistack suporta Node.js 16+; o projeto é verificado continuamente em Node.js 18, 20 e 22 no GitHub Actions.
Pré-visualização
Saída do CLI animada após escanear um projeto típico.
Referência
Por que cistack
- Detecta automaticamente linguagens, frameworks, ferramentas de teste, provedores de hospedagem e ferramentas de release
- Usa o branch Git padrão do repositório quando disponível, em vez de assumir main
- Suporta monorepos, workflows por pacote e comandos conscientes do gerenciador de pacotes
- Gera configuração Dependabot alinhada ao ecossistema, incluindo Bun quando existe bun.lock
- Faz merge inteligente dos workflows gerados com arquivos existentes sem sobrescrever às cegas
- Gera pipelines de deploy para Vercel, Netlify, Firebase, GitHub Pages, AWS, Azure, Heroku, Render e Railway
- Inclui comandos integrados de auditoria e upgrade de workflows
- Suporta cistack.config.js tipado via index.d.ts
- Com suíte de regressão automatizada (branches, release, merge inteligente, scripts monorepo, testes smoke do CLI)
Uso do CLI
O que é gerado
Detecção suportada
Chaves de configuração de nível superior
- nodeVersion
- packageManager
- hosting
- frameworks
- testing
- branches
- workflowLayout
- cache
- monorepo
- release
- secrets
- outputDir
Comportamento dos branches
- Se branches estiver definido na config, o cistack usa exatamente isso
- Caso contrário, lê o branch padrão do repositório a partir dos metadados Git quando possível
- Sem metadados Git, recai em padrões seguros como main, master e develop conforme o tipo de workflow
Configuração
Crie cistack.config.js quando quiser sobrescrever a detecção.
Exemplo
/** @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',
},
};Segredos
Workflows de deploy e release gerados documentam os segredos necessários no topo de cada arquivo. Adicione-os no GitHub: Settings → Secrets and variables → Actions.
Rodar verificações localmente
npm testnpm run test:smokenode bin/ciflow.js audit --path .node bin/ciflow.js upgrade --path . --dry-runCom o pacote publicado, o executável é cistack. No repositório cistack, o ponto de entrada local é bin/ciflow.js.
Desenvolvimento e qualidade
O projeto inclui uma suíte de regressão nas áreas historicamente mais frágeis:
- tratamento de overrides de configuração
- detecção do branch padrão
- seleção do branch de deploy
- branch de produção Netlify
- comportamento de merge inteligente
- busca de scripts de build por pacote em monorepo
- detecção da config de release
- geração do workflow de release
- testes smoke do CLI em dry-run
Licença MIT
Geração de workflows CI/CD a partir do repositório que você já tem.
Criado por Edwin Vakayil
© 2026 cistack. Todos os direitos reservados quando aplicável.