From hive
Full shipping pipeline — lefthook + local review + fix + simplify + push + CI review + merge + deploy + verify + close Linear + report. Use when user says "ship it" and wants code to reach production verified. Handles everything from uncommitted changes to live deployment, with review happening PRE-push so PRs nacen verdes.
npx claudepluginhub skywalking-dev/hiveThis skill is limited to using the following tools:
Baseline → Lefthook → Local Review → Fix → Simplify → Push → CI Review → Merge → Deploy → Verify → Close → Report. Not done until it's live, verified, and documented.
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.
Baseline → Lefthook → Local Review → Fix → Simplify → Push → CI Review → Merge → Deploy → Verify → Close → Report. Not done until it's live, verified, and documented.
Review + simplify happen LOCAL and PRE-push. Claude is already in session with full context — fixing in-session is cheaper than round-tripping through CI. PRs nacen verdes: clean history, single CI run, no fix: resolve review findings commit pollution.
Second pair of eyes still runs post-push via reusable-pr-review.yml (DeepSeek, cold, unbiased, cheap) — but on a diff that's already clean.
At the START of the pipeline, capture baseline state for the final report:
# Files modified in this session (uncommitted + recent commits on branch)
BASE=$(git symbolic-ref refs/remotes/origin/HEAD 2>/dev/null | sed 's@^refs/remotes/origin/@@')
BASE=${BASE:-main}
git diff --name-only origin/${BASE}...HEAD 2>/dev/null
git diff --cached --name-only
git diff --name-only
# Token usage — read from session context if available
Store: BASELINE_FILES, BASELINE_TOKENS.
Capture state above. If nothing to ship (clean tree + HEAD == origin/BASE), exit with "nothing to ship".
Linters/formatters run automatically via lefthook.yml on every commit. If the repo has no lefthook config:
Never run linters via LLM tool calls. That's what lefthook is for.
/review-diff on all changes (committed + uncommitted vs origin/${BASE})While /review-diff returns BLOCK:
/review-diffMax iterations: 3. If still BLOCK after 3 rounds, STOP and ask user. Report:
/simplify on all changed files (now correctness-clean)git add -A (or specific files — avoid secrets)fix: resolve review findings — the fixes never hit git history)/push_it for push + PR creation, OR if branch is already pushed, just git push and update existing PRPR_NUMBER and PR_URLgh pr checks {PR_NUMBER} — poll every 30s, max 5minreusable-pr-review.yml (DeepSeek)/review-diff missed):
Max extra fix rounds triggered by CI: 2. If CI still unhappy after 2 extra rounds, stop and escalate.
gh pr checks {PR_NUMBER} — all greengh pr merge {PR_NUMBER} --squash --delete-branchvercel.json, .vercel/, deploy scripts)vercel ls --json → find latest deployment on productionvercel inspect until READY (max 3min)curl -sI {PRODUCTION_URL} → verify HTTP 200(SKY|MIIC|[A-Z]+)-\d+)Shipped via PR #{NUMBER}
Files changed: {FILE_COUNT}
- {FILE_LIST (max 20, then "and N more")}
Local review: {LOCAL_ROUNDS} rounds, {LOCAL_FIXES} fixes
CI review: {CI_VERDICT}, {CI_EXTRA_ROUNDS} extra rounds
Deploy: {PLATFORM} → {PRODUCTION_URL}
Session tokens: ~{INPUT_TOKENS} input, ~{OUTPUT_TOKENS} output
Present to user:
🚀 Shipped: PR #{NUMBER} → {BRANCH} merged to {BASE}
📋 Session Inventory:
Files modified: {FILE_COUNT}
{FILE_LIST with status: M=modified, A=added, D=deleted}
🔍 Quality:
Lefthook: {✓ ran | ⚠ no config}
Local review (Claude): {LOCAL_ROUNDS} rounds, {LOCAL_FIXES} fixes → {CLEAN|PROCEED}
Simplify: {result — fixes applied or "clean"}
CI review (DeepSeek): {verdict}, {CI_EXTRA_ROUNDS} extra rounds
CI checks: ✓ all passed
🚢 Deployment:
Platform: {PLATFORM}
Deploy: ✓ {DEPLOYMENT_ID} READY
Verify: ✓ {PRODUCTION_URL} responding 200
📊 Session Cost:
Tokens: ~{INPUT_TOKENS} input / ~{OUTPUT_TOKENS} output
🎫 Linear: {ISSUE_ID} → Done
/review-diff) — that's the whole point of the pre-push refactorlefthook → pre-commit, runs linters/formatters/tests (no LLM)
/review-diff → Claude local pre-push review (no GitHub, no Linear)
/simplify → code quality/reuse audit on clean code
/push_it → commit + push + open PR
/pr-review → review an existing open PR + Linear sync (manual / post-merge)
/ship_it → full pipeline orchestrator
reusable-pr-review.yml → CI workflow, DeepSeek/Claude second opinion, runs automatically on every PR
Old order (before 2026-04):
simplify → push → pr-review → fix loop (N commits) → merge
Problems: noisy history, N CI runs, review operates on mid-quality code, fix commits clutter PR.
New order:
lefthook → review-diff → fix (in-session) → simplify → push → CI review (second opinion) → merge
Benefits: 1 commit, 1 CI run, PR nace verde, DeepSeek catches what Claude missed without session bias.