옵션
집 Skill 코드 검토 ce-code-review

버그, 회귀, 테스트, 표준에 대한 구조화된 코드 검토를 수행합니다. PR 전 또는 검토 요청 시 사용하며, 대화형 모드는 로컬에서 수정할 수 있고, mode:agent 모드는 파이프라인 호출자에게 보고만 제공합니다.

...모든 것을 확장하십시오
10
업데이트 된 시간 2026년 8월 26일

ce-code-review 소개

동적으로 선택된 리뷰어 페르소나를 사용하여 코드 변경 사항을 평가하는 구조화된 코드 리뷰 스킬입니다. 병렬 하위 에이전트를 생성하여 구조화된 JSON을 반환한 후, 그들의 발견 사항을 병합하고 중복을 제거하여 단일 보고서로 통합합니다. 이 스킬은 풀 리퀘스트(Pull Request) 생성 전, 반복적 구현 중 작업 완료 후, 또는 변경 사항에 대한 피드백이 필요할 때 실행되도록 설계되었으며, 독립적으로 호출하거나 더 큰 워크플로우 내에 내장하여 사용할 수 있습니다.

두 가지 운영 모드가 동일한 리뷰 파이프라인을 공유합니다. 기본 대화형 모드에서는 파이프 구분자(|)로 구분된 발견 사항 테이블과 실행 가능한 발견 사항 요약이 포함된 Markdown 보고서를 생성하며, 사전 리뷰 작업 트리가 깨끗한 경우 안전하고 검증된 수정 사항을 적용하고 커밋합니다. mode:agent 모드(구식 별칭으로 mode:headless 사용 가능)에서는 보고서 전용 모드로 동작하며, 프로그래밍 방식 호출자 및 크로스 하니스(cross-harness) 호출자를 위한 결정론적 계약으로 단일 JSON 객체를 반환하고 작업 트리를 절대 수정하지 않으며, 적용 여부는 호출자에게 맡깁니다. 핵심 운영 원칙은 '로컬에서 적용; 절대 푸시하지 않음'으로, 어떤 모드에서도 푸시하거나 PR을 열거나 티켓을 생성하지 않습니다. 또한 차단성 프롬프트를 피하고 브랜치를 전환하지도 않습니다. PR 번호, URL 또는 브랜치 이름을 전달하는 것은 작업 트리를 수정할 권한이 아닌 리뷰 범위만 선택합니다. base:, plan:, grouping:auto/off/always 등의 토큰을 위해 인수가 파싱되며, 리뷰어 배포 전에 실행을 중단시키는 명시적인 충돌 규칙이 적용됩니다.

발견 사항의 심각도는 P0-P3 척도를 사용하여 긴급성을 나타내며, autofix_class(gated_auto, manual, advisory)와 owner 필드는 적용 권한을 부여하는 것이 아니라 후속 조치의 형태를 설명합니다. 합성(Synthesis) 단계는 최종 경로를 결정하며, 의견이 일치하지 않을 경우 더 보수적인 경로를 선택하고 safe_auto와 같은 안전하지 않은 클래스를 거부합니다. 빠른 리뷰를 위한 쇼트서킷(short-circuit)은 하니스의 기본 코드 리뷰로 위임하여 빠르고 가벼운 리뷰를 수행할 수 있지만, mode:agent는 항상 전체 다중 에이전트 파이프라인을 실행하고 JSON을 반환합니다.

FAQ

기본 모드와 mode:agent의 차이점은 무엇입니까?

기본 대화형 모드는 Markdown 보고서를 반환하고 안전하며 검증된 수정 사항을 적용합니다(작업 트리가 깨끗한 경우 이를 커밋). mode:agent는 보고서 전용 모드입니다. 단일 JSON 객체를 반환하며 작업 트리를 절대 수정하지 않으며, 적용 여부는 호출자에게 맡깁니다.

이 스킬은 내 변경 사항을 푸시하거나 풀 리퀘스트를 열거나 합니까?

아니요. 핵심 원칙은 '로컬에서 적용; 절대 푸시하지 않음'입니다. 어떤 모드에서도 푸시하거나 PR을 열거나 티켓을 생성하지 않습니다. 푸시는 사용자가 소유하는 외부 단계이기 때문입니다.

PR 번호나 브랜치 이름을 전달하면 해당 브랜치를 체크아웃합니까?

아니요. PR 번호, URL 또는 브랜치 이름을 전달하는 것은 리뷰 범위만 선택합니다. gh pr checkout, git checkout 또는 git switch를 실행하지 않습니다. 브랜치에서 로컬 작업을 리뷰하려면 직접 체크아웃해야 합니다.

심각도 척도는 무엇을 의미하며 자동 수정과 어떻게 관련됩니까?

심각도는 P0(중요, 병합 전 반드시 수정 필요)부터 P3(경미, 사용자 재량)까지 이어지며 긴급성에 대한 답변을 제공합니다. autofix_class 및 owner 필드는 적용 권한이 아닌 후속 조치의 형태를 설명하며, 적용 결정은 합성 단계에서 이루어지는 판단입니다.

전체 다중 에이전트 파이프라인 대신 빠른 리뷰를 받을 수 있습니까?

네. 인수가 빠르고, 빠르거나, 가벼운 리뷰를 나타내며 mode:agent가 활성화되지 않은 경우, 하니스의 기본 코드 리뷰를 실행하고 종료합니다. mode:agent는 항상 이 쇼트서킷을 우회하여 전체 파이프라인을 실행합니다.

모든 파일

24 filesreferences/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

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.

모든 파일

0개 파일

ce-code-review 설치

스킬 파일을 다운로드하여 .claude/skills/ 디렉토리에 추출하세요.

ZIP 다운로드

저장소를 클론하고 스킬 파일을 프로젝트에 복사하세요.

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

복사 복사
빠른 설정: 스킬 폴더를 .claude/skills/에 복사하면 Claude가 자동으로 감지하고 사용합니다

관련 스킬

code-simplify
업데이트 된 시간 2026년 7월 2일
requesting-code-review
업데이트 된 시간 2026년 6월 29일
Git Commit Helper
업데이트 된 시간 2026년 6월 29일
commit-standards
업데이트 된 시간 2026년 6월 29일
OR