{"_id":"@ctrixin/review-hub","_rev":"2-229905e838f69d171326802fdbcfd142","name":"@ctrixin/review-hub","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@ctrixin/review-hub","version":"0.1.0","keywords":["review","multi-review","prompt","workflow","mms"],"license":"MIT","_id":"@ctrixin/review-hub@0.1.0","maintainers":[{"name":"ctrixin","email":"draftdog@foxmail.com"}],"homepage":"https://github.com/CtriXin/review-hub#readme","bugs":{"url":"https://github.com/CtriXin/review-hub/issues"},"bin":{"review-hub":"bin/review-hub.js"},"dist":{"shasum":"6249c837fbfa20be52427c0c25185eb7468b2860","tarball":"https://registry.npmjs.org/@ctrixin/review-hub/-/review-hub-0.1.0.tgz","fileCount":9,"integrity":"sha512-Wk2Lmf87hBUn2ZHGlggFRIRlV7pvEB86mBoOm7iOmKHoom0Ztb2h48SuvQZKEjak4yritCaVCX93p0PA4UFNEA==","signatures":[{"sig":"MEYCIQCmOv9TccAVu1hQtqMdVbqBm+KXgo5KwARbrXQbnEVTFwIhALOfVoju4XpbzME2+M/VsRi0+QkuHR8Exv22hhwrSeTo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59481},"type":"module","gitHead":"c82f64be132df6813f3e7dd161793ec2b0fea6ff","scripts":{"smoke":"node ./scripts/smoke.mjs"},"_npmUser":{"name":"ctrixin","email":"draftdog@foxmail.com"},"repository":{"url":"git+https://github.com/CtriXin/review-hub.git","type":"git"},"_npmVersion":"10.9.8","description":"Phase-based review orchestration for multi-model review requests, reviewer prompts, and aggregate outputs.","directories":{},"_nodeVersion":"22.22.3","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/review-hub_0.1.0_1781155086326_0.8071019469817851","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@ctrixin/review-hub","version":"0.1.1","description":"Phase-based review orchestration for multi-model review requests, reviewer prompts, and aggregate outputs.","type":"module","bin":{"review-hub":"bin/review-hub.js"},"repository":{"type":"git","url":"git+https://github.com/CtriXin/review-hub.git"},"homepage":"https://github.com/CtriXin/review-hub#readme","bugs":{"url":"https://github.com/CtriXin/review-hub/issues"},"publishConfig":{"access":"public"},"scripts":{"smoke":"node ./scripts/smoke.mjs"},"keywords":["review","multi-review","prompt","workflow","mms"],"license":"MIT","_id":"@ctrixin/review-hub@0.1.1","gitHead":"0de8eefd1a5065c0665cd8a173fe3d4b83a7df6c","_nodeVersion":"22.22.3","_npmVersion":"10.9.8","dist":{"integrity":"sha512-F4J+DR9Cy8jfAO2NSJfKIQtR4VM1N+/dbYieTOX8c4TYyiqASi3nuEkZ0zQ9gwjhUkD1obR5mW369PkTMuNQ6w==","shasum":"37d4f0965cd5538b745168091da446fc61463458","tarball":"https://registry.npmjs.org/@ctrixin/review-hub/-/review-hub-0.1.1.tgz","fileCount":10,"unpackedSize":102533,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFc8KtNv/ChVD8gVrvS6u6Y0yiSdRwdbNN324V0mXx3MAiANWTWhsZ1oqQAHNfqzTDgEjlUAjzfr2D+77xz2NY3v8g=="}]},"_npmUser":{"name":"ctrixin","email":"draftdog@foxmail.com"},"directories":{},"maintainers":[{"name":"ctrixin","email":"draftdog@foxmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/review-hub_0.1.1_1781165578083_0.31624958585869245"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-11T05:18:06.137Z","modified":"2026-06-11T08:12:58.341Z","0.1.0":"2026-06-11T05:18:06.488Z","0.1.1":"2026-06-11T08:12:58.235Z"},"bugs":{"url":"https://github.com/CtriXin/review-hub/issues"},"license":"MIT","homepage":"https://github.com/CtriXin/review-hub#readme","keywords":["review","multi-review","prompt","workflow","mms"],"repository":{"type":"git","url":"git+https://github.com/CtriXin/review-hub.git"},"description":"Phase-based review orchestration for multi-model review requests, reviewer prompts, and aggregate outputs.","maintainers":[{"name":"ctrixin","email":"draftdog@foxmail.com"}],"readme":"# review-hub\n\n`review-hub` is a phase-based review orchestrator for independent model reviews.\n\nIt keeps the top-level taxonomy flat:\n\n- `phase`: `pre | mid | post`\n- `read_policy`: `fresh_required | artifact_first_optional_refresh | verify_only`\n- `adapter`: `figma | image | doc | mixed | live-site`\n- `focus`: `source | design | acceptance | regression | factuality`\n\n## Why\n\nMost review systems become too vertical (`figma review`, `qa review`, `design review`, `prod review`, and so on). Review Hub avoids that by treating Figma, screenshots, docs, and live sites as adapters, not top-level lanes.\n\n## Install\n\nRegistry package name:\n\n```text\n@ctrixin/review-hub\n```\n\nRecommended install:\n\n```bash\nnpx @ctrixin/review-hub --help\n```\n\nOr:\n\n```bash\nnpm install -g @ctrixin/review-hub\nreview-hub --help\n```\n\nThis is the primary public install path.\n\nIf you want the latest GitHub state before the next npm release, use the GitHub fallback:\n\n```bash\nnpx --yes github:CtriXin/review-hub --help\n```\n\nOr:\n\n```bash\nnpm install -g github:CtriXin/review-hub\nreview-hub --help\n```\n\nLocal clone:\n\n```bash\nnpm link\nreview-hub --help\n```\n\nDirect from a clone without linking:\n\n```bash\nnode ./bin/review-hub.js --help\n```\n\nDefault behavior writes real artifacts. Use `--dry-run` only when you explicitly want preview/no-write behavior.\nInteractive `init` / `install-commands` print short human summaries by default; add `--json` when you explicitly want machine-readable output.\n\n## Init\n\n`review-hub init` now has two behaviors:\n\n1. bare `review-hub init`\n   - onboarding/bootstrap mode\n   - auto-detect local runner surfaces\n   - opens a Space-select picker for installable runners\n   - hides already-installed runners from the picker and summarizes them separately\n   - installs `/review-hub` command files plus skill links for the selected runners\n   - for Codex, also installs a custom prompt alias at `~/.codex/prompts/review-hub.md`\n   - interactive TTY output is concise text, not a raw JSON blob\n2. `review-hub init --root <path>`\n   - legacy/project mode\n   - initializes a local `.review-hub/` root for that workspace\n\nExample bootstrap flow:\n\n```bash\nreview-hub init\n```\n\nAfter Codex install, use one of these:\n\n```text\n/prompts:review-hub <request-root>\n$review-hub\n```\n\nExample project-local init:\n\n```bash\nreview-hub init --root .\n```\n\n## Runner-first workflow\n\nReview Hub now supports two distinct flows:\n\n1. **authoring mode**: create a new request root\n2. **reviewer mode**: open an existing request root or reviewer slot from a fresh runner/model session\n\nThe reviewer-mode path is the main handoff surface when you want to manually start different MMS runners without copying a long prompt.\n\nDispatcher-facing rule:\n\n- the dispatcher should create the request internally\n- the user-facing output should normally be only:\n  - `/review-hub <request-root>`\n  - optional fallback: `review-hub reviewer '<request-root>' --model '<MODEL_NAME>'`\n- when the reviewer is already running under `MMS/mmf`, prefer the short slash-command only\n\n## Quick start\n\n### Authoring mode\n\n```bash\nreview-hub init --root .\nreview-hub request \\\n  --root . \\\n  --title \"Second opinion on Figma audit\" \\\n  --summary \"Independent source reread before trusting the current audit.\" \\\n  --phase pre \\\n  --adapter figma \\\n  --focus source \\\n  --focus design \\\n  --model gpt-5 \\\n  --model claude-sonnet-4-5 \\\n```\n\nThis writes:\n\n- `request.json`\n- `REQUEST.md`\n- `PROMPT.template.md`\n- `LAUNCH.md`\n- `launch.json`\n- `reviewers/<model-slug>/...`\n\n### Reviewer mode\n\nIn a fresh runner/model session, use the request root directly:\n\n```bash\nreview-hub reviewer ./.review-hub/requests/<request-id>\n```\n\nOr, if the runner has the installed slash-command surface, use the shorter entry:\n\n```text\n/review-hub ./.review-hub/requests/<request-id>\n```\n\nBehavior:\n\n- resolve the current model from MMS env when possible\n- hydrate or reuse the current model slot\n- point the reviewer at the on-disk `PROMPT.md` / `manifest.json`\n- preserve output order via `LAUNCH.md` and `launch.json`\n\nIf the runner does not support `/review-hub`, `LAUNCH.md` also includes a short fallback prompt so you still do not need to paste the full prompt template.\n\n## Commands\n\n- `init`: initialize a local review-hub root\n- `init` without `--root`: interactive runner bootstrap\n- `request`: create a durable review request root and optional reviewer slots\n- `slot`: create a model-specific reviewer slot from an existing request\n- `reviewer`: resolve a request root or slot root into the current model reviewer slot\n- `worker-plan`: create a per-model toolful worker launch plan for hosts such as MMS/OpenCode\n- `aggregate`: summarize reviewer completion and verdict snippets\n- `install-commands`: install `/review-hub` command files and skill symlinks for supported local runners\n- `recommend`: recommend `phase` and `read_policy`\n\n## Dry run\n\nAdd `--dry-run` when you want preview-only behavior without writing files:\n\n```bash\nreview-hub request --root . --title \"Preview only\" --phase post --adapter mixed --dry-run\nreview-hub reviewer ./.review-hub/requests/<request-id> --dry-run\n```\n\n## Mission Control compatibility\n\nUse:\n\n```bash\nreview-hub request \\\n  --root <implementation-root> \\\n  --artifact-mode mission-control \\\n  --artifact-root <artifact-root> \\\n  --phase post \\\n  --adapter live-site \\\n  --focus acceptance \\\n  --focus regression \\\n```\n\nThis places the request under the Mission Control artifact tree instead of `./.review-hub/`.\n\n## Toolful worker host\n\nWhen the original dispatcher is not the execution host, generate a worker plan after model selection:\n\n```bash\nreview-hub worker-plan \\\n  --request ./.review-hub/requests/<request-id> \\\n  --runner opencode \\\n  --model qwen3.7-max \\\n  --model kimi-k2.6 \\\n  --parallel 2\n```\n\nThis writes:\n\n- `runner/opencode-worker-plan.json`\n- `runner/opencode-worker-plan.md`\n\nThe plan gives MMS/OpenCode a stable contract: every worker receives the same request root, model identity is supplied through `REVIEW_HUB_MODEL` / `MULTI_REVIEW_REVIEWER`, and the worker hydrates its own slot before reading `PROMPT.md`. MCP and skills are not assumed globally; the runner host must inject them into the worker session.\n\n## Environment preflight\n\nGenerated reviewer prompts always start with environment preflight. Reviewers must verify required tools, auth/capability, and required paths before deeper work.\n\n## Runner surfaces\n\nAuto-install is currently wired for command/skill locations that have stable evidence on this machine:\n\n- `~/.agents`\n- `~/.claude`\n- `~/.codex`\n- `~/.config/opencode`\n- `~/.opencode`\n\n`mimocode` is treated as experimental for now. `pi` and `agy` can still use request-root reviewer mode through `LAUNCH.md` even when automatic slash-command installation is not guaranteed.\n\nInteractive bootstrap only shows detected installable runners by default. `agy` and `pi` are reported as manual-only when they are detected, because Review Hub can still hand them the short path-based reviewer command even though automatic slash-command installation is not yet guaranteed.\n","readmeFilename":"README.md"}