news-aggregator-skill

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

News Aggregator Skill

新闻聚合器Skill

Fetch real-time hot news from multiple sources.
从多个来源获取实时热点新闻。

Tools

工具

fetch_news.py

fetch_news.py

Usage:
bash
undefined
使用方法:
bash
undefined

Single Source (Limit 10)

Single Source (Limit 10)

bash
undefined
```bash

Global Scan (Option 12) - Broad Fetch Strategy

全局扫描(选项12)- 广谱抓取策略

NOTE: This strategy is specifically for the "Global Scan" scenario where we want to catch all trends.
bash
undefined
注意:该策略专门适用于需要捕获所有趋势的「全局扫描」场景。
bash
undefined

1. Fetch broadly (Massive pool for Semantic Filtering)

1. 广谱抓取(为语义过滤提供海量候选池)

python3 scripts/fetch_news.py --source all --limit 15 --deep
python3 scripts/fetch_news.py --source all --limit 15 --deep

2. SEMANTIC FILTERING:

2. 语义过滤:

Agent manually filters the broad list (approx 120 items) for user's topics.

Agent手动对广谱抓取的列表(约120条)按照用户关注的主题进行筛选。

undefined
undefined

Single Source & Combinations (Smart Keyword Expansion)

单来源&组合来源(智能关键词扩展)

CRITICAL: You MUST automatically expand the user's simple keywords to cover the entire domain field.
  • User: "AI" -> Agent uses:
    --keyword "AI,LLM,GPT,Claude,Generative,Machine Learning,RAG,Agent"
  • User: "Android" -> Agent uses:
    --keyword "Android,Kotlin,Google,Mobile,App"
  • User: "Finance" -> Agent uses:
    --keyword "Finance,Stock,Market,Economy,Crypto,Gold"
bash
undefined
重要提示:你必须自动扩展用户输入的简单关键词,覆盖整个领域范围。
  • 用户输入:"AI" -> Agent使用:
    --keyword "AI,LLM,GPT,Claude,Generative,Machine Learning,RAG,Agent"
  • 用户输入:"Android" -> Agent使用:
    --keyword "Android,Kotlin,Google,Mobile,App"
  • 用户输入:"Finance" -> Agent使用:
    --keyword "Finance,Stock,Market,Economy,Crypto,Gold"
bash
undefined

Example: User asked for "AI news from HN" (Note the expanded keywords)

示例:用户需要「来自HN的AI新闻」(注意扩展后的关键词)

python3 scripts/fetch_news.py --source hackernews --limit 20 --keyword "AI,LLM,GPT,DeepSeek,Agent" --deep
undefined
python3 scripts/fetch_news.py --source hackernews --limit 20 --keyword "AI,LLM,GPT,DeepSeek,Agent" --deep
undefined

Specific Keyword Search

特定关键词搜索

Only use
--keyword
for very specific, unique terms (e.g., "DeepSeek", "OpenAI").
bash
python3 scripts/fetch_news.py --source all --limit 10 --keyword "DeepSeek" --deep
Arguments:
  • --source
    : One of
    hackernews
    ,
    weibo
    ,
    github
    ,
    36kr
    ,
    producthunt
    ,
    v2ex
    ,
    tencent
    ,
    wallstreetcn
    ,
    all
    .
  • --limit
    : Max items per source (default 10).
  • --keyword
    : Comma-separated filters (e.g. "AI,GPT").
  • --deep
    : [NEW] Enable deep fetching. Downloads and extracts the main text content of the articles.
Output: JSON array. If
--deep
is used, items will contain a
content
field associated with the article text.
仅在搜索非常具体的唯一术语时使用
--keyword
(例如"DeepSeek"、"OpenAI")。
bash
python3 scripts/fetch_news.py --source all --limit 10 --keyword "DeepSeek" --deep
参数说明:
  • --source
    :可选值为
    hackernews
    ,
    weibo
    ,
    github
    ,
    36kr
    ,
    producthunt
    ,
    v2ex
    ,
    tencent
    ,
    wallstreetcn
    ,
    all
    中的一个。
  • --limit
    :每个来源最多返回的条目数(默认10)。
  • --keyword
    :逗号分隔的过滤关键词(例如 "AI,GPT")。
  • --deep
    [新功能] 开启深度抓取,下载并提取文章的正文内容。
输出: JSON数组。如果使用了
--deep
参数,返回的条目会包含对应文章文本的
content
字段。

Interactive Menu

交互菜单

When the user says "news-aggregator-skill 如意如意" (or similar "menu/help" triggers):
  1. READ the content of
    templates.md
    in the skill directory.
  2. DISPLAY the list of available commands to the user exactly as they appear in the file.
  3. GUIDE the user to select a number or copy the command to execute.
当用户说出 "news-aggregator-skill 如意如意"(或类似的「菜单/帮助」触发词)时:
  1. 读取该Skill目录下
    templates.md
    的内容。
  2. 完全按照文件中的原样向用户展示可用命令列表。
  3. 引导用户选择编号或复制命令执行。

Smart Time Filtering & Reporting (CRITICAL)

智能时间过滤与报告(重要)

If the user requests a specific time window (e.g., "past X hours") and the results are sparse (< 5 items):
  1. Prioritize User Window: First, list all items that strictly fall within the user's requested time (Time < X).
  2. Smart Fill: If the list is short, you MUST include high-value/high-heat items from a wider range (e.g. past 24h) to ensure the report provides at least 5 meaningful insights.
  3. Annotation: Clearly mark these older items (e.g., "⚠️ 18h ago", "🔥 24h Hot") so the user knows they are supplementary.
  4. High Value: Always prioritize "SOTA", "Major Release", or "High Heat" items even if they slightly exceed the time window.
  5. GitHub Trending Exception: For purely list-based sources like GitHub Trending, strictly return the valid items from the fetched list (e.g. Top 10). List ALL fetched items. Do NOT perform "Smart Fill".
    • Deep Analysis (Required): For EACH item, you MUST leverage your AI capabilities to analyze:
      • Core Value (核心价值): What specific problem does it solve? Why is it trending?
      • Inspiration (启发思考): What technical or product insights can be drawn?
      • Scenarios (场景标签): 3-5 keywords (e.g.
        #RAG #LocalFirst #Rust
        ).
如果用户指定了时间窗口(例如「过去X小时」)且返回结果较少(< 5条):
  1. 优先满足用户时间窗口:首先列出严格符合用户请求时间范围的所有条目(时间 < X)。
  2. 智能补全:如果列表过短,你必须纳入更大时间范围(例如过去24小时)的高价值/高热度条目,确保报告至少提供5条有意义的内容。
  3. 标注说明:明确标记这些超出时间范围的旧条目(例如「⚠️ 18h ago」、「🔥 24h Hot」),让用户知晓这些是补充内容。
  4. 高价值优先:始终优先展示「SOTA」「重大发布」或「高热度」条目,即使它们略微超出时间窗口。
  5. GitHub Trending例外:对于像GitHub Trending这类纯列表类来源,严格返回抓取列表中的有效条目(例如Top 10)。列出所有抓取到的条目,不要执行「智能补全」。
    • 深度分析(必填):对于每个条目,你必须利用你的AI能力分析以下内容:
      • 核心价值 (核心价值):它解决了什么具体问题?为什么会成为热点?
      • 启发思考 (启发思考):可以从中得到哪些技术或产品层面的洞察?
      • 场景标签 (场景标签):3-5个关键词(例如
        #RAG #LocalFirst #Rust
        )。

6. Response Guidelines (CRITICAL)

6. 响应规范(重要)

Format & Style:
  • Language: Simplified Chinese (简体中文).
  • Style: Magazine/Newsletter style (e.g., "The Economist" or "Morning Brew" vibe). Professional, concise, yet engaging.
  • Structure:
    • Global Headlines: Top 3-5 most critical stories across all domains.
    • Tech & AI: Specific section for AI, LLM, and Tech items.
    • Finance / Social: Other strong categories if relevant.
  • Item Format:
    • Title: MUST be a Markdown Link to the original URL.
      • ✅ Correct:
        ### 1. [OpenAI Releases GPT-5](https://...)
      • ❌ Incorrect:
        ### 1. OpenAI Releases GPT-5
    • Metadata Line: Must include Source, Time/Date, and Heat/Score.
    • 1-Liner Summary: A punchy, "so what?" summary.
    • Deep Interpretation (Bulleted): 2-3 bullet points explaining why this matters, technical details, or context. (Required for "Deep Scan").
Output Artifact:
  • Always save the full report to
    reports/
    directory with a timestamped filename (e.g.,
    reports/hn_news_YYYYMMDD_HHMM.md
    ).
  • Present the full report content to the user in the chat.
格式与风格:
  • 语言:简体中文。
  • 风格:杂志/通讯风格(类似《The Economist》或《Morning Brew》的调性),专业、简洁且有吸引力。
  • 结构
    • 全球头条:全领域最关键的3-5条要闻。
    • 科技与AI:AI、LLM、科技类条目的专属板块。
    • 财经/社会:其他相关的重要分类。
  • 条目格式
    • 标题必须是指向原始URL的Markdown链接
      • ✅ 正确:
        ### 1. [OpenAI Releases GPT-5](https://...)
      • ❌ 错误:
        ### 1. OpenAI Releases GPT-5
    • 元数据行:必须包含来源、时间/日期和热度/评分。
    • 一句话摘要:简洁有力的「价值点」摘要。
    • 深度解读(列表形式):2-3个要点说明该事件的重要性、技术细节或背景信息(「深度扫描」场景下必填)。
输出产物:
  • 始终将完整报告保存到
    reports/
    目录下,文件名附带时间戳(例如
    reports/hn_news_YYYYMMDD_HHMM.md
    )。
  • 在聊天窗口中向用户展示完整的报告内容。