Awesome-omni-skill github-administration
Technical guidance for GitHub issue and PR administration via gh, including command safety, quoting, verification, and recovery.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/github-administration" ~/.claude/skills/diegosouzapw-awesome-omni-skill-github-administration && rm -rf "$T"
manifest:
skills/tools/github-administration/SKILL.mdsource content
GitHub Administration Skill
Purpose
Use this skill whenever you interact with GitHub issues or pull requests through the
gh CLI.
This skill is technical-only and focuses on execution mechanics:
- selecting and running the correct
commandsgh - handling quoting safely
- applying metadata (assignee, labels)
- verifying outcomes and fixing command/result issues
Issue content design is out of scope here and belongs to
github-issue-designer.
Mandatory Usage
Always use
github-administration whenever you want to interact with a GitHub issue.
Pairing Rule
When an issue should be created or updated, use:
for issue content designgithub-issue-designer
for command execution viagithub-administrationgh
Preflight
Before mutating issues/PRs:
gh api user --jq .login gh repo view --json nameWithOwner gh label list --json name --limit 100
Safe Command Rules
- Prefer one mutation per command.
- Always use
for issue/comment/PR bodies (single-line or multi-line).--body-file - Use double quotes for arguments with spaces.
- Verify immediately after create/edit/close operations.
- Store temporary body files under a non-versioned workspace path (for this repo:
) and pass them via.tmp/
.--body-file - In persistent terminals, avoid heredoc for long multi-line bodies; write a temporary file first and pass it via
.--body-file - Do not auto-assign newly created issues unless the navigator explicitly requests assignment at creation time.
Command Recipes
Create issue
mkdir -p .tmp gh issue create --title "<title>" --body-file .tmp/issue.md --label <label> --assignee <login>
View/verify issue
gh issue view <number> --json number,title,assignees,labels,url
Edit issue
gh issue edit <number> --title "<new-title>" --body-file .tmp/issue-updated.md
Comment on issue
gh issue comment <number> --body-file .tmp/comment.md
Close issue
gh issue close <number> --comment "<closure note>"
Create PR linked to issue
git push origin <branch> gh pr create --title "Fix #<issue>: ..." --body "...\n\nFixes #<issue>" --head <branch>
Troubleshooting
Label not found
Error:
could not add label: '<label>' not found
Fix:
- choose an existing label from
, orgh label list - create the missing label in GitHub UI and retry.
PR push prompt appears
Cause: branch is not pushed.
Fix:
git push origin <branch> gh pr create --head <branch> ...
Shell quoting breaks (dquote>
)
dquote>Fix:
- reset shell or open a new terminal
Prevention:
- use
for multiline input--body-file
Heredoc gets stuck (heredoc>
)
heredoc>Cause: unterminated or corrupted heredoc input in a persistent shell session.
Fix:
- abort and recover shell state
- avoid reusing heredoc for long content
- create the body in a temporary/workspace file and retry with
--body-file
Post-action Checklist
After each mutation:
- verify issue/PR metadata and links
- correct mistakes immediately
Retrospective Requirement
After creating an issue and after closing a merged issue, run
self-learning-skills retrospective automatically.