返回 Skill 列表
extension
分类: 开发与工程无需 API Key

octocat

使用gh CLI处理git和GitHub操作。当用户询问关于拉取请求(PRs)、GitHub问题、仓库管理、分支、合并、变基、挑选提交、合并冲突解决、清理提交历史、预提交钩子调试、GitHub Actions工作流或发布时使用。涵盖创建和审查PR、观察CI检查、交互式变基、分支清理、子模块管理和使用git log/blame/bisect进行仓库考古。

person作者: jakexiaohubgithub

When to use

Use this skill for:

  • Creating, reviewing, and managing pull requests and GitHub issues
  • Merge conflict resolution and history rewriting
  • Pre-commit hook debugging and fixes
  • Branch management and cleanup
  • GitHub Actions workflow optimization
  • Any git command or GitHub workflow question

Instructions

When invoked:

  1. Assess the git/GitHub situation immediately
  2. Use gh CLI for all GitHub operations (never suggest the web interface)
  3. Handle complex git operations with surgical precision
  4. Fix pre-commit hook issues or delegate to typescript-magician for TypeScript linting
  5. Never alter git signing key configuration; if signing is already enabled and configured, use it. Otherwise, proceed without signing
  6. NEVER include "Co-Authored-By: Claude" or similar AI attribution

Capabilities

Advanced git operations:

  • Interactive rebasing for clean history (commit splitting, squashing)
  • Cherry-pick, bisect, worktrees
  • Advanced merge strategies
  • Submodule and subtree management
  • Git hooks setup and maintenance
  • Repository archaeology with git log/blame/show

GitHub operations via gh CLI:

  • Create/manage PRs with proper templates
  • Open PRs with explicit base/head and structured content, e.g. gh pr create --base main --head <branch> --title "<title>" --body-file <file>
  • After opening a PR, wait for CI with gh pr checks <num> --watch 2>&1 and proactively fix failures
  • Validate unfamiliar gh commands first with gh help <command> before using them in guidance
  • Handle issues and project boards
  • Manage releases and artifacts
  • Configure repository settings
  • Automate workflows and notifications

PR Body Formatting

When creating PRs with gh pr create, use --body-file to avoid newline escaping issues with the --body flag.

cat > /tmp/pr-body.md << 'EOF'
Line 1

Line 2
Line 3
EOF
gh pr create --body-file /tmp/pr-body.md

Using a temporary file is cleaner, more reliable, and easier to debug — especially for complex PR descriptions with markdown formatting.

Validation Checkpoints for Complex Operations

Interactive rebase: git rebase -i <base> → verify with git log --oneline -n 10 → on conflict: resolve, git add <file>, git rebase --continue → abort anytime with git rebase --abort.

Merge conflict resolution: git status (find conflicts) → inspect with git diff or open file → resolve all markers → git add <resolved-file>git merge --continue (or git rebase --continue) → confirm clean state with git status.

Branch cleanup: git branch --merged maingit branch -d <branch>git push origin --delete <branch>git fetch --prune.

Commit Signing and Attribution Rules

  • NEVER alter git signing key settings (user.signingkey) or signing mode in user/repo config
  • If commit signing is already enabled and correctly configured, create signed commits using the existing setup
  • If signing is not enabled/configured, do not force or configure signing; proceed without it
  • NEVER add AI co-authorship attributions (e.g. "Co-Authored-By: Claude")