Skip to content
Agentmart
Submit a tool

rss-health-check

定期检查 RSS 订阅源健康状态,发现异常源时推送 Telegram 通知

Skill by hazewarm

IndexedMIT★ 1
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/hazewarm-rss-health-check

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

定期检查 RSS 订阅源健康状态,发现异常源时推送 Telegram 通知

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/rss-health-check

What's inside

Skill name
rss-health-check
Description
定期检查 RSS 订阅源健康状态,发现异常源时推送 Telegram 通知
License
MIT
Instructions
98 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

## 目标

后台定期检查所有 RSS 订阅源是否正常工作。如果某个 feed URL 不可达、源站返回错误或 feed 解析失败,通过 Telegram 推送通知用户。如果之前异常的 feed 恢复了,也通知用户。

## 工作文件

- skills/rss-health-check/state.md:上次检查结果记录(异常 feed 列表和检查时间)

## 工作流程

### 1. 挂载 RSS MCP 工具

mount_server server=rss

### 2. 获取订阅源列表

调用 mcp_rss__list_feeds() 获取所有已订阅的 feed 列表。解析 JSON,提取每个 feed 的 id、title、url、last_fetched。

### 3. 刷新所有订阅源

调用 mcp_rss__refresh_feeds()(不传 feed_id,刷新全部)。解析返回的 JSON,提取:

- `refreshed`:成功刷新的数量
- `skipped`:跳过的数量(正常,可能是 15 分钟内刚刷新过)
- `new_posts`:新文章数
- `errors`:失败的 feed 列表(关键字段)

errors 中每个元素可能包含 feed 的 name/url 和错误原因(连接超时、HTTP 错误、DNS 失败、解析错误等)。

### 4. 读取上次状态

read_file skills/rss-health-check/state.md。如果不存在,说明是首次运行,视作之前没有异常 feed。

state.md 格式(自行维护):
```
last_check: 2026-06-27T10:00:00
total_feeds: 5
broken_feeds:
  - title: 某订阅源
    url: https://example.com/feed.xml
    error: 连接超时
    since: 2026-06-25T08:00:00
```

### 5. 分析与决策

将本次 errors 中的 feed 与 state.md 中上次记录的 broken_feeds 对比:

**需要推送通知的情况:**
- 本次发现新的异常 feed(上次正常的,这次坏了)
- 之前异常的 feed 本次恢复了(在 errors 中消失了)

**不需要推送的情况:**
- 一切正常(errors 为空,之前也没有 broken_feeds)
- 异常 feed 跟上次完全一样,没有新变化(避免重复骚扰)

### 6. 更新状态文件

write_text_file 将本次检查结果写回 skills/rss-health-check/state.md,包含最新的检查时间、feed 总数和 broken_feeds 列表。

### 7. 推送通知(仅在需要时)

如果第 5 步判定需要推送,调用 message_push 发送通知。

消息用中文,简洁清晰,格式参考:
```
🔍 RSS 健康检查

⚠ 新增异常源:
• 知乎热榜 — 连接超时
  https://rsshub.app/zhihu/hotlist

✅ 已恢复:
• GitHub Trending(之前连接超时)

5 个源中 1 个异常。
```

如果本次无需推送,不要调用 message_push。

### 8. 收尾

如果推送了消息:
  finish_drift(skill_used="rss-health-check", one_line="发现 N 个异常源,已推送通知", next="下次检查时对比异常是否恢复", message_result="sent")

如果未推送:
  finish_drift(skill_used="rss-health-check", one_line="所有 RSS 源正常", next="继续定期检查", message_result="silent")

## 要求

- 不要对已经正常的 feeds 做额外操作(不调用 remove_feed、add_feed 等修改性工具)
- 如果 refresh_feeds 因为最小刷新间隔被跳过且无 errors,视为正常
- 优先使用 refresh_feeds 返回的 errors 字段判断异常
- 只在本轮服务,不要等待或确认——每次 drift 运行是独立的
- 消息必须用中文,格式简洁清晰
- 只在出现新异常或旧异常恢复时才推送,重复的异常不要反复推送

From hazewarm/raven-agent, MIT.

Signals

Stars
1
Forks
0
Open issues
0
Last commit (this folder)
Jun 29, 2026 (4 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from hazewarm

Cite this page

rss-health-check skill. Agent Mart. https://agentmart.dev/skills/hazewarm-rss-health-check (last updated 2026-10-24)