Pular para o conteúdo
Skillpedia
Deploy e nuvem (DevOps)40 mil · #5113

dependabot

Guia na configuração e gerenciamento do Dependabot do GitHub para atualizações de dependências e segurança.

O que ela faz

Dependabot é uma ferramenta do GitHub que ajuda a manter as bibliotecas de código (dependências) do seu projeto atualizadas e seguras. Ele pode avisar sobre problemas de segurança e criar automaticamente atualizações.

Quando usar

  • ✓Quando você quer ser avisado sobre dependências com falhas de segurança.
  • ✓Para atualizar automaticamente bibliotecas antigas para versões mais novas.
  • ✓Para organizar como as atualizações de dependência são feitas no seu projeto.

Exemplo do que pedir para a IA

“Como configuro o Dependabot para atualizar minhas dependências de Node.js semanalmente?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/github/awesome-copilot/blob/main/skills/dependabot/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/github/awesome-copilot/blob/main/skills/dependabot/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Você configura o Dependabot em um arquivo chamado `dependabot.yml` na raiz do seu projeto. Neste arquivo, você diz ao Dependabot quais tipos de bibliotecas (como npm, pip, Docker) ele deve monitorar, onde encontrá-las e com que frequência deve verificar atualizações.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add github/awesome-copilot --skill dependabot

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/dependabot/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Configuração e Gerenciamento do Dependabot

Visão Geral

O Dependabot é a ferramenta integrada do GitHub para gerenciamento de dependências, com três funcionalidades principais:

  1. Alertas do Dependabot — Notifica quando dependências têm vulnerabilidades conhecidas (CVEs)
  2. Atualizações de Segurança do Dependabot — Cria automaticamente PRs para corrigir dependências vulneráveis
  3. Atualizações de Versão do Dependabot — Cria automaticamente PRs para manter as dependências atualizadas

Toda a configuração fica em um único arquivo: .github/dependabot.yml no branch padrão. O GitHub não suporta múltiplos arquivos dependabot.yml por repositório.

Fluxo de Trabalho de Configuração

Siga este processo ao criar ou otimizar um dependabot.yml:

Etapa 1: Detectar Todos os Ecossistemas

Escaneie o repositório em busca de manifestos de dependência. Procure por:

Ecossistema Valor YAML Arquivos de Manifesto
npm/pnpm/yarn npm package.json, package-lock.json, pnpm-lock.yaml, yarn.lock
pip/pipenv/poetry pip requirements.txt, Pipfile, pyproject.toml, setup.py
uv uv pyproject.toml, uv.lock
Docker docker Dockerfile
Docker Compose docker-compose docker-compose.yml
GitHub Actions github-actions .github/workflows/*.yml
Go modules gomod go.mod
Bundler (Ruby) bundler Gemfile
Cargo (Rust) cargo Cargo.toml
Composer (PHP) composer composer.json
NuGet (.NET) nuget *.csproj, packages.config
.NET SDK dotnet-sdk global.json
Maven (Java) maven pom.xml
Gradle (Java) gradle build.gradle
Terraform terraform *.tf
OpenTofu opentofu *.tf
Helm helm Chart.yaml
Hex (Elixir) mix mix.exs
Swift swift Package.swift
Pub (Dart) pub pubspec.yaml
Bun bun bun.lockb
Dev Containers devcontainers devcontainer.json
Git Submodules gitsubmodule .gitmodules
Pre-commit pre-commit .pre-commit-config.yaml

Observações:

  • pnpm e yarn usam o mesmo valor de ecossistema npm.
  • Prefira o valor de ecossistema uv quando uv.lock estiver presente; caso contrário, use pip.

Etapa 2: Mapear Localizações de Diretório

Para cada ecossistema, identifique onde os manifestos residem. Use directories (plural) com padrões glob para monorepos:

directories:
  - "/"           # root
  - "/apps/*"     # all app subdirs
  - "/packages/*" # all package subdirs
  - "/lib-*"      # dirs starting with lib-
  - "**/*"        # recursive (all subdirs)

Importante: directory (singular) não suporta globs. Use directories (plural) para curingas.

Etapa 3: Configurar Cada Entrada de Ecossistema

Cada entrada precisa, no mínimo, de:

- package-ecosystem: "npm"
  directory: "/"
  schedule:
    interval: "weekly"

Etapa 4: Otimizar com Agrupamento, Rótulos e Agendamento

Veja as seções abaixo para cada técnica de otimização.

Estratégias de Monorepo

Padrões Glob para Cobertura de Workspace

Para monorepos com muitos pacotes, use padrões glob para evitar listar cada diretório:

- package-ecosystem: "npm"
  directories:
    - "/"
    - "/apps/*"
    - "/packages/*"
    - "/services/*"
  schedule:
    interval: "weekly"

Agrupamento Entre Diretórios

Use group-by: dependency-name para criar um único PR quando a mesma dependência for atualizada em vários diretórios:

groups:
  monorepo-deps:
    group-by: dependency-name

Isso cria um PR por dependência em todos os diretórios especificados, reduzindo custos de CI e carga de revisão.

Limitações:

  • Todos os diretórios devem usar o mesmo ecossistema de pacotes
  • Aplica-se apenas a atualizações de versão
  • Restrições de versão incompatíveis criam PRs separados

Pacotes Autônomos Fora de Workspaces

Se um diretório tiver seu próprio lockfile e não fizer parte do workspace (por exemplo, scripts em .github/), crie uma entrada de ecossistema separada para ele.

Agrupamento de Dependências

Reduza o ruído de PRs agrupando dependências relacionadas em PRs únicos.

Por Tipo de Dependência

groups:
  dev-dependencies:
    dependency-type: "development"
    update-types: ["minor", "patch"]
  production-dependencies:
    dependency-type: "production"
    update-types: ["minor", "patch"]

Por Padrão de Nome

groups:
  angular:
    patterns: ["@angular*"]
    update-types: ["minor", "patch"]
  testing:
    patterns: ["jest*", "@testing-library*", "ts-jest"]

Para Atualizações de Segurança

groups:
  security-patches:
    applies-to: security-updates
    patterns: ["*"]

…
Perguntas frequentes

O que são 'Dependabot Alerts'?

São avisos que o Dependabot envia quando detecta que alguma biblioteca que você usa tem uma vulnerabilidade de segurança conhecida.

O que são 'Dependabot Security Updates'?

São atualizações automáticas que o Dependabot cria para corrigir as vulnerabilidades de segurança detectadas nas suas bibliotecas.

O que são 'Dependabot Version Updates'?

São atualizações automáticas que o Dependabot cria para manter suas bibliotecas atualizadas com as versões mais recentes, mesmo que não haja problemas de segurança.

Detalhes

Descrição original do autor

Comprehensive guide for configuring and managing GitHub Dependabot. Use this skill when users ask about creating or optimizing dependabot.yml files, managing Dependabot pull requests, configuring dependency update strategies, setting up grouped updates, monorepo patterns, multi-ecosystem groups, security update configuration, auto-triage rules, or any GitHub Advanced Security (GHAS) supply chain s

repo: github/awesome-copilot

Popularidade

Estrelas no GitHub
40 mil
Posição no ranking
#5113
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas