github-contribution-workflow — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited github-contribution-workflow (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
The gh-CLI contribution loop for an agent acting on a GitHub repo: branch → commit → PR → CI → merge, plus issues, GitHub-side file ops, repo secrets, and contribution-flow repo settings. Encodes conventions that keep an agent's contributions reviewable and consistent. Tool-agnostic in spirit; concrete commands are gh + git.
pr-diff-verification..gitignore baseline) → apple-public-repo-security.subagent-conflict-detection.claude-skill-plugin-packaging.| Intent | Command |
|---|---|
| Open a PR | gh pr create --title "<conventional title>" --body "<body + 🤖 footer>" |
| Check CI before merge | gh pr checks <n> --repo <o/r> ; gh pr view <n> --json mergeStateStatus |
| Merge a PR | gh pr merge <n> --squash --delete-branch (only when status is CLEAN) |
| Open an issue | gh issue create --title "<title>" --body "<body>" |
| Comment on an issue | gh issue comment <n> --body "<text>" |
| Create/edit a file via GitHub | gh api -X PUT repos/<o/r>/contents/<path> -f message=… -f content=$(base64) … (no local clone needed) |
| Set a repo secret | gh secret set <NAME> --repo <o/r> (interactive paste; see Conventions) |
| List secrets | gh secret list --repo <o/r> (names only; values are write-only) |
| Configure merge / branch protection | gh api -X PATCH repos/<o/r> -F allow_squash_merge=true -F delete_branch_on_merge=true ; gh api -X PUT repos/<o/r>/branches/<b>/protection … |
feat/ fix/ chore/ docs/ ci/ refactor/ test/.Co-Authored-By: trailer. PR body: end with the 🤖 footer.--squash --delete-branch. Never merge unless `gh pr checks` / `mergeStateStatus` is `CLEAN`. BLOCKED is usually just pending required checks, not a failure — poll until they finish, don't force-merge.gh secret set <NAME> without `--body` — the interactive prompt keeps the value out of shell history. Never gh secret set X --body "$TOKEN". Verify presence (not value) with gh secret list.git update-index --cacheinfo 160000,<commit-sha>,<submodule-path> — no submodule checkout needed (works in a fresh worktree). Confirm the target SHA is pushed/tag-reachable on the submodule's remote first (git ls-remote --tags <url> <tag>).
.gitmodules/config-only change) when the repo's pre-commit gate is heavy and times out. Never for code or content commits — those must pass the hooks.origin/main + PR, never in place — see subagent-conflict-detection.This skill owns the contribution-flow repo config: merge-button policy (allow_squash_merge, delete_branch_on_merge), branch protection requiring CI, required status checks, and labels. Security settings (Secret Scanning, push protection) are owned by `apple-public-repo-security` — set them there, not here.
BLOCKED (pending checks) as a failure, or force-merging past a real red check. Poll; merge only on CLEAN.git update-index --cacheinfo), and land the submodule's own change via its own PR.Co-Authored-By: trailer; PR body ends with the 🤖 footer.gh pr checks is CLEAN before merge; merged with --squash --delete-branch.gh secret set (no --body); verified with gh secret list.git update-index --cacheinfo against a remote-reachable SHA.--no-verify used only on a no-code/no-secret commit, with the reason stated.pr-diff-verification — verify git show --stat HEAD matches the commit's claims before push/PR.apple-public-repo-security — security repo settings + secret-leak prevention.subagent-conflict-detection — worktree + PR flow for parallel sessions / submodules.claude-skill-plugin-packaging — distributing/installing skill plugins.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.