本文へ移動
cccskills
無料GitHub で公開

code-reviewer

Performs critical code reviews using REVIEW.md guidelines. Evaluates code quality, architecture, testing, and domain-specific concerns (legal faithfulness, cross-law references, engine safety). Use after completing significant code changes or before merging.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md5.5 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Code Reviewer

Performs thorough, skeptical code reviews to catch issues before they reach production.

Mindset: Trust No One

Assume the author made mistakes. Even experienced developers:

  • Forget edge cases
  • Miss security implications
  • Copy-paste errors
  • Make off-by-one errors
  • Forget to handle errors
  • Assume happy paths

Your job is to find these issues before they cause problems.

Step 1: Load Review Guidelines

Read REVIEW.md from the repository root. This contains the project context, domain-specific review dimensions, severity scale, and skip rules. These guidelines are the primary source of truth for what to check.

Step 2: Gather Context

# See what files changed
git diff --name-only HEAD~1

# See the full diff
git diff HEAD~1

# Or for staged changes
git diff --cached
  1. Identify all changed files
  2. Read the commit message or PR description
  3. Understand the intent of the changes

Step 3: Review the Changes

Only review lines that were actually changed in the diff.

Do NOT comment on:

  • Pre-existing code that was not modified in this PR/commit
  • Surrounding context lines that appear in the diff for readability but were not changed
  • Issues in files that were not touched by this PR/commit
  • Pre-existing patterns, style, or naming choices in unchanged code

You may read the full file to understand context, but every finding you report has to point to a line that was added or modified in the diff. If a line was not changed, it is out of scope — no matter how wrong it looks.

For each changed line/block:

  1. Understand the surrounding code — read enough context to judge the change
  2. Trace the data flow — where does data come from, where does it go?
  3. Check the boundaries — what happens at edges and limits?
  4. Apply REVIEW.md dimensions — check each applicable dimension from the guidelines

Questions to ask (about changed code only):

  • What could go wrong here?
  • What happens if this input is null/empty/huge/negative?
  • What happens if this external call fails?
  • Is this doing what the author thinks it's doing?

Step 3b: Does each new test pin what it claims?

A green test is not evidence. Ask of every test in the diff: if the line this test covers were broken, would this test fail? Read the fixture against the assertion and answer it, rather than trusting the test name or its doc-comment.

The failure is almost always the same: the test tells a scenario and the fixture does not construct the premise of that scenario, so the assertion is trivially true. A survey of this repository found fourteen of them — a longest-prefix test with no shorter competing article, a retain test whose only candidate was already filtered out upstream, an assertion about a variable nothing references, sixteen test_files entries naming files that do not exist and that nothing reads.

Concrete forms to check:

  • A fixture in a shape the schema or corpus never produces. Check it against schema/latest/schema.json and against a real file in corpus/. One unit check here passed for months against a reader that found nothing in any real document, because both the reader and the fixture had the field one level too high.
  • An assertion that survives mutating the line it covers. Asserting on a message prefix, on is_empty(), on an enum where a string carries the behaviour, or assert!(!format!("{x:?}").contains("…")), which also passes on Ok(..).
  • An assertion behind an if let or a match arm that is silently skipped when the variant differs. Add a panic arm.
  • A name that promises more than the body tests. One test here asserted on CHAIN[1] while its name and comment were about CHAIN[0], and passed because both steps declare the same requirements.
  • Tautologies. Passing an empty list through a function and asserting nothing changed.

When the diff fixes a bug, the review also asks: why was the existing test green? A bugfix without an answer to that question leaves the same blind spot for the next bug in the same place. The fix for the test is to construct the premise, not to add an assertion beside it.

Step 4: Run Tests (if applicable)

just test
just bdd

Step 5: Report

Use the severity scale from REVIEW.md. Provide a structured report:

## Code Review: {description}

### Summary
{One paragraph summary of changes and overall assessment}

### Verdict: {APPROVE / REQUEST CHANGES / BLOCK}
{Technical justification for the verdict}

### Critical Issues
- **{Issue title}** (`file:line`)
  - Problem: {What's wrong}
  - Impact: {Why it matters}
  - Fix: {How to fix it}

### Important Issues
- **{Issue title}** (`file:line`)
  - Problem: {What's wrong}
  - Impact: {Why it matters}
  - Fix: {How to fix it}

### Minor Issues
- `file:line` — {Brief description}

Red Flags

  • unwrap() / panic!() on execution paths
  • # TODO or # FIXME without tickets
  • Commented-out code or debug statements
  • Hardcoded credentials or URLs
  • Empty catch/except blocks
  • Euro amounts as floats instead of eurocent integers
  • Broken regelrecht:// URIs
  • A test whose fixture does not construct the premise its own name describes

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Check if a RIG preview deployment is actually running and healthy. Verifies CI triggered, images exist, pods started, and services respond. Use when a PR deployment seems broken or after pushing code.

日本語の概要は準備中です。原文の説明を表示しています。

NederlandseDigitaleDienst/regelrecht252026年10月12日 更新

Processes all open Dependabot PRs sequentially — rebases if needed, analyzes for breaking changes and security issues, then merges or requests changes. Use when you want to handle pending Dependabot dependency updates.

日本語の概要は準備中です。原文の説明を表示しています。

NederlandseDigitaleDienst/regelrecht252026年10月12日 更新

Writing rules for the regelrecht docs site (docs/). Use when writing or editing prose under docs/ — RFCs, guides, component docs, concept pages, and the NL/EN landing copy. Keeps docs prose free of AI-generated tells and consistent with the site's government-technical register. Not for code, commit messages, or PR descriptions.

日本語の概要は準備中です。原文の説明を表示しています。

NederlandseDigitaleDienst/regelrecht252026年10月12日 更新

Provides context about the regelrecht Figma design system and helps with Figma-related tasks like component lookups and design comparisons. Use this skill proactively when: implementing UI components, looking up Figma node IDs, comparing code with Figma designs, downloading Figma assets, or working with design tokens. Activate automatically when user mentions Figma, design system, component styling, or asks about RR-Components.

日本語の概要は準備中です。原文の説明を表示しています。

NederlandseDigitaleDienst/regelrecht252026年10月12日 更新

Downloads Dutch official legal publications including national laws, local regulations, and implementation policies from government sources (wetten.overheid.nl, lokaleregelgeving.overheid.nl). Use this skill proactively when: user mentions downloading, fetching, or importing a Dutch law by name or BWB/CVDR identifier, when a source.regulation reference points to a law not in the corpus, or when user provides a wetten.overheid.nl URL. Activate automatically when user mentions a specific Dutch law name, BWB identifier (BWBR...), or CVDR identifier.

日本語の概要は準備中です。原文の説明を表示しています。

NederlandseDigitaleDienst/regelrecht252026年10月12日 更新

Generates machine_readable execution logic for Dutch law YAML files: writes the machine_readable sections, validates against the schema, and (when a shell is available) runs the BDD suites until the model is correct. Use this skill proactively when: editing or creating machine_readable sections in law YAML files, working with corpus regulation files, or when user mentions 'generate', 'machine_readable', or wants to make a law executable. Activate automatically when user discusses law YAML files that need executable logic.

日本語の概要は準備中です。原文の説明を表示しています。

NederlandseDigitaleDienst/regelrecht252026年10月12日 更新

NederlandseDigitaleDienst のスキルをすべて見る

このスキルの問題を報告する