Practical tips for reviewing and improving Copilot agent PRs.
npx skills add https://github.com/github/gh-aw --skill github-copilot-agent-tips-and-tricks
Use this guide to find, review, and work with Copilot coding agent pull requests in gh-aw.
Copilot coding agent branches use the copilot/ prefix, which makes them easy to identify and filter.
Examples from this repository:
copilot/add-cache-for-imported-workflowscopilot/fix-istruthy-bundling-issuecopilot/update-audit-command-copilotcopilot/refactor-mcp-tool-renderingCopilot coding agent PRs are typically authored by:
app/github-copilot - The GitHub Copilot bot accountgh)Prerequisites:
# Authenticate with GitHub CLI
gh auth login
Search by author (GitHub Copilot bot):
# List all PRs created by the Copilot bot
gh pr list --author "app/github-copilot" --limit 100
# Include closed PRs
gh pr list --author "app/github-copilot" --state all --limit 100
# Get detailed JSON output
gh pr list --author "app/github-copilot" --json number,title,author,headRefName,createdAt,state
Search by branch prefix:
# Find all PRs from copilot/* branches
gh pr list --search "head:copilot/" --state all
# Combine with other filters
gh pr list --search "head:copilot/ is:open"
gh pr list --search "head:copilot/ is:merged"
Filter with jq:
# Extract specific fields
gh pr list --limit 100 --json author,number,title,headRefName \
--jq '.[] | select(.headRefName | startswith("copilot/")) | {number, title, branch: .headRefName}'
# Filter by author containing "copilot"
gh pr list --limit 100 --json author,number,title \
--jq '.[] | select(.author.login | contains("copilot"))'
List copilot branches:
# Local and remote copilot branches
git branch -a | grep copilot
# Remote copilot branches only
git branch -r | grep copilot
Search commit history:
# Find commits with "copilot" in message
git log --all --grep="copilot" --oneline
# Find commits by copilot author
git log --all --author="copilot" --oneline
# Show graph with copilot-related commits
git log --all --grep="copilot" --oneline --graph
Find merged copilot PRs:
# Search for merge commits
git log --all --merges --grep="copilot" --oneline
# With PR numbers
git log --all --merges --oneline | grep -i copilot
Based on analysis of this repository, Copilot coding agent PRs typically address:
When reviewing Copilot coding agent PRs, pay attention to:
copilot/descriptive-name pattern# Find PRs related to a specific feature
gh pr list --search "head:copilot/ refactor" --state all
# Find PRs in a date range
gh pr list --search "head:copilot/ created:>=2024-01-01" --state all
# Find PRs with specific labels
gh pr list --search "head:copilot/ label:enhancement"
# Check out a copilot PR locally
gh pr checkout <PR-number>
# View PR diff
gh pr diff <PR-number>
# View PR details
gh pr view <PR-number>
# View PR in browser
gh pr view <PR-number> --web
# Count merged copilot PRs
gh pr list --author "app/github-copilot" --state merged --json number --jq 'length'
# List recent copilot PRs with dates
gh pr list --author "app/github-copilot" --state all --limit 20 \
--json number,title,createdAt,state \
--jq '.[] | "\(.number): \(.title) (\(.state)) - \(.createdAt)"'
# Export to CSV for analysis
gh pr list --author "app/github-copilot" --state all --limit 100 \
--json number,title,createdAt,state,author \
--jq -r '.[] | [.number, .title, .state, .createdAt] | @csv' > copilot-prs.csv
If you see "gh auth login" prompts:
# Authenticate with GitHub CLI
gh auth login
# Or set token environment variable
export GH_TOKEN="your-github-token"
If searches return no results:
app/github-copilot or github-copilot)gh pr list --search "head:copilot/"git branch -r | grep copilotIf you hit GitHub API rate limits:
# Check rate limit status
gh api rate_limit
# Use authenticated requests (higher limits)
gh auth login
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.
Build agentic applications with GitHub Copilot SDK. Use when embedding AI agents in apps, creating custom tools, implementing streaming responses, managing sessions, connecting to MCP servers, or creating custom agents. Triggers on Copilot SDK, GitHub SDK, agentic app, embed Copilot, programmable agent, MCP server, custom agent.
Coding Agent Session Search - unified CLI/TUI to index and search local coding agent history from Claude Code, Codex, Gemini, Cursor, Aider, ChatGPT, Pi-Agent, Factory, and more. Purpose-built for AI agent consumption with robot mode.
Destructive Command Guard - High-performance Rust hook for Claude Code that blocks dangerous commands before execution. SIMD-accelerated, modular pack system, whitelist-first architecture. Essential safety layer for agent workflows.
Makepad UI development skills for Rust apps: setup, patterns, shaders, packaging, and troubleshooting.
Secure environment variable management ensuring secrets are never exposed in Claude sessions, terminals, logs, or git commits
Autonomously improve a real artifact (code, training recipe, agent harness, data pipeline, prompt) against an objective and an evaluator, using Hypothesis Tree Refinement (HTR) from the Arbor paper. Use this whenever someone wants to iteratively optimize something over many experiments without overfitting — e.g. "get my model's eval score up", "improve this agent/harness", "tune this pipeline", "beat the baseline on this benchmark", "run a search over approaches and keep the best", "do an MLE-bench / Kaggle-style optimization", or any long-horizon "make this artifact better and don't just memorize the dev set" task. Trigger it even when the user doesn't say "Arbor" or "hypothesis tree" but describes repeated experiment-and-evaluate loops, branching exploration of competing ideas, or worries about a dev/test gap. Runs Claude itself as the coordinator with subagent executors in isolated git worktrees; for the standalone `arbor` CLI tool see references/arbor-upstream.md.
Take github/github-copilot-agent-tips-and-tricks from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.