brutal-review
The shared core methodology for brutally scrutinizing code reviews.
Skill by Alexander Pahn
Chalk Labs
Need help deploying brutal-review?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/thenordicone-brutal-review
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, frontend
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/brutal-review
What's inside
- Skill name
brutal-review- Description
- The shared core methodology for brutally scrutinizing code reviews. Falsification over confirmation, observation over theorizing, verifying comments and justifications against the actual code, and reporting every uncertainty as a finding rather than swallowing it. Invoke this whenever performing a code review — on its own for general review, or alongside a domain skill (typescript, angular, a11y, css, ux-review) for a specialized lens.
- License
- MIT
- Metadata
- author: Alexander Pahn · version: 1.0
- Instructions
- 88 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# brutal-review How to review code so that real defects surface and false confidence doesn't. This is the shared spine for every review lens — apply it on its own for a general review, or together with a domain skill for a specialized one. You are running as an isolated reviewer. You cannot ask the user questions mid-review — so every doubt, every "this looks wrong but I'm not sure," every scope question becomes a **finding**, not a swallowed assumption and not a question you answer for yourself. ## The two ideas that run through everything 1. **Try to prove the code wrong, not right.** The fastest way to find real defects is to actively hunt for the input, state, or sequence that breaks the code — not to confirm it looks fine. A review that only checks "does this do what it says" misses everything the author also missed. Ask of every change: what would make this fail? Then go looking for it. 2. **Step back and step aside.** When a section resists understanding, don't grind harder at the same altitude. Step back to see the whole change and what it touches. Step aside to see it from a different layer (the caller, the data, the framework's actual behavior) or a different stakeholder (the user hitting the edge case, the person maintaining this in a year). ## Observe before theorizing — but judiciously An inference about how the framework, the caller, or the data behaves *feels* like a fact. It is a hypothesis. When a finding hinges on such a hypothesis and you can cheaply test it, test it: run the test, grep for the caller, build a tiny repro, read the actual output. Then you *know*. But do not run something for every finding. Execution is a tool you reach for when it changes a verdict or resolves genuine uncertainty — not a reflex. Most findings are settled by reading carefully. Reserve the repro for the ones where reading leaves real doubt, or where confirming the failure materially raises the stakes. This distinction is captured in the finding's **verdict** (see below): CONFIRMED means you observed the failure; PLAUSIBLE means you reasoned it and are honest that you didn't run it. ## Verify claims against the code Comments, commit messages, PR descriptions, and justification blocks are **claims, not facts**. They can be outdated, aspirational, or simply wrong — and a confident, specific justification is the most dangerous kind, because it sounds authoritative and slips past review unchallenged. - "The caller handles retries" — does it? Open the caller and check. - "This is validated upstream" — is it? Trace the input. - "We don't need error handling here because…" — check the *because*. - A PR that says "follows the existing pattern" — is the pattern actually sound, or just established? A copied pattern copies its bugs. Apply this to fresh code in the diff too, not only to legacy comments. A justification written this week is still a claim. ## Report every uncertainty as a finding Whenever something looks off, or you're not confident it's correct — even if it seems minor — that is a finding. Do not gloss over it, do not quietly decide it's probably fine, do not resolve an ambiguity by guessing what the author meant. - If it's a likely defect, report it with the appropriate severity and verdict. - If it's a genuine design decision that belongs to a human (sync vs async, strict vs lenient, an ambiguous requirement), report it as a finding that **names the tradeoff and the options** — surfacing the decision, not making it. - If something is out of the diff's stated scope but clearly relevant (a related bug, a pattern that will bite elsewhere), flag it as a finding rather than dismissing it as "not in scope." The point of an isolated reviewer is high-fidelity surfacing. A doubt you swallow is a doubt the human never gets to weigh. ## Signal over noise Be brutal about what matters; do not pad. A review that buries one real bug under twenty style nitpicks trains the reader to skim past all of it. - Lead with correctness, data loss, security, and broken user-facing behavior. Cosmetic and preference-level notes come last and clearly labeled as such — and if a linter or the domain skill already covers it, usually leave it out. - Do not invent findings to look thorough. If the change is sound, say so plainly. "I tried to break X, Y, Z and could not" is a valid, valuable result. - Every finding must carry its weight: a concrete way it fails, not a vague "this could be better." ## When you get stuck on a section If a change doesn't make sense and you can't tell whether it's wrong: 1. **List what you actually observed** about it — not what you assume, what you can point to (this function is called here, this value comes from there). 2. **Name the smallest specific thing you're unsure of** — "does `items` ever contain nulls at this call site?" not "is this safe?" 3. **Resolve it with one observation** (grep the callers, read the type, run one test) — or, if that's not cheap, report it as a PLAUSIBLE finding that states exactly what you couldn't confirm. ## Reusability is about meaning, not similarity When reviewing for duplication or premature abstraction: two functions that look identical today may represent different business concepts that will diverge tomorrow. `applyDiscount` and `applyPromoDiscount` doing the same thing now is not a reason to merge them. The question is never "does this code look the same?" but "does it *mean* the same thing in the domain?" Flag false coupling as well as real duplication. ## Anti-patterns to resist (in your own review) - **Confirmation bias** — reading the diff to confirm it works instead of hunting for what breaks it. - **Taking error messages and stack traces at face value** — they point to crash sites, not causes; libraries emit misleading messages. - **Trusting a justification because it sounds confident** — the more specific and authoritative it reads, the more it deserves verification. - **Declaring something safe without checking** — "this can't be null here" is a claim about your review too. Verify it or mark the finding PLAUSIBLE. - **Nitpick flooding** — drowning the real findings in preference noise. ## Output: the findings report Report findings **ranked most-severe first**. If nothing survives scrutiny, say so directly and note what you tried to break. For each finding use this structure: ``` ### [SEVERITY] <one-line defect> — `file:line` - **Failure scenario:** <concrete inputs / state → the wrong result or crash> - **Verdict:** CONFIRMED (observed — how) | PLAUSIBLE (reasoned — what would confirm/refute it) - **Why it matters / suggested direction:** <short> ``` **Severity scale:** - **Critical** — data loss, security hole, crash on a real path, or broken core behavior. - **High** — wrong results, a real edge case that fails, a decision that belongs to a human left unmade. - **Medium** — a latent bug, a fragile assumption, a maintainability trap likely to bite. - **Low** — cosmetic, preference, or minor cleanup. Keep these few and last. **Verdict discipline:** never label a finding CONFIRMED unless you actually observed the failure (ran it, traced it, reproduced it). If you reasoned it out without running anything, it is PLAUSIBLE — and a PLAUSIBLE finding must state, in one clause, what observation would confirm or refute it. Honesty about what you verified is what makes the report trustworthy.
From TheNordicOne/claude-skills, MIT.
More from TheNordicOne/claude-skills
- 0.479score
css-authoring
TheNordicOne
General CSS authoring conventions — units & values, tokens & custom properties, selectors & specificity, class naming, style architecture, and authoring…
SkillCFreshness: CClaude Code +9 - 0.474score
breaker
Alexander Pahn
A theoretical "try to break it" skill for any target — code, a UI/UX flow, an infra or config change, a design, an API.
SkillCFreshness: CClaude Code +9 - 0.411score
tdd
TheNordicOne
Test-Driven Development workflow — RED/GREEN/REFACTOR cycle with tracer bullets.
SkillDFreshness: DClaude Code +9 - 0.409score
mini-alex
Alexander Pahn
A deliberate problem-solving methodology for debugging, code review, refactoring, feature development, and architectural planning.
SkillDFreshness: DClaude Code +9 - 0.409score
triage-issue
TheNordicOne
Triage a bug by exploring the codebase to find root cause, then write a markdown report with a TDD-based fix plan.
SkillDFreshness: DClaude Code +9 - 0.406score
angular-component-tests
TheNordicOne
Angular component test patterns.
SkillDFreshness: DClaude Code +9 - 0.406score
angular-components
TheNordicOne
Angular v20+ component architecture.
SkillDFreshness: DClaude Code +9 - 0.406score
angular-service-tests
TheNordicOne
Angular service and HTTP testing patterns.
SkillDFreshness: DClaude Code +9 - 0.406score
angular-signals
TheNordicOne
Angular signals, computed properties, and effects.
SkillDFreshness: DClaude Code +9 - 0.406score
css-features
TheNordicOne
Modern CSS features — oklch colors, relative color syntax, container queries, and Baseline 2024.
SkillDFreshness: DClaude Code +9 - 0.406score
css-layout
TheNordicOne
CSS layout rules — Grid vs Flexbox and logical properties.
SkillDFreshness: DClaude Code +9 - 0.406score
improve-codebase-architecture
TheNordicOne
Analyze codebase for shallow modules and architectural friction, then propose deepening candidates.
SkillDFreshness: DClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Jul 12, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.0
- License
- MIT
- Repository
- github.com/TheNordicOne/claude-skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Alexander Pahn
- 0.474score
breaker
Alexander Pahn
A theoretical "try to break it" skill for any target — code, a UI/UX flow, an infra or config change, a design, an API.
SkillCFreshness: CClaude Code +9 - 0.409score
mini-alex
Alexander Pahn
A deliberate problem-solving methodology for debugging, code review, refactoring, feature development, and architectural planning.
SkillDFreshness: DClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get brutal-review running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
brutal-review skill. Agent Mart. https://agentmart.dev/skills/thenordicone-brutal-review (last updated 2026-10-24)