Skip to content
cccskills
FreePublished on GitHubEnglish overview

deep-review

Review pull requests, diffs, or branches through an independent reviewer. Checks are selected for the changes and can cover logic, security, performance, compatibility, and other areas, with evidence gathered into a structured report.

OriginalShow the original description

Use for independent PR, diff or branch review; not explanations. Full multi-agent review requires an explicit deep-review request.

lobehub/lobehub83,502 stars(GitHub 83,502 + cccskills 0)

Run score Not tested

See how to install

Good for

  • Reviewing a pull request for defects
  • Checking a branch before opening a PR
  • Requesting a full multi-agent review

Overview

What it does

deep-review reviews pull requests, diffs, and branches from an independent perspective. It selects checks based on the changes and can examine logic, error handling, readability, performance, security, compatibility, and user experience. The review considers existing codebase conventions and the size of the change. An ordinary review request uses one independent reviewer and a quick checklist. An explicit request for deep-review starts a fuller review with multiple reviewers, finding verification, duplicate consolidation, and a structured report. Use it to look for problems rather than to get an explanation of the code.

When it helps

Use it before opening a pull request to catch issues, or when you want another perspective on your changes. A detailed review can be useful for changes with larger effects, such as authentication, billing, or database work.

Example requests

  • “Review this pull request and report any issues with supporting evidence.”
  • “Run a full multi-agent review of this branch.”

Notes

A detailed review requires an explicit request. This skill supports Claude Code and Codex.

This overview was written by AI (OpenAI Codex) from the public SKILL.md. Check the original below for the exact behavior.

Document check

AI checked the SKILL.md for operations that need care and for setup requirements. The score comes only from actually running the skill (hands-on test).

SafetyAre sending data, deleting files, and running commands disclosed?
BPartly lackingExplicit deep-review consent is required, but operational details are only partly supplied.
Easy setupDoes it need few tools or API keys, and are they documented?
BPartly lackingClaude Code and Codex are named, but setup instructions are absent.

Not counted in the score. Rated by AI (OpenAI Codex) as of Oct 26, 2026. Treat it as a guide and read the original before installing.

Disagree? Request a re-evaluation

Tell us which point is wrong and why. No login needed. We will check it against the SKILL.md, redo the evaluation, and show the result here.

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

Files included (31)

  • SKILL.md21.7 KB
  • references/claude-code/main.md4.7 KB
  • references/codex/main.md6.5 KB
  • references/consolidate-prompt.md1.2 KB
  • references/dimensions/ai-coding-bad-habits.md10.5 KB
  • references/dimensions/business-logic.md3.6 KB
  • references/dimensions/code-style.md2.9 KB
  • references/dimensions/compatibility.md5.8 KB
  • references/dimensions/logic.md3.6 KB
  • references/dimensions/new-feature.md7.0 KB
  • references/dimensions/observability.md7.7 KB
  • references/dimensions/performance.md4.2 KB
  • references/dimensions/release-risk.md5.5 KB
  • references/dimensions/reuse-architecture.md7.9 KB
  • references/dimensions/security.md2.6 KB
  • references/dimensions/skill-freshness.md2.0 KB
  • references/dimensions/ux.md2.3 KB
  • references/dimensions/workflow.md2.4 KB
  • references/light-review-prompt.md5.0 KB
  • references/release-risk/persisted-state.md3.8 KB
  • references/release-risk/prompt-surface.md2.4 KB
  • references/release-risk/rollout-surface.md2.8 KB
  • references/report-template.md13.5 KB
  • references/review-prompt.md9.6 KB
  • references/scoping.md7.2 KB
  • references/verification/release-risk.md1.1 KB
  • references/verification/reuse-architecture.md680 B
  • references/verify-prompt.md4.8 KB
  • scripts/validate-output.test.ts3.4 KB
  • scripts/validate-output.ts6.6 KB
  • scripts/vitest.config.ts163 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

Deep Review

Multi-dimensional code review built on independent reviewers. Review breadth comes from parallel dimension coverage; precision comes from adversarial verification and global duplicate consolidation before findings reach the report.

Core principles

Every design choice below serves one of these. When unsure how to execute a step, come back here.

  1. Anti-hallucination — reviewers need surrounding context, not only diff fragments. Deep mode verifies candidate findings through independent agents returning confirmed / false_positive / need_more_context. Light mode uses the bounded follow-up procedure below; it does not add a separate per-finding verification pipeline.
  2. Anti self-approval — an agent that just wrote the code is grading its own homework and will pass it. Both modes use an independent reviewer with a third-party stance. Light: one reviewer that is not the main agent. Deep: independent subagents per the environment manual. Never silently degrade either mode to "the main agent reviews the diff itself".
  3. Rules over model — review quality comes from fine-grained, executable dimension rules, not from a smarter model. Subagents run on balanced/fast model tiers; each dimension file tells them exactly how to check, what counts, and what does not.
  4. Calibrate to codebase and lifespan — hold the diff to the standard the codebase already meets, not an idealized one. If a pattern is widespread in the existing code and this diff does not make it worse, it is not a finding. Declared-temporary code (time-boxed campaign, experiment, one-off script) is judged against its lifespan: hardcoding and low-extensibility shortcuts are the intended trade-off for shipping fast, and "delete the code at expiry" is a valid plan — do not demand configurability from code built to be deleted. (Security is exempt from all calibration — see the dimension file.)
  5. Speed is a feature — one wave of parallel reviewers, verification pipelined per dimension (never a global barrier), irrelevant dimensions pruned up front.

Two entry modes

ModeTriggerWhat runs
Light (default)Any ordinary review ask: "review this PR", an informal "look at this change for problems", a diff pasted for review — but not explain-only questions about a changeOne independent reviewer against the Quick checklist of each applicable dimension. Prefer a different-vendor harness when available; otherwise one same-harness subagent. At most one follow-up verification round as described below.
DeepExplicit only: /deep-review, "run deep review", "full multi-agent review"Full orchestration: dimension review agents → pipelined verification → global consolidation → structured report → interactive fix flow.

Do not auto-escalate light to deep. Do not run deep mode for a casual "看看这个改动" — that is light mode.

When to suggest Deep

Deep still needs the user's go-ahead, but the agent must ask for it when the change is high-risk. Before a light review or before opening the PR, suggest a Deep run (one sentence naming the signal) when the diff:

  • touches money or entitlements: charging, billing, subscriptions, credits, payment webhooks;
  • touches auth, permissions, or user isolation;
  • adds or changes database queries, schema, migrations, or backfills, or deletes persisted data;
  • changes a contract shared across packages, repositories, or released clients;
  • is large enough that one reviewer cannot hold it (roughly 1,000+ non-test changed lines).

For example, a PR adding a payment-path model query with a mocked-only test qualifies. Run Deep only after the user agrees; otherwise continue with light. The Deep-mode budget below still applies.

Deep-mode budget

Within one logical requirement (the same requirement, PR, or branch), run Deep mode at most once by default. Follow-up reviews after fixes, CI work, rebases, cleanup, context compaction, or a resumed session use Light mode, even when they review the whole diff again. These events do not reset the budget, and the review/verify/consolidate waves inside one Deep run all count as that single run.

Run Deep again only when the user explicitly requests another Deep pass, or when a genuinely new logical requirement begins. A casual follow-up such as "review again", "复核一下", or "再看看" is a Light request, not implicit authorization for another Deep run.

Dimensions

Rules live in one place: references/dimensions/, one file per dimension. Both modes use the same files. The light reviewer reads the full Quick checklist section, including nested example subsections; deep-mode agents read the full dimension file plus only the rule sources and routed references applicable to the touched surface.

Dimensionid prefixCoversVerified?
ai-coding-bad-habitsainarrow special cases in generic code, partial refactors, redundant type guards/aliases, comment narration, and precedent-blind implementationyes
code-stylestylenaming, readability, dead code, comments, i18n hardcoding, UI-library and styling conventionsyes
logiclogiclogic correctness: edge cases, null, races, error handling, state machines, requirement deviation, test coverageyes
business-logicdesigndesign judgment: framework misuse, best-practice violations, solution-weight mismatch, self-inflicted complexityyes
new-featurefeaturenew-capability design: domain vocabulary and structure, durable data model and migration evidence, product analytics and operational observabilityyes
reuse-architecturereuseduplicate implementations, unused existing patterns, extensibility, architectural boundariesyes
performanceperfN+1, blocking calls, resource leaks, render-path waste, DB migration locking and idempotencyyes
release-riskriskship/no-ship gate: irreversible persisted state (incl. schemaless shape drift), dev-cycle migration residue, in-flight work & config at deploy time, irreversible outbound effects, prompt/tool-description behavior shifts, shared-surface and high-frequency-UI blast radius, PR purityyes + checks
securitysecinjection, auth bypass, secret/PII leakage, business-slot confidentialityyes
compatibilitycompatlight/dark theme, desktop app / web (desktop, mobile) / RN, released-client API compatibility, client vs server agent runtime (gateway on/off), Vercel vs Docker deploys, paired router configsyes
uxuxempty/loading/error states, async feedback, confirmation flows, design-value adherenceyes
observabilityobsdebug: unexplained fixes, uncommented hacks, silent catches, missing logs; product: analytics on qualifying new capabilities; perf: monitoring on high-frequency / high-traffic / polling pathsyes
workflowflowissue tracking state, PR description freshness, undocumented key decisions, CI / preview build statusno (objective state)
skill-freshnessskillagent skills invalidated by this diff, knowledge worth distilling into a new skillno (advisory)

Verified? no means findings from that dimension are objective state checks or advisories — they skip the verify pass and go straight to the report. yes + checks means the dimension's findings are verified normally, but it also emits a second, unverified output — release_checks, pre-deploy confirmation items about production state the repo cannot answer (see its dimension file).

Pruning table (deep mode)

Before spawning, the main agent prunes dimensions that cannot apply to the diff. List pruned dimensions and the one-line reason in the report header. When in doubt, run the dimension.

DimensionSkip when
ai-coding-bad-habits, code-style, logic, business-logic, reuse-architecturenever (skip only for docs/lockfile-only diffs)
new-featurediff does not introduce a new product, operator, or platform capability
performanceno server/db/loop/render-path code touched (e.g. docs, copy, pure type changes)
release-riskno DB schema/migration, no schemaless persisted payload, no queue/cron/config/outbound dependency, no prompt or tool-description text, no shared component or package public API, no high-frequency user surface, and the diff has one obvious purpose
securitylockfile/generated-only diff — docs and copy still run it (text is a leak vector: secrets, internal URLs, commercial details)
compatibilitydiff touches no UI theming/routing, no API contract, no deployment config, no runtime-branching code
uxno user-facing surface changed (components, styles, copy, interaction flows)
observabilityno error handling, async flow, server code, new user-facing capability, or perf-sensitive path touched
workflowlight: no PR/issue/CI context is available; deep: never (cheap external-state checks)
skill-freshnesslight: the diff neither changes agent instructions nor changes behavior/conventions covered by an existing skill; deep: never (cheap)

"Docs-only" means human-facing prose only. Files that are executable instructions for agents — .agents/skills/**, AGENTS.md / CLAUDE.md, prompt templates, orchestration manuals — count as code for pruning purposes: their "prose" carries control flow, contracts, and rules whose contradictions are exactly what logic / business-logic / reuse-architecture exist to catch. A diff touching them is never docs-only.

Light mode applies the same table to decide which Quick checklists to pass to the reviewer.

Extension packs

A wrapping repository (e.g. a private deployment that vendors this repo as a submodule) can extend the rule set without forking this skill: any sibling skill directory in the active skills root matching deep-review-* (for example .agents/skills/deep-review-cloud/) is an extension pack.

  • Extension packs contain dimensions/*.md files in the same format; a file named after a built-in dimension extends it (load both), a new name adds a dimension.
  • An extension file declaring extends: <name> where no such built-in dimension exists (typically because the wrapping repo pins an older submodule commit) falls back to standing on its own. Such a file must therefore carry its own id_prefix / verify / skip_when so it stays usable either way; when the built-in is present, the built-in's frontmatter wins.
  • Both modes must check for extension packs at startup and load whatever is present. Absence is normal — this skill is self-sufficient.
  • Extension packs may carry rules that must not live in this open-source repo; never copy their content into files under this directory.

Light mode procedure

If your user message is already an instantiated light-review prompt, you are the reviewer — follow that prompt and do not re-enter this procedure.

  1. Determine review scope exactly as deep mode step 0 does (see the environment manual's scope rules — three-dot diff from a base that does not lag the fork point, submodule diffs included), but skip the background-hunting extras when context already tells you what changed.
  2. Apply the pruning table; collect the surviving dimension files plus extension-pack counterparts. Do not read the checklists yourself.
  3. Instantiate references/light-review-prompt.md with the surviving {dimensions}, {dimension_files}, {scope_summary}, and {changes}. Dispatch exactly one independent reviewer, trying in this order:
    1. If this session can dispatch a self-contained task to a different vendor's coding-agent harness (not a same-harness subagent), use that. Prefer a preset whose job is independent code review when the dispatcher exposes one.
    2. Otherwise spawn one same-harness subagent. Disable context inheritance when the spawn API allows it.
    3. If the chosen path fails, try the next. If none work, stop and tell the user why. Do not review the diff yourself.
  4. Assess the findings against their evidence. In an authorized implementation task, fix accepted, safe, in-scope issues and run appropriate checks. To reject or downgrade a finding, send the counterevidence to the independent verification round below rather than overruling the reviewer yourself. A standalone review request does not authorize edits.
  5. Allow at most one follow-up verification round per review request, covering disputed findings and fixes together, regardless of dimension. Append the original findings and counterevidence to the light-review prompt and supply the current diff; ask the independent reviewer to check changed behavior and possible regressions. Correct or withdraw findings only with concrete evidence and state the reason. Fixes, new commits, and context compaction do not reset this budget. If verification still fails or leaves a finding unresolved, report that status honestly without further automatic review rounds. Necessary authorized repairs can continue, but do not claim a subsequent independent pass. A new explicit user request for review takes precedence over this automatic limit.
  6. Report the resulting findings and verification status in the environment's normal review format (not the deep report template). Keep pre-deploy confirmation items separate from defects.

Deep mode procedure

Before entering this procedure, check the logical requirement's Deep-mode budget above. If Deep has already run and the user did not explicitly request another Deep pass, use the Light procedure.

Pick the manual for the current environment and follow it end to end:

If the environment is not listed, tell the user deep mode does not support it yet and offer light mode instead. Do not improvise another environment's mechanics, and do not simulate deep in the main agent or as one packed reviewer (see principle 2).

Keeping this skill sharp

The skill-freshness dimension and the workflow_feedback channel in the subagent return schema exist to feed observations back into these files. When a review surfaces a rule gap, an outdated rule, or a recurring team preference, update the relevant dimension file in the same PR or a follow-up — that is how calibration stays current.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

acceptance

FreeSummary

Use this skill to verify a delivery by exercising the real product through a suitable surface such as a CLI, web app, desktop app, or iOS Simulator. It helps create or find a verification plan, capture evidence, and publish an acceptance report.

  • Verifying a completed product change
  • Collecting screenshots or other evidence
  • Creating a verification plan and report
lobehub/lobehub83.5KUpdated Oct 26, 2026

Use this skill to add an AI model provider to LobeHub across runtime integration, model cards, settings, branding, documentation, and acceptance checks. It also covers provider documentation updates and distinguishes new providers from models added to an existing provider.

  • Integrating a new AI model provider into LobeHub
  • Updating setup or usage documentation for a provider
  • Checking whether a model needs a new provider integration
lobehub/lobehub83.5KUpdated Oct 26, 2026

add-setting-env

FreeSummary

Use this skill to add a server-side environment variable that sets a default for a user setting. It walks through validation, server configuration and store merging, plus updating the example environment file and self-hosting documentation.

  • Adding an environment variable for a setting default
  • Wiring a new setting domain into server config
  • Documenting a new variable for self-hosting
lobehub/lobehub83.5KUpdated Oct 26, 2026

Provides guidance for registering hooks around an agent’s execution steps, tool calls, human approvals, context compression, and sub-agent calls. Hooks can observe events, supply local mock tool results, or use webhooks to allow or deny tool results under configured policies.

  • Observing agent steps and tool errors
  • Mocking tool results during local execution
  • Requiring webhook decisions before or after a tool call
lobehub/lobehub83.5KUpdated Oct 26, 2026

agent-signal

FreeSummary

Build event-driven background workflows for agents by defining sources, interpreting them as signals, and running actions through policies. It also guides asynchronous handoffs, deduplication, scoped execution, completion receipts, and observability.

  • Adding a new event source to an agent workflow
  • Routing interpreted signals to concrete background actions
  • Enqueuing work for asynchronous processing
lobehub/lobehub83.5KUpdated Oct 26, 2026

Use this skill to run end-to-end acceptance checks for bot channels in real desktop chat apps. It drives apps such as Discord, Slack, Telegram, WeChat, Lark, and QQ to send a message, wait for a response, and capture the result.

  • Checking a bot response in a real Discord channel
  • Testing chat behavior through Slack or Telegram
  • Capturing a bot interaction in a native macOS app
lobehub/lobehub83.5KUpdated Oct 26, 2026

See all skills by lobehub

Report a problem with this skill