From zad-actions
Valideer GitHub Actions action.yml bestanden voor ZAD. Gebruik bij vragen over 'validate action', 'action.yml', 'valideer actie', 'GitHub Action controleren', 'inputs outputs check'.
npx claudepluginhub djimit/overheid-claude-plugins --plugin zad-actionsThis skill is limited to using the following tools:
Deep validation of action.yml files in this repo.
Validates, lints, audits, and fixes GitHub Actions workflows using actionlint and act. Includes local testing, error fixes, and public action version checks.
Validates GitHub Actions CI/CD workflow files using actionlint for syntax and heuristics for common mistakes, reporting issues with fix suggestions.
Creates and configures GitHub Actions including custom JavaScript, Docker, and composite actions. Covers marketplace publishing, security practices, runner setup, troubleshooting, and optimization.
Share bugs, ideas, or general feedback.
Deep validation of action.yml files in this repo.
/validate-action <action>
Where <action> is deploy, cleanup, or scheduled-cleanup. If not specified, validate all.
Read <action>/action.yml and verify:
name, description, author, branding, inputs, outputs, runsdescription (non-empty string)required explicitly set to true or false (not omitted)component and image are required: false but functionally required when components is not set. Verify the action's bash script enforces this mutual exclusion (either 'components' or both 'component' and 'image' must be provided)description (non-empty string)value referencing a valid step output${{ inputs.X }} in run: blocks and env: mappings must correspond to a defined input X${{ steps.X.outputs.Y }} must reference:
id: X that exists in the actionY that the step actually sets (via >> "$GITHUB_OUTPUT")value: ${{ steps.X.outputs.Y }} must reference a valid step ID and output namecomponents input takes precedence over component/image. Validate that the bash script handles both modes: COMPONENTS non-empty triggers multi-component path; otherwise COMPONENT + IMAGE are required. Verify the urls output is only set in multi-component mode and url is set in both modescontainers input takes precedence over container-org/container-name/container-tag. Validate the step's if condition allows either mode. Verify the bash script builds a unified container list from either input sourceCheck bash scripts in run: blocks for:
api-key, tokens, and secrets must be passed via env: block, not interpolated directly in run: stringscurl command must have --max-timeecho or log statements should be validated first (grep pattern check before echo)$VARIABLE expansions in bash should be quoted ("$VARIABLE")Read README.md and compare with <action>/action.yml:
@v1, @v2, or @v3 references should match current major versionReport issues grouped by category with:
deploy/action.yml:42)Example:
ERROR deploy/action.yml:83 - Input 'api-key' interpolated directly in run: block (should use env:)
WARNING README.md:45 - Input 'wait-interval' not documented in README