원클릭으로
ce-pr
创建 PR 并询问是否合并到主分支
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
创建 PR 并询问是否合并到主分支
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | ce:pr |
| description | 创建 PR 并询问是否合并到主分支 |
| argument-hint | [--draft=草稿PR] [--no-merge=仅创建不合并] |
创建 Pull Request 并可选合并到主分支。可在 /ce:work 或 /ce:review 完成后自动触发,也可独立使用。
开始时解析用户参数:
--draft:创建 draft PR--no-merge:创建或定位 PR 后直接结束,不进入合并询问移除已识别参数后,其余内容可作为 PR 标题/描述的额外上下文。
current_branch=$(git branch --show-current)
如果 current_branch 为空(detached HEAD): → 提示用户:"当前处于 detached HEAD 状态,请先切换到功能分支。" → 终止流程
git symbolic-ref refs/remotes/origin/HEAD
如果输出形如 refs/remotes/origin/main,去掉 refs/remotes/origin/ 前缀作为 default_branch。
如果命令失败或输出为空,执行:
git rev-parse --verify origin/main
如果命令成功,使用 main 作为 default_branch;如果失败,使用 master。
如果 current_branch == default_branch:
→ 提示:"当前在主分支 ($default_branch) 上,无法创建 PR。请先切换到功能分支。"
→ 终止流程
git status --porcelain
如果有未提交的更改: → 使用 AskUserQuestion tool 询问:
Question: "检测到未提交的更改。如何处理?"
Options:
Based on selection:
git status --porcelain,按相关变更列出具体文件,使用 git add <file...> 暂存确认后的文件,再执行 git commit -m "feat: [auto-generated message]"existing_pr=$(gh pr list --head "$current_branch" --json number,url --jq '.[0]')
如果已有 PR:
→ 如果 --no-merge 参数存在,显示已有 PR URL 后结束流程。
→ 否则使用 AskUserQuestion tool 询问:
Question: "当前分支已有 PR: $existing_pr_url。如何处理?"
Options:
Based on selection:
gh pr view --webgit ls-remote --exit-code origin "$current_branch"
如果命令失败,执行:
git push -u origin "$current_branch"
如果命令成功,执行:
git push
pr_title=$(echo "$current_branch" | sed 's|/|: |; s|-| |g')
commit_title=$(git log "$default_branch".."$current_branch" --format="%s" --reverse | head -1)
选择更有意义的标题(优先使用 commit 摘要)。
commits=$(git log "$default_branch".."$current_branch" --format="- %s" --reverse)
diff_stat=$(git diff "$default_branch"..."$current_branch" --stat)
gh pr create --title "$pr_title" --body "$pr_body" --base "$default_branch"
如果 --draft 参数存在,执行:
gh pr create --draft --title "$pr_title" --body "$pr_body" --base "$default_branch"
如果 --no-merge 参数存在,显示 PR URL 后结束流程。
使用 AskUserQuestion tool 呈现选项:
Question: "PR 已创建: $pr_url。下一步?"
Options:
Based on selection:
gh pr merge --merge --delete-branch,成功后执行 git checkout "$default_branch",再执行 git pullgh pr view --web,然后再次询问是否合并Fork Overlay:Task Bundle 持久化 + Failure FSM 集成。在 ce:work 基础上增加 state.md 读写和状态机转换。使用时机:执行 ce:work 时,如果任务有对应的 Task Bundle(docs/tasks/<id>/),加载此 skill 以启用持久化和状态追踪。
Fork Overlay:Codex-first 外部执行器策略。按任务特征路由到 Claude 或 Codex,Codex-first(非品牌路由)。使用时机:需要决定是否将当前任务派发给 Codex 时加载此 skill。
Fork Overlay:经验分层沉淀升级阶梯。检测是否值得将 solution 升级为 pattern 或 skill。使用时机:ce:compound 完成后手动调用,分析 docs/solutions/ 中的重复模式。(不会自动触发,需主动加载此 skill)
Fork Overlay:外部模型调用前置检查门控。调用 Codex/Gemini 之前运行五项检查,防止调用失败浪费时间。使用时机:任何调用外部模型(Codex [C]、Gemini [G])之前自动运行。
Fork Overlay:ce:work 意图分类门控。在执行前识别任务意图(实现/修复/重构/探索),设定对应的执行策略。使用时机:ce:work Phase 0(环境扫描)之后、Phase 1(Quick Start)之前。
Fork Overlay:Codex Patch Approval 咨询版。当 Codex 返回 patch 时,Claude 审批后才写入文件。使用时机:Codex 以 patch/diff 格式返回代码变更时,由 Claude 作为审批层。