arxiv-digest
Fetch daily arXiv announcements (cs.RO), filter by research relevance, generate a structured markdown digest, and sync matched papers to a Zotero collection with arXiv PDFs attached.
Best use case
arxiv-digest is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Fetch daily arXiv announcements (cs.RO), filter by research relevance, generate a structured markdown digest, and sync matched papers to a Zotero collection with arXiv PDFs attached.
Teams using arxiv-digest should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
How arxiv-digest Compares
| Feature / Agent | arxiv-digest | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Fetch daily arXiv announcements (cs.RO), filter by research relevance, generate a structured markdown digest, and sync matched papers to a Zotero collection with arXiv PDFs attached.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# arXiv Daily Digest
All paths below are relative to this skill's root directory.
## Quick reference
| Item | Value |
|------|-------|
| **Categories** | `cs.RO` |
| **Announce types** | `new` and `cross` only (`replace` / `replace-cross` are ignored) |
| **Zotero collection** | personal library → `arxiv-digest` (auto-created if absent) |
| **Credentials** | `.secret/zotero.env` (`ZOTERO_API_KEY`, `ZOTERO_USER_ID`) |
| **Digest output** | `digests/YYYY-MM-DD.md` |
| **Intermediate data** | `data/papers.json`, `data/relevance.json` |
---
## Invocation protocol
This is a **three-step** skill. Execute the steps in order.
All shell commands assume the working directory is the skill root.
### Step 1 — Fetch papers
```bash
source .venv/bin/activate
python src/main.py fetch
```
Fetches the arXiv RSS Atom feed for `cs.RO`, enriches each paper with
metadata from the arXiv Search API, filters to `new` and `cross`
announcements, and writes the result to `data/papers.json`.
### Step 2 — Judge relevance
Read `data/papers.json`. For **every** paper, judge whether it is
relevant to the research interests defined below based on its **title
and abstract**. Write the verdicts to `data/relevance.json`.
**You MUST use LLM subagents to perform this judgment.** Do NOT apply
keyword matching, heuristics, or any rule-based pre-filtering. Every
paper must be evaluated by an LLM against the research interest
descriptions below.
To avoid timeouts, split the papers into batches of **≤ 30 papers**
and process batches in parallel via subagents. Each subagent receives a
batch and returns a JSON array of verdicts.
#### Output format for `data/relevance.json`
```json
[
{
"arxiv_id": "2603.01234",
"is_relevant": true,
"theme": "theme_a",
"reason": "One-sentence explanation of why this paper is relevant"
},
{
"arxiv_id": "2603.01235",
"is_relevant": false,
"theme": null,
"reason": ""
}
]
```
The file must contain an entry for **every** paper in `data/papers.json`,
including irrelevant ones (`is_relevant: false`).
#### Research interests
**Theme A — NL → Atomic Capability Planning / Execution**
Given atomic capabilities (simple or expert) and a natural-language
command, algorithms that schedule, plan, and execute the atomic actions
to achieve high accuracy and efficiency.
Includes: LLM-based planners / agents, hierarchical policies / skills,
tool-use / skill composition, task planning, task-and-motion planning,
verification and safety for action execution.
**Theme B — Edge-Efficient Robot Learning Inference**
Proposals enabling fast, in-time inference of robot learning algorithms
(planning or action policy) on edge platforms, via platform-based
optimisation or special network design.
Includes: acceleration / compilation / runtime optimisations,
quantisation / distillation, latency-aware architecture design,
efficient VLA / VLM policy inference.
#### Filtering guidelines
- Target **balanced precision and recall**.
- A paper must clearly address one of the two themes to be marked
relevant. Tangentially related work (e.g. general LLM reasoning
without robotic application, generic model compression without
edge / robotics context) should be marked **irrelevant**.
- Judge based on **both title and abstract**.
### Step 3 — Process, digest, and sync
```bash
source .venv/bin/activate # if not already active
python src/main.py process --relevance data/relevance.json
```
This command:
1. Loads `data/papers.json` and `data/relevance.json`.
2. Enriches each relevant paper with **venue** information (arXiv
metadata and, when needed, project-page HTML) and **project page**
URL (extracted from abstract / comments).
3. Writes a structured markdown digest to `digests/YYYY-MM-DD.md`.
4. Adds each paper to Zotero (deduplicated by arXiv ID), with the
correct item type (`conferencePaper` / `journalArticle` / `preprint`)
and the arXiv PDF attached.
Append `--dry-run` to skip the Zotero sync (useful for testing).
#### Discord Components v2 Output
For Discord presentation, use the Components v2 formatter which generates
hierarchical, theme-grouped messages:
```python
from src.digest_writer import write_discord_components
# After loading papers and relevance data
messages = write_discord_components(relevant_papers, date_str="2026-03-19")
# Returns list of component payloads, one per theme
```
**Format features:**
- One Discord message per theme (Theme A / Theme B)
- Unicode bullets (•) with fullwidth spaces (U+3000) for visual hierarchy
- Bold `•` for paper titles, indented `•` for arXiv links, venues, and relevance reasons
- Project page links shown inline when available
After this step, **present the contents of `digests/YYYY-MM-DD.md`** to
the user as the daily report.
---
## Scheduling notes
- The arXiv RSS feed updates **daily around midnight US Eastern Time**
(~13:00 GMT+8 during EST, ~12:00 GMT+8 during EDT).
- **No updates on Saturday or Sunday.** Monday's feed contains Friday's
submissions. This skill should not be invoked on weekends.
- Invoke this skill once daily, after the RSS feed has updated.
---
## Setup
A Python virtual environment is used to isolate dependencies.
```bash
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt -i https://mirrors.ustc.edu.cn/pypi/web/simple
```
If the venv already exists, just activate it before running commands:
```bash
source .venv/bin/activate
```
Ensure `.secret/zotero.env` contains:
```
ZOTERO_API_KEY=<your key>
ZOTERO_USER_ID=<your user id>
```
---
## Attribution
Thank you to arXiv for use of its open access interoperability.Related Skills
arxiv-cli
统一 arXiv CLI 技能。通过 `arxiv <subcommand>` 完成搜索、初始化、阅读、复现、实验、部署与贡献全流程。
arxiv-researcher
arXiv 科研与工程实验室(统一 CLI 版)。 在 Claude Code 中通过自然语言或 `arxiv <subcommand>` 完成论文发现、初始化、精读、复现、工程化与贡献闭环。 关键词:arXiv、paper、research、reproduce、工程化、复现、开源贡献。
rss-digest
Fetch RSS feeds and generate AI-summarized daily digests
x-followings-digest
Auto-fetch latest tweets from your X/Twitter followings and generate structured AI digest. Supports custom time ranges: 1 day, 3 days, 7 days, or custom. 自动抓取X/Twitter关注列表的最新推文,并使用AI分析师提示词生成结构化日报。支持自定义时间段:1天、3天、7天或自定义天数。 **Trigger Words:** - "summarize my followings", "X digest", "Twitter summary", "tweets from last 3 days", "weekly summary" **触发词:** - "总结关注列表", "X日报", "Twitter摘要", "过去3天的推文", "一周摘要" **Prerequisites:** X auth via AUTH_TOKEN & CT0 env vars
newsletter-digest
Summarize newsletters and articles, extract key insights, create reading lists
tech-news-digest
Generate tech news digests with unified source model, quality scoring, and multi-format output.
media-news-digest
Generate media & entertainment industry news digests.
hn-digest
Fetch and send Hacker News front-page posts on demand. Use when the user asks for HN, says 'hn', 'pull HN', 'hn 10', or specifies a topic like 'hn health', 'hn hacking', or 'hn tech'. Sends N (default 5) posts as individual messages with Title + Link. Exclude crypto.
arxivkb
Local arXiv paper manager with semantic search.
agentarxiv
Outcome-driven scientific publishing for AI agents. Publish research papers, hypotheses, and experiments with validated artifacts, structured claims, milestone tracking, and independent replications. Claim replication bounties, submit peer reviews, and collaborate with other AI researchers.
email-digest
Configure, test, and troubleshoot the reading-list daily email digest delivered via nodemailer.
Skill: email-digest-builder
Use email-digest-builder to manage feeds, topics, and digest delivery through the REST API.