From hive
Local pre-push code review by Claude. Analyzes git diff vs base branch and returns structured findings (CRITICAL/HIGH/MEDIUM/LOW) without touching GitHub or Linear. Use before pushing to catch issues in-session, fix them, and ship a clean PR. Different from /pr-review which is the post-push CI/Linear sync layer.
npx claudepluginhub skywalking-dev/hiveThis skill is limited to using the following tools:
Pre-push self-review. Runs in the active Claude session against uncommitted + committed-but-unpushed changes. No GitHub. No Linear. Pure analysis.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Pre-push self-review. Runs in the active Claude session against uncommitted + committed-but-unpushed changes. No GitHub. No Linear. Pure analysis.
/ship_it Phase 2, before pushreview the changes I have so far/pr-review/pr-review/pr-review/review-diff # default: HEAD vs origin/main + working tree
/review-diff origin/develop # explicit base branch
/review-diff --staged # staged changes only
/review-diff --range A..B # arbitrary range
Default: everything not yet on remote base branch.
# Detect base branch
BASE=$(git symbolic-ref refs/remotes/origin/HEAD 2>/dev/null | sed 's@^refs/remotes/origin/@@')
BASE=${BASE:-main}
# Range = base..HEAD + working tree
git diff origin/${BASE}...HEAD # committed not yet pushed
git diff # unstaged
git diff --cached # staged
If working tree is clean and HEAD == origin/BASE: nothing to review, exit early.
# File list (all states)
git diff --name-status origin/${BASE}...HEAD
git diff --name-status
git diff --cached --name-status
Store: FILES_CHANGED, ADDITIONS, DELETIONS, LANGUAGES_TOUCHED.
git diff origin/${BASE}...HEAD
git diff HEAD # working tree on top
For diffs >1500 lines, prioritize:
auth/, api/, middleware/, *_handler*, lib/db*)Apply this checklist. Assign severity per finding.
| Level | Meaning | Action |
|---|---|---|
| CRITICAL | Security vuln, data loss, crash, exposed secret | Must fix before push |
| HIGH | Bug, missing validation, broken contract, logic error | Must fix before push |
| MEDIUM | Code smell, missing test, minor issue | Should fix |
| LOW | Style, suggestion, nit | Optional |
dangerouslySetInnerHTML, unescaped user input)service_role in client code)console.log / print / debug statements left inany types without justificationdata-testid per docs/TEST_ID_CONTRACT.md| Findings | Decision |
|---|---|
| Any CRITICAL | BLOCK — must fix before push |
| Any HIGH | BLOCK — must fix before push |
| Only MEDIUM/LOW | PROCEED — fix recommended |
| Nothing | CLEAN — push when ready |
Structured report (terse, actionable):
review-diff: {N} files, +{ADD}/-{DEL}
CRITICAL ({n})
- file.ts:42 — {finding} → {fix suggestion}
HIGH ({n})
- file.ts:78 — {finding} → {fix suggestion}
MEDIUM ({n})
- file.ts:15 — {finding}
LOW ({n})
- file.ts:9 — {finding}
Decision: {BLOCK | PROCEED | CLEAN}
{1-line summary}
If BLOCK: list the exact fixes to apply. Do not push.
If PROCEED/CLEAN: ready for /push_it or next pipeline phase.
/ship_it fix loop) apply.file:line.review-diff → local, Claude in session, pre-push, no side effects
pr-review → post-push, GitHub PR + Linear sync, can run from CI
ship_it → orchestrator: lefthook → review-diff → fix → simplify → push → CI runs DeepSeek → merge → deploy
Pushing dirty code to trigger CI review wastes CI cycles, pollutes PR history with fix: resolve review findings commits, and slows feedback. Catching issues in-session (where Claude already has full context) is faster, cleaner, and produces PRs that nacen verdes.
Second pair of eyes still happens in CI via claude-review.yml reusable workflow — but with DeepSeek (cheap, cold, unbiased) on a clean diff.