
- Installs
- 501
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/readwiseio/readwise-skills --skill feed-catchup- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads feed-catchup automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
You are helping the user catch up on their Readwise Reader RSS feed. Follow this process carefully.
Readwise Access
Check if Readwise MCP tools are available (e.g. mcp__readwise__reader_list_documents). If they are, use them throughout. If not, use the equivalent readwise CLI commands instead (e.g. readwise list, readwise read <id>, readwise move <id> <location>). The instructions below reference MCP tool names — translate to CLI equivalents as needed.
Setup
IMPORTANT — do this in a single parallel turn before anything else:
Call ToolSearch with query "readwise list documents" AND read reader_persona.md at the same time. Both must happen in the same message as parallel tool calls. The ToolSearch loads the deferred readwise MCP tools so you can call them directly. Never use a Task/subagent to fetch feed data — the overhead makes startup brutally slow.
-
Check for persona file. (Done in parallel above.) Use it throughout the session to personalize commentary and picks. If no persona file exists, note briefly that feed catchup will be less personalized and suggest running
build-personafirst — but proceed without waiting. If you show this message, add· · ·after it. -
Fetch feed documents. Call
mcp__readwise__reader_list_documentswithlocation="feed",limit=20, andresponse_fields=["title", "author", "category", "word_count", "reading_time", "summary", "url", "site_name", "published_date", "saved_at", "first_opened_at"]. Documents come back most-recently-saved first. Filter to items wherefirst_opened_atis null (unseen). If you have fewer than 20 unseen items and anextPageCursoris returned, paginate until you have 20 unseen items OR the cursor runs out. Hold all unseen items in memory. (Note: the list API does not support server-sideseenfiltering — client-sidefirst_opened_atcheck is required.) -
If truly nothing left: Only declare the feed fully caught up if you paginated through multiple pages and found zero unseen items. In that case, say so briefly and end.
-
Pick the top 5. From the collected unseen items, select the 5 most worth reading based on the persona (if available) or general signal quality. Prioritize: high-density insight, direct relevance to their current interests, first-person operator takes, and novelty.
Opening Format
Render the overview exactly like this:
📡 Reader Feed
{1-2 sentences explaining what you looked at and what stood out — e.g. "Scanned the last 20 unseen items. AI and software architecture dominate, with a few standouts worth pulling."}
Today's picks (spanning {human-readable time range, e.g. "the last 8 hours" or "Feb 24–26"}):
| # | Title | Source | Time | Why |
|---|---|---|---|---|
| 1 | Title | site_name | reading_time | One-line reason this made the cut |
| 2 | ... | ... | ... | ... |
{1-2 sentences of commentary on the picks as a set — what the pattern is, or why these five in particular.}
· · ·
Want to act on any of these, or browse everything?
- Later N / Inbox N / Shortlist N / Archive N — move a pick
- Show N — get a deeper summary
- Read N — open in Reader
- Browse all — go through all unseen items in batches of 20
Browse Loop
If the user says "browse all" (or similar), enter the batch-by-batch loop. Present unseen items 20 at a time:
The Table
Before the table, add a single line with the time range covered by the batch, e.g. "Feb 26, 3:00–11:00 PM" or "last 4 hours" — derived from the saved_at values of the items in that batch.
| # | Title | Source | Time | Summary |
|---|---|---|---|---|
| 1 | Title | site_name | reading_time | Brief summary from metadata — one line, truncated if needed |
| 2 | ... | ... | ... | ... |
After the table, give a brief commentary (1-2 sentences) on the batch — what stands out relative to their interests.
Options
- Mark all seen — mark the batch as seen and load the next 10
- Later N — move to Later (you can also move to Inbox/Shortlist/Archive)
- Show N — get a deeper summary (or the full content if short)
- Read N — open in Reader
(You can act on multiple items at once, e.g. "later 2, 5, 8")
Handling Responses
- "Mark all seen" / "next" / "seen" — Call
mcp__readwise__reader_bulk_edit_document_metadatawithdocumentsset to[{document_id: <id>, seen: true}, ...]for every document in the current batch. This is a single call, not one per document. Do not move or archive them. Then display the next batch of 20. - "Later N" — Move that document to
laterlocation. Confirm briefly, then continue. - "Later N, N, N" — Move multiple documents to
later. Confirm briefly. - "Inbox N" / "Shortlist N" / "Archive N" — Move to the specified location (
new,shortlist, orarchive). Confirm briefly. - "Show N" — Fetch full content using
mcp__readwise__reader_get_document_details. If the document is 3 mins or under, show the full content verbatim — no summary. If over 3 mins, give a richer summary with why-read/why-skip reasoning. Then re-present the options. - "Read N" — Provide the Reader link (
https://read.readwise.io/read/{id}) so they can open it directly. - "Stop" / "done" — End the session with a brief summary of what was processed (how many seen, how many pulled).
Transitions
When loading the next batch, use · · · as a visual separator before the next table.
FAQ
What does the feed-catchup skill do?
Catch up on your RSS feed — highlights up top, full browse below
How do I install feed-catchup?
Run npx skills add https://github.com/readwiseio/readwise-skills --skill feed-catchup in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/feed-catchup/ (personal) or .claude/skills/feed-catchup/ (project).
Which AI agents can use feed-catchup?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is feed-catchup safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains feed-catchup?
It is published by readwiseio in readwiseio/readwise-skills. It has 501 recorded installs.
More from readwiseio/readwise-skills
quiz
readwiseio/readwise-skills
Quiz yourself on documents you've recently read to test understanding and retention
readwise-cli
readwiseio/readwise-skills
How to use the Readwise CLI — access highlights, documents, and your entire reading library from the command line
book-review
readwiseio/readwise-skills
Draft a long-form book review from your Reader highlights — synthesizing the book with your broader reading history to generate original arguments
reader-recap
readwiseio/readwise-skills
Conversational briefing on your recent reading — what you finished, what you highlighted, and what you had to say about it
build-persona
readwiseio/readwise-skills
Build a personalized reading profile from your Readwise Reader data, used by triage, quiz, and other skills
Popular other skills
hyperframes-cli
heygen-com/hyperframes
The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.
triage
mattpocock/skills
Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.
ask-matt
mattpocock/skills
Ask which skill or flow fits your situation. A router over the skills in this repo.
to-questionnaire
mattpocock/skills
Turn a decision you can't fully answer into a questionnaire for someone else to fill in.
loop-me
mattpocock/skills
Grill me about specs for the workflows I want to build, within this workspace.