update-pr

star 2.0k

Update an existing GitHub PR description to reflect current changes after incorporating feedback

NVIDIA-NeMo By NVIDIA-NeMo schedule Updated 3/25/2026

name: update-pr description: Update an existing GitHub PR description to reflect current changes after incorporating feedback argument-hint: [special instructions] disable-model-invocation: true metadata: internal: true


Update Pull Request

Update the description of an existing GitHub pull request for the current branch.

Arguments

$ARGUMENTS can be used for:

  • --title flag: Include to also update the PR title
  • Special instructions (same as create-pr):
    • Guiding the summary: "emphasize the performance improvements"
    • Adding context: "this PR now also includes the auth fixes"
    • Any other guidance for the updated description

Step 1: Find the Existing PR

  1. Get current branch and PR info:
    gh pr view --json number,title,body,url,headRefName,state
    

Important checks:

  • If no PR exists for the current branch, fail and inform the user to use /create-pr instead
  • If the PR is merged or closed, fail and inform the user the PR is no longer open

Step 2: Gather Current State

Run these commands in parallel to understand the full state:

  1. Uncommitted changes: git status --porcelain
  2. All commits on branch: git log origin/main..HEAD --oneline
  3. File changes summary: git diff --stat origin/main..HEAD
  4. Full diff: git diff origin/main..HEAD
  5. Repo info: gh repo view --json nameWithOwner -q '.nameWithOwner' (for constructing file URLs)

Important checks:

  • If uncommitted changes exist, warn the user and ask if they want to commit first

Step 3: Analyze and Categorize Changes

By Change Type (from commits and diff)

  • Added: New files, features, capabilities
  • 🔧 Changed: Modified existing functionality
  • 🗑️ Removed: Deleted files or features
  • 🐛 Fixed: Bug fixes
  • 📚 Docs: Documentation updates
  • 🧪 Tests: Test additions/modifications

Identify Attention Areas

Flag for special reviewer attention:

  • Files with significant changes (>100 lines)
  • Changes to base classes, interfaces, or public API
  • New dependencies (pyproject.toml, requirements.txt)
  • Configuration schema changes
  • Security-related changes

Step 4: Update the PR

  1. Push any new commits (if needed):

    git push
    
  2. Generate updated description using the same template as create-pr (see below)

  3. Update the PR body:

    gh pr edit <number> --body "$(cat <<'EOF'
    <body>
    EOF
    )"
    
  4. Optionally update title (if --title flag was provided):

    gh pr edit <number> --title "<new-title>"
    
  5. Return the PR URL to the user.

PR Description Template

Use the same template as create-pr, with an updated footer:

## Summary

[1-2 sentence overview of what this PR accomplishes]

## Changes

### Added
- [New features/files - link to key files when helpful]

### Changed
- [Modified functionality - reference commits for specific changes]

### Removed
- [Deleted items]

### Fixed
- [Bug fixes - if applicable]

## Attention Areas

> Reviewers: Please pay special attention to the following:

- [`path/to/critical/file.py`](https://github.com/<owner>/<repo>/blob/<branch>/path/to/critical/file.py) - [Why this needs attention]

---
*Description updated with AI*

Section Guidelines

  • Summary: Always include - be concise and focus on the "why"
  • Changes: Group by type, omit empty sections
  • Attention Areas: Only include if there are genuinely important items; omit for simple PRs
  • Links: Include links to code and commits where helpful for reviewers:
    • File links require full URLs - relative paths don't work in PR descriptions
    • Link to a file: [filename](https://github.com/<owner>/<repo>/blob/<branch>/path/to/file.py)
    • Link to specific lines: [description](https://github.com/<owner>/<repo>/blob/<branch>/path/to/file.py#L42-L50)
    • Use the branch name in the URL so links point to the PR's version of files
    • Reference commits: abc1234 - GitHub auto-links short commit SHAs in PR descriptions

Edge Cases

  • No PR exists for current branch: Fail and inform user to use /create-pr instead
  • PR is merged/closed: Fail and inform user the PR is no longer open
  • Uncommitted work: Warn and ask before proceeding
  • No new changes since PR creation: Still allow update - user may want to rewrite the description
  • Large PRs (>20 files): Summarize by directory/module

Key Differences from /create-pr

Aspect /create-pr /update-pr
PR state Creates new Updates existing
Command gh pr create gh pr edit
First step Check for commits Find existing PR
Branch push With -u flag Simple push
Title Always sets Optional (with --title)
Footer "Generated with AI" "Description updated with AI"
Install via CLI
npx skills add https://github.com/NVIDIA-NeMo/DataDesigner --skill update-pr
Repository Details
star Stars 1,984
call_split Forks 181
navigation Branch main
article Path SKILL.md
More from Creator