← ClaudeAtlas

projeto-infralisted

Use when setting up or auditing repository infrastructure on GitHub — branch protection rulesets, CI workflows, Conventional Commits enforcement (husky/commitlint), release-please, CodeRabbit or claude-code-action review. Triggers include "/deltaspec:projeto-infra", "proteger a main", "configurar branch protection", "setup de CI", "automação de release", or the optional infra step offered by projeto-init. Requires gh CLI authenticated and a GitHub remote.
iuripereira/deltaspec · ★ 2 · DevOps & Infrastructure · score 75
Install: claude install-skill iuripereira/deltaspec
# projeto-infra ## Overview Aplica infraestrutura de repositório por perfil de projeto (herança do `veredas-bootstrap`, descontinuado): rulesets de branch protection, CI, Conventional Commits, release-please e review assistido. **Roteiro em markdown — sem scripts instaláveis**; os comandos `gh api`/`git` são executados diretamente a partir dos templates em `references/infra/`. **Idempotência defensiva:** consulte o que já existe antes de aplicar cada item; segunda rodada = no-op relatado, nunca duplicação ou sobrescrita. ## Pré-requisitos (verificar antes do gate) - `gh auth status` ok e remote GitHub presente (`gh repo view`). Sem um dos dois → **pare e reporte**; não aplique nada às cegas. - **Rulesets exigem repo público ou GitHub Pro** (403 em repo privado no plano free). Detecte cedo: `gh api repos/{owner}/{repo}/rulesets` retornou 403 → ofereça ao usuário tornar o repo público, assinar Pro, ou seguir sem proteção (CI continua valendo) — a escolha é dele. - Invocada avulsa (brownfield) ou pelo `projeto-init` (greenfield) — o processo é o mesmo. ## Processo 1. **Detectar perfil** — classifique o tipo (matriz do `projeto-init/references/detection.md`; na dúvida, pergunte): | Tipo | Perfil | Conteúdo | |---|---|---| | app-web, backend | **completo** | rulesets `main`+`develop`, fluxo `feature/fix → develop → main`, husky+commitlint (se Node), release-please, CI, CodeRabbit + claude-code-action (opcionais) | | tooling, site-estatico | **mínimo** | ruleset `main` only