Skip to main content
The Paperzilla CLI (pz) lets you read canonical papers by Paperzilla paper ID, browse or search your curated project feeds, inspect project-specific recommendations, and leave feedback from the terminal. It works for both humans and AI agents. Use --json when you want structured output. The main exceptions are login and update. If you just installed pz and want the shortest path to a working setup, start with CLI getting started.

Install

Homebrew 6.0 and later requires explicit trust for non-official taps. If Homebrew reports Refusing to load formula paperzilla-ai/tap/pz from untrusted tap paperzilla-ai/tap, trust only the Paperzilla formula and retry:
See Homebrew’s tap trust documentation. Do not disable tap trust globally.

Update

Run:
pz update checks whether your current CLI is on the latest release and then prints upgrade instructions for how you installed it.
  • Homebrew installs show brew update and brew upgrade pz
  • Scoop installs show scoop update pz
  • GitHub release installs tell you which release artifact to download
  • Source builds tell you to git pull and rebuild
On Homebrew 6.0 and later, an existing installation may need explicit trust before it can update. If brew update refuses to load the Paperzilla formula from an untrusted tap, run:
Trusting only the formula follows Homebrew’s recommended narrower scope. Do not disable tap trust globally. pz update auto-detects common install methods from the current executable and build metadata. If detection is ambiguous, override it explicitly:
Supported values are auto, homebrew, scoop, release, and source. To check the currently installed version:

Log in

Authenticate with your Paperzilla account. You receive a one-time code via email.
Don’t have an account yet? Follow the quickstart to sign up first.
You need to sign in for project-oriented commands such as project, feed, feed search, rec, and feedback, and to request markdown generation for project recommendations. If you only want to open a canonical paper by internal Paperzilla paper ID, pz paper <paper-ref> also works without logging in.

Commands

pz update

Check whether your CLI is current and print install-specific upgrade steps.
If you use a source build or the install method was guessed incorrectly, override detection:

pz project list

List all your projects.
Use the ID column for project-scoped commands such as pz feed, pz feed search, and pz paper --project. Add --json when you want structured output for scripting or AI agents. pz project list --json returns a compact summary array with the same project identity fields shown in the table: id, name, mode, and visibility.

pz project <id>

Show details for a specific project.
Add --json to return the full project record:
The JSON record includes project definition metadata: positive_keywords, negative_keywords, watched sources, and watched categories.

pz paper <paper-ref>

Show details for a canonical Paperzilla paper. paper-ref may be:
  • a full paper UUID
  • a paper short_id
This command works without logging in. When you add --project <project-id>, pz paper resolves that canonical paper inside one of your projects and shows recommendation context. That mode requires login.

Flags

Examples

If markdown is not ready yet, the CLI prints a friendly message. Anonymous pz paper --markdown does not queue markdown generation. For project-scoped agent workflows, pz rec <project-paper-id> --markdown is often a better follow-up after pz feed or pz feed search, because the recommendation context can queue markdown generation. If you are new to the model, see What is the difference between a canonical paper and a recommendation?.

pz rec <project-paper-ref>

Show details for one recommendation from one of your projects. project-paper-ref may be:
  • a full project_paper UUID returned by pz feed --json
  • a project_paper short_id returned by pz feed --json
This command requires login.

Flags

Examples

If markdown is still being prepared, the CLI prints a one-line message and asks you to try again in a minute or so.

pz feedback <project-paper-ref> <upvote|downvote|star>

Leave a recommendation signal for one paper in one project. Supported feedback values:
  • upvote
  • downvote
  • star

Flags

Examples

Feedback is project-specific. The same canonical paper can have different feedback in different projects. To remove feedback entirely, use pz feedback clear <project-paper-ref>. clear is a subcommand. Use pz feedback clear <project-paper-ref>, not pz feedback <project-paper-ref> clear. For a shorter explanation, see How do feedback signals work in the CLI?.

pz feed <project-id>

Browse the curated paper feed for a project.
Each paper shows a relevance class (★ Must Read or ○ Related), title, first author, source, date, and relevance score. Use recommendation IDs from the feed with pz rec, and canonical paper IDs with pz paper.

Flags

Examples

Search across the full feed for one project. Use pz project list first if you need to look up the project ID.
This command searches the whole project feed, not just already loaded browse pages. Search is rank-first. It does not return an exact total count in v1. Query terms use prefix matching, so Proxi matches Proximity.

Flags

Examples

The JSON response includes:
  • items
  • limit
  • offset
  • has_more
  • query
If you want a shorter answer, see How do I search a project feed from the CLI? and How do I find my project ID for CLI commands?.

Atom feeds

The --atom flag prints a URL you can paste into any feed reader (Vienna RSS, NetNewsWire, Feedly, etc.):
The URL contains a personal feed token so the reader can poll without logging in. The token is per-user, and the same URL is returned on repeated calls. See the feeds guide for more on RSS/Atom.

JSON output

With --json, pz feed returns structured data suitable for scripting and AI agents:
Relevance classes: 2 = Must Read, 1 = Related Recommendation IDs: use items[].id or items[].short_id with pz rec and pz feedback Paper IDs: use items[].paper.id or items[].paper.short_id with pz paper Source IDs: 1 = arXiv, 2 = medRxiv, 3 = bioRxiv, 4 = ChinaXiv, 5 = PubMed, 6 = ChemRxiv For PubMed records, reference_label uses the PMID even when doi is present. pdf_url is nullable for every source. Use url for the source landing page when no PDF is available. pz project list --json returns project summary objects with id, name, mode, and visibility. pz project <project-id> --json returns the full project record, including project definition metadata: positive_keywords, negative_keywords, watched sources, and watched categories. pz feedback <project-paper-id> ... --json returns the feedback object. pz feedback clear <project-paper-id> --json returns a small confirmation envelope because the backend clear endpoint returns 204 No Content. pz feed search --json returns a search envelope with items, limit, offset, has_more, and query.

OpenClaw skill

The Paperzilla CLI is also available as an OpenClaw skill on ClawHub. This lets AI agents like OpenClaw, Claude Code, Cursor, and Windsurf use pz commands directly. For the full setup flow, see Use the Paperzilla CLI with OpenClaw. If you already use OpenClaw, install the skill with:
If you already use the separate ClawHub CLI, this also works:
Once installed, your agent can list projects, inspect papers, browse or search feeds, and filter papers without manual CLI invocation. The skill wraps the same pz commands documented above.
You still need the pz binary installed and authenticated. The skill teaches the agent how to use it — it does not replace the CLI itself.

Configuration