answer-reviewer-questi…
For each reviewer question on a PR, recall implementation reasoning and compose a raw answer. Use when the user asks to \"answer reviewer questions\", \"draft…
Update an existing GitHub pull request's title and description to reflect the current state of the branch. Use when the user asks to \"update the PR\", \"update PR description\", \"update PR title\", \"refresh PR description\", or \"sync PR with changes\".
$ npx -y skills add tobihagemann/turbo --skill update-pr --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/update-prContext preview
The summary Claude sees to decide when to auto-load this skill.
Update an existing GitHub pull request's title and description to reflect the current state of the branch. Use when the user asks to \"update the PR\", \"update PR description\", \"update PR title\", \"refresh PR description\", or \"sync PR with changes\".
name: update-pr description: "Update an existing GitHub pull request's title and description to reflect the current state of the branch. Use when the user asks to \"update the PR\", \"update PR description\", \"update PR title\", \"refresh PR description\", or \"sync PR with changes\"."
Read the current PR title and body, analyze what changed in the session, and draft an updated title and description that preserves the original writing style.
Fetch the current PR details:
gh pr view [PR_NUMBER] --json number,title,body,baseRefName,commits
Omit PR_NUMBER to auto-detect from current branch.
Before drafting, study the current title and body to identify:
Run `git fetch origin <base>` so the remote ref is current before any diff below. A local branch of the same name can sit behind the remote, which puts the merge base before an already-merged pull request and pulls merged work into the description.
Read the fetched body against the current diff and list what the body leaves undescribed:
git diff origin/<base>...HEAD
Check every Mermaid diagram in the body the same way, node by node and transition by transition. A diagram that omits a state still renders, so only the code reveals its staleness.
If the body and its diagrams already describe the diff, the description is up to date. Say so and stop.
If what the body leaves undescribed is only trivial (formatting, typos, config-only), say so and stop. Proceed when the body omits, misstates, or still describes behavior the diff no longer contains.
Derive the PR description from the full diff, not from individual commits. The description should reflect the net change — what the code looks like now vs. the base — not the development journey. Intermediate bug fixes, reverted approaches, and implementation pivots that happened during development are not relevant to the reader.
1. Work from the full diff Step 3 read (`git diff origin/<base>...HEAD`) — this is the primary source of truth 2. Use what Step 3 found undescribed to understand what's new, but frame everything in the context of the whole PR 3. Check if the changes introduce runtime flows or state transitions that warrant diagrams (see Diagrams section below)
Run the `/github-voice` skill to load writing style rules.
Write an updated title and body that:
Output the drafted title and description as text, alongside the original for comparison. Then use `AskUserQuestion` for confirmation.
After confirmation, write the drafted title to `.turbo/pr/<PR_NUMBER>-title.txt` and the drafted body to `.turbo/pr/<PR_NUMBER>-body.md` with the Write tool, then update the PR. The title goes through a file because it carries text fetched from the PR, where backticks and `$` would run inside a quoted argument:
gh api --method PATCH "/repos/<owner>/<repo>/pulls/<PR_NUMBER>" \ -F title=@.turbo/pr/<PR_NUMBER>-title.txt \ -F body=@.turbo/pr/<PR_NUMBER>-body.md
GitHub renders Mermaid natively in PR descriptions via ` ```mermaid ` code blocks. Include diagrams only when they add clarity a text description can't.
Include when the changes introduce or modify a clear runtime flow: API endpoints, event handlers, pipelines, multi-service interactions, webhook flows.
```mermaid sequenceDiagram Client->>API: POST /payments API->>PaymentService: processPayment() PaymentService->>StripeClient: charge() StripeClient-->>PaymentService: confirmation PaymentService->>DB: save()
### State Diagram Include when the changes add or modify entity states, status enums, workflow transitions, or lifecycle hooks. ````markdown ```mermaid stateDiagram-v2 [*] --> Draft Draft --> Pending: submit() Pending --> Approved: approve() Pending --> Rejected: reject() Approved --> [*]
### Rules - Keep diagrams focused — max ~10 nodes/transitions - Use descriptive labels on arrows (method names, HTTP verbs) - Place diagrams after the summary paragraph under a `## Flow` or `## State Machine` heading - One diagram per type max — don't include both unless the PR truly has both patterns ## Rules - If the existing body is empty or minimal, infer a style from the title and commit messages - Keep titles under 72 characters - Preserve any existing sections the user clearly cares about (test plans, checklist
A composable dev process for agentic coding harnesses, packaged as modular skills. Turbo has sibling editions for Claude Code and Codex. The Claude Code edition is production-tested.
For each reviewer question on a PR, recall implementation reasoning and compose a raw answer. Use when the user asks to \"answer reviewer questions\", \"draft…
Apply findings by making the suggested code changes. Applies accepted verdicts, escalates ambiguous findings to the user, and offers to note genuine…
Assess project-wide structural technical debt: complexity hotspots, deprecated API usage, duplication clusters, and architecture rot. Ranks findings by impact…
Project-wide health audit pipeline that fans out to all analysis skills in parallel, evaluates findings, and produces a unified report at .turbo/audit.md. Use…
Shared changelog conventions and formatting rules referenced by /create-changelog and /update-changelog. Not typically invoked directly.
Enforce existence, reuse, mirror, and symmetry principles to keep new code minimal and consistent with surrounding code. Use when writing new code in an…