gh-action-pulse
gh-action-pulse is a utility designed to monitor and analyze the health of GitHub Actions dependencies within a repository. It scans your workflow and action definition files to identify which actions are being used and updates them to the last existing tag using (./rules.md)
Key Features
- Automatic Scanning: Detects
uses:statements across.github/workflowsand.github/actions. - Reference Identification: Determines if an action is pinned to a specific commit SHA, a tag, or a branch.
- Update Recommendations: Queries the GitHub API to compare your current references against the latest stable semantic version (SemVer) tags.
- Metadata Insights: Retrieves commit dates and reference types to help evaluate the "freshness" of your CI/CD dependencies.
Setup
The tool interacts with the GitHub API and requires a GitHub Personal Access Token.
export GITHUB_TOKEN=your_github_token_here
If you haven't one, there's a fallback which will create a token using gh command
You will need python >= 3.14 to make this program works correctly.
Local Installation
uv tool install . --force --reinstall
Installation from last pypi release
Using uv
uv tool install gh-action-pulse
Using pipx
pipx install gh-action-pulse
Roadmap
Randoms items
- Maybe Separate unit tests with appropriate workflow (pytest) if checks takes times
- Add E2E tests with appropriate workflow (pytest and/or bats)
- Be able to check for nodejs version in upstream repo
- Be able to raise some warnings if there's no recent upstream tag within x days
- Maybe configuration file with some ignore parameters or specific rules for some workflows (needs thinking)
- Check eventual redirection of action to update to new URL (is there an example of this ?)
- Check if github repo of actions is not in readonly mode (sample: https://github.com/google-github-actions/release-please-action)
- Change to versioned version of tools in mise.toml when near stable version (could depend on tools)
CONTRIBUTING
- Feel free to contribute ;-)
Jean-Yves
Release files for gh-action-pulse 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| gh_action_pulse-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / gh_action_pulse-0.2.0-py3-none-any.whl
| Download URL | gh_action_pulse-0.2.0-py3-none-any.whl |
|---|---|
| Size | 23.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
05c08b7abf1861f9d7b75ba89c500147217ff6f99dc33e4f10d9a1a63eba6a50
|
|
BLAKE2b-256 checksum How to use checksums |
74f67c9dd7f7160da992074ab8c09c56f6a0a72ec64084c95b98a0719c3ca924
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 2, 2026.
Transparency log