给 Bot 塞一个 RSS 订阅
现在的工具太难用了…所以…
Section titled “现在的工具太难用了…所以…”之前写的转发 Bot 本来只是拿来收私聊消息的,因为需要广告拦截功能,所以加了 LLM 审核,又为了节省一点 token,顺手加了黑白名单,为了防止别人被误封,又加了申诉,然后闲得没事又加了个 i18n…我草,怎么快2000行代码了,正好我用的RSS工具不怎么好用,为什么不顺便塞个 RSS 呢?kfb,总有一天你会变成一个功能巨多的 bot…
我的需求非常简单:朋友(见友链)的博客更新了,给我发一条 Telegram 消息就行。不需要做成什么信息流阅读器(因为我觉得现在的阅读器设计都挺丑的),几条命令,能够对 rss 列表进行一个增删改查以及基本的收发就够了,所以:
/rss_add # 添加/rss_list # 列出/rss_remove # 删除/rss_refresh # 刷新/rss_title # 改名
神秘的 RSS 生成
Section titled “神秘的 RSS 生成”这是一个比较理想的 item:
<item> <title>文章标题</title> <link>https://example.com/post</link> <guid>https://example.com/post</guid> <description>文章摘要</description> <pubDate>Fri, 08 May 2026 00:00:00 GMT</pubDate></item>然而每个站生成出来的东西都不完全一样,有的没有 content:encoded(比如冬夜没有这个),有的 guid 是链接,有的 guid 是神秘 ID
就比如,这是我的:
<item><title>test-2</title><link>https://kokosa.icu/zh-cn/blog/test-2/</link><guid isPermaLink="true">https://kokosa.icu/zh-cn/blog/test-2/</guid><description>这是一篇测试用的文章</description><pubDate>Fri, 08 May 2026 00:00:00 GMT</pubDate><content:encoded><p>省略114514字。。。</p></content:encoded><category>Test</category></item>我一直感觉在RSS里塞整篇文章是非常蠢的,于是现在已经改掉了
推送历史文章,享受刷屏快感()
Section titled “推送历史文章,享受刷屏快感()”第一次添加 RSS 的时候肯定不能直接把所有文章都推过来,毕竟是消息 bot。有些博客 RSS 会放几十篇文章(而且我都看过了),一加订阅就刷满屏,所以第一次添加订阅时会先抓一次 feed,把当前已有文章全部记录为已读,但是不发送。之后定时刷新发现新 item,才会发通知:
[RSS] Kokosa's Blog
给 Bot 塞一个 RSS 订阅https://kokosa.icu/zh-cn/blog/2-tgbot-rss.md
Summary: 给转发 Bot 添加 RSS 订阅提醒,支持定时刷新、去重和 AI 摘要。Cloudflare Cron
Section titled “Cloudflare Cron”Worker 不是常驻服务,所以想要定时刷新就得在 wrangler.toml 里写个这玩意:
[triggers]crons = ["*/30 * * * *"]每 30 分钟检查一次,为了方便测试我加了一个手动的:
/rss_refresh然后我发现手动刷新可能和 Cron 刚好撞车,所以需要一个 KV lock,要不两个刷新任务同时刷到可能就发两遍了

AI 生成文章摘要
Section titled “AI 生成文章摘要”既然之前就接入了 Gemini,那通知怎么能只发一个链接呢!于是又让它总结一下文章。之前设置的内容审核的超时时间只有 4 秒,因为审核只需要输出 SAFE 或 UNSAFE 就够了,而摘要要考虑的就多了。所以摘要单独给了 20 秒超时,失败的话最多就是:
Summary: AI summary unavailable.链接还是会照常发
光速 Vibe 完了才发现,我是不是可以搞个 OpenClaw、Hermes 之类的东西帮我干这些(kfb,你崛起罢,,超越龙虾指日可待,,,)