Agent Skills
返回列表
指令虾

指令虾

开发编程 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @org-dzobs9ce/mix-news-aggregator。

技能介绍

要解决什么

Agent 抓中文新闻,最容易踩的坑不是拿不到数据,而是拿到后「顺手编一条」。一条编造的快讯混进早报,后面的摘要、分析、推送全被带偏。这个技能把反幻觉做成硬约束:抓不到就返回空数组加 Smart Fill 标记,原始 stdout 不许篡改,数据源失联必须显式报错,不假装成功。

合规是另一道坎。中文互联网的极限词(「最」「第一」「唯一」)、AI 味套话(「在这个信息爆炸的时代」)、未成年人隐私、投资承诺,写稿时一个不留神就踩进去。技能内置禁词表和法规红线,Agent 每一步都被框在白名单域名和参数上限里。

工程层面,21 个信源的反爬策略、字段结构、更新频率各不相同。微博热搜和科技博客用同一套逻辑抓,要么超时,要么被 403。v3 版本已把反爬严重的站点收敛掉,留下 8 个域经压测,配合限流策略能稳定出数据。

它怎么工作

核心是两个脚本。daily_briefing.py 跑早报,6 套 profile:general、tech、social、ai_focus、business、morning,分别对应全量 21 信源、科技垂类 9 个、社交、AI 聚焦、商业、晨间简报。fetch_news.py 处理单信源、关键词过滤、详情抓取、信源诊断和 JSON 出口。

调用走 CLI 参数路由,不是自然语言对话。Agent 按用户意图选参数:「AI 早报」→ --profile ai_focus,不是 --keyword OpenAI;「微博热搜」→ --source weibo,不是 --profile general;「编程日报」→ --profile tech --keyword 编程;SkillHub 触发词命中时无需参数。

关键词过滤后少于 5 条,Smart Fill 自动移除过滤词再拉一次,JSON 标记 smart_filled: true。deep 模式只对 5 个信源抓详情,--limit 上限 50,防止脚本暴走。

输出统一 JSON:{code, items, ...}。code=0 正常,code=1 部分信源失败(partial_success: true),code=2 关键词空结果(smart_filled: true)。程序错误写 stderr 且 exit code 非零;业务错误写 stdout JSON 且 exit code 0。这套协议让 Agent 能区分「抓不到」和「抓到了但没匹配」。

注意边界

只覆盖国内 21 信源,国际新闻不在范围内,遇这类请求直接告知换技能。uapis.cn 是主数据源,同时跑 3 个 daily_briefing 会触发 429,20 分钟内封 IP。--deep --limit 100 不能当默认,100 条详情就是 5 分钟。--keyword 上限 50 字符防 prompt 注入。jaccard 去重阈值不能调到 0.4,否则 21 信源全标「重复」,早报变空。v5.0.0 的 --stats 输出改为 stderr JSON,--quiet 让 Agent 调用不刷屏,这些变更向后兼容。

使用场景

  • 每天早上需要从21个国内信源汇总科技与AI动态,生成结构化早报并推送到群组
  • 开发Agent时希望用关键词过滤微博、知乎等平台内容,同时规避极限词和隐私红线
  • 编写行业报告时需要抓取5个指定信源的详情页,补充背景信息后交给模型分析
  • 维护新闻数据管道时需要诊断哪个信源超时或失败,并输出JSON格式的错误码

适合人员

  • 需要每天给团队推送AI和科技早报的技术编辑
  • 在中文平台做内容审核或合规检查的运维工程师
  • 正在构建Agent并需要集成新闻抓取与过滤模块的开发者
  • 维护多信源数据管道并关注稳定性和限流策略的后端工程师