Feed to Markdown: RSS 和 Atom 转 Markdown 转换器 - Openclaw Skills

作者:互联网

2026-04-17

AI教程

什么是 Feed to Markdown?

feed-to-md 技能是一款功能强大的工具,旨在弥合网络联合供稿与 AI 就绪文档之间的差距。通过使用基于本地 Python 的转换器,此技能允许用户从任何公共 RSS 或 Atom 订阅源获取内容,并立即将其翻译为干净的 Markdown 语法。作为 Openclaw Skills 库的一部分,它优先考虑准确性和安全性,确保网络内容被安全摄取并正确格式化以供进一步处理。

该工具对于需要将最新新闻、博客文章或文档更新输入到 AI 编码代理或本地化知识库的开发者和研究人员特别有价值。它提供了对输出的细粒度控制,包括项目数量限制和模板选择,使其成为任何自动化内容流水线中的多功能补充。

下载入口:https://github.com/openclaw/skills/tree/main/skills/myx0m0p/rss-skill

安装与下载

1. ClawHub CLI

从源直接安装技能的最快方式。

npx clawhub@latest install rss-skill

2. 手动安装

将技能文件夹复制到以下位置之一

全局模式 ~/.openclaw/skills/ 工作区 /skills/

优先级:工作区 > 本地 > 内置

3. 提示词安装

将此提示词复制到 OpenClaw 即可自动安装。

请帮我使用 Clawhub 安装 rss-skill。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。

Feed to Markdown 应用场景

  • 将技术网站的最新博客文章摄取到工作区,用于 AI 辅助分析。
  • 将来自多个 RSS 订阅源的行业新闻自动创建每日摘要,存入 Markdown 归档。
  • 将特定的订阅源条目归档为 Markdown 文件,作为编码任务的参考材料。
  • 过滤和限制高流量订阅源,仅提取最相关的最新更新。
Feed to Markdown 工作原理
  1. 用户向技能界面提供 RSS 或 Atom URL。
  2. 系统执行安全检查,确保 URL 是公开的且不指向内部网络地址。
  3. 调用本地 Python 脚本 feed_to_md.py,并传入提供的 URL 和可选配置参数。
  4. 脚本解析订阅源的 XML 结构,提取标题、链接、日期和内容摘要。
  5. 提取的数据使用短摘要模板或完整内容模板格式化为 Markdown。
  6. 生成的 Markdown 要么流式传输到控制台,要么写入项目目录中指定的 .md 文件。

Feed to Markdown 配置指南

要从 Openclaw Skills 集合中使用此工具,您必须在本地环境中安装 Python 3。请按照以下步骤设置并运行转换器:

# 确保 Python 3 可用
python3 --version

# 订阅源 URL 的基本转换
python3 scripts/feed_to_md.py "https://example.com/feed.xml"

# 转换并保存到特定文件
python3 scripts/feed_to_md.py "https://example.com/feed.xml" --output feed_updates.md

Feed to Markdown 数据架构与分类体系

feed-to-md 技能将数据组织成一致的 Markdown 层级。下表描述了转换过程中捕获的数据点:

元素 描述 格式
文章标题 订阅源条目的标题 H2 或 H3 标题
发布日期 订阅源条目提供的时间戳 标准日期字符串
内容/摘要 正文文本或摘要摘录 Markdown 段落
来源链接 指向原始网页内容的参考 URL Markdown 行内链接

所有生成的文件都以 .md 扩展名保存,并由于安全和组织原因被限制在本地工作区。

name: feed-to-md
title: Feed to Markdown
description: Convert RSS or Atom feed URLs into Markdown using the bundled local converter script. Use this when a user asks to turn a feed URL into readable Markdown, optionally limiting items or writing to a file.
metadata: {"clawdbot":{"emoji":"??","requires":{"bins":["python3"]}}}

RSS/Atom to Markdown

Use this skill when the task is to convert an RSS/Atom feed URL into Markdown.

What this skill does

  • Converts a feed URL to Markdown via a bundled local script
  • Supports stdout output or writing to a Markdown file
  • Supports limiting article count and summary controls

Inputs

  • Required: RSS/Atom URL
  • Optional:
    • output path
    • max item count
    • template preset (short or full)

Usage

Run the local script:

python3 scripts/feed_to_md.py ""

Write to file:

python3 scripts/feed_to_md.py "https://example.com/feed.xml" --output feed.md

Limit to 10 items:

python3 scripts/feed_to_md.py "https://example.com/feed.xml" --limit 10

Use full template with summaries:

python3 scripts/feed_to_md.py "https://example.com/feed.xml" --template full

Security rules (required)

  • Never interpolate raw user input into a shell string.
  • Always pass arguments directly to the script as separate argv tokens.
  • URL must be http or https and must not resolve to localhost/private addresses.
  • Every HTTP redirect target (and final URL) is re-validated and must also resolve to public IPs.
  • Output path must be workspace-relative and end in .md.
  • Do not use shell redirection for output; use --output.

Safe command pattern:

cmd=(python3 scripts/feed_to_md.py "$feed_url")
[[ -n "${output_path:-}" ]] && cmd+=(--output "$output_path")
[[ -n "${limit:-}" ]] && cmd+=(--limit "$limit")
[[ "${template:-short}" = "full" ]] && cmd+=(--template full)
"${cmd[@]}"

Script options

  • -o, --output : write markdown to file
  • --limit : max number of articles
  • --no-summary: exclude summaries
  • --summary-max-length : truncate summary length
  • --template : short (default) or full

相关推荐