Skip to content
Skillpedia
Deploy & cloud (DevOps)40k · #5113

dependabot

Guides in configuring and managing GitHub Dependabot for dependency and security updates.

What it does

Dependabot is a GitHub tool that helps keep your project's code libraries (dependencies) up-to-date and secure. It can alert you about security issues and automatically create updates.

When to use it

  • ✓When you want to be notified about dependencies with security flaws.
  • ✓To automatically update old libraries to newer versions.
  • ✓To organize how dependency updates are handled in your project.

Example of what to ask your AI

“How do I configure Dependabot to update my Node.js dependencies weekly?”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

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

Ready-to-paste message

Use this skill to help me: https://github.com/github/awesome-copilot/blob/main/skills/dependabot/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

You configure Dependabot in a file named `dependabot.yml` at the root of your project. In this file, you tell Dependabot which types of libraries (like npm, pip, Docker) it should monitor, where to find them, and how often it should check for updates.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

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

Or download just the file:

curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/dependabot/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Dependabot Configuration & Management

Overview

Dependabot is GitHub's built-in dependency management tool with three core capabilities:

  1. Dependabot Alerts — Notify when dependencies have known vulnerabilities (CVEs)
  2. Dependabot Security Updates — Auto-create PRs to fix vulnerable dependencies
  3. Dependabot Version Updates — Auto-create PRs to keep dependencies current

All configuration lives in a single file: .github/dependabot.yml on the default branch. GitHub does not support multiple dependabot.yml files per repository.

Configuration Workflow

Follow this process when creating or optimizing a dependabot.yml:

Step 1: Detect All Ecosystems

Scan the repository for dependency manifests. Look for:

Ecosystem YAML Value Manifest Files
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

Notes:

  • pnpm and yarn both use the npm ecosystem value.
  • Prefer uv ecosystem value when uv.lock is present; otherwise use pip.

Step 2: Map Directory Locations

For each ecosystem, identify where manifests live. Use directories (plural) with glob patterns for monorepos:

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

Important: directory (singular) does NOT support globs. Use directories (plural) for wildcards.

Step 3: Configure Each Ecosystem Entry

Every entry needs at minimum:

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

Step 4: Optimize with Grouping, Labels, and Scheduling

See sections below for each optimization technique.

Monorepo Strategies

Glob Patterns for Workspace Coverage

For monorepos with many packages, use glob patterns to avoid listing each directory:

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

Cross-Directory Grouping

Use group-by: dependency-name to create a single PR when the same dependency updates across multiple directories:

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

This creates one PR per dependency across all specified directories, reducing CI costs and review burden.

Limitations:

  • All directories must use the same package ecosystem
  • Applies to version updates only
  • Incompatible version constraints create separate PRs

Standalone Packages Outside Workspaces

If a directory has its own lockfile and is NOT part of the workspace (e.g., scripts in .github/), create a separate ecosystem entry for it.

Dependency Grouping

Reduce PR noise by grouping related dependencies into single PRs.

By Dependency Type

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

By Name Pattern

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

For Security Updates

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

…
FAQ

What are 'Dependabot Alerts'?

These are notifications Dependabot sends when it detects that a library you are using has a known security vulnerability.

What are 'Dependabot Security Updates'?

These are automatic updates Dependabot creates to fix detected security vulnerabilities in your libraries.

What are 'Dependabot Version Updates'?

These are automatic updates Dependabot creates to keep your libraries current with the latest versions, even if there are no security issues.

Details

Original description by the author

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

Popularity

GitHub stars
40k
Ranking position
#5113
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills