claude/skills/gh/SKILL.md
Complete GitHub tasks using the GitHub MCP plugin. Use for any GitHub operation — PRs, issues, CI checks, repo management, releases, code search. Use git commands (log, diff, status) for local context. Prefer MCP tools over gh CLI — they bypass sandbox/TLS issues. Use when the user says "create PR", "merge PR", "check CI", "list issues", "review PR", "PR status", "close issue", or invokes /gh. Do NOT use for local git operations like commit, stage, or push — use /commit for those. Do NOT use for code quality review — use /age or /code-review.
npx skillsauth add paulnsorensen/dotfiles ghInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
GitHub operations via GitHub MCP plugin (mcp__plugin_github_github__*). MCP is the default — it works reliably in sandbox with no TLS issues.
Default: GitHub MCP tools for all supported operations.
Fallback: gh CLI only for operations MCP doesn't cover (see table below).
Rule: git is read-only here — log, diff, status. No commits, no push via git.
For the full MCP tool catalog (PRs, issues, repos, releases, Copilot), read
references/github-mcp.md. Key tools for common operations:
create_pull_request, pull_request_read, merge_pull_request, add_reply_to_pull_request_commentissue_read, issue_write, add_issue_comment, list_issuessearch_code, get_file_contents, push_filesassign_copilot_to_issue, request_copilot_reviewNever pipe gh output. The gh CLI has --json, --jq, and --template flags built in:
# WRONG — pipe triggers compound command detection + needs jq binary
gh pr list --json number | jq '.[].number'
# RIGHT — inline jq, no pipe, embedded interpreter
gh pr list --json number --jq '.[].number'
# Complex filtering
gh pr list --json number,title,state --jq '.[] | select(.state == "OPEN") | .title'
# Go template alternative
gh pr view 42 --json title --template '{{.title}}'
Never use heredoc --body with gh pr create. The $(cat <<'EOF' ... EOF) pattern triggers Claude Code's "hides arguments" heuristic when the body contains #-prefixed lines (markdown headers).
Instead:
create_pull_request — no shell involved--body-file (CLI fallback): Write body with the Write tool to $TMPDIR/pr-body.md, then gh pr create --title "..." --body-file "$TMPDIR/pr-body.md"Prefer MCP over gh api. Raw API calls can hit TLS issues in sandboxed environments. Most gh api calls have an MCP equivalent:
# PREFER — MCP tool, runs in host process, no sandbox issues
pull_request_read(method: "get_review_comments", owner, repo, pullNumber: 78)
# FALLBACK — gh api, only when MCP doesn't cover the endpoint
gh api repos/owner/repo/actions/runs/123/logs
These operations have no MCP equivalent — use gh CLI:
| Operation | Command |
|-----------|---------|
| PR diff | gh pr diff <number> |
| PR checks / CI status | gh pr checks <number> |
| Run logs | gh run view <id> --log-failed |
| Watch a run | gh run watch <id> |
| Trigger workflow | gh workflow run <workflow> |
| Create release | gh release create <tag> |
| Delete release | gh release delete <tag> |
| Re-run failed CI | gh run rerun <id> --failed |
Dependency: Shell helpers (gh-pr-review, gh-pr-prep, gh-issue-context) are defined in zsh/claude.zsh.
For gathering PR context where you need diff + checks + metadata in one shot, the shell helpers are efficient:
gh-pr-review 14 # single PR: metadata + diff + checks
gh-pr-prep # commits, diff stat, upstream status
gh-issue-context 42 # issue body + comment thread
gh-pr-batch 59 60 61 62 # batch: metadata + files for multiple PRs
gh-pr-checks-batch 59 60 61 # batch: CI checks for multiple PRs
Batch helpers (gh-pr-batch, gh-pr-checks-batch) are designed for /cheese-convoy — one bash approval covers all PRs instead of N individual calls. Output includes file paths touched per PR for overlap detection.
Before creating PRs or writing descriptions, use git for local context:
git log --oneline origin/main..HEAD # commits going into the PR
git diff origin/main...HEAD # full diff for PR body
git status # working tree state
gh CLI has TLS issues in sandboxed environments — prefer MCP tools--body with markdown headers triggers the "# hides arguments" safety heuristic — use --body-file or MCP insteadtools
Reconstruct what a past coding-agent session was doing so you can resume it — goal, files touched, last verified state, and the next step — by querying the session logs. Use when the user says "what was I working on", "recover that session", "reconstruct where I left off", "resume my last session", "what did that session change", "rebuild context from logs", or invokes /work-recovery. Report-only — it never scores or judges. Do NOT use for usage scoring (that is /skill-improver, /tool-efficiency, /prompt-analytics) or one-off interactive log queries (that is /session-analytics).
development
Curate this repo's hallouminate wiki (.hallouminate/wiki/, the repo:dotfiles:wiki corpus) — add or update architecture pages, per-harness docs, and gotchas. Use when the user says "update the wiki", "document this in the wiki", "refresh the harness docs", "add a wiki page", "curate the wiki", "the wiki is stale", or invokes /wiki-curator. Also use at session end to write back a non-obvious decision or gotcha worth preserving. Grounds the existing wiki first, follows one-topic-per-file conventions, verifies every external doc URL before writing, and reindexes. Do NOT use for general code search (that is cheez-search) or for editing AGENTS.md command reference.
tools
Audit how a tool, command, or MCP server is actually used across coding-agent sessions and produce calibrated recommendations — tool-vs-task fit, error forensics, fix recommendations, permission friction, MCP health, and token economics. Use when the user says "tool efficiency", "am I using X efficiently", "audit tool usage", "why does X keep failing", "how do I fix this error", "what should I change", "permission friction", "is this MCP worth it", "tool error rate", "fix recommendations", or invokes /tool-efficiency. Do NOT use for auditing a skill or agent definition (that is /skill-improver) or for one-off interactive log queries (that is /session-analytics).
tools
Analyze how prompts and skill routing behave across coding-agent sessions and produce calibrated recommendations — prompt-pattern analysis, routing accuracy, and knowledge gaps. Use when the user says "analyze my prompts", "prompt patterns", "is routing working", "which skill should have fired", "knowledge gaps", "what do I keep asking", or invokes /prompt-analytics. Do NOT use for auditing a single skill/agent definition (that is /skill-improver), tool/MCP efficiency (that is /tool-efficiency), or one-off interactive log queries (that is /session-analytics).