---
name: mcp-code-reviewer
description: Review code snippets, files, commits, diffs, branches, or pull requests with priority on local project rules, readability, maintainability, correctness, robustness, performance, test coverage, and available functional context. Use when the user asks for code review, quality assessment, consistency against project conventions, risk/regression analysis, or actionable findings with fix guidance for an agent.
---

# MCP Code Reviewer

Skill specialistico per review del codice orientata al progetto corrente. Non e' un intake analyst universale e non sostituisce l'orchestrazione multi-step.

## Quando usarlo

Usalo quando la richiesta e' principalmente una review di:

- snippet inline;
- file singolo o lista di file;
- commit o diff tra ref;
- branch intero;
- PR (se disponibile nel contesto).

Non usarlo come skill primario quando serve prima una ricostruzione multi-sorgente ampia (ticket + docs + allegati + commit distribuiti): in quel caso escalare a `mcp-technical-analyst`.

## Scope e input supportati

Per ogni review chiarisci sempre:

1. unita' di review (snippet/file/commit/diff/branch/PR);
2. fonti consultate;
3. limiti del contesto rimasti aperti.

## Ordine di priorita' delle fonti

1. `AGENTS.md` locale del progetto corrente;
2. file referenziati da `AGENTS.md`;
3. documentazione locale rilevante;
4. path/file esplicitamente indicati dall'utente;
5. documentazione funzionale via MCP;
6. ticket o issue (es. Mantis) se noti;
7. diff/commit/history via MCP Git;
8. skill specialistiche di dominio quando necessarie.

Regola: non formulare giudizi forti di coerenza funzionale senza fonte verificabile. Se la fonte e' assente o ambigua, limitare la review al tecnico oppure chiedere contesto minimo; per correlazioni estese escalare a `mcp-technical-analyst`.

## Categorie finding obbligatorie

Classifica i finding (solo quelli ad alto valore) in:

- `project_rule`
- `functional_consistency`
- `correctness`
- `maintainability`
- `readability`
- `performance`
- `test_gap`
- `risk_or_regression`

## Modalita' output

### Modalita' A (default): output umano

Usa quando l'utente chiede review/assessment.

Output minimo:

- esito sintetico;
- punti positivi;
- finding principali ordinati per severita';
- evidenze e impatto;
- suggerimenti pratici;
- quick wins e test consigliati;
- se applicabile: regole progetto;
- se applicabile: coerenza funzionale (solo con fonti verificabili).

### Modalita' B: output strutturato per agente/fix

Usa quando il prompt implica azione (es. "analizza e correggi", "reviewa e proponi fix").

Output minimo:

- scope review;
- sorgenti consultate;
- findings con severita' e confidenza;
- file/aree target;
- vincoli da rispettare;
- piano fix/refactor piccoli e reviewable;
- validazioni/test richiesti.

## Boundary ed escalation

Escalare a `mcp-technical-analyst` quando:

- la review dipende da intake multi-sorgente sostanziale;
- serve correlazione estesa tra ticket/docs/allegati/commit;
- le evidenze sono frammentate e non risolvibili con discovery locale mirata.

Escalare a `mcp-master-orchestrator` quando:

- il task richiede piu' fasi dipendenti (review + implementazione + test + handoff);
- serve coordinamento tra skill multiple/subtask.

## Regole operative anti-noise

La skill deve:

- leggere prima di suggerire modifiche;
- separare fatti osservati, inferenze, dubbi aperti e raccomandazioni;
- preferire convenzioni locali a best practice generiche;
- proporre fix concreti solo se migliorano il rischio/reviewability;
- segnalare test mancanti quando servono.

La skill non deve:

- fare review cosmetiche prolisse;
- imporre refactor estesi fuori scope;
- inventare requisiti funzionali assenti;
- comportarsi come semplice linter in linguaggio naturale.

## Riferimenti

- [references/project-rules-discovery.md](references/project-rules-discovery.md)
- [references/review-workflow.md](references/review-workflow.md)
- [references/functional-consistency.md](references/functional-consistency.md)
- [references/evidence-and-severity.md](references/evidence-and-severity.md)
- [references/output-modes.md](references/output-modes.md)
- [references/routing-and-escalation.md](references/routing-and-escalation.md)
