Skill Tracer
Skills › Scientific Agent Skills › paperzilla

paperzilla

skill · 253 lines · MIT · skills/paperzilla/SKILL.md

The facts

Its description

Reads projects, searches project feeds, and retrieves recommendations and canonical papers in Paperzilla through the pz CLI. Supports recent recommendations, paper details, markdown-based summaries, recommendation feedback, JSON export, and Atom feed URLs.

The description the agent reads to decide when to use it.

From its settingsline 3

Files it mentions

references/cli-contracts.md

Files the text names, such as ones to read or write. Found by matching words, so treat them as pointers.

Found by matching wordsline 246

Licence

MIT, from the skill file

The terms its author shares it under, which let it be shown here.

From its settingsline 4 licence text

Other settings

compatibility: Requires the pz CLI, network access, and a Paperzilla account with CLI access. Source builds require Go 1.23 or later. metadata: version: "1.2" skill-author: Paperzilla Inc upstream-version: "pz 0.7.1" last-reviewed: "2026-10-01"

More settings at the top of the file, shown as written.

From its settingsline 5 line 6
Other files in this skill (1) Close

The text

Open on GitHub

Most marks come from matching words in the file, so treat them as pointers.

1---
2name: paperzilla
3description: Reads projects, searches project feeds, and retrieves recommendations and canonical papers in Paperzilla through the pz CLI. Supports recent recommendations, paper details, markdown-based summaries, recommendation feedback, JSON export, and Atom feed URLs.
4license: MIT
5compatibility: Requires the pz CLI, network access, and a Paperzilla account with CLI access. Source builds require Go 1.23 or later.
6metadata:
7 version: "1.2"
8 skill-author: Paperzilla Inc
9 upstream-version: "pz 0.7.1"
10 last-reviewed: "2026-10-01"
11---
13# Paperzilla
15Use this skill when you want to chat with your agent about projects, recommendations, and canonical papers in Paperzilla.

Paperzilla

Use this skill when you want to chat with your agent about projects, recommendations, and canonical papers in Paperzilla.

Raw lines 1 to 16
17## What you can ask
19- "Give me the latest recommendations from project X."
20- "Open recommendation Y and explain why it matters."
21- "Fetch canonical paper Z as markdown and summarize it."
22- "Tell me how this paper is relevant to my research."
23- "Show me the feed for project X."
24- "Leave feedback on a recommendation."
25- "Export this paper, recommendation, or feed as JSON."
27This is the core Paperzilla skill. It gives your agent direct access to Paperzilla data, but it does not impose a workflow or external delivery integration.

What you can ask

  • "Give me the latest recommendations from project X."
  • "Open recommendation Y and explain why it matters."
  • "Fetch canonical paper Z as markdown and summarize it."
  • "Tell me how this paper is relevant to my research."
  • "Show me the feed for project X."
  • "Leave feedback on a recommendation."
  • "Export this paper, recommendation, or feed as JSON."

This is the core Paperzilla skill. It gives your agent direct access to Paperzilla data, but it does not impose a workflow or external delivery integration.

Raw lines 17 to 28
29## Access method
31Use the official `pz` CLI. This skill targets **0.7.1**, checked against the
32official release source and binary. Command examples use placeholder IDs; replace
33them with records returned by your account. CLI behavior was tested against a
34local mock server, not an authenticated Paperzilla account.
36Start with `pz --version`, then list projects, select a project, browse or search
37its feed, and inspect selected recommendations. Keep project recommendations
38separate from the underlying canonical paper when summarizing or exporting.

Access method

Use the official pz CLI. This skill targets 0.7.1, checked against the official release source and binary. Command examples use placeholder IDs; replace them with records returned by your account. CLI behavior was tested against a local mock server, not an authenticated Paperzilla account.

Start with pz --version, then list projects, select a project, browse or search its feed, and inspect selected recommendations. Keep project recommendations separate from the underlying canonical paper when summarizing or exporting.

Raw lines 29 to 39
40## Install
42### macOS
43```bash
44brew install paperzilla-ai/tap/pz
45```
47If Homebrew 6 or later rejects this formula as untrusted, the official guide uses
48`brew trust --formula paperzilla-ai/tap/pz`, then retries installation. Trust only
49that formula. Installation and upgrade commands were documentation-checked, not
50executed during this review.

macOS

brew install paperzilla-ai/tap/pz

If Homebrew 6 or later rejects this formula as untrusted, the official guide uses brew trust --formula paperzilla-ai/tap/pz, then retries installation. Trust only that formula. Installation and upgrade commands were documentation-checked, not executed during this review.

Raw lines 42 to 51
52### Windows (Scoop)
53```bash
54scoop bucket add paperzilla-ai https://github.com/paperzilla-ai/scoop-bucket
55scoop install pz
56```

Windows (Scoop)

scoop bucket add paperzilla-ai https://github.com/paperzilla-ai/scoop-bucket
scoop install pz
Raw lines 52 to 57
58### Linux
59Use the official Linux install guide:
61- https://docs.paperzilla.ai/guides/cli-getting-started

Linux

Use the official Linux install guide:

  • https://docs.paperzilla.ai/guides/cli-getting-started
Raw lines 58 to 62
63### Build from source (Go 1.23+)
64See the CLI repository for source builds:
66- https://github.com/paperzilla-ai/pz

Build from source (Go 1.23+)

See the CLI repository for source builds:

  • https://github.com/paperzilla-ai/pz
Raw lines 63 to 67
68## Update
70Check whether your CLI is up to date and get install-specific upgrade steps:
72```bash
73pz update
74```
76If detection is ambiguous, override it explicitly:
78```bash
79pz update --install-method homebrew
80pz update --install-method scoop
81pz update --install-method release
82pz update --install-method source
83```
85Supported values are `auto`, `homebrew`, `scoop`, `release`, and `source`.

Update

Check whether your CLI is up to date and get install-specific upgrade steps:

pz update

If detection is ambiguous, override it explicitly:

pz update --install-method homebrew
pz update --install-method scoop
pz update --install-method release
pz update --install-method source

Supported values are auto, homebrew, scoop, release, and source.

Raw lines 68 to 86
87## Authentication
89```bash
90pz login
91```
93Login sends a one-time code to the account email and saves the session locally.
94Complete it interactively before running JSON exports: missing or expired
95credentials can trigger login prompts on stdout. The CLI checks account access
96and refreshes tokens automatically; report access/upgrade errors rather than
97treating them as an empty feed.
99**Version-specific discrepancy:** the online guides describe anonymous canonical
100paper access, but the 0.7.1 binary requires login and a CLI-access check even for
101`pz paper`. Its subsequent canonical-paper HTTP request uses a public route. Do
102not promise an anonymous CLI workflow for this release.

Authentication

pz login

Login sends a one-time code to the account email and saves the session locally. Complete it interactively before running JSON exports: missing or expired credentials can trigger login prompts on stdout. The CLI checks account access and refreshes tokens automatically; report access/upgrade errors rather than treating them as an empty feed.

Version-specific discrepancy: the online guides describe anonymous canonical paper access, but the 0.7.1 binary requires login and a CLI-access check even for pz paper. Its subsequent canonical-paper HTTP request uses a public route. Do not promise an anonymous CLI workflow for this release.

Raw lines 87 to 103
104## CLI reference
106If the current profile uses `pz`, these are the core commands.

CLI reference

If the current profile uses pz, these are the core commands.

Raw lines 104 to 107
108### List projects
109```bash
110pz project list
111pz project list --json
112```

List projects

pz project list
pz project list --json
Raw lines 108 to 113
114### Show one project
115```bash
116pz project <project-id>
117pz project <project-id> --json
118```
120The list JSON is an array containing `id`, `name`, `mode`, and `visibility`.
121The single-project JSON also includes keywords, watched sources, and categories.

Show one project

pz project <project-id>
pz project <project-id> --json

The list JSON is an array containing id, name, mode, and visibility. The single-project JSON also includes keywords, watched sources, and categories.

Raw lines 114 to 122
123### Browse project feed
124```bash
125pz feed <project-id>
126```
128Useful flags:
129- `--must-read`
130- `--since YYYY-MM-DD`
131- `--limit N`
132- `--offset N` (zero-based results to skip)
133- `--json`
134- `--atom`
136Examples:
137```bash
138pz feed <project-id> --must-read --since 2026-03-01 --limit 5
139pz feed <project-id> --limit 20 --offset 20 --json
140pz feed <project-id> --json
141pz feed <project-id> --atom
142```
144`--since` filters when recommendations were ready, not paper publication date.
145Browse JSON contains `items`, `total`, `limit`, and `offset`. A command fetches
146one page; it does not export the entire feed automatically. Retain the same
147filters, advance from the returned offset by the number of items received, and
148stop on an empty page or when the returned total is reached. Deduplicate by
149recommendation ID if the live feed changes while paging.
151Feed output can include existing recommendation feedback markers:
153- `[↑]` upvote
154- `[↓]` downvote
155- `[★]` star

Browse project feed

pz feed <project-id>

Useful flags:

  • --must-read
  • --since YYYY-MM-DD
  • --limit N
  • --offset N (zero-based results to skip)
  • --json
  • --atom

Examples:

pz feed <project-id> --must-read --since 2026-03-01 --limit 5
pz feed <project-id> --limit 20 --offset 20 --json
pz feed <project-id> --json
pz feed <project-id> --atom

--since filters when recommendations were ready, not paper publication date. Browse JSON contains items, total, limit, and offset. A command fetches one page; it does not export the entire feed automatically. Retain the same filters, advance from the returned offset by the number of items received, and stop on an empty page or when the returned total is reached. Deduplicate by recommendation ID if the live feed changes while paging.

Feed output can include existing recommendation feedback markers:

  • [↑] upvote
  • [↓] downvote
  • [★] star
Raw lines 123 to 156
157### Search the full project feed
159```bash
160pz feed search --project-id <project-id> --query "latent retrieval" --json
161pz feed search --project-id <project-id> --query "retrieval" --feedback-filter starred --must-read --limit 20 --offset 20 --json
162```
164Search ranks results across the whole project feed. Use a trimmed query of
1653–200 characters and a positive `--limit` up to 100. `--offset` must be
166nonnegative. Feedback filters are `all`, `unrated`, `liked`, `disliked`, `starred`,
167`not-relevant`, and `low-quality`; these hyphenated filters differ from the
168underscored downvote reasons below. Search does not accept `--since`.
170Search JSON contains `items`, `limit`, `offset`, `has_more`, and `query`, with no
171exact total. Request the next offset only while `has_more` is true, keeping the
172query and filters unchanged. Stop and report an inconsistent empty page rather
173than looping indefinitely. The second example illustrates a subsequent page.

Search the full project feed

pz feed search --project-id <project-id> --query "latent retrieval" --json
pz feed search --project-id <project-id> --query "retrieval" --feedback-filter starred --must-read --limit 20 --offset 20 --json

Search ranks results across the whole project feed. Use a trimmed query of 3–200 characters and a positive --limit up to 100. --offset must be nonnegative. Feedback filters are all, unrated, liked, disliked, starred, not-relevant, and low-quality; these hyphenated filters differ from the underscored downvote reasons below. Search does not accept --since.

Search JSON contains items, limit, offset, has_more, and query, with no exact total. Request the next offset only while has_more is true, keeping the query and filters unchanged. Stop and report an inconsistent empty page rather than looping indefinitely. The second example illustrates a subsequent page.

Raw lines 157 to 174
175### Read a canonical paper
176```bash
177pz paper <paper-id>
178pz paper <paper-id> --json
179pz paper <paper-id> --markdown
180pz paper <paper-id> --project <project-id>
181```

Read a canonical paper

pz paper <paper-id>
pz paper <paper-id> --json
pz paper <paper-id> --markdown
pz paper <paper-id> --project <project-id>
Raw lines 175 to 182
183### Open a recommendation from one of your projects
184```bash
185pz rec <project-paper-id>
186pz rec <project-paper-id> --json
187pz rec <project-paper-id> --markdown
188```

Open a recommendation from one of your projects

pz rec <project-paper-id>
pz rec <project-paper-id> --json
pz rec <project-paper-id> --markdown
Raw lines 183 to 189
190### Leave recommendation feedback
191```bash
192pz feedback <project-paper-id> upvote
193pz feedback <project-paper-id> star
194pz feedback <project-paper-id> downvote --reason not_relevant
195pz feedback clear <project-paper-id>
196```
198Feedback changes account data; use it when the user requests that change.
199Downvote reasons are `not_relevant` or `low_quality`, and `--reason` applies only
200to a downvote. Add `--json` to get the feedback object; clearing returns
201`{"project_paper_ref": "...", "cleared": true}`. `clear` is a subcommand before
202the recommendation ID.

Leave recommendation feedback

pz feedback <project-paper-id> upvote
pz feedback <project-paper-id> star
pz feedback <project-paper-id> downvote --reason not_relevant
pz feedback clear <project-paper-id>

Feedback changes account data; use it when the user requests that change. Downvote reasons are not_relevant or low_quality, and --reason applies only to a downvote. Add --json to get the feedback object; clearing returns {"project_paper_ref": "...", "cleared": true}. clear is a subcommand before the recommendation ID.

Raw lines 190 to 203
204## Keep paper and recommendation identities separate
206A canonical `paper-id` identifies the paper; a `project-paper-id` identifies its
207recommendation within a project. Take both from returned records and retain the
208project association when exporting results. Use the recommendation ID for `rec`
209and feedback operations, even if the same paper appears in several projects.
210In feed JSON, `items[].id`/`items[].short_id` are recommendation identifiers;
211`items[].paper.id`/`items[].paper.short_id` are canonical paper identifiers.
212Do not infer recommendation IDs from a DOI or canonical paper ID. See the
213[official CLI documentation](https://github.com/paperzilla-ai/pz).
215When markdown is still being prepared, report that state and summarize only the
216metadata or abstract actually returned. A retry message is not full-text evidence.

Keep paper and recommendation identities separate

A canonical paper-id identifies the paper; a project-paper-id identifies its recommendation within a project. Take both from returned records and retain the project association when exporting results. Use the recommendation ID for rec and feedback operations, even if the same paper appears in several projects. In feed JSON, items[].id/items[].short_id are recommendation identifiers; items[].paper.id/items[].paper.short_id are canonical paper identifiers. Do not infer recommendation IDs from a DOI or canonical paper ID. See the official CLI documentation.

When markdown is still being prepared, report that state and summarize only the metadata or abstract actually returned. A retry message is not full-text evidence.

Raw lines 204 to 217
218## Output and automation
220- Prefer `--json` for machine parsing after completing login. `paper` and `rec`
221 reject combining `--json` with `--markdown`.
222- `pz paper --markdown` only returns markdown when it is already prepared.
223- `pz rec --markdown` and project-scoped `pz paper --project ... --markdown`
224 can queue markdown generation. A pending message can exit successfully; check
225 the content before treating stdout as full text. Avoid repeated immediate
226 retries and report the pending state.
227- `--atom` returns a personal feed URL for feed readers and can create a feed
228 token. Anyone holding that URL can read the feed; keep its token out of logs,
229 public reports, and repositories. It does not return Atom XML or page JSON,
230 and browse filters are not applied to the generated URL.
231- A relevance score expresses project matching, not scientific validity or an
232 effect estimate. Label whether a summary used metadata, an abstract, or actual
233 markdown. Missing PDF URLs do not imply that a source landing page is absent.

Output and automation

  • Prefer --json for machine parsing after completing login. paper and rec reject combining --json with --markdown.
  • pz paper --markdown only returns markdown when it is already prepared.
  • pz rec --markdown and project-scoped pz paper --project ... --markdown can queue markdown generation. A pending message can exit successfully; check the content before treating stdout as full text. Avoid repeated immediate retries and report the pending state.
  • --atom returns a personal feed URL for feed readers and can create a feed token. Anyone holding that URL can read the feed; keep its token out of logs, public reports, and repositories. It does not return Atom XML or page JSON, and browse filters are not applied to the generated URL.
  • A relevance score expresses project matching, not scientific validity or an effect estimate. Label whether a summary used metadata, an abstract, or actual markdown. Missing PDF URLs do not imply that a source landing page is absent.
Raw lines 218 to 234
235## Configuration
237```bash
238export PZ_API_URL="https://paperzilla.ai"
239```
241The default already points to Paperzilla; change it only for a trusted service
242or a local test server. Authenticated requests send session credentials there.
243`PZ_TOKENS_PATH` optionally selects a session file; by default the CLI uses
244`~/.paperzilla/tokens.json`. Never export that file as research data.
246See [the verified CLI contracts](references/cli-contracts.md) for request routes,
247response shapes, pagination, and the documentation/source discrepancy.

Configuration

export PZ_API_URL="https://paperzilla.ai"

The default already points to Paperzilla; change it only for a trusted service or a local test server. Authenticated requests send session credentials there. PZ_TOKENS_PATH optionally selects a session file; by default the CLI uses ~/.paperzilla/tokens.json. Never export that file as research data.

See the verified CLI contracts for request routes, response shapes, pagination, and the documentation/source discrepancy.

Raw lines 235 to 248
Reads a file references/cli-contracts.md :246
249## References
251- Docs: https://docs.paperzilla.ai/guides/cli
252- Quickstart: https://docs.paperzilla.ai/guides/cli-getting-started
253- Repo: https://github.com/paperzilla-ai/pz

References

  • Docs: https://docs.paperzilla.ai/guides/cli
  • Quickstart: https://docs.paperzilla.ai/guides/cli-getting-started
  • Repo: https://github.com/paperzilla-ai/pz
Raw lines 249 to 253

From K-Dense-AI/scientific-agent-skills at 5f2bc03, 2026-10-26. Not read by a model yet. Summary and techniques by Claude Opus 5.5 on 2026-11-06.