CLI Reference
The scitex-scholar command provides a Click-based noun-verb subcommand
interface. Every group has --help; pass --help-recursive at the top
level for a full overview, --version/-V for the installed version, and
--json (where supported) for machine-readable output.
scitex-scholar --help
scitex-scholar --help-recursive
scitex-scholar --version
scitex-scholar paper --help
scitex-scholar library --help
Top-level groups
paper
Operate on a paper / batch of papers.
# Single paper from DOI or title
scitex-scholar paper fetch --doi "10.1093/brain/awx173" --project my_project
scitex-scholar paper fetch --title "Seizure prediction with iEEG" --project my_project
# ``--doi`` accepts URL form too: ``https://doi.org/...``,
# ``http://dx.doi.org/...``, or ``doi:10.x/y``.
# Multiple papers in parallel
scitex-scholar paper fetch-batch --dois 10.1/x --dois 10.2/y \
--project my_project --num-workers 4
Local-PDF import (skips the browser/download stack):
# Main PDF only — metadata enrichment still runs from --doi/--title
scitex-scholar paper fetch --doi 10.1002/epi.70076 \
--pdf-main ~/Downloads/Liu_2026.pdf \
--project neurovista
# With supplementary files and attachments (both flags repeatable)
scitex-scholar paper fetch --doi 10.1038/s41467-020-15908-3 \
--pdf-main ~/Downloads/main.pdf \
--pdf-supple ~/Downloads/MOESM1_ESM.pdf \
--pdf-supple ~/Downloads/MOESM2_ESM.pdf \
--attachment ~/Downloads/dataset.csv \
--project neurovista
Storage convention: --pdf-main is placed at
MASTER/<id>/<First>-<Year>-<Journal>.pdf (chmod 444 — Zotero-style
immutable canonical record). Supplementary files land as
supple-<original_name> and attachments as
additional-<original_name>. Each file is recorded with role + SHA-256
in metadata.path.files so library audit-files can verify integrity.
Mutating verbs accept --dry-run and -y/--yes.
bibtex
Operate on a BibTeX file.
# Process every entry (was: top-level ``bibtex --bibtex …``)
scitex-scholar bibtex import --bibtex refs.bib --project my_project \
--num-workers 4 --browser-mode stealth
mcp
MCP server commands (Model Context Protocol).
scitex-scholar mcp start # start stdio server
scitex-scholar mcp start --dry-run # print plan, exit
scitex-scholar mcp list-tools # print scholar_* tool names
scitex-scholar mcp list-tools --json # machine-readable
scitex-scholar mcp doctor # check fastmcp + handler imports
scitex-scholar mcp install --claude-code # config snippet
Prefer the unified scitex serve server when integrating with the rest of
the SciTeX ecosystem.
pdf
PDF post-processing. See Semantic PDF Highlighting.
export ANTHROPIC_API_KEY=sk-ant-...
scitex-scholar pdf highlight paper.pdf
scitex-scholar pdf highlight paper.pdf -o out.pdf
scitex-scholar pdf highlight paper.pdf --model claude-sonnet-4-6
scitex-scholar pdf highlight paper.pdf --stub
scitex-scholar pdf highlight paper.pdf --dry-run
scitex-scholar pdf highlight paper.pdf --max-blocks 20
# Offline label-apply workflow
scitex-scholar pdf highlight paper.pdf --labels-dump blocks.json
scitex-scholar pdf highlight paper.pdf --labels-apply labels.json
Also available as a standalone module:
python -m scitex_scholar.pdf_highlight paper.pdf
library
Library-tree management. --help is categorized into four groups:
Daily (the common workflow), Layout (where the data lives),
Share (move it elsewhere), and Database (integrity / index).
Daily
# All projects: counts only. Add ``-v`` / ``-vv`` / ``-vvv`` for detail.
scitex-scholar library list
# Single project: per-paper detail by default (auto-verbose).
scitex-scholar library list neurovista
# Open every paper-URL in a browser. ``--watch`` auto-imports any PDF
# downloaded during the session (Playwright + watchdog dual-watch).
scitex-scholar library open-urls neurovista --watch
# One-button maintenance: reconcile container.projects ↔ symlinks,
# regenerate readable names (PDF-NN_CC-..._IF-..._...). Optionally
# rsync after; --sync HOST is repeatable.
scitex-scholar library refresh
scitex-scholar library refresh neurovista
scitex-scholar library refresh neurovista --sync spartan
scitex-scholar library refresh neurovista --sync spartan --sync nas
Layout
# Add a project-local view of the home library via one symlink:
# <PROJECT-DIR>/.scitex/scholar/library/<project> -> ~/.scitex/scholar/library/<project>
# No data is moved; --unbind removes the symlink.
scitex-scholar library bind neurovista ~/proj/neurovista
scitex-scholar library bind neurovista ~/proj/neurovista --unbind
# Verbless shorthand (only when <project> already exists in home).
scitex-scholar library neurovista ~/proj/neurovista
# Whole-library view symlink (older pattern).
scitex-scholar library link-project-tree .
# Bib-filtered real directory ↔ view-symlink.
scitex-scholar library materialize <link_path> --bib refs.bib
scitex-scholar library dematerialize <path>
Database / integrity
# SQLite index.
scitex-scholar library db build --dry-run
scitex-scholar library db build
scitex-scholar library db migrate
scitex-scholar library db lookup --doi 10.1/x --json
scitex-scholar library db list --limit 20 --json
scitex-scholar library db audit --json
# File integrity: verify metadata.path.files against disk
# (presence + SHA-256, role-aware).
scitex-scholar library audit-files
scitex-scholar library audit-files --project neurovista --json
scitex-scholar library audit-files --no-rehash # presence only (fast)
skills
Bundled SciTeX-Scholar skill leaves (under
src/scitex_scholar/_skills/scitex-scholar/).
scitex-scholar skills list
scitex-scholar skills list --json
scitex-scholar skills get 04_cli-reference
scitex-scholar skills install # symlink into ~/.claude/skills/
scitex-scholar skills install --copy --force --dry-run
Python API introspection
scitex-scholar list-python-apis # one name per line
scitex-scholar list-python-apis -v # with signatures
scitex-scholar list-python-apis --json # machine-readable
Migration from pre-1.3.0
The pre-1.3.0 top-level commands (single, parallel, top-level
bibtex --bibtex, highlight, link-project-tree, materialize,
dematerialize, db) still work but emit a one-line DeprecationWarning
on stderr and will be removed in 1.4.0. See the project CHANGELOG.md for
the full migration table.