open-pr

Installation
SKILL.md

推送分支、创建带 AI 标记的 PR、评审改动,报告结果。合并、CI 预检与清理在 /merge-pr。分支属于 GitHub 栈时,base 指向下层分支,并把这一层入栈。

1. 确认分支与 base

  1. 分支取参数第一项。没有参数则运行 git rev-parse --abbrev-ref HEAD。
  2. 识别默认分支:git remote show origin 取 HEAD 分支。查询失败时用仓库中存在的 main / master。
  3. 定 base(本分支是栈的一层时是下层分支,否则是默认分支):
    • 参数给了下层分支:base 取它。
    • 否则查当前分支已有 PR:gh pr list --head <branch> --json baseRefName --jq '.[0].baseRefName'。有值且不是默认分支时 base 取它。
    • 否则 base 是默认分支。
  4. 当前分支是默认分支、没有 GitHub remote,或 git log <base>..<branch> --oneline 为空时,停止并说明原因。
  5. base 不是默认分支时(本分支是栈的一层):
    • 下层分支必须有 open PR(gh pr list --head <base> --json number,state --jq '.[0]')。没有就停止,让用户先对下层分支跑 /open-pr。gh stack link 会给缺 PR 的下层自动建 draft PR,不借它做这件事。
    • gh stack --version 失败时停止,请用户跑 gh extension install github/gh-stack。链式 PR 不入栈时,上层 PR 的 CI 与分支规则不会按栈底分支触发。
    • 不用 gh stack view 反推 base:piw 的 worktree 读不到 .git/gh-stack(跟踪文件在主仓库 git 目录下),它必然报 not part of a stack。

2. 推送并创建 PR

Installs
72
GitHub Stars
5
First Seen
Jul 21, 2026