code-review-digest-writer
Generates weekly code-review digest docs from PR review comments for any GitHub repository. If present, follows project-specific docs/review-digests/AGENTS.md guidelines. Use this to turn a date-bounded set of PR reviews into a structured markdown “newsletter” that captures themes, repeated issues, and concrete takeaways.
What this skill does
# Code Review Digest Writer Skill
## When to Use This Skill
- You want a **weekly (or custom window) code-review digest** for the current
repository or project, based on PR review comments.
- You have a **start date** and **end date** and want a markdown newsletter
summarizing what was taught in PR review feedback in that period.
- You want to highlight **themes, repeated issues, and concrete best practices**
rather than just listing PRs.
If the user does not provide both a start and end date, ask them to specify:
`YYYY-MM-DD` → `YYYY-MM-DD` before proceeding.
## Example Prompts
- “Generate a code review digest for this repo for 2025-02-01 → 2025-02-14.”
- “Create a weekly PR review digest for 2025-03-10 → 2025-03-17, using any existing digests as historical context.”
- “From 2025-04-01 to 2025-04-30, summarize what reviewers focused on in `owner/service-repo` and highlight repeated issues.”
- “Write a newsletter-style code review digest for this project for 2025-05-15 → 2025-05-29, tagging themes as [NEW] or [REPEAT].”
## Scope & Repositories
- Target repo: whichever project you want a digest for (typically the repo you
currently have open in Claude Code).
- Ideally the repo contains `docs/review-digests/AGENTS.md` with
project-specific digest guidelines. If not, fall back to the generic structure
described in this Skill and any existing digest files.
- This Skill **must only modify docs** under:
- `docs/review-digests/YYYY-MM-DD.md`
where the date is the **end date** of the reporting window.
- Do **not** modify application code, tests, or configs in the target repo while
this Skill is active. All changes should be within `docs/review-digests/`.
- If `docs/review-digests/` does not exist yet, create the directory before
writing the digest file, so future digests can be added and past ones read.
## Required Local Tools & Assumptions
When using `Bash`, assume:
- `gh` (GitHub CLI) is installed and authenticated for the target repository
(or for a default GitHub identity that can see it).
- Current working directory is the target repo root (or pass `--repo owner/name`
explicitly to `gh` commands, if needed).
If `gh` is not available, gracefully fall back to:
- Summarizing based on locally available PR notes or docs, and
- Clearly stating in the digest that it was generated with partial data.
## High-Level Workflow
When asked to generate or update a digest, follow this workflow:
1. **Confirm time window**
- Ensure you have `start_date` and `end_date` (inclusive).
- Confirm with the user if there is any ambiguity.
2. **Load local digest guidelines**
- If it exists, open `docs/review-digests/AGENTS.md` and read it carefully.
- When present, treat that file as the **source of truth** for:
- What the digest is.
- Where it should be written.
- Required structure and link style.
- How to detect and label repeated issues.
- If it does not exist, follow the layout described later in this Skill and
use any existing digest files in `docs/review-digests/` as a reference.
3. **Inspect existing digests**
- Ensure the `docs/review-digests/` directory exists:
- If it does not, create it; in that case there will be no past digests yet.
- Use `Glob` or `Bash` to list `docs/review-digests/*.md`.
- Load at least the **last 3–4 digests** (if present).
- Extract their **themes and repeated issues** (e.g., fixture reuse,
blind-index invariants, Query() regression patterns, etc.).
- You will use these to detect when issues are recurring.
4. **Fetch PR and review data for the window**
- Use `Bash` with `gh` to query PRs whose:
- `createdAt` is between `[start_date, end_date]`, OR
- `closedAt` is between `[start_date, end_date]`.
- Deduplicate PR numbers.
- For each selected PR:
- Fetch **top-level comments** (PR discussion).
- Fetch **review-thread comments with code context** (via GraphQL).
- Prefer comments from:
- Human reviewers (`__typename == "User"`).
- AI reviewers that contain substantial review content
(e.g., Claude, Copilot PR reviewer).
- Exclude noisy infrastructure/bot comments with no review content
(e.g., `github-actions`, log-only bots, CI status updates).
5. **Cluster feedback into themes**
- Read comments and diff context enough to understand:
- What behavior or pattern was being discussed.
- What best practice or correction was suggested.
- Group comments across PRs into **themes**, such as:
- Logging, Sentry, and performance instrumentation.
- Tests, fixtures, and code structure.
- Security, access control, and PII handling.
- Domain-specific design and invariants for this repository.
- Migrations & tooling.
- Process and meta-patterns in reviews.
6. **Detect repeated issues**
- For each current theme, compare it conceptually to themes you extracted
from previous digests (step 3).
- If the same pattern appears again (e.g., “use TypedDict instead of
`dict[str, Any]` in payloads”, “avoid Django Ninja `Query()` constants”,
“reuse shared fixtures instead of copy-paste”), treat it as a **repeated issue**.
- Use labels:
- `[NEW]` for themes that appear for the first time.
- `[REPEAT]` for themes that have appeared in previous digests.
7. **Draft the digest file**
- Target path: `docs/review-digests/END_DATE.md`
- Example: period `2025-11-13` → `2025-11-27` → `docs/review-digests/2025-11-27.md`.
- Follow the **layout described in `docs/review-digests/AGENTS.md`** and the
most recent digest, including:
- Title with repo and period.
- **Overview** section with 3–6 bullets summarizing main themes.
- Thematic sections (numbered) that group related feedback.
- A closing section (e.g., “How to Use This Digest”).
- Within each section:
- Explain the practice in **plain language**.
- Include 1–3 concrete, generalized examples.
- Call out whether this is `[NEW]` or `[REPEAT]`.
- Emphasize the “why” (business impact, correctness, safety, DX).
8. **Linking to PRs and comments**
- In the body of the digest, use **reference-style links** only:
- `[#2519 – Fix Teams Start Survey race condition][pr-2519]`
- `Key comment: [Fixture reuse recommendation][c-2519-3]`
- At the **bottom of the file**, define every link once:
- `pr-<number>` for PRs.
- `c-<number>-<n>` for specific review comments.
- `ic-<number>-<n>` for issue comments, if needed.
- Reuse identifiers consistently when the same comment is referenced in
multiple sections.
9. **Respect tone and intent**
- The digest is a **newsletter**, not a blame report.
- Highlight:
- What the team is learning.
- Where we’re improving.
- Where patterns are still repeating and need attention.
- Make guidance actionable (e.g., “When adding a new CSV mapping endpoint,
always run through the project’s PII and security checklist docs.”).
10. **Save and review**
- Use `Edit` to create or update the digest file for `END_DATE`.
- Re-open the file after writing to sanity-check:
- Structure matches the prior digests.
- Links resolve correctly and have definitions at the bottom.
- `[NEW]` / `[REPEAT]` tags are applied consistently.
- No accidental code changes occurred in the repo.
## Output Expectations
When this Skill is active and asked to generate a digest, your final output
should be:
- A **single markdown file** under `docs/review-digests/YYYY-MM-DD.md`.
- A short natural-language summary back to the user describing:
- The period covered.
- The main themes identified.
- How many themes were `[REPEAT]` vs `[NEW]`.
If you were unable to access GitHub or some PRs, clearly note in the digest and
in your summary which data sources were missing and how that might limit the
digest.
## Severity / Emphasis Tags
Instead of issue severities,Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.