Em direto a partir do registo

Gere pipelines CI/CD no GitHub Actions analisando o código que já tem.

O cistack analisa o seu projeto, deteta o stack e escreve workflows GitHub Actions prontos para produção: CI, implementação, Docker e releases. Pensado para repositórios reais, não demonstrações: lê ficheiros de lock, sinais de framework, configuração de release, workspaces monorepo, alojamento e metadados de ramos Git antes de gerar o YAML.

Transferências semanais

2.4k

última semana no npm

Instalação rápida

npx cistack

Instalação

Recomendado
npx cistack

Obtém sempre 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 CLI animada após analisar um projeto típico.

A processar saída…
npx cistack
$npx cistack
  cistack v3.0.0
  ────────────────────────

✔ Project scanned
✔ Stack detected

  Stack detection summary
  Languages:           TypeScript
  Frameworks:          Next.js
  Hosting:             Vercel
  Testing:             None
  Release tool:        None

Does this look correct? Generate pipeline with these settings? Yes
✔ Generated 1 workflow file
  ✔ Written:      .github/workflows/pipeline.yml
  ✔ Written:      .github/dependabot.yml

Done! Your GitHub Actions pipeline is ready.
   Pipeline → .github/workflows/pipeline.yml
   Dependabot → .github/dependabot.yml

Referência

Porquê o cistack

  • Deteta automaticamente linguagens, frameworks, ferramentas de teste, fornecedores de alojamento e ferramentas de release
  • Utiliza o ramo Git predefinido do repositório quando disponível, em vez de assumir main
  • Suporta monorepos, workflows por pacote e comandos conscientes do gestor de pacotes
  • Gera configuração Dependabot alinhada com o ecossistema, incluindo Bun quando existe bun.lock
  • Funde de forma inteligente os workflows gerados com os ficheiros existentes sem sobrescrever à cega
  • Gera pipelines de implementação para Vercel, Netlify, Firebase, GitHub Pages, AWS, Azure, Heroku, Render e Railway
  • Inclui comandos integrados de auditoria e atualização de workflows
  • Suporta cistack.config.js tipado via index.d.ts
  • Com suíte de regressão automatizada (ramos, release, fusão inteligente, scripts monorepo, testes smoke da CLI)

Utilização da CLI

O que é gerado

Deteção suportada

FirebaseVercelNetlifyGitHub PagesAWSGCP App EngineAzureHerokuRenderRailwayDocker

Chaves de configuração de nível superior

  • nodeVersion
  • packageManager
  • hosting
  • frameworks
  • testing
  • branches
  • workflowLayout
  • cache
  • monorepo
  • release
  • secrets
  • outputDir

Comportamento dos ramos

  • Se branches estiver definido na config, o cistack usa-o exatamente
  • Caso contrário, lê o ramo predefinido do repositório a partir dos metadados Git quando possível
  • Sem metadados Git, recua para valores seguros como main, master e develop consoante o tipo de workflow

Configuração

Crie cistack.config.js quando quiser substituir a deteçã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

Os workflows de implementação e release gerados documentam os segredos necessários no topo de cada ficheiro. Adicione-os no GitHub: Definições → Secrets and variables → Actions.

Executar verificações localmente

npm test
npm run test:smoke
node bin/ciflow.js audit --path .
node bin/ciflow.js upgrade --path . --dry-run

Com 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 substituições de configuração
  • deteção do ramo predefinido
  • seleção do ramo de implementação
  • ramo de produção Netlify
  • comportamento de fusão inteligente
  • procura de scripts de build por pacote em monorepo
  • deteção da configuração de release
  • geração do workflow de release
  • testes smoke da CLI em dry-run

Licença MIT

Geração de workflows CI/CD a partir do repositório que já tem.

Criado por Edwin Vakayil

© 2026 cistack. Todos os direitos reservados quando aplicável.