Review Assist

Convierte la sesión de un agente de codificación de IA en un Documento de Intención revisable: el problema, las suposiciones, las alternativas rechazadas y un recorrido anclado del diff.

Documentación

Review Assist

Revisa código escrito por IA tan rápido como los agentes lo escriben.
Convierte la sesión de un agente de codificación en una revisión de pull request guiada y verificable.

Instalar · Actualizar · Desinstalar · Cómo funciona · Arquitectura · Desarrollo · Contribuir

Guided review walkthrough: overview, assumptions, anchored diff stops, verification


Los agentes de IA escriben código más rápido de lo que cualquiera puede leer los diffs — y el contexto que hace que la revisión sea rápida (qué se pidió, qué se asumió, qué se intentó y se abandonó, qué se probó) se descarta en el momento en que se abre el PR. Review Assist lo captura en la fuente: la sesión de un agente se convierte en un Documento de Intención, un validador demuestra que realmente cubre el diff, y una GitHub App lo muestra como una revisión guiada sobre el pull request.

Totalmente de código abierto, auto-alojable, y no almacena nada de tu código. Tu transcripción de sesión nunca sale de tu máquina. La aplicación no tiene base de datos: lee el documento y el diff de GitHub por solicitud con el token del propio revisor, los mantiene en memoria durante la duración de esa solicitud, y los sirve private, no-store a un visor que se renderiza en el navegador del revisor. No se escribe nada, pero tu código sí pasa por el servicio en tránsito — si eso te importa, auto-alójalo.

Instalar

Dos instalaciones únicas: el servidor MCP en el lado del desarrollador, la GitHub App en el lado del repositorio.

1. Registra el servidor MCP con tu agente (para que pueda crear Documentos de Intención). Claude Code y Codex mantienen configuraciones separadas, así que registrarlo con uno no lo registra con el otro — ejecuta las secciones que uses.

Claude Code

claude mcp add -s user review-assist -- npx -y review-assist-mcp

La CLI y la extensión de VS Code comparten esta única configuración -s user — pero solo cuando la extensión hereda el PATH de tu shell (lanzada vía code ., no desde el Dock). Lanzada desde el Dock, las apps GUI en macOS obtienen solo /usr/bin:/bin:/usr/sbin:/sbin, así que npx no se encuentra y el servidor muestra no conectado sin error. Registra sin npx en su lugar:

npm install -g review-assist-mcp
claude mcp add -s user review-assist -- "$(which node)" "$(npm root -g)/review-assist-mcp/dist/index.js"

Codex

codex mcp add review-assist -- npx -y review-assist-mcp

Compartido con la extensión del IDE (~/.codex/config.toml) bajo la misma advertencia de code . que arriba. VS Code lanzado desde el Dock:

npm install -g review-assist-mcp
codex mcp add review-assist -- "$(which node)" "$(npm root -g)/review-assist-mcp/dist/index.js"

(Omita npm install -g si ya lo ejecutaste para Claude Code — una instalación global sirve para ambas extensiones; cada una aún necesita su propio mcp add.)

Aplicación de escritorio de Claude — un clic, sin terminal: descarga el .mcpb y ábrelo.

2. Instala la GitHub App →

Un clic. Solo lectura de código + comentarios de PR, sin archivos de workflow — añade la verificación automática en cada PR, el comentario de resumen y el visor de revisión guiada.

Actualizar

Solo relevante si usaste la forma de instalación global de arriba (npm install -g) — npx -y resuelve a la última versión en cada lanzamiento por sí mismo.

npm install -g review-assist-mcp@latest

Reinicia tu agente después para que reinicie el proceso del servidor.

Desinstalar

claude mcp remove -s user review-assist    # or: codex mcp remove review-assist
npm uninstall -g review-assist-mcp         # only if you used the global-install form
rm -rf ~/.review-assist                    # consent decisions and local run state

Cómo funciona

How it works, in three steps. 1 Code, on your machine: your agent writes the change and an Intent Document that explains it — the ask, the assumptions, a tour of the diff — committed alongside the code; the transcript never leaves the machine. 2 Validate, on GitHub with no code stored: a GitHub App proves the document covers the diff (schema, staleness, cross-refs, redaction), reports coverage such as 5 of 5 changes explained, and posts an Open guided review link on the pull request. 3 Review, in the reviewer's browser: check the assumptions first — flagging one posts it to the PR discussion — then take the anchored tour and approve or request changes; the verdict posts to the pull request as you, and merging stays on GitHub.

Enseñándole las preguntas de tu repositorio

El revisor hace un conjunto base que es el mismo en todas partes. Lo que es cierto solo en tu repositorio va en una carpeta .reviewer/ en su raíz: un invariante que un incidente pasado compró, un cambio que debe viajar con su migración, un directorio cuyo cambio nunca es incidental.

.reviewer/
  README.md        # the house rules
  verification.md  # what "verified" means here, per area

Markdown, comprometido con el código, revisado como cualquier otra cosa. El revisor lee la carpeta después del diff y antes de su primera pregunta, así que lo que escribas allí llega en la primera ronda. Añade preguntas y afina las que el diff provocó; no puede añadir un campo de esquema, relajar una verificación o excusar la entrevista. La mayoría de los repositorios no necesitan ninguna, y una carpeta ausente no cambia nada. Este repositorio tiene la suya propia.

Arquitectura

Container-level topology: three systems and two external actors. The developer machine runs the coding agent and the MCP server and writes the Intent Document, with the transcript staying local. GitHub holds the pull request, the committed document, the automation output and the reviewer's comments and verdict. The Review Assist Application receives pull_request events on its webhook, posts the check run, summary and PR-description block as its bot identity, and serves the guided review, reading and writing GitHub as the signed-in reviewer.

Tres sistemas y dos actores externos. Tu máquina produce el cambio y su Documento de Intención; la transcripción de la sesión nunca la abandona. GitHub mantiene el pull request y cada pieza duradera del estado de revisión. La aplicación reacciona a eventos pull_request y publica la verificación como su identidad de bot, luego sirve la revisión guiada, leyendo y escribiendo GitHub como el revisor autenticado.

La destilación de dos agentes — autor y revisor como contextos separados con roles bloqueados, y las herramientas a las que cada uno puede acceder — es una vista a nivel de componente, mantenida en docs/ARCHITECTURE.md junto con la lista completa de rutas.

Desarrollo

RutaComponente
packages/schemaEl formato — JSON Schema (borrador 2020-12) + tipos TypeScript
packages/validatorCLI + biblioteca review-assist: las cinco verificaciones y el renderizador Markdown
packages/mcp-serverServidor MCP que impulsa la destilación y controla los envíos
apps/github-app/workerCloudflare Worker sin estado: intermediario OAuth + proxy delgado de GitHub
apps/github-app/viewerVisor de revisión guiada del lado del cliente
SPEC.mdEl diseño congelado: las seis secciones del documento y las cinco verificaciones
npm install
npm run build

# Validate and render the example Intent Document
node packages/validator/dist/cli.js validate packages/schema/src/example.json
node packages/validator/dist/cli.js render packages/schema/src/example.json

# Preview the guided viewer with mock data → http://localhost:8787/#acme/checkout-service/pull/42
node scripts/mockserver.mjs

# Tests
npx vitest run

Arquitectura e internos: docs/ARCHITECTURE.md.

Contribuir

Las issues y los pull requests son bienvenidos. Si la revisión guiada se lee mal en uno de tus pull requests, abre una issue con el Documento de Intención y el diff que lo produjo — ese par suele ser suficiente para reproducirlo. Las propuestas para cambiar el formato en sí valen la pena plantearlas como issue primero, ya que SPEC.md está deliberadamente congelado y cualquier cambio se propaga por el validador, el visor y cada documento ya comprometido.

Antes de abrir un pull request, ejecuta las verificaciones bajo Desarrollo; CI ejecuta la misma compilación, verificación de tipos, pruebas y validación de ejemplos.

Licencia

Apache-2.0.