- name
- paperzilla-monitor
- description
- Monitor and discuss research papers from one Paperzilla project using the
pzCLI inside OpenClaw. Use when users want recent papers, metadata, markdown-based summaries, why a paper matters for current work, a recurring weekday brief, or Paperzilla feed triage in chat. - version
- 1.1.4
- homepage
- https://docs.paperzilla.ai/guides/cli
- license
- MIT
- allowed-tools
- [exec, message]
- metadata
- skill-author
- Paperzilla Inc
- openclaw
- requires
- bins
- ["pz"]
- config
- homepage
- https://docs.paperzilla.ai/guides/cli
Paperzilla research briefs
Use this skill when the user wants one of these two workflows:
on_demand_discussion: discuss the latest papers from one Paperzilla project, inspect one paper, fetch markdown, summarize it, explain why it matters for "our work", and continue the discussionweekday_brief: produce one concise weekday research brief for one Paperzilla project
This is a workflow skill built on top of the same Paperzilla access layer as the core paperzilla skill. It should feel opinionated and repeatable.
Prerequisites
- Ensure
pzCLI is installed and authenticated (pz loginalready done). - Use OpenClaw tools:
- exec for pz commands - message only when the user explicitly asks to deliver a digest/summary to a chat, or when the current profile explicitly requires scheduled external delivery
If pz is missing, run which pz and tell the user setup is required before continuing.
Security model
- This skill is primarily a Paperzilla read/triage skill.
- It may use the
messagetool only for profile-approved delivery behavior or explicit user-requested delivery. - It must not send unsolicited or proactive messages outside the profile's delivery rules.
- It must not read arbitrary system files, unrelated environment variables, or unrelated credentials.
- It assumes
pzis already installed and authenticated by the human viapz login. - It assumes OpenClaw messaging is already configured by the host platform. The skill does not acquire, mint, or modify credentials.
What this skill needs
- One Paperzilla project
- One short sentence for "our work" if that context is not already known
If either is missing, ask once and then reuse it for the rest of the workflow.
Examples:
Project: Agents evaluationOur work: we build evaluation infrastructure for coding agents.
Transport rules
Follow the transport required by the current profile.
CLI profiles
Use the Paperzilla CLI (pz).
Core commands:
pz project list
pz project <project-id>
pz feed <project-id> --limit 20 --json
pz rec <project-paper-id> --json
pz rec <project-paper-id> --markdown
pz paper <paper-id> --json
pz paper <paper-id> --markdown
pz paper <paper-id> --project <project-id>
pz feedback <project-paper-id> upvote
pz feedback <project-paper-id> star
pz feedback <project-paper-id> downvote --reason not_relevant
pz feedback <project-paper-id> downvote --reason low_quality
pz feedback clear <project-paper-id>Use --json whenever you need structured feed or metadata parsing.
Keep the Paperzilla object model straight:
pz paper <paper-ref>= canonical paperpz rec <project-paper-ref>= recommendation inside one projectpz feedback <project-paper-ref> ...= project-specific feedback on that recommendation
When an item comes from pz feed --json, prefer pz rec and pz feedback over pz paper.
CLI markdown behavior differs by command:
pz rec --markdowncan queue markdown generation and prints a friendly retry message when it is still being preparedpz paper --markdownonly returns markdown when it is already ready
MCP profiles
Use the Paperzilla MCP tools directly.
Core tools:
projects_listprojects_getfeed_getpaper_getpaper_markdown
Preferred sequence:
projects_listwhen the project is missing or ambiguousprojects_getto confirm project identity when neededfeed_getto pull the latest feed itemspaper_getfor one paper's metadatapaper_markdownfor markdown-backed analysis
Handle paper_markdown statuses correctly:
ready: use the markdownqueued: tell the user it is still being prepared and suggest retrying shortlyunavailable: report that markdown is not currently available
Shared behavior rules
- Treat Paperzilla relevance and ranking as a strong prior, not the final answer.
- Use Paperzilla terms exactly:
project,feed,Must Read,Related. - Name the exact paper or recommendation identifier you used when you inspect one paper.
- Separate metadata from interpretation.
- Explain relevance in terms of the user's actual work, not generic importance.
- Do not dump full markdown unless the user explicitly asks for it.
- Do not switch to arXiv HTML/abs links as the default fallback when the request was specifically for Paperzilla markdown.
Mode 1: on-demand discussion
Use this mode when the user wants an interactive paper conversation in chat.
Workflow
- Resolve the project and the "our work" context.
- Pull the latest papers from that project's feed.
- Show a short list of the newest or strongest candidates.
- When the user picks one paper, return metadata first.
- Fetch markdown for that paper or recommendation.
- Summarize:
- contribution - method - results - limits - why it matters for our work
- Continue the discussion and make a recommendation such as:
- read now - keep as Related - ignore this week
Output contract
For the first feed reply, include:
- project name
- the papers you checked
- per paper: title, date, source, and whether it looks
Must ReadorRelated
For the metadata reply, include:
- title
- authors
- publication date
- source
- URL
- the exact Paperzilla paper ID or project-paper ID used
For the markdown reply, include:
- contribution
- method
- results
- limits
- why it matters for our work
Mode 2: weekday brief
Use this mode when the user wants one concise recurring brief for one project.
Workflow
- Resolve the project and the "our work" context.
- Load the per-project history of papers already proposed in earlier weekday briefs.
- Pull the newest papers from the feed.
- Exclude papers that were already proposed in earlier weekday briefs unless the user explicitly asked to revisit them.
- Select the remaining papers worth mentioning.
- For each selected paper, give:
- one short summary - one sentence on why it is relevant to our work
- After drafting or sending the brief, append the exact Paperzilla IDs used for the selected papers to that project's proposed-paper history.
- If no new papers qualify, say that explicitly.
Output contract
Every weekday brief should include:
- project name
- date
- how many new papers were checked
- for each selected paper:
- title - one short summary - one sentence on why it is relevant to our work
- a clear
No new papers today.line when nothing new qualifies
Keep the brief concise and easy to scan.
For recurring runs, the agent must keep a persistent per-project record of the exact Paperzilla IDs already proposed in earlier briefs. Do not propose the same paper again in a later recurring brief unless the user explicitly asked to revisit it.
Feedback loop on request
If the user wants to tune future recommendations:
- Use
pz feedback ...on the recommendation ID. - Explain that feedback is project-specific.
- Use:
- upvote for positive signal - star for strongest positive signal - downvote --reason not_relevant for topical mismatch - downvote --reason low_quality for weak paper quality - feedback clear to remove prior signal
Edge cases
- No project given: ask once, then continue.
- No "our work" context: ask once for one short sentence, then reuse it.
- No prior brief history: treat the run as the first brief for that project, initialize an empty proposed-paper history, and persist the papers selected this time.
- No new papers: report that clearly instead of padding the brief.
- Large feed: use a sensible limit first, then expand only if needed.
- Markdown delay: retry more than once when the user explicitly asked for markdown. Prefer a short polling loop over an immediate fallback.
- Ambiguous paper ID: fall back to the full UUID or clearly restate the paper you selected.
- External delivery requests: if the user did not explicitly ask for delivery and the profile does not require delivery, do not use the
messagetool. - Canonical vs recommendation confusion: if an ID came from
pz feed --json, assume it is a recommendation ID unless shown otherwise.
Agent-specific rules
Read and follow any packaged AGENT.md file for the current profile. The profile file defines the chat surface, delivery surface, and scheduling behavior.