ENGINEERING

Block PRs that introduce copyleft or forbidden licenses

On every pull request, diffs the lockfile for newly added dependencies, resolves each package's license.

CategoryEngineering
Enginesim
Difficultyintermediate
Triggerevent
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerPull request opened or updatedGitHubGitHub
  • ActionFetch lockfile diff and parse newly added packagesGitHubGitHub
  • ActionResolve SPDX license for each new packageHTTP webhook
  • LogicMatch licenses against forbidden/copyleft policy list
  • OutputSet GitHub commit status and comment violations on PRGitHubGitHub

What it does

Acts as a required PR gate. When a pull request changes the lockfile, it isolates only the newly added dependency entries, looks up each package's declared license, and compares them against your policy list (e.g. GPL-3.0, AGPL-3.0, SSPL, or anything unrecognized). If a violation is found it posts a failing commit status that blocks merge until resolved.

When to use it

Use it when you want license compliance enforced automatically at merge time rather than caught in a quarterly audit. Ideal for teams shipping proprietary software who must avoid copyleft contamination but don't want to hand-review every dependency bump.

How it works

  1. 1A pull request opened or synchronized fires the trigger.
  2. 2The flow fetches the lockfile diff and parses only the added package entries.
  3. 3For each new package it resolves the SPDX license from the registry metadata.
  4. 4A policy check compares each license against the forbidden and copyleft lists.
  5. 5If clean, it sets a passing GitHub commit status; if violations exist, it posts a failing status plus a PR comment naming each offending package and license.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect GitHubRepos, issues, pull requests, actions.
  2. 2
    Connect HTTP webhookTrigger any URL on agent actions.
  3. 3
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  4. 4
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  5. 5
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.