Skip to content
Development
Skill

/review

Review branch changes against Archcore docs, or report project health. Use for 'review my branch', 'review the changes before merge', 'show status', 'documentation gaps', 'check if docs match code', 'close out the feature', 'ship the feature and close it out', or after a

From plugin
archcore-ai-plugin
554 skills2 agents4 commands
Install
$ npx -y skills add archcore-ai/plugin --skill review --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/review

Context preview

The summary Claude sees to decide when to auto-load this skill.

Review branch changes against Archcore docs, or report project health. Use for 'review my branch', 'review the changes before merge', 'show status', 'documentation gaps', 'check if docs match code', 'close out the feature', 'ship the feature and close it out', or after a

SKILL.md

review.SKILL.md
name: review
argument-hint: "[--deep] [--drift] [path, tag, or scope]"
description: "Review branch changes against Archcore docs, or report project health. Use for 'review my branch', 'review the changes before merge', 'show status', 'documentation gaps', 'check if docs match code', 'close out the feature', 'ship the feature and close it out', or after a staleness warning. --drift for staleness detection, --deep for a full documentation audit. Not for creating docs — use /archcore:document; not for planning — use /archcore:plan."

/archcore:review

Review the changes on the current branch against the `.archcore/` knowledge base, in both directions: whether the changed code still matches the documents that claim it, and whether the changed documents still match the code they describe. On the default branch, or with an empty diff, the skill reports project health instead. Write affinity: experience types — `cpat` and `task-type` land through the experience track. This is also the only skill that removes a document: `closeout.discharge` removes a completed `plan`, and `actualize.fix` may remove a long-stale draft of any type — both via `mcp__archcore__remove_document`, each under its own confirmation.

Command tense: `/archcore:plan` declares a future canon delta, `/archcore:document` records the present state — including work that shipped without a plan — and `/archcore:review` reconciles a past declared delta. Δ vocabulary: `skills/_shared/delta-routing.md`.

When to use

  • "Review my branch" / "Review the changes before merge" → branch review
  • "Show status" / "How many docs do we have?" → project health dashboard
  • "Are any docs out of date?" / "Check if documentation matches the code" → `--drift`
  • "Audit the knowledge base" / "Documentation gaps?" → `--deep`
  • Session-start staleness warning appeared → `--drift`
  • "Close out the feature" / "Ship the feature and close it out" → `closeout` track

**Not review:**

  • Documenting a module, decision, or topic → `/archcore:document`
  • Planning a feature or initiative → `/archcore:plan`
  • First-time setup → `/archcore:init`

Routing table

| Signal | Route | |---|---| | No arguments, branch with changes | → branch review, steps 1–4 | | On the default branch, or empty diff | → project health dashboard (step 1 fallback) | | `--drift` | → actualize track (step 3); scope from step 1 when the branch boundary resolves, all documents on `on-default-branch` or `empty-diff` | | `--deep` | → actualize track over all documents, plus coverage and relation findings | | Path, tag, or scope argument | → the named scope narrows or replaces the branch scope | | Completion signals: "close out the feature", "ship the feature and close it out" — an explicit completion or acceptance verb, not mere branch readiness. A plain "review my branch" stays on branch review even for a merge-ready branch | → closeout track (`skills/_shared/tracks/closeout.md`), scope pre-filled from the step 1 `branch-state` block; exits into the step 4 experience offer | | Named track or type (`actualize`, `experience`, `closeout`, `cpat`, `task-type`) | → execute the named path without routing |

On the closeout track, `closeout.verify` reconciles the plan's `## Declared Delta` section against the branch diff and reports drift as unplanned Δ — details in `skills/_shared/tracks/closeout.md`.

Execution

Load `skills/_shared/gate-contract.md` and `skills/_shared/elicitation-contract.md` before executing any track gate. Question budgets follow the elicitation contract.

IF `.archcore/` does not exist, THEN announce initialization in one line and call `mcp__archcore__init_project` without asking a question. IF `.archcore/` contains zero documents, THEN proceed on git and codebase grounding and report that zero documents were found.

**Grounding.** Search all three categories — vision, knowledge, experience — with `mcp__archcore__search_documents` / `mcp__archcore__list_documents`; never exclude a category from reads. Pass a type filter matched to the review moment — `spec`, `rule`, `adr`, `doc`, `guide` for claims on changed code; `cpat`, `task-type` for precedent; `plan`, `prd`, `idea`, `rnd`, and `research` (when `skills/_shared/research-compatibility.md` returned `yes`) for the closeout track's plan-and-implements-chain scope — instead of relying on the global type ranking. When a found document has `implements` or `related` relations, pull the linked documents one hop across categories.

**Global sources (only when present).** If any `list_documents` / `search_documents` result carries `global: true` / `read_only: true` / `source_kind: "global"`, load `skills/_shared/globals.md`. Also load it when a `search_documents` response's `coverage` names a source other than `"local"` — even when `results` is empty: the empty page is exactly where that file's retry ladder applies. Never modify a global document and never add a relation to one. Exclude global documents from every local-health metric — counts, orphan detection, drift; you MAY add one separate line naming the mounted source and its document count.

Step 1: Branch scope

Resolve the branch work boundary per `skills/_shared/branch-state.md` — plain git, offline. On success, the `branch-state` output block (committed and uncommitted changes since the merge base) is the review scope. A path, tag, or scope argument narrows the changed-file list.

Handle every sentinel the contract defines:

| Sentinel | Response | |---|---| | `no-repo` | Request an explicit path or topic; review that scope without a diff. | | `detached-head` | State the detached state; request an explicit path, topic, or ref. | | `no-default-branch` | Request an explicit path or topic. | | `no-merge-base` | Request an explicit path or topic. | | `on-default-branch` | Report project health instead of a branch review. | | `empty-diff` | Report project health instead of a branch review. |

With `--drift`, the `on-default-branch` and `empty-diff` sentinel

Read more
Ships witharchcore-ai-plugin

Make your AI coding agent work like it already knows your repo. Archcore brings spec-driven development and automatic project context to Claude Code, Cursor, Codex CLI, and GitHub Copilot CLI.

Get the whole plugin
Stats
55
Stars
7
Forks
Active
Maintenance
Shell
Language
Apache-2.0
License
2d ago
Last commit
5mo ago
Created

Repo: archcore-ai/plugin

Other skills on archcore-ai-plugin.