AgentSkillsCN

github-actions-version-check

检查并更新GitHub Actions的版本。当创建、修改或审查GitHub Actions工作流文件(.github/workflows/*.yml),或被要求确保Actions保持最新时,可使用此技能。

SKILL.md
--- frontmatter
name: github-actions-version-check
description: Check and update GitHub Actions versions. Use when creating, modifying, or reviewing GitHub Actions workflow files (.github/workflows/*.yml), or when asked to ensure actions are up to date.

GitHub Actions Version Check

Ensures GitHub Actions in workflow files use up-to-date versions.

Prerequisites

Install aver (GitHub Actions version checker):

bash
go install github.com/llimllib/aver/cmd/aver@latest

Or if aver is already in PATH, skip this step.

Workflow

When Creating or Modifying Workflow Files

  1. Before adding any action, check what the latest version is:

    bash
    # Search GitHub for the action's latest release
    # Example: for actions/checkout, check https://github.com/actions/checkout/releases
    
  2. Always use the latest major version when adding new actions:

    • Good: actions/checkout@v4
    • Avoid: actions/checkout@v3 (unless v3 is actually latest)
  3. After making changes, validate with aver:

    bash
    aver
    
  4. If outdated actions are found, update them to the latest versions shown.

Checking Existing Workflows

Run aver in the project root:

bash
# Human-readable output
aver

# JSON output for scripting
aver --json

# Ignore SHA-pinned actions
aver --ignore-sha

# Only report major version updates
aver --ignore-minor

Understanding Output

code
File                        Action            Current  Latest
--------------------------  ----------------  -------  ------
.github/workflows/ci.yml    actions/checkout  v3       v4

This means actions/checkout@v3 should be updated to actions/checkout@v4.

Exit Codes

CodeMeaning
0All actions up to date
1Outdated actions found
2Error occurred

Best Practices

  1. Pin to major versions (@v4) not full semver (@v4.1.2) unless you need reproducibility
  2. Run aver before committing workflow changes
  3. For SHA-pinned actions, aver shows commits behind - update periodically
  4. Set GITHUB_TOKEN for higher API rate limits:
    bash
    export GITHUB_TOKEN=ghp_xxxxx
    

Common Actions and Their Repos