Privacy and trust
Does it send my code anywhere?
The pr-brief binary makes no network calls and keeps no log. The skill runs inside Claude Code, so the diff and files that the reader agents read go to your model as part of that session, under your Claude Code settings. The hook only looks at the command text, locally.
Is the gate a security control?
No. It is a quality control. Anyone can edit a description in the web UI, call the REST API, or use the skip line. See the gate.
Why are the binaries committed to the repo?
So an install needs no runtime and no build. CI rebuilds them with a pinned Go version and fails if they differ from the committed bytes. Each release attaches the same files with SHA256SUMS and a build provenance record.
What it understands
Which languages does it read?
pr-brief shape finds changed functions in Go, C#, Java, TypeScript and JavaScript, and Python, and reads Terraform, Bicep and GitHub workflow files. Other code files still count as changed and are ranked, but give no function nodes. It is regex-based, not a compiler: it resolves a call by name, class and folder, and skips a call when two functions could match. The skill starts a reader agent for each flow to check and fix the draft.
A flow is too big. What happens?
The tool collapses it: functions of one class become one node, then the least important nodes fold into a +N more node. The Review guide lists what was folded. Past three flows, the rest are named in the guide with a note that the PR may be too big.
Why can I not raise the node limit?
The limits come from what stays readable at the width of a PR page, and from what renders on GitHub. See convention over configuration.
Hosts
Does it work on Azure DevOps?
The hook and the skill handle az repos pr create|update, and the diagrams use graph LR, which Azure DevOps accepts. The init line, the invisible layout links and the per-edge styling are not verified there, and Azure DevOps does not say which Mermaid version it runs. The GitHub Action does not run in Azure Pipelines. pr-brief init --workflow --host azure-devops writes a pipeline that pipes the description into pr-brief gate --stdin --host azure-devops. That pipeline is not tested against a live organisation yet. Azure DevOps accepts 4,000 characters in a description, against 65,536 on GitHub, and the check uses the limit of the host.
GitLab, Bitbucket?
No automation. pr-brief gate --file works anywhere, but the diagrams depend on that host’s Mermaid.
The diagram does not render.
GitHub draws Mermaid in a sandboxed frame from viewscreen.githubusercontent.com. A network that blocks that host shows “Unable to render rich display”. The GitHub mobile app shows the source, not the picture.
Do I need Claude Code?
The skill does. The pr-brief CLI and the GitHub Action do not: you can write a description by hand, draw each flow with pr-brief diagram, and check it with pr-brief gate.
Using it
Does it change my PR title?
Never. Not the skill, not improve, not the gate.
Where did my earlier description go?
A copy is saved on your machine before every rewrite: ~/.local/state/pr-brief/. pr-brief body restore --owner O --repo R --pr N prints the oldest. With improve.previous: comment the original text also stays in the PR, hidden in a comment, and pr-brief body uncomment makes it visible. GitHub also keeps its own edit history.
My custom theme was rejected.
Run pr-brief theme validate FILE. It says which colour is not hex, which key is unknown, or the contrast ratio it measured. Text needs 4.5:1 against the background and the node fill.
How do I turn it off?
Uninstall the plugin, delete the workflow, or put > pr-brief skipped: <reason> in one description.