agentleFS
Microsoft AzureKnown publisherAzure/azure-dev/.github/skills/azd-code-reviewer/SKILL.md

azd-code-reviewer

Skill573 starsChanged 8 months agoMITView on GitHub

Reviews GitHub pull requests by applying multiple specialist lenses (security, Go expert, architect, testing, UX, docs, PM, Azure, novice customer), triaging findings for signal-to-noise, and returning structured inline comments. Use for: review PR, look at this PR, give feedback on PR, check this PR, code review, PR feedback.

The file

We split this skill into the rules it gives an agent

7 rules. About 0 are common, 4 are distinctive, and 3 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    No build or test execution: Test code is reviewed statically.

    line 20
  2. Very specific:

    Extension contract reviews use a companion skill: Keep extension-user-contract-review available alongside this skill when distributing it …

    line 22
  3. Distinctive:

    If the host is interactive (e.g., a chat agent invoking the skill manually), the same workflow still works — interactive steps simply don't …

    line 25
  4. Very specific:

    Use whatever PR metadata, diff, and changed-file list the harness provides.

    line 31
  5. Distinctive:

    If the diff changes telemetry collection or declarations, read the privacy checklist's reviewer guidance and the maintainer's coverage …

    line 50
  6. Very specific:

    Do not drop contract comments to satisfy an ordinary finding budget.

    line 69
  7. Distinctive:

    Silence over noise: If a lens has nothing meaningful to say, it returns nothing.

    line 75

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Code review

Reviews GitHub PRs by applying a panel of specialist review lenses to the diff, filtering for high-signal findings, and returning structured comments for the host to post.

Operating environment

This skill usually runs inside an automated review harness (e.g., Copilot Code Review). It assumes:

  • The diff and PR context are already provided by the harness. In an interactive invocation without that context, use read-only git and gh commands to discover the current branch diff and PR metadata. Do not change branches or the worktree.
  • No interactive user. No ask the user flows, no walkthroughs, no "want to proceed?" gates. The skill produces findings and returns them.
  • No build or test execution. Test code is reviewed statically.
  • The harness handles posting. The skill returns structured findings; the harness creates the review.
  • Extension contract reviews use a companion skill. Keep extension-user-contract-review available alongside this skill when distributing it outside this repository.

If the host is interactive (e.g., a chat agent invoking the skill manually), the same workflow still works — interactive steps simply don't apply.

Workflow

Step 1: Read the diff and PR context

Use whatever PR metadata, diff, and changed-file list the harness provides. In an interactive invocation where these are missing, discover them with read-only git and gh commands. If supplementary context such as linked issues or prior review comments is available, use it.

Step 2: Mandatory extension contract pass

For any PR changing cli/azd/extensions/**, including fork PRs, you MUST load and apply the extension-user-contract-review skill and its full review procedure before the general review lenses. Do not make invocation depend on already recognizing a contract change. Inspect every changed extension file, track coverage and existing threads, and preserve its findings for shared triage. For command changes, trace base/head registrations to constructors and parent commands across files; track each public path separately so unrelated findings or constructor moves do not hide new commands. If the skill or required evidence is unavailable, report the contract pass as blocked rather than skipping it. Skip this pass only when the complete file list contains no extension changes.

If added files are under a top-level path in cli/azd/extensions/ that did not exist before the PR, also load new-extension.md and apply its onboarding review. An added extension.yaml is enough to trigger the new-extension review because a dependency-only extension pack may have no module or entry point.

Step 3: Apply review lenses

Load reviewers.md and apply each of the 9 fixed lenses to the diff. Then scan the changed files for the domain signals listed in reviewers.md and apply matching domain lenses. Each lens produces zero or more findings in the structured format defined in reviewers.md.

If the diff changes telemetry collection or declarations, read the privacy checklist's reviewer guidance and the maintainer's coverage decision in the PR. This applies even when filenames do not contain telemetry, such as changes to ReportUsage calls or fixed event values. Apply the Observability Expert checks from reviewers.md.

The reviewing agent is the same LLM — these lenses are perspectives to apply sequentially or in parallel, not separate subagents. The host may parallelize lens application if supported, but a single-pass application of all lenses to the same diff is equally valid.

Step 4: Triage findings

Load findings.md. Apply the self-reflection pass: drop low-signal findings according to the dismissal triggers, merge duplicates across lenses, group by file, and sort by line.

Step 5: Voice and format

Still in findings.md. Apply the voice rules to every finding's text. Build the review body (one sentence + optional bullets for non-line findings). Return the final findings in the format the harness expects.

Step 6: Mandatory contract completion audit

For extension PRs, reconcile the contract coverage ledger with the complete changed-file list, discovered command tree deltas, and actual outgoing comments. Every distinct in-scope addition or removal must have one inline comment or a matching existing thread. Do not drop contract comments to satisfy an ordinary finding budget. Expose the companion skill's completion status and counts in the review body or supported result channel. An incomplete pass must say blocked, not imply a clean review.

Principles

  • Silence over noise. If a lens has nothing meaningful to say, it returns nothing. No invented concerns. Fewer, better comments is the goal.
  • Codebase context matters. Review the change in context — read surrounding code, not just the diff. Cross-file logic errors are the most common real bugs.
  • Independence. The reviewing agent builds its own understanding. It does not share assumptions with whatever generated the code.
  • Findings must be useful. Critical, suggestion, and nit comments must give the author something specific to act on. Praise must name a concrete pattern worth preserving.

Bundled resources

FileContents
reviewers.md9 fixed lens definitions, dynamic domain detection rules, shared ground rules, findings format
findings.mdSelf-reflection triage, dismissal triggers, merge/dedup, voice rules, review body guidance
new-extension.mdNew first-party extension scaffolding, repository wiring, release, and handoff checks
extension-user-contract-reviewCompanion skill for extension contract changes and per-thread experiences spec tracking

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.