github-actions-update-actionlisted
Install: claude install-skill tony/ai-workflow-plugins
# Update One GitHub Action
Take a single action — `actions/checkout`, `astral-sh/setup-uv`,
whatever the user names — from whatever each repository currently pins
to its current version, with one commit per repository explaining the
upgrade.
Read `references/action-pinning.md` first; it
defines how to inventory pins, verify a target tag exists, dereference
annotated tags, and choose the pin shape. Read
`references/dependabot-closeout.md` for the
close-out and CI-attribution rules.
User arguments: $ARGUMENTS
## Context
Repository — run this command and read the output:
```bash
git remote get-url origin 2>/dev/null || echo "(not a git repository)"
```
Default branch — run this command and read the output:
```bash
git symbolic-ref --short refs/remotes/origin/HEAD 2>/dev/null || echo "(unknown)"
```
Current pins for all actions on this branch — run this command and read the output:
```bash
git grep -hoE 'uses:[[:space:]]*[^[:space:]]+' "$(git symbolic-ref --short refs/remotes/origin/HEAD 2>/dev/null || echo HEAD)" -- '.github/workflows/*' '.github/actions/*' 2>/dev/null | sed -E 's/uses:[[:space:]]*//' | sort | uniq -c | sort -rn || echo "(no workflows found)"
```
## Procedure
### 1. Identify the action and the scope
The action comes from the argument. Without one, ask via
`ask-user-choice`, offering the out-of-date pins from the context block
above.
Scope defaults to the current repository. `--repo` may be repeated to
name others by path or slug. Exclude forks unle