当用户需要从YouTube、GitHub、Instagram、Reddit、新闻网站、博客等平台获取更新或内容时使用此技能。
Site Feeds是一项面向实际任务的技能,主要用于此技能帮助 AI 代理从使用 Airsstool 的 CLI 的网站上获取更新和内容;当使用此 Skill 时, 使用此技能。
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
本技能帮助 AI 智能体通过 airsstool CLI 工具从网站获取更新与内容。
当用户出现以下情况时,可使用本技能:
使用 airsstool 前,请确保满足以下前提条件。必要时(例如通过 Docker 部署 RSSHub、选择 Python 运行环境、设置环境变量),需向用户征得许可。
请先确认用户本地是否已运行 RSSHub Docker 容器。若未运行:
rsshub 文件夹docker-compose.yml 文件下载至 rsshub 文件夹中.env 文件用于配置环境变量docker-compose.yml,并在 rsshub 服务中添加 env_file: - .envdocker compose up -d请参考 https://github.com/heqi201255/airsstool 中的安装说明
询问用户是否希望在特定虚拟环境中安装 Python 依赖。若确认,则每次使用前需确保该环境已激活。
安装完成后,运行初始化命令(耗时约 1 分钟):
airsstool init
默认会在 ~/.airsstool/airsstoolDB.db 创建数据库。如需自定义路径,请使用 --db-path 参数。
完成安装并验证功能正常后,可从此文件中删除本安装说明章节。
| 命令 | 用途 |
|---|---|
airsstool init |
初始化数据库(首次配置) |
airsstool init --db-path PATH |
使用自定义数据库路径进行初始化 |
airsstool init --force |
强制重建数据库 |
| 命令 | 用途 | 示例用法 |
|---|---|---|
airsstool list categories |
列出所有内容分类 | “有哪些分类可用?” |
airsstool list websites |
按分类列出网站 | “展示社交平台类网站” |
airsstool list routes |
查找某网站支持的所有订阅源 | “GitHub 支持哪些订阅源?” |
airsstool check |
获取订阅源详情及所需参数 | “如何使用 GitHub Trending?” |
| 命令 | 用途 | 示例用法 |
|---|---|---|
airsstool fetch |
从指定订阅源获取内容 | “获取 GitHub Trending” |
airsstool fetch -U |
获取某用户指定订阅组下的全部订阅源内容 | “获取我所有的科技新闻订阅” |
| 命令 | 用途 | 示例用法 |
|---|---|---|
airsstool list users |
列出所有用户 | “哪些用户已创建订阅?” |
airsstool list subscriptions -U |
列出某用户的订阅组 | “展示 alice 的所有订阅” |
airsstool list paths -U |
列出某订阅组内的所有路径 | “tech_news 组包含哪些内容?” |
airsstool add-subscription -U |
创建订阅组 | “创建一个新闻订阅” |
airsstool subscribe -U |
将路径添加至订阅组 | “订阅 GitHub Trending” |
airsstool unsubscribe -U |
删除整个订阅组 | “删除我的 tech_news 组” |
airsstool remove-subscription -U |
从订阅组中移除指定路径 | “从 tech_news 中移除 GitHub Trending” |
按分类浏览(若已知内容类型):
airsstool list categories airsstool list websites --category programming --page-size 10
按网站名称搜索(支持模糊匹配):
airsstool list routes github # 返回所有 GitHub 订阅源
查看订阅源详情(了解所需参数):
airsstool check github trending
# 显示路径模板:/github/trending/{params}
基础获取:
airsstool fetch /github/trending/daily/any/en
带过滤器获取:
airsstool fetch /youtube/user/@MrBeast --filter "MrBeast|Beast"
格式转换输出:
airsstool fetch /hackernews/best --format rss # 返回原始 RSS 格式 airsstool fetch /instagram/user/instagram --brief 100 # 返回精简文本
分页获取:
airsstool fetch /github/trending/daily/any/en --limit 5 --offset 2
创建订阅组:
airsstool add-subscription -U your_name -S tech_news
向订阅组添加内容源:
airsstool subscribe -U your_name -S tech_news -P /github/trending/daily/any/en -D "GitHub Trending"
获取整个订阅组内容:
airsstool fetch -U your_name -S tech_news --limit 10
| 选项 | 说明 |
|---|---|
--category CAT |
按分类筛选网站 |
--page-size N |
每页返回结果数(默认为 20) |
--page-num N |
页码(默认为 1) |
--enable-nsfw |
在结果中包含 NSFW 类网站 |
| 选项 | 说明 |
|---|---|
--filter PATTERN |
对标题和描述进行正则匹配过滤 |
--filter-title PATTERN |
仅对标题进行正则匹配过滤 |
--filter-description PATTERN |
仅对描述进行正则匹配过滤 |
--filter-author PATTERN |
按作者过滤 |
--filter-category PATTERN |
按分类过滤 |
--filter-time SECONDS |
时间范围(单位:秒) |
--filterout PATTERN |
从标题和描述中排除匹配项 |
--filterout-title PATTERN |
从标题中排除匹配项 |
--filterout-description PATTERN |
从描述中排除匹配项 |
--filterout-author PATTERN |
排除指定作者 |
--filterout-category PATTERN |
排除指定分类 |
--filter-case-sensitive BOOL |
是否区分大小写(默认为 true) |
| 选项 | 说明 |
|---|---|
--format FORMAT |
输出格式:markdown(默认)、rss、atom、json、rss3。默认为 Markdown 格式,除非有特殊需求,否则无需显式指定。 |
--brief N |
返回精简文本,长度为 N 字符(N ≥ 100) |
--limit N |
限制返回条目数量 |
--offset N |
跳过前 N 条结果(仅对 Markdown 格式生效) |
支持模糊搜索:例如 airsstool list routes gthub 将提示“GitHub”
路径格式规范:路径必须以 / 开头,例如 /github/trending/daily/any/en
优先查看路由详情:使用 airsstool check 掌握所需参数
默认输出为 Markdown:内容已解析并格式化,便于阅读;如需原始 RSS,请使用 --format rss
订阅持久化:所有订阅信息均保存于 SQLite 数据库中,具备持久性
用户:“帮我找一些编程类新闻订阅源”
airsstool list websites --category programming --page-size 5 # 返回热度最高的编程类网站 airsstool list routes github # 返回 GitHub 支持的所有路由 airsstool check github trending # 展示路径构造方式
用户:“获取最新的 JavaScript 趋势仓库”
airsstool fetch /github/trending/daily/any/en --limit 10 # 返回格式化后的 Markdown,含仓库详细信息
用户:“为我创建一个每日科技阅读订阅”
airsstool add-subscription -U user -S daily_tech airsstool subscribe -U user -S daily_tech -P /github/trending/daily/any/en -D "GitHub Trending JS" airsstool subscribe -U user -S daily_tech -P /hackernews/best -D "Hacker News" airsstool fetch -U user -S daily_tech --limit 5
用户:“从我的订阅中移除某个特定内容源”
airsstool list paths -U user -S daily_tech # 展示该订阅组内所有内容源 airsstool remove-subscription -U user -S daily_tech -P /hackernews/best # 仅移除 Hacker News,其余内容源保留
用户:“删除我的整个订阅组”
⚠️ 此操作不可撤销,请在执行前向用户确认:
airsstool unsubscribe -U user -S daily_tech # 删除该订阅组及其全部内容源
airsstool check 查看是否存在 RequireConfig 提示。若存在,表明该网站需配置环境变量。请在线搜索对应环境变量的获取方式,并向用户寻求协助。获取后将其添加至 .env 文件,并重启 RSSHub 服务airsstool subscribe 命令中使用 --force 参数跳过连通性检查相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章