git404hub

what is action-locker fr?

steph-owl/action-locker — explained in plain English

Analysis updated 2026-05-18

2PythonAudience · developerComplexity · 3/5Setup · moderate

tl;dr

action-locker pins your GitHub Actions workflows to exact, verified commits and can keep local backup copies, protecting your CI from tampered or disappearing actions.

vibe map

mindmap
  root((action-locker))
    What it does
      Pins actions to commits
      Lockfile of resolved SHAs
      Vendors local copies
      CI verify gate
    Tech stack
      Python
      Single stdlib file
    Use cases
      Block tag retargeting
      Survive deleted repos
      Audit CI supply chain
    Safety
      Five day age floor
      Content hash checks
      Fails closed on unknowns

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Lock all GitHub Actions in a repository to their exact current commits to block tag-retargeting attacks.

VIBE 2

Vendor a local copy of critical actions so CI still works if the original repository disappears.

VIBE 3

Add a CI verification step that fails the build if any action is unpinned or has been tampered with.

what's the stack?

Python

how it stacks up fr

steph-owl/action-locker0-bingwu-0/live-interpreter010zx00x1/faresnipe
Stars222
LanguagePythonPythonPython
Setup difficultymoderatemoderateeasy
Complexity3/52/52/5
Audiencedevelopergeneralgeneral

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · moderate time til it works · 30min

Optionally needs a GitHub token set for reliable commit age lookups on busy repos.

License terms are not stated in the available README.

in plain english

action-locker is a security tool for GitHub Actions, the automation scripts that run when you push code to GitHub. Normally a workflow references an action by a version tag like v4, but that tag can be moved to point at different code later, sometimes maliciously. action-locker locks each action to the exact commit it points to right now, so your automation cannot be silently swapped out from under you. The tool works in a few steps. Lock scans your workflow files, resolves every action reference to its exact commit, and writes a lockfile recording that commit along with when it was locked and where it is used. Rewrite then updates your workflow files to use those exact commit values while keeping the readable version tag as a comment. Vendor goes a step further and downloads a full copy of each locked action into your own repository, so even if the original action's repository disappears, you still have a working copy. Verify is the check that runs in your CI: it confirms every action is pinned to a real commit, that commit matches the lockfile, and any vendored copies still match what was originally downloaded. There is also an update command that checks whether newer versions of your locked actions are available, and flags cases where an action's source repository has vanished entirely. To reduce risk from very recent, possibly compromised commits, action-locker by default will not lock to a third party commit less than five days old, instead choosing the newest release that is old enough to have been reviewed by the wider community. The entire tool is a single Python file with no external dependencies, so it is easy to read and audit before you trust it with your CI pipeline.

prompts (copy fr)

prompt 1
Run action-locker lock and rewrite on this repo's .github/workflows directory and show me the resulting lockfile.
prompt 2
Add an action-locker verify step to our CI pipeline so builds fail on unpinned GitHub Actions.
prompt 3
Explain what action-locker's five day commit age floor protects against and how to override it safely.
prompt 4
Vendor the actions we depend on most heavily using action-locker so we have a local backup.

Frequently asked questions

what is action-locker fr?

action-locker pins your GitHub Actions workflows to exact, verified commits and can keep local backup copies, protecting your CI from tampered or disappearing actions.

What language is action-locker written in?

Mainly Python. The stack also includes Python.

What license does action-locker use?

License terms are not stated in the available README.

How hard is action-locker to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is action-locker for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.