agents-md
Creates and maintains concise AGENTS.md and CLAUDE.md project instruction files. Use when asked to create AGENTS.md, update…
Create or refresh reviewer-facing PR titles and descriptions. Use when opening a PR, updating its title or body, or preparing branch changes for review.
Claude Code
$ npx -y skills add getsentry/skills --skill pr-writer --agent claude-code
Codex
$ npx skills add getsentry/skills --skill pr-writer -a codex -y
Cursor
$ npx skills add getsentry/skills --skill pr-writer -a cursor -y
Gemini CLI
$ npx skills add getsentry/skills --skill pr-writer -a gemini-cli -y
GitHub Copilot
$ npx skills add getsentry/skills --skill pr-writer -a github-copilot -y
OpenCode
$ npx skills add getsentry/skills --skill pr-writer -a opencode -y
Windsurf
$ npx skills add getsentry/skills --skill pr-writer -a windsurf -y
name: pr-writer description: Create or refresh reviewer-facing PR titles and descriptions. Use when opening a PR, updating its title or body, or preparing branch changes for review.
Write the PR body as a cover note for reviewers, not a changelog, template, validation log, or file-by-file summary.
Requires authenticated `gh`. Inspect the current branch, working tree, PR, base branch, commits, and full diff:
git branch --show-current git status --porcelain gh pr view --json number,title,body,url,baseRefName,headRefName gh repo view --json defaultBranchRef
If `gh pr view` reports that no PR exists, continue with first-time PR creation. For an existing PR, use its `baseRefName`; otherwise use the repository default branch. Set `BASE`, then inspect:
git log "$BASE"..HEAD --oneline git diff "$BASE"...HEAD
If on `main` or `master`, create a feature branch first. Ensure intended changes are committed and review the whole branch diff, not only the latest commit or existing PR text.
before implementation detail.
useful.
review history.
Use `<type>(<scope>): <subject>` or `<type>: <subject>`.
Allowed types: `feat`, `fix`, `ref`, `perf`, `docs`, `test`, `build`, `ci`, `chore`, `style`, `meta`, `license`, and `revert`.
and scope.
affected surface in the body.
or `address feedback`. Do not add a trailing period.
Choose the minimum useful shape:
| Change | Include | |--------|---------| | Small or obvious | One concise paragraph without headings. | | Feature, bug fix, or refactor | Changed behavior and effect; add root cause, unchanged behavior, or non-obvious approach when relevant. | | Contract or breaking change | Affected API, schema, payload, config, permission, storage, or CLI surface; include compatibility and migration guidance. | | Operational, visual, or workflow change | User/operator effect, measured impact, failure modes, or flow when useful. | | Broad, generated, or cross-cutting change | Organizing principle, why the breadth is necessary, and where review should start. |
Default:
<What changed and what effect it has.> <Why the approach, risk, migration, or review focus matters, if not obvious.>
For review-feedback updates, describe the resulting PR as a whole rather than the sequence of revisions.
Use an aid only when it reduces reviewer reconstruction work:
adopters need it.
Introduce an artifact with one sentence explaining what reviewers should notice. Omit it when prose is clearer.
meaningful regression coverage. For docs, skills, copy, or config changes, omit it by default.
or exhaustive file lists.
contents, secrets, or PII.
commits, PR discussion, or tracker output. `Fixes <issue>` closes; `Refs <issue>` only links.
Create new PRs as drafts. Write the body to a temporary Markdown file, then run:
gh pr create --draft --title '<title>' --body-file /tmp/pr-body.md
Update existing PRs with `gh api`:
gh api -X PATCH repos/{owner}/{repo}/pulls/PR_NUMBER \
-f title='<title>' \
-F body=@/tmp/pr-body.mdRefresh the title and body when follow-up commits materially change scope, approach, breaking behavior, risk, migration, or review expectations. Skip typo-only, formatting-only, and rename-only follow-ups.
Small change:
The AI Customizations section now starts collapsed so it does not consume sidebar space before users need it. Expanding it preserves the existing saved preference behavior.
Breaking contract:
Run logs now emit chunk-level records instead of one skill-level record.
Consumers that read top-level `findings` must iterate over
`chunk.findings` for each record.
Before:
```json
{"skill": "security-review", "findings": [...]}After:
{"schemaVersion": 1, "chunk": {"index": 1, "findings": [...]}}Agent skills for Sentry employees, following the Agent Skills open format.
Creates and maintains concise AGENTS.md and CLAUDE.md project instruction files. Use when asked to create AGENTS.md, update…
Write, review, and improve blog posts for the Sentry engineering blog following Sentry's specific writing standards, voice, and…
Write copy following Sentry brand guidelines. Use when writing UI text, error messages, empty states, onboarding flows, 404…
Analyze a repository to generate recommended Claude Code settings.json permissions. Use when setting up a new project, auditing…
Perform code reviews following Sentry engineering practices. Use when reviewing pull requests, examining code changes, or…
Simplifies and refines code for clarity, consistency, and maintainability while preserving all functionality. Use when asked to…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.