gh-merge
GitHub自动化 GitHub PR 流程,包括提交变更、变基、创建/复用 PR、监控检查并安全合并。适用于用户请求合并或提交代码变更的场景。
Trigger Scenarios
Install
npx skills add AgentsMesh/AgentsMesh --skill gh-merge -g -y
SKILL.md
Frontmatter
{
"name": "gh-merge",
"description": "Completes the AgentsMesh GitHub pull-request workflow: commits scoped changes, rebases on the authoritative GitHub branch, opens or reuses a PR, monitors required checks, fixes failures, and merges only after verification. Use when the user asks to merge, submit, or land repository changes."
}
GitHub Merge
GitHub is the development source of truth for this repository. Land changes through a GitHub pull request; do not create a GitLab merge request for product code.
Workflow
-
Inspect repository state:
git status --short --branch git branch --show-current git remote -v gh auth status --hostname github.com -
Identify the GitHub remote by URL instead of assuming a remote name. Resolve the target branch, normally
main, and refuse to merge directly while checked out on that branch. -
Review all dirty files. Stage only files belonging to the requested change; preserve unrelated user changes and never use
git add .. Run the relevant local tests andgit diff --check, then create a focused commit containing only the requested change. -
Require a clean index and working tree before rebasing. If unrelated user changes remain, do not stash or move them automatically; use an already isolated checkout or stop and report what prevents a safe rebase. Once the checkout is clean, fetch and rebase on the current GitHub target:
git fetch <github-remote> <target-branch> git rebase <github-remote>/<target-branch>Resolve conflicts with user-owned work preserved, then rerun affected tests when the rebase changes the integration base.
-
Push the current branch. After a rebase, use
--force-with-lease, never--force. -
Reuse an existing pull request for the branch or create one with
gh pr createand the repository PR template. The title and body must explain behavior, verification, and any remaining risk. -
Inspect review state and wait for checks:
gh pr checks <pr-number> --watch --interval 15 --fail-fastAt least one check must be observed. If no checks are reported, retry after the workflow trigger delay; no checks is not a passing state. Diagnose failures from run logs, fix them, push, and monitor again.
-
Merge only when all observed checks have completed successfully, reviews and branch policy allow it, and the PR is conflict-free:
gh pr merge <pr-number> --squash --delete-branch -
Verify the remote PR state is
MERGED. In a worktree, failure to delete the local branch does not mean the remote merge failed; report cleanup separately.
Result
Report the PR URL, source and target branches, commit, local tests, remote check results, merge method, and any local branch or worktree that remains.
Version History
- 9fc2f49 Current 2026-07-24 21:57


