Token导航 LogoToken导航TokenDH.com
运维和基础设施需要联网github未标认证来源可访问clear审计通过

gh-pr生长激素受体

Agent Skill

gh-pr 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

1

周安装

12

GitHub Stars

6

下载量

97
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:gh-pr(生长激素受体)
来源仓库:https://github.com/akiojin/skills
仓库路径:skills/gh-pr
安装命令:
npx skills add https://github.com/akiojin/skills --skill gh-pr
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/akiojin/skills --skill gh-pr

简介

用于处理 GitHub 仓库、Issue 和 Pull Request 的协作信息管理。

  • 适合在 Codex、Claude、Cursor 等宿主中整理代码变更与协作事项。
  • 支持自动生成 PR 描述、检查 TODO 项并规范提交格式。
  • 安装方式:npx skills add https://github.com/akiojin/skills --skill gh-pr。
  • 需注意权限范围,避免对无权限仓库执行写操作或敏感信息泄露。

SKILL.md

GH PR

Overview

Create or update GitHub Pull Requests with the gh CLI using a detailed body template and strict same-branch rules.

Decision rules (must follow)

  1. Do not create or switch branches. Always use the current branch as the PR head.
  2. Check local working tree state before push/PR operations.

- git status --porcelain - If output is non-empty (tracked or untracked changes), pause and ask the user what to do. - Present 3 options: continue as-is, abort, or manual cleanup then rerun. - Do not run git stash, git commit, or git clean automatically unless explicitly requested.

  1. Check for an existing PR for the current head branch.

- gh pr list --head <head> --state all --json number,state,mergedAt,updatedAt,url,title,mergeCommit

  1. If no PR exists → create a new PR.
  2. If any PR exists and is NOT merged (mergedAt is null) → push only and finish (do not create a new PR).

- This applies to OPEN or CLOSED (unmerged) PRs. - Only update title/body/labels if the user explicitly requests changes.

  1. If all PRs for the head are merged → check for post-merge commits (see below).
  2. If multiple PRs exist for the head → use the most recently updated PR for reporting, but the create vs push decision is based on mergedAt.

Post-merge commit check (critical)

When all PRs for the head branch are merged, you must check whether there are new commits after the merge:

  1. Get the merge commit SHA of the most recent merged PR.
  2. Count commits after the merge: git rev-list --count <merge_commit>..HEAD
  3. Decision:

- If new commits exist → create a new PR (these changes are not in the base branch) - If no new commits → report "No changes since last merge" and finish (do not create an empty PR)

Why this matters

  • Scenario A: PR merged → user makes local changes → pushes → changes are NOT in the merged PR

- Without this check, the changes would be lost or require manual intervention

  • Scenario B: PR merged → user says "create PR" without new changes → would create empty/duplicate PR

- This check prevents unnecessary PR creation

PR title rules (must follow)

  1. Format: <type>(<scope>): <subject> — Conventional Commits 形式に準拠する。
  2. type: feat / fix / docs / chore / refactor / test / ci / perf のいずれか。
  3. scope: 省略可。変更の影響範囲を端的に示す(例: gui, core, pty)。
  4. subject: 70文字以内。命令形(imperative mood)で書く(例: "add …" / "fix …")。先頭大文字禁止、末尾ピリオド禁止。
  5. ブランチ名にプレフィックス(feat/, fix/ など)がある場合、タイトルの type と一致させる

PR body rules (must follow)

Section classification

SectionRequiredNotes
SummaryYES1-3 bullet points。"what" と "why" を両方含める
ChangesYESファイル/モジュール単位で変更内容を列挙
TestingYES実行したコマンドまたは手動テスト手順を具体的に記載
Related Issues / LinksYESIssue番号、spec、または "None" を明記
ChecklistYES全項目を確認してチェック/N-A を付ける
ContextConditional3ファイル以上の変更、または非自明な変更理由がある場合は必須
Risk / ImpactConditional破壊的変更・パフォーマンス影響・ロールバック手順がある場合は必須
ScreenshotsConditionalUI 変更がある場合のみ必須
DeploymentOptionalデプロイ手順がある場合のみ記載
NotesOptionalレビュアーへの補足がある場合のみ記載

Validation (agent must check before creating PR)

  1. Required セクションに TODO が残っていたら PR を作成してはならない。
  2. Conditional セクションが該当しない場合は、セクション自体を削除する(空の TODO を残さない)。
  3. Summary の各 bullet は 1文で完結 させる。曖昧な表現("いくつかの変更", "various fixes")を禁止する。
  4. Changes は 変更ファイルまたはモジュール名を含む 具体的な記述にする。
  5. Testing は 再現可能な手順 を書く("テスト済み" のような曖昧な記述を禁止)。
  6. Checklist の未チェック項目には理由コメントを付ける(例: - [] Docs updated — N/A: no user-facing change)。
  7. Related Issues は #123 形式または URL で記載する。該当なしの場合は "None" と明記する。

Issue/PR Comment Formatting (must follow)

  • Final comment text must not contain escaped newline literals such as \n.
  • Use real line breaks in comment bodies. Do not rely on escaped sequences for formatting.
  • Before posting, verify the final body does not accidentally include escaped control sequences (\n, \t).
  • If a raw escape sequence must be shown for explanation, include it only inside a fenced code block and clarify it is intentional.

Issue Progress Comment Template (required for issue-based work)

When work is tracked in GitHub Issues, progress updates must use this template:

Progress
- ...

Done
- ...

Next
- ...
  • Post updates at least when starting work, after meaningful progress, and when blocked/unblocked.
  • In Next, explicitly state blockers or the immediate next action.

Workflow (recommended)

  1. Confirm repo + branches

- Repo root: git rev-parse --show-toplevel - Current branch (head): git rev-parse --abbrev-ref HEAD - Base branch defaults to develop unless user specifies.

  1. Check local working tree state (preflight)

- Run git status --porcelain. - If empty, continue. - If non-empty, show detected files and ask the user to choose: - Continue as-is - Abort - Manual cleanup first (git commit / git stash / git clean) and rerun - Proceed only when the user explicitly chooses continue.

  1. Fetch latest remote state

- git fetch origin to ensure accurate comparison

  1. Check existing PR for head branch

- Use decision rules above to pick action. - Treat mergedAt as the source of truth for "merged".

  1. If all PRs are merged, perform post-merge commit check

- Get merge commit: gh pr list --head <head> --state merged --json mergeCommit -q '.[0].mergeCommit.oid' - Count new commits: git rev-list --count <merge_commit>..HEAD - If 0 → finish with message "No new changes since merge" - If >0 → proceed to create new PR

  1. Ensure the head branch is pushed

- If no upstream: git push -u origin <head> - Otherwise: git push

  1. Collect PR inputs (for new PR or explicit update)

- Title, Summary, Context, Changes, Testing, Risk/Impact, Deployment, Screenshots, Related Links, Notes - Optional: labels, reviewers, assignees, draft

  1. Build PR body from template
  • Read the template from the gh-pr skill path (not the current project path):

- GH_PR_SKILL_DIR="${GH_PR_SKILL_DIR:-$HOME/.codex/skills/gh-pr}" - PR_BODY_TEMPLATE="${GH_PR_SKILL_DIR}/references/pr-body-template.md"

  • Read ${PR_BODY_TEMPLATE} and fill all required placeholders.
  • Conditional セクションが該当しない場合はセクションごと削除する。
  • テンプレート内の <!-- GUIDE:... --> コメントは最終出力から削除する。
  • Required セクションに TODO が残っている場合は PR を作成せず、ユーザーに不足情報を確認する。
  1. Create or update the PR

- Create: gh pr create -B <base> -H <head> --title "<title>" --body-file <file> - Update (only if user asked): gh pr edit <number> --title "<title>" --body-file <file>

  1. Return PR URL
  • gh pr view <number> --json url -q.url
  1. Post-PR CI/merge check (automatic).
  • After PR creation or push, load github/skills/gh-fix-pr/SKILL.md and follow its workflow to inspect CI status, merge state, and review feedback.
  • If all CI checks are still pending, poll (30s interval) until complete.
  • If conflicts, review issues, or CI failures are detected, proceed with the gh-fix-pr workflow to diagnose and fix.

Command snippets (bash)

head=$(git rev-parse --abbrev-ref HEAD)
base=develop
GH_PR_SKILL_DIR="${GH_PR_SKILL_DIR:-$HOME/.codex/skills/gh-pr}"
PR_BODY_TEMPLATE="${GH_PR_SKILL_DIR}/references/pr-body-template.md"

if [ ! -f "$PR_BODY_TEMPLATE" ]; then
  echo "PR template not found: $PR_BODY_TEMPLATE" >&2
  exit 1
fi

# Preflight: local working tree state
status_lines=$(git status --porcelain)
if [ -n "$status_lines" ] && [ "${ALLOW_DIRTY_WORKTREE:-0}" != "1" ]; then
  echo "Detected local uncommitted/untracked changes:" >&2
  echo "$status_lines" >&2
  echo "Choose one before continuing: continue as-is, abort, or manual cleanup then rerun." >&2
  echo "Set ALLOW_DIRTY_WORKTREE=1 only after explicit user confirmation to continue." >&2
  exit 1
fi

# Fetch latest remote state
git fetch origin

# Check existing PRs for the head branch
pr_json=$(gh pr list --head "$head" --state all --json number,state,mergedAt,mergeCommit)
pr_count=$(echo "$pr_json" | jq 'length')
unmerged_count=$(echo "$pr_json" | jq 'map(select(.mergedAt == null)) | length')

if [ "$pr_count" -eq 0 ]; then
  action=create
elif [ "$unmerged_count" -gt 0 ]; then
  action=push_only
else
  # All PRs are merged - check for post-merge commits
  merge_commit=$(echo "$pr_json" | jq -r 'sort_by(.mergedAt) | last | .mergeCommit.oid')

  if [ -n "$merge_commit" ] && [ "$merge_commit" != "null" ]; then
    new_commits=$(git rev-list --count "$merge_commit"..HEAD 2>/dev/null || echo "0")

    if [ "$new_commits" -gt 0 ]; then
      echo "Found $new_commits commit(s) after merge - creating new PR"
      action=create
    else
      echo "No new commits since merge - nothing to do"
      action=none
    fi
  else
    # Fallback: check against base branch
    new_commits=$(git rev-list --count "origin/$base"..HEAD 2>/dev/null || echo "0")

    if [ "$new_commits" -gt 0 ]; then
      action=create
    else
      action=none
    fi
  fi
fi

# Execute action
case "$action" in
  create)
    cp "$PR_BODY_TEMPLATE" /tmp/pr-body.md

    git push -u origin "$head"
    gh pr create -B "$base" -H "$head" --title "..." --body-file /tmp/pr-body.md
    ;;
  push_only)
    echo "Existing unmerged PR found - pushing changes only"
    git push
    gh pr list --head "$head" --state open --json url -q '.[0].url'
    ;;
  none)
    echo "No action needed - no new changes since last merge"
    ;;
esac

References

  • ${GH_PR_SKILL_DIR}/references/pr-body-template.md: PR body template

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

91.93%
按下载量换算89

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

来源信息

继续浏览同类 Skills