Use after completing a milestone or group of related tasks, before proceeding to next phase
From mbscodenpx claudepluginhub mbstools/mbscodeThis skill uses the workspace's default tool permissions.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Guides implementation of event-driven hooks in Claude Code plugins using prompt-based validation and bash commands for PreToolUse, Stop, and session events.
Multi-dimensional code review that loops autonomously until every quality dimension passes. No human interaction during the loop -- humans see only the final result.
Ask these questions about the changed code:
How to check: Read the diff. For each function, trace the hot path. Count loops-inside-loops. Look for repeated operations.
How to check: For each file, try to remove lines. If removing a line doesn't break anything, it shouldn't be there. Search for raw numbers. Search for duplicated patterns.
How to check: For each module, answer: "What does it do?" If the answer has "and", it's doing too much. Check imports -- draw the dependency graph mentally.
How to check: Can a new {entity/route/command/skill} be added by creating one new file + one registry entry? If adding a feature requires modifying >2 existing files, the design may need better extension points.
eval() or exec() with external data?How to check: Search for string concatenation in queries, raw user input in templates, hardcoded strings that look like keys/tokens, catch blocks that return internal errors.
Scale review depth to the size of changes:
| Change Size | Dimensions to Review |
|---|---|
| < 50 lines changed, ≤ 2 files | Simplicity only |
| 50-200 lines changed OR 3-5 files | Simplicity + Modularity |
| 200+ lines OR 6+ files | All five dimensions |
Milestone boundary definition: A milestone boundary is reached when all tasks in that milestone have status 'done' and all post-task gates pass. Get the milestone diff with: git diff <sha-before-first-task-in-milestone> HEAD. If that SHA is unavailable, detect the default branch (git symbolic-ref refs/remotes/origin/HEAD, fall back to main) and use: git merge-base HEAD <default-branch>.
wip: prefix (preferred -- stashes are easily lost in multi-step flows). If 3 iterations fail, revert to the checkpoint and escalate.## Autonomous Review: [milestone name]
### Optimization: PASS
- Checked: all 5 new functions, no O(n²) loops, no redundant I/O
- Evidence: main loop is O(n), single file read per config load
### Simplicity: PASS (2 iterations)
- Iteration 1: removed 3 unused imports in utils module, extracted TIMEOUT_MS = 5000
- Iteration 2: all clean
- Evidence: 0 dead code, 0 magic numbers, 0 duplicate logic
### Modularity: PASS
- Checked: 4 modules, each <150 lines, one-sentence purpose each
- Evidence: parser module parses, validator module validates, no circular deps
### Extensibility: PASS
- Checked: new skill type would require 1 new file + 1 registry entry
- Evidence: skill loading is plugin-based, no hardcoded skill list
### Security: PASS
- Checked: no hardcoded secrets, all user input sanitized, no eval() with external data
- Evidence: auth tokens stored in env vars, input validated before DB queries, error responses use generic messages
When a dimension fails after 3 iterations:
### Modularity: FAIL (3 iterations, escalating)
**What was tried:**
- Iteration 1: Split parser module into tokenizer + parser → broke 3 tests
- Iteration 2: Fixed tests, but circular dependency between modules
- Iteration 3: Attempted dependency inversion → still has cross-module state
**Root cause:** Parser and validator share mutable state that can't be cleanly separated without redesigning the data flow.
**Recommendation:** Architectural redesign needed. Suggest brainstorming session for data flow refactor.
Called by: mbscode:executing-plans or mbscode:subagent-driven-development at milestone boundaries; also referenced by HOOKS.md milestone hooks
After completion: Continue to next milestone, or return to the caller (executing-plans or subagent-driven-development) which handles the transition to mbscode:finishing-a-development-branch when all milestones are done
| Thought | Reality |
|---|---|
| "It's good enough" | Run the checklist. Show evidence. |
| "This dimension doesn't apply" | Check the Scope-Based Scaling table. Skip only if the change size is below the threshold for that dimension. |
| "I already checked this mentally" | Mental checks don't count. Show the evidence. |
| "The fix is trivial, skip re-check" | Trivial fixes break things. Re-check. |
| "3 iterations isn't enough" | If 3 iterations don't fix it, the problem is architectural. Escalate. |