feed-catchup

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese
You are helping the user catch up on their Readwise Reader RSS feed. Follow this process carefully.
你正在协助用户跟进他们的Readwise Reader RSS订阅源,请严格遵循以下流程操作。

Readwise Access

Readwise 访问权限

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.
检查是否有Readwise MCP工具可用(例如
mcp__readwise__reader_list_documents
)。如果可用,请全程使用这些工具;如果不可用,则改用等效的
readwise
CLI命令(例如
readwise list
readwise read <id>
readwise move <id> <location>
)。以下说明中提及的MCP工具名称,可根据需要替换为对应的CLI命令。

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.
  1. 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-persona
    first — but proceed without waiting. If you show this message, add
    · · ·
    after it.
  2. Fetch feed documents. Call
    mcp__readwise__reader_list_documents
    with
    location="feed"
    ,
    limit=20
    , and
    response_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 where
    first_opened_at
    is null (unseen). If you have fewer than 20 unseen items and a
    nextPageCursor
    is 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-side
    seen
    filtering — client-side
    first_opened_at
    check is required.)
  3. 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.
  4. 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.
重要提示——请在执行其他操作前,一次性并行完成以下步骤: 同时调用
ToolSearch
,查询关键词为
"readwise list documents"
,并读取
reader_persona.md
文件。这两个操作必须在同一条消息中作为并行工具调用完成。ToolSearch会加载延迟的Readwise MCP工具,以便你直接调用。切勿使用任务/子代理来获取订阅源数据——这种方式的开销会导致启动速度极慢。
  1. 检查用户角色文件(已在上述并行步骤中完成)。在整个会话过程中使用该文件来个性化评论和内容选择。如果不存在该角色文件,请简要说明订阅源跟进的个性化程度会降低,并建议先运行
    build-persona
    命令——但无需等待,直接继续操作。如果显示此提示消息,请在末尾添加
    · · ·
  2. 获取订阅源文档。调用
    mcp__readwise__reader_list_documents
    ,参数设置为
    location="feed"
    limit=20
    response_fields=["title", "author", "category", "word_count", "reading_time", "summary", "url", "site_name", "published_date", "saved_at", "first_opened_at"]
    。返回的文档按保存时间从新到旧排序。筛选出
    first_opened_at
    为null的项目(即未读项)。如果未读项不足20个且返回了
    nextPageCursor
    ,则继续分页获取,直到收集到20个未读项或没有更多游标为止。将所有未读项存储在内存中。(注意:列表API不支持服务端的“已读”筛选——必须在客户端通过检查
    first_opened_at
    来实现。)
  3. 如果确实没有剩余未读项:只有当你分页浏览了多个页面且未找到任何未读项时,才能宣布订阅源已全部跟进完成。这种情况下,请简要说明并结束会话。
  4. 挑选Top 5内容。从收集到的未读项中,根据用户角色文件(如果可用)或通用内容质量,选择5个最值得阅读的内容。优先选择:高信息密度的见解、与用户当前兴趣直接相关的内容、从业者的第一手经验分享,以及新颖的主题。

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"}):
#TitleSourceTimeWhy
1Titlesite_namereading_timeOne-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
请严格按照以下格式展示概览内容:
📡 Reader订阅源
{1-2句话说明你查看的内容和亮点——例如:"已扫描最近20条未读项,AI和软件架构类内容占比最高,其中有几个值得重点关注的内容。"}
今日精选 (涵盖{易读的时间范围,例如"过去8小时"或"2月24日-26日"})
序号标题来源阅读时长入选理由
1标题site_namereading_time一句话说明入选原因
2............
{1-2句话对精选内容进行整体评论——例如内容的模式,或这5个内容入选的具体原因。}
· · ·
是否要对这些内容执行操作,或者浏览全部未读项?
  • Later N / Inbox N / Shortlist N / Archive N — 移动指定精选内容
  • Show N — 获取更详细的摘要
  • Read N — 在Reader中打开
  • Browse all — 分批浏览所有未读项,每批20条

Browse Loop

浏览循环

If the user says "browse all" (or similar), enter the batch-by-batch loop. Present unseen items 20 at a time:
如果用户说“browse all”(或类似表述),则进入分批浏览循环。每次展示20条未读项:

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.
#TitleSourceTimeSummary
1Titlesite_namereading_timeBrief 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.
在表格上方添加一行,说明当前批次涵盖的时间范围,例如*"2月26日 15:00-23:00""过去4小时"*——该时间范围由当前批次中各项的
saved_at
值推导而来。
序号标题来源阅读时长摘要
1标题site_namereading_time来自元数据的简短摘要——一句话,过长则截断
2............
表格下方添加一段简短评论(1-2句话),说明当前批次内容相对于用户兴趣的亮点。

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")
  • Mark all seen — 将当前批次的所有标记为已读,并加载下一批20条内容
  • Later N — 将指定内容移至
    later
    文件夹。简要确认后继续。
  • Later N, N, N — 将多个指定内容移至
    later
    文件夹。简要确认。
  • Inbox N / Shortlist N / Archive N — 将指定内容移至对应文件夹(
    new
    shortlist
    archive
    )。简要确认。
  • Show N — 使用
    mcp__readwise__reader_get_document_details
    获取完整内容。如果文档阅读时长在3分钟以内,直接展示完整内容——无需摘要;如果超过3分钟,则提供更详细的摘要,并给出阅读/跳过的理由。然后重新展示操作选项。
  • Read N — 提供Reader链接(
    https://read.readwise.io/read/{id}
    ),方便用户直接打开。
  • Stop / done — 结束会话,并简要总结处理情况(已标记为已读的数量、已移动的数量等)。

Handling Responses

响应处理

  • "Mark all seen" / "next" / "seen" — Call
    mcp__readwise__reader_bulk_edit_document_metadata
    with
    documents
    set 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
    later
    location. 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
    , or
    archive
    ). 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).
  • "Mark all seen" / "next" / "seen" — 调用
    mcp__readwise__reader_bulk_edit_document_metadata
    documents
    参数设置为
    [{document_id: <id>, seen: true}, ...]
    ,包含当前批次的所有文档。这是一次性调用,而非逐个文档调用。请勿移动或归档这些文档。然后展示下一批20条内容。
  • "Later N" — 将该文档移至
    later
    位置。简要确认后继续。
  • "Later N, N, N" — 将多个文档移至
    later
    位置。简要确认。
  • "Inbox N" / "Shortlist N" / "Archive N" — 将文档移至指定位置(
    new
    shortlist
    archive
    )。简要确认。
  • "Show N" — 使用
    mcp__readwise__reader_get_document_details
    获取完整内容。如果文档阅读时长≤3分钟,直接展示完整内容;如果>3分钟,提供更丰富的摘要,并附上阅读/跳过的理由。然后重新展示操作选项。
  • "Read N" — 提供Reader链接(
    https://read.readwise.io/read/{id}
    ),方便用户直接打开。
  • "Stop" / "done" — 结束会话,简要总结处理内容(已标记为已读的数量、已处理的内容数量等)。

Transitions

过渡效果

When loading the next batch, use
· · ·
as a visual separator before the next table.
加载下一批内容时,在新表格前使用
· · ·
作为视觉分隔符。