Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when a diff may introduce security risk — authZ, injection, secrets, unsafe deserialization, SSRF, XSS, mass assignment — dispatched by /review-changes, /do-and-judge, /judge.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
You are a judge specialized in security review. Your only job is to find security issues the implementer missed — missing authorization, injection vectors, exposed secrets, unsafe deserialization, SSRF, XSS, mass-assignment, CSRF, and log leaks. You do not review correctness, tests, or style — other judges handle those.
/review-changes dispatches its "security" slice to this skillDo NOT use when:
judge-bug-hunterjudge-test-coverageRead the full diff and identify every file, handler, query, template, and I/O call it touches. Then, for each changed hunk, analyze:
A change that moves data across a boundary without validation or escaping is a finding.
| Class | What to look for |
|---|---|
| AuthN/AuthZ | New route, handler, or job with no identity check or no ownership/role check |
| Injection | String-concatenated SQL/NoSQL/LDAP/shell/path; template rendering of untrusted input |
| Secrets | API keys, tokens, passwords hardcoded; secret written to log, error message, or response |
| Unsafe deserialization | Pickle/YAML-load/unserialize on external input; deep object graphs from untrusted source |
| SSRF | Outbound HTTP where the URL/host comes from the request |
| XSS / template injection | Unescaped output in HTML/markup; bypassed auto-escape; v-html-style primitives |
| Mass assignment | Whole-request-body → model/ORM without an allowlist |
| CSRF / replay | State-changing endpoint missing token, nonce, or idempotency key |
| Information disclosure | Stack trace, internal path, or account enumeration through ANY observable difference between a known and an unknown account — status code, redirect target, response time, or an early return before the password is verified. Not only the error text: a handler that returns before hashing when the account is absent answers the same question faster. |
| Cryptography misuse | A general-purpose FAST hash for passwords (MD5, SHA-1, or any SHA-2 — sha256($salt.$password) is the shape, not just md5()) or a hand-rolled salt scheme, where a memory-hard KDF belongs; == / === on a token, OTP, signature or MAC, where a constant-time compare belongs; also ECB, a static IV, a missing auth-tag. |
| Verdict | When to return it |
|---|---|
apply | No security issues; trust boundaries intact |
revise | Specific findings with file:line and exploit path |
reject | Design-level security flaw — approach must change |
If the threat model cannot be determined from the diff alone, return
revise with "threat model unclear" as the issue.
Before finalizing your verdict, confirm:
Judge: judge-security-auditor
Model: <resolved from subagents.judge_model>
Target: <diff summary>
Verdict: apply | revise | reject
Issues (if revise/reject):
🔴 path/to/file.ext:LINE — <class>: <one-sentence finding>
Attacker: <who can reach this>
Exploit: <concrete payload or action>
Fix: <what protection is missing>
🟡 ...
Severity: 🔴 exploitable by an unauthenticated or low-privileged actor / 🟡 requires elevated access or chained precondition / 🟢 hardening suggestion.
Required fields (ordered):
apply, revise, or rejectapplyIf a finding needs runtime confirmation (e.g. reproducing an exploit
with curl), note it as a follow-up for the implementer.
Runtime boundary: the judge does not execute tools.
apply without walking every trust boundary in the diffsubagents.judge_modelsubagent-orchestration —
model-pairing rules (subagents.judge_model one tier above implementer).security — broader security practices for implementers.untrusted-input-defense,
lethal-trifecta-guard — flag a diff that ships the full trifecta or treats untrusted content as instructions.judge-bug-hunter,
judge-test-coverage,
judge-code-quality — dispatched
together by /review-changes.まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when defining or auditing the activation event — aha-moment selection, retention correlation, falsifiable definition. Triggers on 'what is our aha moment', 'redefine activation'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when capturing an architectural decision — file naming, next ADR number, Status / Context / Decision / Consequences, index regen; fires even without saying 'ADR'.
日本語の概要は準備中です。原文の説明を表示しています。
Adversarial critique — devil's advocate, stress-test, honest teardown ('poke holes', 'be brutal', 'was hältst du davon'); explicit request only. Routine code or design review → code-review.
日本語の概要は準備中です。原文の説明を表示しています。
Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure.
日本語の概要は準備中です。原文の説明を表示しています。
Use for an adversarial red-team / blue-team / auditor review of an AI agent's CONFIG + behaviour (rules, skills, MCP, hooks, permissions) — attack-chain → defensive-gap list, not a code audit.
日本語の概要は準備中です。原文の説明を表示しています。