opción

Revisión estructurada del código para detectar errores, regresiones, pruebas y estándares. Utilizar antes de los PRs o cuando se solicite una revisión; el modo interactivo puede corregir localmente, mientras que el modo:agent solo informa para los llamadores de la tubería.

...Expandir todo
10
Tiempo actualizado 26 de agosto de 2026

Acerca de ce-code-review

Una habilidad de revisión de código estructurada que evalúa los cambios en el código utilizando personas de revisores seleccionadas dinámicamente. Genera subagentes en paralelo que devuelven JSON estructurado, y luego fusiona y elimina duplicados de sus hallazgos en un único informe. Está diseñado para ejecutarse antes de crear una solicitud de extracción (pull request), después de finalizar una tarea durante la implementación iterativa, o siempre que se necesite retroalimentación sobre un cambio, y puede invocarse de forma independiente o integrarse dentro de un flujo de trabajo más amplio.

Dos modos de operación comparten la misma canalización de revisión. En el modo interactivo predeterminado, produce un informe en Markdown con tablas de hallazgos delimitadas por tuberías y un resumen de hallazgos accionables, y aplica correcciones seguras y verificadas, comprometiéndolas cuando el árbol de trabajo previo a la revisión estaba limpio. En el modo:agent (con mode:headless como un alias obsoleto) es solo de informes: devuelve un único objeto JSON como un contrato determinista para programadores y llamadores de múltiples plataformas, y nunca muta el árbol de trabajo, dejando que el llamador lo aplique. Un principio operativo fundamental es 'aplicar localmente; nunca enviar' — nunca envía, abre solicitudes de extracción ni registra tickets en ningún modo. También evita solicitudes de bloqueo y nunca cambia de rama; pasar un número de solicitud de extracción, una URL o un nombre de rama solo selecciona el alcance de la revisión, no el permiso para mutar el árbol. Los argumentos se analizan en busca de tokens como base:, plan: y grouping:auto/off/always, con reglas de conflicto explícitas que detienen la ejecución antes de enviar a los revisores.

Los hallazgos utilizan una escala de severidad P0-P3 que responde a la urgencia, mientras que autofix_class (gated_auto, manual, advisory) y owner describen la forma del seguimiento en lugar de otorgar permiso para aplicar. La síntesis es responsable de la ruta final, elige la ruta más conservadora en caso de desacuerdo y rechaza clases inseguras como safe_auto. Una revisión rápida puede delegar en la revisión integrada de la plataforma para obtener revisiones rápidas y ligeras, pero mode:agent siempre ejecuta la canalización completa de múltiples agentes y devuelve JSON.

Preguntas frecuentes

¿Cuál es la diferencia entre el modo predeterminado y mode:agent?

El modo interactivo predeterminado devuelve un informe en Markdown y aplica correcciones seguras y verificadas (comprometiéndolas cuando el árbol estaba limpio). mode:agent es solo de informes: devuelve un único objeto JSON y nunca muta el árbol de trabajo, dejando que el llamador lo aplique.

¿La habilidad envía mis cambios o abre una solicitud de extracción?

No. Un principio fundamental es 'aplicar localmente; nunca enviar' — nunca envía, abre solicitudes de extracción ni registra tickets en ningún modo, porque el envío es el paso externo que corresponde al usuario.

Si paso un número de solicitud de extracción o un nombre de rama, ¿extraerá esa rama?

No. Pasar un número de solicitud de extracción, una URL o un nombre de rama solo selecciona el alcance de la revisión. Nunca ejecuta gh pr checkout, git checkout ni git switch; para revisar el trabajo local en una rama, debes extraerla tú mismo.

¿Qué significa la escala de severidad y cómo se relaciona con las correcciones automáticas?

Las severidades van desde P0 (crítico, debe corregirse antes de la fusión) hasta P3 (menor, discreción del usuario) y responden a la urgencia. Los campos autofix_class y owner describen la forma del seguimiento, no el permiso para aplicar; la decisión de aplicar es un juicio realizado durante la síntesis.

¿Puedo obtener una revisión rápida en lugar de la canalización completa de múltiples agentes?

Sí, cuando los argumentos indican una revisión rápida, ligera o ligera y mode:agent no está activo, ejecuta la revisión de código integrada de la plataforma y se detiene. mode:agent siempre omite este atajo y ejecuta la canalización completa.

Todos los archivos

24 archivosreferences/personas/julik-frontend-races-reviewer.md3.2 KBViewreferences/personas/maintainability-reviewer.md4.8 KBViewreferences/personas/previous-comments-reviewer.md3.3 KBViewreferences/personas/reliability-reviewer.md3.3 KBViewreferences/personas/swift-ios-reviewer.md10.5 KBViewreferences/review-output-template.md12.6 KBViewreferences/validator-template.md5.1 KBViewreferences/action-class-rubric.md1.5 KBViewreferences/findings-schema.json8.4 KBViewreferences/personas/adversarial-reviewer.md7.8 KBViewreferences/personas/api-contract-reviewer.md3.3 KBViewreferences/personas/data-migration-reviewer.md4.8 KBViewreferences/diff-scope.md2.4 KBViewreferences/persona-catalog.md5.4 KBViewreferences/personas/agent-native-reviewer.md9.1 KBViewreferences/personas/correctness-reviewer.md3.5 KBViewreferences/personas/deployment-verification-agent.md4.9 KBViewreferences/personas/learnings-researcher.md16.1 KBViewreferences/personas/performance-reviewer.md3.5 KBViewreferences/personas/project-standards-reviewer.md6.6 KBViewreferences/personas/security-reviewer.md3.7 KBViewreferences/personas/testing-reviewer.md3.8 KBViewreferences/subagent-template.md20.5 KBViewSKILL.md67.0 KBView

Ver en GitHub

Setup

Run this once at the start of this invocation, before any subagent dispatch, and follow the directives it prints — except where one conflicts with this skill's own rules on asking the user questions, whether those rules are scoped to a non-interactive mode or apply in every mode, in which case this skill's rules win and no blocking question is asked. Run the fence exactly as written, as its own command: do not pipe or filter it (no head, tail, or grep), do not truncate its output, and do not bundle it into a batch with other commands. Its output opens with a === skill context header and ends with CE_CONTEXT_END; if you received one of those lines without the other, the output was truncated — rerun the fence verbatim once. That recovery is the only rerun: otherwise do not rerun it within the same invocation; a later invocation of this or any other skill runs its own. If no Node runtime is available the skill proceeds unchanged.

SKILL_DIR="<absolute path of the directory containing the SKILL.md you just read>";NODE="$(for c in node nodejs; do command -v "$c" >/dev/null 2>&1 && "$c" -e '' >/dev/null 2>&1 && { echo "$c"; break; }; done)";if [ -n "$NODE" ]; then"$NODE" "$SKILL_DIR/scripts/context.mjs" || echo "context script failed; continue with the skill's normal behavior";elseecho "no Node runtime; continue with the skill's normal behavior";fi

Artifact Root

Resolve the CE artifact root <root> before composing any artifact path.

  • Read docs_root from <repo-root>/.compound-engineering/config.yaml only (<repo-root> = git rev-parse --show-toplevel). Do not read it from config.local.yaml. Unset -> <root> is docs, exactly as before.
  • Validate a set value: a repo-relative directory whose real, symlink-resolved path stays inside the repo and is neither the repo root nor under .git/. Otherwise stop with an error naming docs_root and the value -- never fall back to docs.
  • Use <root> as the sole artifact location: create it if absent, compose each path as <root>/<subdir> with this skill's own subdirectory, and never also read docs.

Execution spine

Follow these steps in order; the references supply the detail but never change the order. Each reference named below is a required read for its step: load it before doing that step's work.

  1. Read references/modes-and-output.md first. It settles what the arguments mean, which argument conflicts stop the run before any reviewer is dispatched, whether the quick-review short-circuit applies, and what this invocation returns.
  2. Stage 1. Read references/scope.md and resolve the reviewed diff, the scope mode, and the deterministic scope signals.
  3. Stage 2. Read references/intent-and-plan.md, write the intent summary every reviewer receives, and discover the plan Stage 6 verifies requirements against.
  4. Stage 3. Read references/persona-catalog.md and references/select-and-route.md, then select the risk-driven reviewer roster, discover applicable standards paths, and bind the adversarial route.
  5. Stage 3d. When adversarial is selected for a local reviewed tree, start and persist the sanctioned cross-model job that references/cross-model-review.md defines, before any local persona dispatch. Invoking this skill is itself the authorization for its configured or allowlisted peer route, once you have made the required disclosure of the recipient and of the code that leaves the machine. Do not ask the user to confirm a second time, and do not skip the peer because the user did not repeat that authorization. An explicit user prohibition on external review overrides it, as does a checkout that sets cross_model_review_mode: off with no live opt-in; both are resolved before you bind a route. A started peer replaces the local adversarial persona at this stage, and only a real failure to scope, allowlist, reach, authenticate, or start it leaves the local fallback in the roster; a later stage may still restore the local reviewer under the conditions that reference states.
  6. Stage 4. Read references/dispatch-reviewers.md. Dispatch the materialized local roster as one foreground concurrent batch sized to the host's active-agent cap, and collect every reviewer before synthesis however this host returns them: one blocking wait where same-message calls run concurrently, repeated non-polling collection waits where the subagent primitive is asynchronous, and serial dispatch where neither applies. Detaching local review into a polled background job is forbidden. The cross-model peer is the only detached work, and it may overlap this batch.
  7. Stages 5 and 6. Once the reviewer returns are ready, read references/finish-review.md. Fold in the peer once, run the documented findings mechanics, and run every validator the reference selects; only then return the report. Never synthesize directly from raw reviewer artifacts. In the multi-agent path, emit only this skill's report: do not also invoke a harness-native findings or reporting tool, which belongs to the quick-review short-circuit alone.

Operating principles

  • Report-only by default; never push. A bare ce-code-review invocation produces findings and does not apply them. Entering the apply stage requires apply:local, or an explicit user request in the invoking prompt to apply or fix this review's findings; a deprecated mode:autofix token is neither. mode:agent never mutates the tree, even when nested inside a workflow that later applies findings. Never push, open PRs, or file tickets in any mode.
  • No blocking prompts. Never use AskUserQuestion, request_user_input, ask_user, or other blocking question tools. Infer intent, plan, and scope from explicit tokens, git state, PR metadata, and conversation. Note uncertainty in Coverage or the verdict — do not stop to ask.
  • Explicit mutations only. Never run gh pr checkout, git checkout, git switch, or similar branch-switch commands. Passing a PR number, URL, or branch name selects review scope, not permission to mutate the working tree. Uncommitted work can only be reviewed from the checkout that holds it, so to review it on a feature branch, stay on that branch (or check it out yourself) and pass base: or no target.
  • Report outcomes, not machinery. What you show the user is about the review: what is being examined, which coverage is included and the one-line reason for each conditional lens, the independent cross-model pass, and the findings. Name what the user would recognize — a PR number, a reviewer's concern, a peer model — rather than this skill's plumbing, whose internal labels, dispatch bookkeeping, and setup narration stay out of user-facing text. Never claim more about the peer than its receipt attests. This governs what you surface and suppress, not the wording; use your own voice.

Task Visibility

For the multi-agent path, once the review scope is resolved, use the platform's task-tracking capability when available to show a short user-facing view derived from the execution spine. Track review outcomes, not individual personas, setup mechanics, or tool calls; add conditional work only when its gate fires, and update the view at meaningful transitions. If no task-tracking capability is available, continue with the normal progress and final report without simulating a task list in chat.

Todos los archivos

0 archivos

Instalar ce-code-review

Descarga y extrae los archivos de habilidades en tu directorio .claude/skills/.

Descargar ZIP

Clona el repositorio y copia los archivos de la habilidad a tu proyecto.

git clone https://github.com/EveryInc/compound-engineering-plugin/blob/main/skills/ce-code-review/SKILL.md # Copy SKILL.md to your .claude/skills/ directory

Copiar Copiar
Configuración rápida: Copia la carpeta de la habilidad a .claude/skills/Claude detectará y utilizará automáticamente la habilidad

Habilidades relacionadas

code-simplify
Tiempo actualizado 2 de julio de 2026
requesting-code-review
Tiempo actualizado 29 de junio de 2026
Git Commit Helper
Tiempo actualizado 29 de junio de 2026
commit-standards
Tiempo actualizado 29 de junio de 2026
OR