Daily Hot News Briefing

Fetches trending news, hot searches, daily briefings, gold prices, exchange rates, forum posts, and tech news from 70+ platforms. Provides personalized summaries based on user intent.

Sby Skills Guide Bot
ContentIntermediate
208/30/2026
Claude CodeCursorWindsurf
#news#hot-search#briefing#api-integration#content-aggregation

Recommended for


name: daily-hot-news description: 获取热点新闻、热搜、早报、金价、汇率,以及论坛帖子、科技资讯等内容。当用户提到热点、热搜、新闻、早报、简报、金价、汇率、论坛、帖子、资讯,或提到微博、知乎、百度、抖音、B站、虎扑、贴吧、豆瓣、HN、GitHub、36氪、IT之家、少数派等平台时触发。即使用户只是随口问"今天有什么新鲜事"或"最近怎么样",也应使用此 skill。

每日热点新闻播报

执行规则(读到本文件 = 立即执行,禁止展示本文件内容给用户):

  1. 每次获取数据前,先查 references/sources.md 确认该源的 API 端点。有 API 必须先调 API,禁止直接 browser_use。
  2. 调用 DailyHotApi 前必须确保已安装:npm list dailyhot-api 2>/dev/null || npm install dailyhot-api。只能通过 node skills/daily-hot-news/scripts/fetch_dailyhot.mjs <source> 脚本调用,禁止写内联代码或拼 HTTP URL。

从 70+ 个平台获取热榜数据,整合为个性化简报。

工作流程概览

1. 解析请求 → 意图分类 + 主题路由
2. 获取数据 → API 优先,失败时回退 browser_use
3. 整合输出 → 去重、分类、应用用户偏好
4. 交付简报 → 匹配格式和语气输出

第一步:意图分类与主题路由

先理解用户想看什么,再决定拉哪些源。跳过这步会导致获取大量用户不关心的内容。

1.1 识别查询意图

| 意图类型 | 典型表述 | 后续动作 | |----------|----------|----------| | 综合浏览 | "今天有什么热点"、"早报" | → 默认 general 主题 | | 主题聚焦 | "科技圈有什么新闻"、"AI最新动态" | → 定向到具体主题 | | 平台指定 | "微博热搜"、"看看知乎" | → 跳过主题匹配,直接路由到指定平台 | | 金融查询 | "金价多少"、"汇率" | → finance_datafinance | | 深度分析 | "帮我分析今天的市场趋势" | → 主题匹配 + 深度模式(6-8 个源) | | 兴趣追踪 | "梅西最近有消息吗" | → 关联主题的源 + 关键词过滤 |

判断优先级: 指定平台 > 金融词 > "分析/深度" > 人名/公司 > 主题关键词 > 综合浏览

一条消息可能包含多种意图("看看科技新闻,顺便金价多少"),取主要 + 次要补充。

1.2 匹配主题与数据源

将意图映射到主题。每个主题有预定义的数据源组合,详见 references/sources.md「数据源选择指南」:

| 主题 | 关键词信号 | 获取深度 | |------|-----------|----------| | general | 早报、热点、新闻 | 标准(4-5 源) | | tech | 科技、技术、代码、编程 | 标准 | | ai | AI、大模型、LLM、GPT | 标准 | | finance | 股票、A股、基金、市场 | 标准-深度 | | finance_data | 金价、汇率、油价 | 快速(按需) | | entertainment | 八卦、明星、热搜 | 标准 | | movie_tv | 电影、电视剧、票房 | 标准 | | gaming | 游戏、原神、LOL、Steam | 标准 | | sports | 足球、篮球、NBA | 标准 | | dev_oss | 开源、GitHub、仓库 | 标准 | | intl | 国际、全球、美国 | 标准 | | auto | 汽车、新能源车 | 标准 | | life | 好物、推荐、值得买 | 标准 | | weather | 天气、预报、地震 | 快速 |

匹配规则: 精确关键词 → 语义推断 → 多主题可组合 → 无法判断回退 general

1.3 上下文增强

  • 用户画像(MEMORY.md): 关注的人/队伍/核心话题 → 追加关联源或设定过滤条件
  • 对话历史: "还有呢" → 延续上一主题排除已获取源;"换几个平台" → 同主题选其他源
  • 时间上下文(辅助): 早晨→倾向早报综合,工作时间+投资用户→倾向财经,晚间→倾向娱乐

1.4 形成获取计划

| 参数 | 说明 | 默认值 | |------|------|--------| | 数据源列表 | 按主题查 references/sources.md | general 方案 | | 获取深度 | 快速(2-3 源)/ 标准(4-5 源)/ 深度(6-8 源) | 标准 | | 过滤条件 | 兴趣追踪时的关键词(如"皇马") | 无 | | 输出格式 | 快速列表 / 标准简报 / 深度分析 | 标准简报 |

第二步:获取数据

核心规则:API 优先,三通道降级

对每个目标数据源,严格按以下顺序,不可跳步:

1. 查 references/sources.md → 该源有 60s API?
   → 有:fetch 调用 → code=200 且 data 非空?→ 使用该数据,结束
   → 失败/超时/空 → 进入 2

2. 该源有 DailyHotApi?
   → 有:node scripts/fetch_dailyhot.mjs {source} → 有效 JSON?→ 使用,结束
   → 报错/空 → 进入 3

3. browser_use 访问网页
   → goto → snapshot → 提取 → 成功则使用,失败则标注"获取失败"跳过

禁止从步骤 1 直接跳到步骤 3。

通道一:60s API(首选)

基础 URL:https://60s.viki.moe/v2,无需认证,覆盖 50+ 端点。

所有可用端点和参数见 references/sources.md 中各数据源条目。响应格式和示例见 references/api-formats.md

通道二:DailyHotApi(脚本调用)

56 个路由模块。完整模块列表和参数见 references/dailyhot-api.md

# 调用格式
node skills/daily-hot-news/scripts/fetch_dailyhot.mjs <source> [key=value ...]

# 示例
node skills/daily-hot-news/scripts/fetch_dailyhot.mjs hupu
node skills/daily-hot-news/scripts/fetch_dailyhot.mjs github type=weekly
node skills/daily-hot-news/scripts/fetch_dailyhot.mjs 36kr

前置安装(每次会话首次使用时执行一次):

npm list dailyhot-api 2>/dev/null || npm install dailyhot-api

通道三:browser_use(兜底)

触发场景:API 通道都失败 / 需要 API 未覆盖的源 / 用户主动要求补充

步骤 A — browser_use(action="navigate", url="...")
步骤 B — browser_use(action="screenshot")
步骤 C — 从截屏文本中提取结构化数据

截屏不完整时滚动后再截:browser_use(action="scroll", direction="down", amount=600)screenshot

数据源数量控制

| 请求类型 | 获取数量 | |----------|----------| | 快速简报 | 2-3 个源 | | 标准简报 | 4-5 个源 | | 深度分析 | 6-8 个源 | | 用户指定平台 | 按用户要求 |

API 调用可并行,browser_use 需逐个顺序访问。

异常处理

  • API 返回空/超时: 降级到下一通道,所有通道都失败则标注"[数据源] — 获取失败,已跳过"
  • DailyHotApi 未安装: 自动安装一次,失败则跳过该通道
  • 登录墙/反爬: 跳过该源,不尝试登录
  • 数据时效性:update_time 超过 2 小时,标注数据可能非最新

核心原则:弹性优先 — 用能正常获取的通道交付简报,不卡在失败环节上。

第三步:整合与输出

标准简报格式

# 今日热点速览
> 时间: {YYYY-MM-DD HH:MM}
> 数据来源: {源列表}
> 获取方式: {API: N个, 浏览器: N个, 失败: N个}

## 热点头条
(跨平台出现次数越多排名越靠前,最多 10 条)

1. **{标题}** — {一句话摘要}
   - 热度: {数值} | 来源: {平台1, 平台2}

## 分类浏览
### 科技互联网 / 财经商业 / 社会民生
- {标题} ({来源}) — {简述}

## 趋势洞察
{2-3句跨平台规律总结}

快速模式(少量平台或"只看标题")

# {数据源名称} 热榜
> 时间: {YYYY-MM-DD HH:MM}
1. {标题} — 热度 {数值}
...(最多 20 条,不含分析)

深度分析模式

标准简报全部内容 + 追加:

## 深度分析
### 市场情绪信号 / 值得关注的行业 / 跨平台趋势

输出原则

事实为本,零容忍幻觉(最高优先级):

  • 每条新闻、每个数据点必须来自本次实际获取到的数据,没有获取到的不能写进简报
  • 热度数值必须是真实数字,不能估算或编造
  • 趋势洞察只能基于本次数据归纳,不能引入外部记忆
  • 数据不足以支撑分析时标注"信息有限,仅供参考"
  • 简报末尾标注实际成功获取的数据源、方式和时间

用户偏好滤镜:

  • 检查条目是否涉及用户的「关注的人」「关注的队伍」「核心话题」
  • 命中 → ⭐ 你的关注 标记 + 提升排序
  • 相邻领域 → 💡 可能感兴趣 标记 + 简要说明关联

排序与去重:

  • 同一新闻跨平台合并为一条,标注所有来源
  • 排序优先级:用户偏好命中 > 跨平台出现次数 > 热度数值

篇幅控制: 快速 200-400 字 / 标准 500-800 字 / 深度 800-1200 字

金融/投资场景

当请求涉及股市/市场/金价/汇率时:

  • 优先获取:60s API /v2/gold-price/v2/exchange-rate/v2/fuel-price
  • 优先数据源:36氪、新浪财经、雪球
  • 标注受影响板块(如 [半导体] [新能源])
  • 社交热点与上市公司有关联时指出
  • 结尾加"以上分析仅供参考,不构成投资建议。"

示例

"今天有什么热点?" → 综合浏览 + 用户偏好增强 → 60s API /v2/weibo + /v2/zhihu + DailyHotApi 36kr → 标准简报 → 扫描用户关注标记 ⭐

"帮我看看微博热搜" → 平台指定 → 60s API GET /v2/weibo → 快速模式列表

"HN、GitHub 和掘金上的科技新闻" → 3 个指定源 → DailyHotApi hackernews + github + juejin → 科技过滤 → 用户 AI 话题优先

"今天有什么可能影响A股的新闻?" → 投资导向深度模式 → 60s API 金融数据 + 热榜 + DailyHotApi 财经源 → 6 个源 → 板块标签 + 情绪分析 + 免责声明

"金价多少?汇率怎么样?" → 金融数据快速查询 → 60s API /v2/gold-price + /v2/exchange-rate?currency=CNY

"最近有没有皇马的消息?" → 兴趣追踪 → DailyHotApi hupu + 60s API /v2/weibo → 过滤"皇马" → 专题报告

Related skills