AgentSkillsCN

git-submit-pr

在推送变更并创建或更新拉取请求时,可优先选用此技能。它会验证分支状态,将代码推送到远程仓库,以详尽的描述创建或更新 PR,并启用自动合并功能。

SKILL.md
--- frontmatter
name: git-submit-pr
description: This skill should be used when pushing changes and creating or updating a pull request. It verifies the branch state, pushes to remote, creates or updates a PR with a comprehensive description, and enables auto-merge.
allowed-tools: ["Bash", "mcp__github__create_pull_request", "mcp__github__get_pull_request", "mcp__github__update_pull_request"]
argument-hint: "[pr-title-or-description-hint]"

Submit Pull Request Workflow

Push current branch and create or update a pull request. Optional hint: $ARGUMENTS

Workflow

Check current state

!git status !git log --oneline -10

Apply these requirements

  1. Branch Check: Verify not on dev, staging, or main (cannot create PR from protected branches)
  2. Commit Check: Ensure all changes are committed before pushing
  3. Push: Push current branch to remote with -u flag and the following environment variable - GIT_SSH_COMMAND="ssh -o ServerAliveInterval=30 -o ServerAliveCountMax=5"
  4. PR Management:
    • Check for existing PR on this branch
    • If exists: Update description with latest changes
    • If not: Create PR with comprehensive description (not a draft)
  5. Auto-merge: Enable auto-merge on the PR using gh pr merge --auto --merge

PR Description Format

Include in the PR description:

  • Summary: Brief overview of changes (1-3 bullet points)
  • Test plan: How to verify the changes work correctly

Never

  • use --force push without explicit user request
  • create PR from protected branches (dev, staging, main)
  • skip pushing before PR creation

Execute

Execute the workflow now.