Install
$ agentstack add skill-hotthoughts-jj-skills-jj-update-pr ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Update GitHub PR Description
This skill enables updating existing pull request descriptions with fresh AI-generated content based on the current state of the change.
Permission Requirements
CRITICAL: This workflow requires jj and gh CLI access with authentication. Always use:
required_permissions: ["all"]
Workflow
When the user asks to update a PR description (e.g., "update the PR", "refresh PR description", "sync PR with changes"):
Step 1: Identify the Change
Default to @- (parent of working copy) unless the user specifies a different change.
Step 2: Get the Branch Name
jj log -r -T 'bookmarks' --no-graph
Step 3: Verify PR Exists
gh pr view
If no PR exists, suggest using the jj-create-pr workflow instead.
Step 4: Get Updated Title
Extract the first line of the change's description:
jj log -r -T description --no-graph | head -1
If the description is empty, run the Description Check Protocol (see jj-workflow skill) to generate a conventional commit description from the diff, then re-extract the title:
- Check
jj status— if@is a placeholder (no modified files), evaluate@-carefully: verify it has a non-empty diff AND no trunk bookmarks (main,master,main@origin) before targeting it. If@-carries a trunk bookmark, ask the user which change to use. - Analyze
jj diff -rto understand what changed - Determine the conventional commit type (feat/fix/refactor/perf/docs/chore/test) from the diff
- Set the description:
jj describe -r -m "type: concise description"(or use--stdinif preserving an existing body — see jj-workflow protocol) - Re-run the title extraction command to get the exact first line
Step 5: Analyze the Current Diff
jj diff -r
Step 6: Generate Updated PR Description
Based on the diff, write a fresh PR description:
- Summary: One sentence describing the overall change
- Changes: Bullet points of key modifications
- Keep it brief and focused on "what" and "why"
Example format:
## Summary
Brief description of what this PR accomplishes.
## Changes
- Added X to handle Y
- Refactored Z for better performance
- Fixed bug where A caused B
Step 7: Update the PR
Update both title and body:
gh pr edit --title "" --body ""
Or update body only:
gh pr edit --body ""
Complete Example
User: "Update the PR for @-"
# 1. Get branch name
jj log -r @- -T 'bookmarks' --no-graph
# Output: "push-abc123"
# 2. Verify PR exists
gh pr view push-abc123
# (shows PR details)
# 3. Get updated title (generates one from diff if description is empty — see Step 4)
jj log -r @- -T description --no-graph | head -1
# Output: "feat: add user authentication"
# If empty: run the Description Check Protocol to generate one, then re-extract
# 4. Get current diff
jj diff -r @-
# (analyze the output)
# 5. Update PR with new description
gh pr edit push-abc123 \
--title "feat: add user authentication" \
--body "## Summary
Adds JWT-based user authentication to the API.
## Changes
- Added auth middleware for token validation
- Created login and register endpoints
- Added user model with password hashing
- Updated API documentation"
When to Use
- After making additional changes to a commit that already has a PR
- When the original PR description is outdated or incomplete
- After rebasing or squashing changes
- When the user asks to "refresh" or "update" the PR
Error Handling
- If no bookmark/branch exists on the change, the PR may not be findable—ask user for PR number
- If PR doesn't exist, suggest creating one with
jj-create-prworkflow - If update fails, show the error and suggest checking PR status with
gh pr view
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: HotThoughts
- Source: HotThoughts/jj-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.