SuperAPI AI 工具集

digest

写作与研究

查看项目

更新于 10-15 10:06

技能介绍

digest 是一个生成并发送每日摘要的技能,主题可配置,并可选择性地把 RSS/Atom 订阅源作为输入来源,与网页搜索和 X(Twitter)信号一起使用。

用途 该技能的核心目标是提供“信号而非数量”。它面向快速浏览的读者,希望在 60 秒内获得三条当天早上还不知道的信息,其中至少一条应能改变读者本周的决策。任何达不到这一标准的条目都会被剔除。

主题与来源选择 技能通过一个变量(${var})选择摘要主题和来源类别,语法如下:

  • 空字符串:使用摘要的默认来源(WebSearch + xAI/Grok + 聚合器),不做主题过滤,生成宽泛的每日摘要。
  • "<topic>":基于默认网页来源做主题聚焦摘要,过滤到该主题(例如 "solana"、"AI agents"、"rust")。
  • "rss":仅使用 RSS,从 memory/feeds.yml 拉取订阅源,不做主题过滤。
  • "rss: <topic>":仅使用 RSS,并按主题过滤(例如 "rss: rust")。
  • "<topic> +rss":默认网页来源与 RSS 订阅源合并,两者都按主题过滤(例如 "AI agents +rss")。

主要能力与流程 技能按阶段执行:

  1. 采集:从所选来源类别广泛收集候选。网页来源包括 WebSearch(至少两个不同查询)和通过 Grok 的 xAI x_search 获取 X/Twitter 信号;RSS 来源从 memory/feeds.yml 读取订阅源,抓取最近 24 小时的条目。目标是约 15 个原始网页候选,少于 8 个视为警告信号。
  2. 过滤:合并所有候选,剔除无来源链接、超过 36 小时、纯猜测或热点评论、最近 3 天日志已覆盖、以及同一事件重复来源的条目。目标保留约 5–8 条。
  3. 提炼与结构化:挑选 3–5 条最强条目,以最具可操作性的一条开头,按重要性递减排列。输出为 Markdown,无表情符号,无“这是您的摘要”之类的开场白。统一格式总长度不超过 3000 字符;仅 RSS 运行时可使用按订阅源名称分组的分组布局,长度不超过 4000 字符。每条包含标题、摘要和链接,能写出具体后果时附“Why it matters”一行。
  4. 发送前自检:检查首条是否最具可操作性、链接是否真实、是否有可验证事实、是否有重复故事、字符数是否超限、是否混入表情符号或模糊措辞。
  5. 发送与记录:将摘要正文写入文件(如 /tmp/digest.md),用 ./notify -f /tmp/digest.md 发送,并追加日志到 memory/logs/${today}.md,同时更新 memory/MEMORY.md 的“Recent Digests”表。

X 信号获取 XAI_API_KEY 被注入到技能环境中,是获取 X 信号层的主要路径:直接 curl 到 https://api.x.ai/v1/responses,使用 Authorization: Bearer {XAI_API_KEY}。Grok 的 x_search 通常需要 30–120 秒,Bash 工具超时至少设为 180000,curl 的 --max-time 设为 150。仅在真实失败时回退到 WebFetch/WebSearch,并记录真实原因(key-unset、http-<code>、empty、timeout)。

RSS 配置 当来源包含 rss 时,技能从 memory/feeds.yml 读取订阅源 URL。若文件不存在,可创建它,格式为:

memory/feeds.yml

feeds:

  • name: Example Feed url: https://example.com/rss
  • name: Another Feed url: https://example.com/atom.xml

适用场景 适用于需要每日跟踪特定主题(如加密货币、AI 智能体、编程语言等)动态的用户,或希望把 RSS 订阅与网页、X 信号合并成一份优先级列表的用户。也适用于仅依赖 RSS 的轻量摘要场景。

限制与约束

  • 绝不发送带占位链接或“TBD”部分的摘要。
  • 绝不为了凑数而编造条目;少量优质条目优于大量弱条目。
  • 绝不重复最近 3 天日志中已有的故事,除非有实质性更新,且需明确说明。
  • 新闻稀少时(少于 3 条达标),记录 DIGEST_FETCH_EMPTY 或 DIGEST_THIN 并跳过通知,而不是填充内容。
  • 仅 RSS 运行且所有订阅源无新条目时,记录 RSS_DIGEST_OK 并结束,不发送通知。
  • 通知渠道通过仓库密钥配置(见 CLAUDE.md)。
  • XAI_API_KEY 整体为可选;若未设置,摘要仍可仅靠网页和 RSS 来源运行。

其他事实(如具体收费、价格、平台支持范围)暂未提供。