{"id":"0d4bdfda-c59a-4b7e-8221-8f115820f0cd","shortId":"Lf2TrV","kind":"skill","title":"pr","tagline":"Use when the user asks to create or update a pull request for the current branch.","description":"Open a reviewable PR/MR for the current branch. The reviewer arrives cold — not a teammate who lived through the work, but someone handed an agent's output. The body is the only bridge between the agent's context and what the human needs to decide.\n\n**Multi-repo work is one PR per repo.** `cd` into each repo root before the create command — git CLIs infer the remote project from cwd, not from arguments. Cross-reference paired PRs in the body.\n\n## Conventional commits\n\n!`cat ~/.claude/skills/conventional-commits.md`\n\n## CLI invocation\n\n`--fill` conflicts with explicit title/body in both `gh` and `glab`.\n\n| | Title | Body | Create | Cleanup flag |\n|---|---|---|---|---|\n| `gh` | `--title` | `--body` | `gh pr create` | `--delete-branch` |\n| `glab` | `--title` | `--description` | `glab mr create` | `--remove-source-branch` |\n\nPass the cleanup flag so the source branch is removed on merge.\n\nUpdating an existing PR: `gh pr edit --body` / `glab mr update --description` take the new body and overwrite — re-render from current truth, don't fetch-and-concat.\n\n## PR body\n\nNo placeholders, no filler — a `## Summary` with `[Description of changes]` is worse than no Summary at all.\n\n- **Task** — issue link or one-line of what was asked.\n- **Summary** — what + why. Approach chosen and why over alternatives: \"X over Y because Z.\" 2–4 lines.\n- **Changes** — one bullet per meaningful change, grouped by area. A change list, not a file list.\n- **Self-Review** — what the agent verified (`[x]`) vs. couldn't (`[ ]`). Name the evidence per item.\n- **Human Review** — specific things where human judgment is load-bearing.\n- **Architecture** (when warranted, see below) — always the last section, after Human Review.\n\n### Before/after diagram\n\nWhen the PR reshapes data flow, control flow, ownership, or sync boundaries — anything where the reviewer has to hold \"old shape\" and \"new shape\" in their head to judge the diff — embed a before/after Mermaid as a `## Architecture` block at the **bottom of the PR body**, after `## Human Review`. Not in `## Summary` — the diagram is reference material reviewers scroll to, not the lede. GitLab and GitHub both render ```` ```mermaid ```` fences inline; no images, no Kroki.\n\n**Stacked TB layout — BEFORE on top, AFTER below.** Outer `flowchart TB`, each subgraph `direction TB`, force ordering with an invisible `BEFORE ~~~ AFTER` link between the subgraph IDs themselves (not inner nodes — a node-level cross-subgraph edge collapses internal `direction TB` back to horizontal under the dagre renderer):\n\n````\n```mermaid\nflowchart TB\n  subgraph BEFORE[\"BEFORE — <one-line label>\"]\n    direction TB\n    B_x[\"...\"]\n  end\n  subgraph AFTER[\"AFTER — <one-line label>\"]\n    direction TB\n    A_x[\"...\"]\n  end\n  BEFORE ~~~ AFTER\n```\n````\n\nSide-by-side LR is tempting but unreliable on the dagre renderer GitLab/GitHub ship — internal `direction TB` only holds when subgraphs are fully isolated, and any cross-subgraph edge (including the ordering hack) flips them to horizontal. Stack instead.\n\nSkip the diagram for pure refactors, bugfixes, dep bumps, copy changes — anything where the shape didn't move.\n\n### Template\n\n```\n$(cat <<'EOF'\n## Task\n\n## Summary\n\n## Changes\n\n-\n\n## Self-Review\n\n- [x]\n- [ ]\n\n## Human Review\n\n- [ ]\n\n## Architecture\n\n<!-- Only when the PR reshapes data/control flow. Otherwise delete this section. -->\n\nEOF\n)\n```","tags":["dotclaude","jhostalek","agent-skills","ai-coding","anthropic","claude","claude-code","claude-code-skills","code-review","codex-cli","cursor","developer-tools"],"capabilities":["skill","source-jhostalek","skill-pr","topic-agent-skills","topic-ai-coding","topic-anthropic","topic-claude","topic-claude-code","topic-claude-code-skills","topic-code-review","topic-codex-cli","topic-cursor","topic-developer-tools","topic-git-workflow","topic-multi-agent"],"categories":["dotclaude"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/JHostalek/dotclaude/pr","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add JHostalek/dotclaude","source_repo":"https://github.com/JHostalek/dotclaude","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 8 github stars · SKILL.md body (3,376 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:13:16.828Z","embedding":null,"createdAt":"2026-05-18T13:20:33.809Z","updatedAt":"2026-05-18T19:13:16.828Z","lastSeenAt":"2026-05-18T19:13:16.828Z","tsv":"'/.claude/skills/conventional-commits.md':103 '2':226 '4':227 'agent':42,53,250 'altern':220 'alway':277 'anyth':298,484 'approach':215 'architectur':272,323,503 'area':237 'argument':91 'arriv':28 'ask':6,211 'b':419 'back':404 'bear':271 'before/after':284,319 'block':324 'bodi':46,99,117,123,159,167,183,331 'bottom':327 'boundari':297 'branch':17,25,129,139,147 'bridg':50 'bugfix':479 'bullet':231 'bump':481 'cat':102,492 'cd':72 'chang':193,229,234,239,483,496 'chosen':216 'cleanup':119,142 'cli':104 'clis':82 'cold':29 'collaps':400 'command':80 'commit':101 'concat':181 'conflict':107 'context':55 'control':292 'convent':100 'copi':482 'couldn':254 'creat':8,79,118,126,135 'cross':93,397,460 'cross-refer':92 'cross-subgraph':396,459 'current':16,24,174 'cwd':88 'dagr':409,443 'data':290 'decid':62 'delet':128 'delete-branch':127 'dep':480 'descript':132,163,191 'diagram':285,339,475 'didn':488 'diff':316 'direct':374,402,417,425,448 'edg':399,462 'edit':158 'emb':317 'end':421,429 'eof':493,504 'evid':258 'exist':154 'explicit':109 'fenc':355 'fetch':179 'fetch-and-concat':178 'file':243 'fill':106 'filler':187 'flag':120,143 'flip':467 'flow':291,293 'flowchart':370,412 'forc':376 'fulli':455 'gh':113,121,124,156 'git':81 'github':351 'gitlab':349 'gitlab/github':445 'glab':115,130,133,160 'group':235 'hack':466 'hand':40 'head':312 'hold':304,451 'horizont':406,470 'human':59,261,266,282,333,501 'id':387 'imag':358 'includ':463 'infer':83 'inlin':356 'inner':390 'instead':472 'intern':401,447 'invis':380 'invoc':105 'isol':456 'issu':202 'item':260 'judg':314 'judgment':267 'kroki':360 'last':279 'layout':363 'lede':348 'level':395 'line':207,228 'link':203,383 'list':240,244 'live':34 'load':270 'load-bear':269 'lr':436 'materi':342 'meaning':233 'merg':151 'mermaid':320,354,411 'move':490 'mr':134,161 'multi':64 'multi-repo':63 'name':256 'need':60 'new':166,308 'node':391,394 'node-level':393 'old':305 'one':68,206,230 'one-lin':205 'open':18 'order':377,465 'outer':369 'output':44 'overwrit':169 'ownership':294 'pair':95 'pass':140 'per':70,232,259 'placehold':185 'pr':1,69,125,155,157,182,288,330 'pr/mr':21 'project':86 'prs':96 'pull':12 'pure':477 're':171 're-rend':170 'refactor':478 'refer':94,341 'remot':85 'remov':137,149 'remove-source-branch':136 'render':172,353,410,444 'repo':65,71,75 'request':13 'reshap':289 'review':20,27,247,262,283,301,334,343,499,502 'root':76 'scroll':344 'section':280 'see':275 'self':246,498 'self-review':245,497 'shape':306,309,487 'ship':446 'side':433,435 'side-by-sid':432 'skill' 'skill-pr' 'skip':473 'someon':39 'sourc':138,146 'source-jhostalek' 'specif':263 'stack':361,471 'subgraph':373,386,398,414,422,453,461 'summari':189,198,212,337,495 'sync':296 'take':164 'task':201,494 'tb':362,371,375,403,413,418,426,449 'teammat':32 'templat':491 'tempt':438 'thing':264 'titl':116,122,131 'title/body':110 'top':366 'topic-agent-skills' 'topic-ai-coding' 'topic-anthropic' 'topic-claude' 'topic-claude-code' 'topic-claude-code-skills' 'topic-code-review' 'topic-codex-cli' 'topic-cursor' 'topic-developer-tools' 'topic-git-workflow' 'topic-multi-agent' 'truth':175 'unreli':440 'updat':10,152,162 'use':2 'user':5 'verifi':251 'vs':253 'warrant':274 'work':37,66 'wors':195 'x':221,252,420,428,500 'y':223 'z':225","prices":[{"id":"10c07e6b-1f3f-4a7c-b100-584bce9b818d","listingId":"0d4bdfda-c59a-4b7e-8221-8f115820f0cd","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"JHostalek","category":"dotclaude","install_from":"skills.sh"},"createdAt":"2026-05-18T13:20:33.809Z"}],"sources":[{"listingId":"0d4bdfda-c59a-4b7e-8221-8f115820f0cd","source":"github","sourceId":"JHostalek/dotclaude/pr","sourceUrl":"https://github.com/JHostalek/dotclaude/tree/main/skills/pr","isPrimary":false,"firstSeenAt":"2026-05-18T13:20:33.809Z","lastSeenAt":"2026-05-18T19:13:16.828Z"}],"details":{"listingId":"0d4bdfda-c59a-4b7e-8221-8f115820f0cd","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"JHostalek","slug":"pr","github":{"repo":"JHostalek/dotclaude","stars":8,"topics":["agent-skills","ai-coding","anthropic","claude","claude-code","claude-code-skills","code-review","codex-cli","cursor","developer-tools","git-workflow","multi-agent","prompt-engineering","skill-md"],"license":"cc0-1.0","html_url":"https://github.com/JHostalek/dotclaude","pushed_at":"2026-05-17T15:07:41Z","description":"Agent skills for agentic coding tools. Extremely opinionated. Updated (almost) daily.","skill_md_sha":"5c518d4179299f6e54d1d9397fd26dc7021acb43","skill_md_path":"skills/pr/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/JHostalek/dotclaude/tree/main/skills/pr"},"layout":"multi","source":"github","category":"dotclaude","frontmatter":{"name":"pr","description":"Use when the user asks to create or update a pull request for the current branch."},"skills_sh_url":"https://skills.sh/JHostalek/dotclaude/pr"},"updatedAt":"2026-05-18T19:13:16.828Z"}}