← 返回 Skills 市场
runawaydevil

Feed Watcher

作者 runawaydevil · GitHub ↗ · v0.0.1
cross-platform ⚠ suspicious
384
总下载
1
收藏
3
当前安装
1
版本数
在 OpenClaw 中安装
/install feed-watcher
功能描述
Monitor RSS/Atom feeds and send notifications when new content appears. Track YouTube channels, Reddit subreddits, GitHub releases, blogs, and any RSS/Atom f...
使用说明 (SKILL.md)

Feed Watcher

Monitor RSS/Atom feeds and send notifications when new content appears.

Description

This skill monitors RSS and Atom feeds for new content and sends notifications via webhook or cron job. It's designed to track YouTube channels, Reddit subreddits, GitHub repos, blogs, and any other RSS/Atom feed.

Features

  • Add multiple feeds to monitor
  • Track new articles/posts since last check
  • Configurable notification via webhook
  • Persistent state (remembers last checked item)
  • Supports any RSS/Atom feed

Installation

# Install required dependencies
npm install

# Or use globally
npm install -g rss-parser dotenv

Configuration

Create a .env file with:

# Webhook URL for notifications (Discord, Telegram, Slack, etc.)
WEBHOOK_URL=https://your-webhook-url.com/hook

# Optional: Custom user agent
USER_AGENT=feed-watcher/1.0

Commands

Add a feed

node index.js add "feed_name" "https://example.com/feed.xml"

Example - YouTube channel:

node index.js add "Psychopoly" "https://www.youtube.com/feeds/videos.xml?channel_id=UCXXXX"

Example - Reddit subreddit:

node index.js add "programming" "https://www.reddit.com/r/programming/.rss"

Example - GitHub releases:

node index.js add "openclaw" "https://github.com/openclaw/openclaw/releases.atom"

List feeds

node index.js list

Scan for updates

node index.js scan

Check specific feed

node index.js check "feed_name"

Remove feed

node index.js remove "feed_name"

Usage as a Cron Job

Add to crontab for automatic monitoring:

# Run every 30 minutes
*/30 * * * * cd /path/to/feed-watcher && node index.js scan >> /var/log/feed-watcher.log 2>&1

Supported Feed Types

  • RSS 2.0
  • Atom 1.0
  • YouTube channel feeds
  • Reddit subreddit feeds (.rss)
  • GitHub release/issue feeds
  • Any standard RSS/Atom feed

Examples

YouTube Channel

Find channel ID, then use:

https://www.youtube.com/feeds/videos.xml?channel_id=UCxxxxx

Reddit

For r/programming:

https://www.reddit.com/r/programming/.rss

GitHub Releases

For a repo:

https://github.com/owner/repo/releases.atom

Environment Variables

Variable Required Description
WEBHOOK_URL No URL to send notifications
DATA_DIR No Directory for state files (default: ~/.feed-watcher)

Notification Format

When new content is found, the webhook receives:

{
  "feed": "Feed Name",
  "count": 3,
  "items": [
    {
      "title": "Article Title",
      "link": "https://example.com/article",
      "pubDate": "2024-01-15T10:30:00Z"
    }
  ]
}

Notes

  • State is stored in ~/.feed-watcher/feeds.json
  • Each feed tracks its own last-seen item
  • Run scan before setting up cron to test feeds
  • You can use with any notification service (Discord webhook, Telegram bot, Slack, etc.)
安全使用建议
This skill appears to do what it says (poll feeds and send webhook notifications) but there are several inconsistencies you should consider before installing/running it: - The repository/package.json declares dependencies (rss-parser, dotenv, node-fetch) and the docs tell you to run 'npm install'. The provided runtime (index.js) does not import or use those packages. Installing them would pull code from npm (and possibly run package install scripts) for no functional reason — avoid running 'npm install' unless you audit those packages first. - The SKILL.md documents environment variables USER_AGENT and DATA_DIR, but the program ignores them. Only WEBHOOK_URL is actually read. Expect the documentation to be inaccurate; double-check that your webhook URL is safe and that you understand where state files will be written (~/.feed-watcher/feeds.json). - There is a small bug in the HTTP header keys in index.js (the 'Accept' header is malformed due to a typo). This is likely harmless but indicates the code may be lightly tested. Recommended steps before use: 1) Inspect index.js locally (you already have it) and confirm it meets your needs. It uses only built-in Node modules (http/https/fs) — you can run it without installing external deps. 2) If you must run 'npm install', do so in an isolated environment (container or VM) and review package.json and the npm packages to avoid unnecessary supply-chain exposure. 3) If you want USER_AGENT or custom DATA_DIR behavior, either adjust index.js yourself or request a corrected release. Also fix the malformed header key if necessary. 4) Consider running the tool with a non-privileged user account and monitor network calls the first time it runs. Given the mismatches (unused dependencies, inaccurate docs, and minor bugs) I rate this suspicious rather than benign. If the author can confirm why npm deps are listed and update docs to match the runtime, the assessment could move to benign.
功能分析
Type: OpenClaw Skill Name: feed-watcher Version: 0.0.1 The OpenClaw AgentSkills bundle 'feed-watcher' is classified as benign. Its functionality aligns with the stated purpose of monitoring RSS/Atom feeds and sending notifications to a user-configured webhook URL. While it performs network requests to arbitrary URLs and sends data to external endpoints, this is the core, documented behavior of the skill and is controlled by user configuration (WEBHOOK_URL). There is no evidence of intentional malicious activity such as unauthorized data exfiltration, backdoor installation, or arbitrary command execution. Minor issues like a typo in the User-Agent header in `index.js` and unused dependencies in `package.json` are development flaws, not security threats.
能力评估
Purpose & Capability
Name/description match the code: the CLI monitors RSS/Atom feeds, persists state, and can POST notifications to a webhook. That capability is coherent with the stated purpose.
Instruction Scope
SKILL.md instructs creating a .env with WEBHOOK_URL, USER_AGENT, and optionally DATA_DIR, and describes storage at ~/.feed-watcher/feeds.json. The code reads WEBHOOK_URL and writes state under the user's home directory, but it ignores USER_AGENT and DATA_DIR env vars. The SKILL.md also recommends installing 'rss-parser' and 'dotenv', but the runtime code does not use them. These are mismatches (likely bugs or sloppy docs) but they do not directly indicate exfiltration or extra-scope behavior.
Install Mechanism
There is no install spec, but package.json lists dependencies (rss-parser, dotenv, node-fetch) and SKILL.md suggests running 'npm install'. The shipped index.js does not import those modules (it uses only built-in http/https/fs/path). Asking users to run 'npm install' would pull packages (and their transitive dependencies and install scripts) from the public registry for no clear reason — unnecessary dependency installation increases supply-chain risk.
Credentials
SKILL.md documents WEBHOOK_URL and DATA_DIR (and mentions USER_AGENT) but index.js uses only WEBHOOK_URL and ignores DATA_DIR and USER_AGENT. The only environment access the program actually performs is reading WEBHOOK_URL and HOME/USERPROFILE to locate ~/.feed-watcher. The skill asks users to create a .env with values the runtime doesn't use, creating potential confusion. Requiring npm install (see above) requests broader implicit privileges (network access to npm) that are disproportionate to the code's actual needs.
Persistence & Privilege
The skill stores state in ~/.feed-watcher/feeds.json and does not request always:true or modify other skills/configs. It neither requires system-wide privileges nor persists beyond the user's home directory. That behavior is consistent with its purpose.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install feed-watcher
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /feed-watcher 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.0.1
Initial release of feed-watcher - Monitor RSS/Atom feeds for updates and send notifications via webhooks. - Supports tracking YouTube channels, Reddit subreddits, GitHub releases, blogs, and any standard RSS/Atom feed. - Add, remove, list, and scan feeds using CLI commands. - Persistent state tracking to avoid duplicate notifications. - Easy integration with Discord, Telegram, Slack, and similar services.
元数据
Slug feed-watcher
版本 0.0.1
许可证
累计安装 3
当前安装数 3
历史版本数 1
常见问题

Feed Watcher 是什么?

Monitor RSS/Atom feeds and send notifications when new content appears. Track YouTube channels, Reddit subreddits, GitHub releases, blogs, and any RSS/Atom f... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 384 次。

如何安装 Feed Watcher?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install feed-watcher」即可一键安装,无需额外配置。

Feed Watcher 是免费的吗?

是的,Feed Watcher 完全免费(开源免费),可自由下载、安装和使用。

Feed Watcher 支持哪些平台?

Feed Watcher 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Feed Watcher?

由 runawaydevil(@runawaydevil)开发并维护,当前版本 v0.0.1。

💬 留言讨论