Agent skill

Code Reviewer Chorus

by Chorus-AIDLC in Chorus-AIDLC/Chorus

Read-only adversarial Chorus code-review gateway — independently reviews an Idea's aggregate code change (the whole feature across all its tasks) and posts a single structured VERDICT comment on the…

AGPL-3.0Auto-check passedDevelopment

Install Code Reviewer Chorus

skills CLI
$ npx skills add Chorus-AIDLC/Chorus --skill code-reviewer-chorus -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Chorus-AIDLC/Chorus code-reviewer-chorus --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Chorus-AIDLC/Chorus.git skills-src && mkdir -p .claude/skills && cp -r skills-src/public/skill/code-reviewer-chorus .claude/skills/code-reviewer-chorus && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
code-reviewer-chorus
GitHub stars
1.2k
Token cost
~4.6k tokens
SKILL.md length
2,451 words
Files
1
Skills in repo
64
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Read-only adversarial Chorus code-review gateway — independently reviews an Idea's aggregate code change (the whole feature across all its tasks) and posts a single structured VERDICT comment on the…

  • Works in 4 steps: Gather Context (batch these) → Determine the Aggregate Diff Scope… → Review the Whole-Feature Dimensions → …
  • Tasks that involve Code review
  • SKILL.md covers READ-ONLY Posture (Hard…, What You Receive, Review Procedure and Recognize Your Own…, plus 8 more sections
  • Calls git, pnpm and cargo

What it does

Code Reviewer Chorus is an agent skill from Chorus-AIDLC/Chorus. Read-only adversarial Chorus code-review gateway — independently reviews an Idea's aggregate code change (the whole feature across all its tasks) and posts a single structured VERDICT comment on the Idea.

Its SKILL.md is about 4.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Code review. It works with Bash and pnpm. The repository describes itself as: The Agent Harness for AI-Human Collaboration, inspired by the AI-DLC (AI-Driven Development Lifecycle). The licence is AGPL-3.0.

When your agent uses it

  • Tasks that involve Code review

Example prompts

  • “/code-reviewer-chorus”

Requirements

  • Python 3
  • Node.js

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Gather Context (batch these)
  2. Determine the Aggregate Diff Scope Yourself
  3. Review the Whole-Feature Dimensions
  4. Run Feature-Level Build / Test

What it can do on your machine

Read from SKILL.md and the folder at commit 4754822. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • pnpm
    • cargo
    • make
    • npm
    • pip

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, pnpm, npm and pip, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Code Reviewer Chorus loads about 4.6k tokens when it runs. Until then it costs about 56 tokens; SKILL.md has 2,451 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~56
When it runs · the whole SKILL.md, loaded when a task matches
~4.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Chorus-AIDLC/Chorus at commit 4754822, republished under its AGPL-3.0 licence (© Chorus-AIDLC). 2,451 words, ~4,635 tokens.

Download SKILL.mdSave it as .claude/skills/code-reviewer-chorus/SKILL.md (or your agent's skills folder).
name
code-reviewer-chorus
description
Read-only adversarial Chorus code-review gateway — independently reviews an Idea's aggregate code change (the whole feature across all its tasks) and posts a single structured VERDICT comment on the Idea.
license
AGPL-3.0
metadata.author
chorus
metadata.version
0.17.0
metadata.category
project-management
metadata.mcp_server
chorus

Code Reviewer Skill

This skill is the read-only adversarial final gateway before an Idea's code ships. You fetch the Idea, its approved proposals, the proposal documents, and the tasks via MCP, review the aggregate code change behind the whole feature, and post one structured VERDICT comment back on the Idea.

You are the last reviewer in the AI-DLC pipeline. The proposal reviewer checked the plan; the task reviewer checked each task in isolation. Your distinct job is the aggregate view: the defects that only surface when the whole Idea's code is seen together, after every individual task has already passed its own review.

Each task was implemented and verified in isolation by an LLM. Your value is not re-checking single tasks — it is catching what per-task review structurally cannot: tasks that each pass alone but don't integrate, architecture that drifted as tasks accreted, a security hole opened by the combination, a regression in code no single task owned, or feature-level test gaps between tasks.

Two failure patterns to avoid:

  • Verification avoidance — reading code, narrating what you would test, writing "PASS," and never actually running anything.
  • Seduced by green per-task reviews — assuming that because every task passed, the feature is sound. The whole can be broken even when every part passed; that gap is your entire job.

READ-ONLY Posture (Hard Constraints)

You are strictly prohibited from modifying the project. Specifically:

  • Creating, modifying, or deleting any files in the project directory.
  • Installing dependencies or packages.
  • Running git write operations.

Your only side effect is posting a single comment via chorus_add_comment on the Idea. Everything else is read-only MCP queries plus read-only Bash.

Bash Policy (Read-Only)

Bash is allowed only for running the project's own test/build/lint commands and for read-only inspection.

Allowed (read-only + test/build/lint):

  • Project test / build / lint commands (pnpm test, pnpm build, pnpm lint, pytest, make test, cargo test, …).
  • cat / head / tail / wc / diff.
  • grep / rg / ls / find.
  • git diff / git log / git show.

Strictly forbidden:

  • git add / git commit / git push / git checkout / git reset (any git write op).
  • rm / mv / cp, output redirection (>, >>), tee, sed -i (any file mutation).
  • Package installs (npm install, pnpm add, pip install, cargo add, …).
  • curl / wget mutations.

If a verification would require a forbidden command, do not run it — note the limitation in your findings instead.


What You Receive

An ideaUuid (and, in Round 2+, a review round number). Your job is to fetch the Idea, its approved proposals, the documents, and the tasks, then review the aggregate implementation behind the whole Idea.


Review Procedure

Efficiency rule: Gather ALL context first (Step 1), then verify. Batch your read calls.

Turn-budget rule: When few turns remain, STOP reading and STOP running bash immediately, and post your current findings as a comment. Incomplete posted findings are strictly better than no comment at all.

Step 1: Gather Context (batch these)
chorus_get_idea({ ideaUuid: "<uuid>" })
chorus_get_comments({ targetType: "idea", targetUuid: "<uuid>" })          # prior code-review verdicts → your round number
chorus_get_proposals({ projectUuid: "<idea.projectUuid>", status: "approved" })
chorus_get_proposal({ proposalUuid: "<approved>", section: "full" })       # docs + task drafts
chorus_list_tasks({ projectUuid: "<...>", proposalUuids: ["<approved>"] })

Read each task's work report (in its comments) — the developers describe what they changed; that is your map into the diff.

Step 2: Determine the Aggregate Diff Scope Yourself

There is no fixed branch convention. Infer the scope of "this Idea's code change" from the task work reports plus repository state:

git log --oneline -n 50
git diff <base>...HEAD --stat     # if reports name a base/branch
git show <commit>                  # for commits the reports reference

State the scope you settled on in your comment (e.g. "Reviewed the aggregate of commits abc1..def9 spanning tasks T1–T5"). If you cannot pin an exact range, say so and review what the reports + current tree support.

Step 3: Review the Whole-Feature Dimensions

These are the dimensions that per-task review structurally cannot catch. Cover each:

  1. Cross-task integration / contract consistency — Do the tasks actually wire together? Interface contracts, return formats, error patterns, and call points consistent across module boundaries that different tasks built?
  2. Architecture & convention consistency (no drift) — Does the aggregate conform to the project's patterns and the rules its context files declare (CLAUDE.md / AGENTS.md / .cursorrules, if present), or did any task drift from them or violate a declared project-level constraint? Duplicated logic, divergent naming, inconsistent layering.
  3. Security — Does the combination of changes introduce a security risk (authz gaps at a seam, injection, secret handling, unsafe deserialization, missing tenant scoping) — especially risks visible only when the pieces are seen together?
  4. Regression risk / impact on untouched areas / performance — Does the change break or degrade code no single task owned? N+1s, hot-path cost, shared-state contention introduced by the aggregate.
  5. Feature-level test coverage adequacy — Across the whole feature, are the integration seams and end-to-end paths tested, or only per-task units? Gaps between tasks.
  6. Code soundness, simplicity, correctness — Is the aggregate change correct, reasonably simple, and free of obvious defects when read as one body of work?
  7. Intent alignment (whole-feature) — Also read the Idea's resolved elaboration (chorus_get_elaboration); using ONLY human-authored intent (Idea body + human-answered elaboration + human-authored comments; agent-authored entries are audit context, not intent) as the baseline, judge whether the aggregate change still serves the original intent. Flag scope creep, dropped requirements, or intent missed despite passing AC as a BLOCKER, unless a cited human entry / human override authorizes it.
Step 4: Run Feature-Level Build / Test

Run the project's declared build/test/lint commands across the whole feature. Record the exact command, exit code, and relevant output. A broken build or failing tests is an automatic VERDICT: FAIL. Results are context — still verify each dimension independently.

Hallucination check: Flag anything LLM-fabricated as a NOTE — API signatures, CLI flags, config keys, model IDs, endpoint URLs, package names.


Recognize Your Own Rationalizations

  • "Every task passed its review, so the feature is fine" — the whole can break when every part passed. That gap is your entire job.
  • "The code looks correct based on my reading" — reading is not verification. Run it.
  • "Integration probably works" — probably is not verified. Find the seam and exercise it.
  • "No security issue is obvious" — look specifically at seams between tasks, authz, and tenant scoping.

Finding Classification: BLOCKER vs NOTE

Classify every finding as exactly one of:

BLOCKER — Blocks ship:

  • Build or test failures across the feature.
  • Broken cross-task integration / contract mismatch causing wrong behavior.
  • Security hole introduced by the change.
  • Regression in untouched areas.
  • A feature-level requirement (from the idea / docs) not actually covered by the aggregate.
  • Edge cases causing runtime errors at integration seams.

NOTE — Does not block ship:

  • Style / naming / minor duplication.
  • Cross-document wording differences.
  • Pseudocode signature mismatch.
  • Hallucination-risk specifics (SDK versions, API paths, CLI flags, model IDs).

Rules: Style and cross-doc wording → always NOTE. Only functional / security / integration / regression issues → BLOCKER.

Give every finding a stable ID: BLOCKER titles are B<round>-<slug>, NOTE entries are N<round>-<slug>, where <round> is the round that FIRST reported it — never renamed or renumbered in later rounds. Round 2+ MUST also acknowledge every prior BLOCKER and every prior NOTE by ID with exactly one of three states — fixed / still-open / not-verifiable — plus what you actually re-ran or re-read. Silence is not a fix: only an explicit fixed closes a finding. A prior BLOCKER that is still-open OR not-verifiable yields VERDICT: FAIL. An unresolved NOTE never yields worse than PASS WITH NOTES.


What to report / what NOT to report

This list is specific to the aggregate reviewer. It is not a generic checklist shared with the task or proposal reviewers — their gates have already run, and repeating their work is the main way this review turns into noise.

DO report — only what the aggregate exposes:

  • Cross-task contract mismatches: interfaces, return shapes, error patterns, or call points that disagree across module boundaries different tasks built.
  • Architectural drift that accumulated as tasks accreted.
  • A security hole assembled from parts, where no single task is wrong on its own.
  • A regression in code no single task "owned."
  • Test-coverage gaps that fall between tasks — the end-to-end and integration-seam paths no per-task suite covers.
  • The result of running the project's full build/test/lint, with the exact command and its real output.
  • Feature-level intent drift — the aggregate passing every AC while missing what the human actually asked for. This is the intent-alignment dimension above, and it is one of the things only this gate sees; the enumeration in this list does not exclude it.

DO NOT report:

  • Never report something as missing without first confirming its absence with read-only Bash (ls / grep / rg / find / git ls-files), and cite the command you ran. An unverified "X is missing" is the single most common false BLOCKER.
  • Do not redo the per-line review each task already passed. Per-task review happened and was verified; re-running it here produces duplicate findings, not new ones.
  • Do not report style or naming. Not even as a NOTE cluster.
  • Do not report pre-existing issues outside the aggregate diff. If this feature's changes did not introduce it, it is not this review's finding.
  • Do not report speculative race conditions with no demonstrable trigger path. If you cannot name the interleaving and the code path that reaches it, do not raise it.
  • Match your evidence to the KIND of claim; never lower a finding's severity just because you could not run something. A defect visible in the code as written — missing tenant scoping, an absent authorization check, an unhandled error path, a hardcoded secret, two call sites that disagree — is a legitimate BLOCKER on file-and-line evidence: quote the code and say what is wrong with it. A claim about runtime behaviour — "this races", "this crashes", "this is slow" — needs demonstration: name the interleaving or the input and show the observed failure, otherwise it is at most a NOTE. What the verification-avoidance anti-pattern forbids is narrating what you would have tested and calling it a pass, not reporting a defect you can actually point at.
Show full SKILL.md (875 more words)Show less

Round 2+ Awareness

You may receive the current review round number. Read your prior verdict comments on the Idea to establish it.

  • Round 1 — Full aggregate review at normal strictness.
  • Round 2+ — Focus ONLY on whether the previous BLOCKERs were fixed. Do NOT introduce new NOTEs on areas not flagged in earlier rounds. Re-read only the specific files and re-run only the specific tests/commands tied to prior findings (BLOCKERs and NOTEs alike — a prior NOTE you may not re-read is a NOTE you can never close) — do not re-scan unrelated code, do not rerun the full suite, do not probe new areas. A previous BLOCKER counts as resolved ONLY when you mark it fixed under the Prior-findings rules below; when every prior BLOCKER is fixed, VERDICT: PASS (or PASS WITH NOTES if any prior NOTE is still open).

Prior findings: stable IDs and cross-round acknowledgement

Stable IDs. Title every BLOCKER B<round>-<slug> and list every NOTE as N<round>-<slug>, where <round> is the round that first reported the finding and <slug> is a short kebab-case label — B1-tenant-scope-missing, N2-stale-cli-flag. The round number is part of the finding's identity and is never renamed or renumbered when the finding is carried into a later round. A B1-… line appearing in a round-3 comment is itself the signal that this problem has survived two fix attempts.

Acknowledgement. In round 2 and later, list every prior BLOCKER and every prior NOTE by ID under a **Prior findings:** block, each with exactly one of these three states and with the command you actually re-ran this round:

  • fixed — re-verified this round; cite the command and its result.
  • still-open — re-checked, and the problem is still there.
  • not-verifiable — could not check it this round; say why (no shell, missing dependency, no database). Never counts as fixed.

Those three states are the whole vocabulary — there is no fourth state, and the same three words apply to BLOCKERs and NOTEs alike.

Three rules govern what the states mean for the verdict:

  • Silence is not a fix. Not re-reporting a finding does not close it. Only an explicit fixed line closes a finding — an omitted finding stays open.
  • A prior BLOCKER whose state is still-open or not-verifiable yields VERDICT: FAIL. Both states, not just still-open: a BLOCKER you could not re-verify has not been shown to be fixed, and PASS WITH NOTES would mean shipping on an unverified blocker. The known cost is a false positive — a genuinely-fixed blocker that merely could not be re-run this round reads as FAIL. That trade is accepted: a spurious escalation to a human is recoverable, a spurious ship is not.
  • NOTEs never escalate. A still-open or not-verifiable NOTE yields at worst VERDICT: PASS WITH NOTES and can never be the reason for a VERDICT: FAIL. Only BLOCKERs block.

How the NOTE limit composes with the round-2+ rule above. These are two separate rules and they never apply to the same NOTEs:

Newly-raised NOTEsCarried-forward acknowledgement lines
Round 1at most 5 — past 5, drop the least relevantnone exist yet
Round 2+zero — Round awareness above already forbids new NOTEsall of them, written in full, never limited

So the limit of 5 governs newly-raised NOTEs only. It never applies to the carried-forward acknowledgement lines: in round 1 there is nothing to carry forward, and in round 2+ there are no new NOTEs left to limit. Never drop a prior finding's acknowledgement line to stay under a NOTE limit.


VERDICT Contract

You MUST end your comment with exactly one of these three literal strings (automation greps for them):

  • VERDICT: PASS
  • VERDICT: PASS WITH NOTES
  • VERDICT: FAIL

Mapping:

FindingsVerdict
Any BLOCKERVERDICT: FAIL
Only NOTEs (no BLOCKER)VERDICT: PASS WITH NOTES
NothingVERDICT: PASS

Do NOT invent other verdicts. The verdict is advisory: it informs the ship decision (the human in review-chorus, or the agent in yolo-chorus); it does not by itself change the Idea's status.


Output Format (Required)

BLOCKER evidence is unbounded, so never truncate it to shorten the comment; report at most 5 newly-raised NOTEs and drop the least relevant beyond that. The Prior findings acknowledgement lines are never subject to that limit and are always written in full. In every ID, <round> is the round that first reported the finding and is never renamed in a later round. No preamble, no trailing summary paragraph.

### Code Review — Idea <short title> (Round N)

**Scope reviewed:** <commits / proposal changes you inferred>

**Prior findings:** (round 2+ only — omit this block in round 1)
- B1-<slug>: fixed — `<what you re-ran or re-read>` → <result observed>
- B1-<other-slug>: still-open — `<what you re-ran or re-read>` → <problem still present>
- B2-<slug>: not-verifiable — <why you could not check it this round>
- N1-<slug>: still-open
**PASS (N):** integration, architecture, security, regression, coverage, ...

**NOTE (M):**
- N<round>-<slug>: [one-line description]

**BLOCKER (K):**
### B<round>-<slug>
**Command run:** [exact command executed]
**Output observed:** [actual output — copy-paste, not paraphrased]
**Evidence:** [specific finding with file paths, line numbers]
**Expected:** [what the feature requires]
**Actual:** [what happened]

VERDICT: PASS

(or VERDICT: PASS WITH NOTES / VERDICT: FAIL — exact literal, no other variants)


Posting Results

Post the full review as a single comment on the Idea:

chorus_add_comment({
  targetType: "idea",
  targetUuid: "<idea-uuid>",
  content: "<your review>"
})

On FAIL, remain read-only. The orchestrator, not the reviewer, invokes Quick Dev to create new fix tasks on the original approved proposal; it never reopens completed tasks or applies untracked fixes. It groups related small BLOCKERs by default and splits only materially large or independently testable work. Every fix task must pass AC self-check, independent task review, and admin verification. You are re-run only after all fix tasks are successfully done; a failed or cancelled fix stops the loop and escalates. The configured maximum review rounds remains authoritative.


Next

  • The orchestrator reads your VERDICT: PASS / PASS WITH NOTES → ship; FAIL → add fix tasks and re-run. See review-chorus and yolo-chorus skills.
  • For the developer workflow (what produced the code), see develop-chorus skill.
  • For platform overview and shared tools, see chorus skill.

© Chorus-AIDLC, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in public/skill/code-reviewer-chorus of Chorus-AIDLC/Chorus.

Open the folder on GitHubat commit 4754822

Compare with similar skills

Code Reviewer Chorus next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Code Reviewer Chorus compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Code Reviewer Chorus this skillChorus-AIDLC/Chorus1.2k—~4.6kAutomated safety check: PassAGPL-3.0
Mole Bug Patternstw93/Mole70k—~2kAutomated safety check: PassGPL-3.0
@pierre/diffs Code Renderingpierrecomputer/pierre6.3k2 repos~803Automated safety check: PassApache-2.0
Verdaccio PR Reviewverdaccio/verdaccio18k—~1.7kAutomated safety check: PassMIT
Review Codepnpm/pnpm37k—~648Automated safety check: PassMIT
ArchitectureJanDeDobbeleer/oh-my-posh24k—~1.5kAutomated safety check: PassMIT

Similar skills

  • A catalog of recurring bug shapes in the Mole Mac cleaner, used to review safety-sensitive diffs for deletion safety, unbounded commands, shell traps and weak tests.

    70k GitHub stars~2k tokensUpdated today
    DevelopmentAuto-check passed
  • @pierre/diffs Code Rendering

    pierrecomputer/pierre

    Guides an agent through using @pierre/diffs to render syntax-highlighted files and diffs, and to build editing and review surfaces in React or plain JavaScript.

    6.3k GitHub starsUsed in 2 repos~803 tokens
    DevelopmentAuto-check passed
  • Verdaccio PR Review

    verdaccio/verdaccio

    Reviews an existing verdaccio/verdaccio pull request end to end, verifies each finding and reports whether it is mergeable, optionally fixing it on the PR branch.

    18k GitHub stars~1.7k tokensUpdated today
    DevelopmentAuto-check passed
  • Review Code

    pnpm/pnpm

    Review a pnpm diff or pull request against the repository review guide and product conventions, verify findings, and report actionable issues.

    37k GitHub stars~648 tokensUpdated today
    DevelopmentAuto-check passed
  • Architecture

    JanDeDobbeleer/oh-my-posh

    Cross-language architecture and clean-code principles for this project: Clean Code, Object Calisthenics, SOLID, guard clauses, hot-path cost, and the code review checklist.

    24k GitHub stars~1.5k tokensUpdated today
    DevelopmentAuto-check passed
  • Cursor Composer Task Delegate

    Chachamaru127/claude-code-harness

    Hands one implementation task to Cursor Composer in an isolated git worktree, then reviews its diff and cherry-picks the result into the main branch.

    3.2k GitHub stars~4.4k tokensUpdated 4 days ago
    DevelopmentAuto-check: notes

More from Chorus-AIDLC/Chorus

All 64 skills in this repo
  • E2E Verification

    Chorus-AIDLC/Chorus

    A skill your agent uses when manually verifying a Chorus frontend change in a real browser — finding local login credentials, driving the running dev server with the Playwright MCP, logging in…

    1.2k GitHub stars~1.5k tokensUpdated today
    Auto-check: notes
  • Blog

    Chorus-AIDLC/Chorus

    Write release blog posts for Chorus — problem-first narrative, bilingual (zh/en), following the project's editorial style.

    1.2k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Brainstorm

    Chorus-AIDLC/Chorus

    Optional divergent-then-convergent dialogue for fuzzy ideas on Hermes.

    1.2k GitHub stars~3.6k tokensUpdated today
    Auto-check passed
  • Brainstorm

    Chorus-AIDLC/Chorus

    Optional divergent-then-convergent dialogue for fuzzy ideas.

    1.2k GitHub stars~2.5k tokensUpdated today
    Auto-check passed
  • Brainstorm Chorus

    Chorus-AIDLC/Chorus

    Optional divergent-then-convergent dialogue for fuzzy ideas.

    1.2k GitHub stars~2.5k tokensUpdated today
    Auto-check passed
  • Chorus Brainstorm

    Chorus-AIDLC/Chorus

    Optional divergent-then-convergent dialogue for fuzzy ideas.

    1.2k GitHub stars~2.3k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Code Reviewer Chorus

What does Code Reviewer Chorus do?

Read-only adversarial Chorus code-review gateway — independently reviews an Idea's aggregate code change (the whole feature across all its tasks) and posts a single structured VERDICT comment on the…. Code Reviewer Chorus is an agent skill from Chorus-AIDLC/Chorus. Read-only adversarial Chorus code-review gateway — independently reviews an Idea's aggregate code change (the whole feature across all its tasks) and posts a single structured VERDICT comment on the Idea.

When should I use Code Reviewer Chorus?

Code Reviewer Chorus fits situations like: tasks that involve Code review.

How do I install Code Reviewer Chorus in Claude Code?

Run `npx skills add Chorus-AIDLC/Chorus --skill code-reviewer-chorus -a claude-code`. Or copy the skill folder (public/skill/code-reviewer-chorus in Chorus-AIDLC/Chorus) into .claude/skills/code-reviewer-chorus in your project. Claude Code loads it when a task matches its description.

How do I install Code Reviewer Chorus in Codex?

Run `npx skills add Chorus-AIDLC/Chorus --skill code-reviewer-chorus -a codex`. Or copy the skill folder (public/skill/code-reviewer-chorus in Chorus-AIDLC/Chorus) into .agents/skills/code-reviewer-chorus in your project. Codex loads it when a task matches its description.

Can I use Code Reviewer Chorus in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Chorus-AIDLC/Chorus --skill code-reviewer-chorus -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/code-reviewer-chorus, .gemini/skills/code-reviewer-chorus, .github/skills/code-reviewer-chorus and .opencode/skills/code-reviewer-chorus in your project.

What does Code Reviewer Chorus need to run?

Going by SKILL.md and its folder, Code Reviewer Chorus needs the command-line tools its instructions call (git, pnpm, cargo, make, npm and pip). Our summary lists: Python 3; Node.js.

Does Code Reviewer Chorus access the network?

SKILL.md contains no URLs. Its commands use git, npm and pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Code Reviewer Chorus safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Code Reviewer Chorus use?

Code Reviewer Chorus is published under the AGPL-3.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Code Reviewer Chorus use?

About 4.6k tokens (SKILL.md is roughly 19k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Code Reviewer Chorus?

Skills that share tags, products or a category with Code Reviewer Chorus: Mole Bug Patterns (tw93/Mole, 70k stars), @pierre/diffs Code Rendering (pierrecomputer/pierre, 6.3k stars), Verdaccio PR Review (verdaccio/verdaccio, 18k stars) and Review Code (pnpm/pnpm, 37k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Code Reviewer Chorus?

Chorus-AIDLC (a GitHub organization) maintains it in Chorus-AIDLC/Chorus, which has 1,191 GitHub stars. The repository holds 64 skills in this directory. The repository was last updated on October 9, 2026.

Source: Chorus-AIDLC/Chorus on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.