Generated against research-hub v1.x. 35+ subcommands grouped by workflow stage.
Interactive setup wizard.
research-hub init [--vault PATH] [--zotero-key KEY] [--zotero-library-id ID]
[--non-interactive] [--persona researcher|analyst]| Flag | Description |
|---|---|
--vault PATH |
Vault root directory (default: ~/knowledge-base) |
--zotero-key KEY |
Zotero API key (researcher persona only) |
--zotero-library-id ID |
Zotero library ID |
--non-interactive |
Skip prompts; require values via flags |
--persona |
researcher (default) or analyst (skip Zotero) |
Example:
research-hub init --persona analyst --vault ~/my-vaultHealth check (config, vault, Zotero, dedup, Chrome, NLM session).
research-hub doctorInstall portable SKILL.md files for hosts with known default skill
directories.
research-hub install --platform claude-code|codex|cursor|gemini
research-hub install --listOpenClaw, Hermes, and other agents can use research-hub through MCP/REST
or manual SKILL.md loading, but they are not built-in installer targets
yet.
Generate a personal HTML dashboard for the vault.
research-hub dashboard [--open]| Flag | Description |
|---|---|
--open |
Open the dashboard in your default browser after generation |
Output: <vault>/.research_hub/dashboard.html — single self-contained
file with stat cards, cluster table, status badges, and NotebookLM
links. Works offline.
Query Semantic Scholar.
research-hub search "QUERY" [--limit N] [--verify]Check paper exists via DOI / arXiv ID / fuzzy title match.
research-hub verify --doi 10.1234/x
research-hub verify --arxiv 2502.10978
research-hub verify --paper "Title" [--paper-year 2025] [--paper-author "Last"]List papers cited by the given paper (its bibliography).
research-hub references <doi-or-arxiv-id> [--limit 20] [--json]List papers that cite the given paper.
research-hub cited-by <doi-or-arxiv-id> [--limit 20] [--json]The one-shot Search → Save command.
research-hub add <doi-or-arxiv-id> [--cluster SLUG]
[--no-zotero] [--no-verify]Run the full pipeline from papers_input.json.
research-hub ingest [--cluster SLUG] [--no-verify]
research-hub run [--cluster SLUG]Cluster + related-paper suggestions.
research-hub suggest <doi-or-title> [--top 5] [--json]Search within vault notes.
research-hub find "QUERY" [--cluster SLUG] [--status STATUS]
[--full] [--json]Update reading status.
research-hub mark <slug> --status unread|reading|deep-read|cited
research-hub mark --cluster SLUG --status STATUS # bulkMove a paper between clusters.
research-hub move <slug> --to <cluster>Remove a paper from the vault.
research-hub remove <doi-or-slug> [--zotero] [--dry-run]Export citations.
research-hub cite <doi-or-slug> [--format bibtex|biblatex|ris|csljson] [--out FILE]
research-hub cite --cluster <slug> --format bibtex --out cluster.bibresearch-hub clusters list
research-hub clusters show <slug>
research-hub clusters new --query "topic" [--name "Display Name"]Link a cluster to Zotero collection / Obsidian folder / NotebookLM notebook.
research-hub clusters bind <slug> [--zotero KEY] [--obsidian PATH] [--notebooklm "Name"]research-hub clusters rename <slug> --name "New Name"
research-hub clusters delete <slug> [--dry-run]
research-hub clusters merge <source> --into <target>
research-hub clusters split <source> --query "keywords" --new-name "Name"research-hub dedup invalidate [--doi DOI] [--path PATH]
research-hub dedup rebuild [--obsidian-only]Rebuild dedup_index.json from Zotero + Obsidian.
research-hub indexPer-cluster reading progress.
research-hub status [--cluster SLUG]research-hub sync status [--cluster SLUG]
research-hub sync reconcile --cluster SLUG [--dry-run] [--execute]Deduplicate hub page wikilinks.
research-hub cleanup [--dry-run]Generate cluster synthesis pages.
research-hub synthesize [--cluster SLUG] [--graph-colors]Patch legacy notes to current YAML spec.
research-hub migrate-yaml [--assign-cluster SLUG] [--folder PATH]
[--force] [--dry-run]research-hub notebooklm login --auto-detect [--wait-timeout 300]
research-hub notebooklm login [--wait-file PATH] [--wait-timeout 300]
research-hub notebooklm login --from-browser [chrome|edge|firefox|brave|auto]
research-hub notebooklm login --import-from VAULT_PATH [--overwrite]research-hub notebooklm bundle --cluster SLUGresearch-hub notebooklm upload --cluster SLUG [--dry-run] [--headless] [--visible]research-hub notebooklm generate --cluster SLUG --type brief|audio|mind-map|video|all
[--headless] [--visible]Pull a generated briefing back to the vault as plain text. v0.9.0
supports --type brief; audio/mind-map/video downloads land in
v0.9.1.
research-hub notebooklm download --cluster SLUG [--type brief] [--visible]Output: <vault>/.research_hub/artifacts/<cluster_slug>/brief-<UTC>.txt
with a small header (notebook name, source URL, timestamp, saved
briefing titles) followed by the briefing body.
Print the most recently downloaded briefing for a cluster.
research-hub notebooklm read-briefing --cluster SLUGStart MCP stdio server for Claude Desktop / Cursor / Claude.ai.
research-hub serveAdd this to your Claude Desktop config:
{
"mcpServers": {
"research-hub": {
"command": "research-hub",
"args": ["serve"]
}
}
}21 MCP tools exposed. See docs/mcp-tools.md for the full list.