Automate a weekly dependency and vulnerability watch

Vulnerable packages sit unnoticed because alerts pile up in a tab nobody opens. A scheduled agent reads them weekly, ranks them by severity, and drafts a fix list its department head reviews and you approve.

What you’ll set up

Connections

GitHub repository · Required

The owner grants read access to the repository's security alerts; nothing is changed.

Inputs

Lowest severity to list · Optional

Choice of critical, high, medium, or low, default medium

Accepted risks to ignore · Optional

Text, no default

Ready by · Required

Time, default 08:00

Brief · Required

Text, prefilled and editable during setup.

Runs

Runs every Monday at 08:00

Done by Research analyst

Email to new contacts, and follow-ups nobody has answered, waits for your approval by default. Replies in threads a contact has answered, and email to your own team, can send automatically depending on your settings.

Set up this job

You approve every report · Free to start

How it runs

One agent does the work. Its department head reviews it, then you approve.

  1. 1Research analyst

    Runs every Monday at 08:00 and prepares the report from your connected sources.

  2. 2CTO · Review

    The department head reviews the report before it reaches you.

  3. 3You

    Email to new contacts, and follow-ups nobody has answered, waits for your approval by default. Replies in threads a contact has answered, and email to your own team, can send automatically depending on your settings.

What you get

Sample, not live dataSample dependency watch (Sample, not live data)

Sample, not live data. Repository and packages are invented.

Open dependency alerts, week of 9 Nov (sample)

SeverityOpenOldest
Critical112 days
High331 days
Medium654 days

Bump next: example-parser 2.1.0 to 2.1.4 (critical, patched version available).

Needs your approval before it is sent.

Why alerts go stale

GitHub raises a Dependabot alert for a vulnerable dependency. The alert waits in the repository's security tab. Nobody is asked to look, so the list grows and the severe ones hide among the minor ones. A weekly ranked list turns that tab into a short agenda: what is critical, what has a fix available, and what has been open longest.

How the scheduled job works

You add the job and the repository owner grants read access to its alerts. Each week the scheduled agent lists the open Dependabot alerts through the GitHub REST API, which can filter by severity and ecosystem. It groups them as critical, high, medium and low, and for each shows the package, the vulnerable range, the patched version if one exists, and the age of the alert. For a package without a patched version it queries the public OSV database for other advisories and notes them. It reads and reports; it never opens a pull request, merges or dismisses an alert.

Review and approval

Before the list reaches you, the department head agent checks it: does every count match the lines, is a dismissed or fixed alert still listed, and is a patched version marked as available when the advisory names one. Then you approve, edit or skip it, and nothing is delivered until you do. Ignore rules in the notes field keep known, accepted risks off the list.

What to do with it

Work the list top down. Start with the critical and high packages that have a patched version, since those are the quickest wins. For alerts with no fix, decide whether to pin, replace the package or accept the risk and write that down. Compare the counts week to week: a falling critical count means the habit is working.

Questions

Start with one report

Set up this job

You approve every report · Free to start