actnode¶
Find every GitHub Actions step whose action still runs on Node 20 (or older), and the release that moves it to Node 24.
Since 2026-06-02 GitHub-hosted runners run JavaScript actions on Node 24 by default, and every job that uses an action declaring using: node20 ends with:
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4 …
The warning names the action but not which file and line uses it, not whether the action is pulled in by a composite action, and not which version fixes it. FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true only hides it until Node 20 is removed from runners.
actnode answers all three:
$ actnode
[OLD] .github/workflows/ci.yml:7 node20 actions/checkout@v4 -> actions/checkout@v5
[OLD] .github/workflows/ci.yml:9 node20 actions/cache@v4 -> actions/cache@v5
3 step(s) run an action older than node24; 2 have a newer release ready.
$ actnode --fix
- reads each action's real
action.ymlat the exact ref you pin (tag, branch or SHA) - follows composite actions (and their local
./sub-actions) to find hidden Node 20 actions - suggests the smallest major bump that runs on Node 24, in the same ref style (SHA pins get a SHA +
# vX.Y.Zcomment) --fixrewrites only those lines;--failand the GitHub Action keep it from coming back
Next: Install · Usage · GitHub Action