ai-news-digest

Original🇨🇳 Chinese
Translated
9 scripts

Multi-source AI news aggregation and digest generation with deduplication, classification, and source tracing. Supports 20+ sources, 5 theme categories, multi-language output (ZH/EN/JA), and image export.

9installs
Added on

NPX Install

npx skill4agent add deletexiumu/agentskills-hub ai-news-digest

Tags

Translated version includes tags in frontmatter

SKILL.md Content (Chinese)

View Translation Comparison →
<!-- i18n-examples:start -->

Invoke / 调用 / 呼び出し

Chinese

  • "用 ai-news-digest 生成今天的 AI 资讯简报"
  • "用 ai-news-digest 获取昨天的 AI 新闻"
  • "用 ai-news-digest 看看前天有什么 AI 动态"
  • "帮我用 ai-news-digest 整理一下最近的 AI 资讯"

English

  • "Use ai-news-digest to generate today's AI news digest"
  • "Use ai-news-digest to get yesterday's AI news in English"
  • "Generate an AI news summary for 2026-01-20 using ai-news-digest"
  • "Use ai-news-digest to summarize recent AI developments"

Japanese

  • "ai-news-digest で今日のAIニュース要約を日本語で作成して"
  • "ai-news-digest で昨日のAIニュースを取得して"
  • "ai-news-digest を使って最近のAI動向をまとめて"
  • "ai-news-digest で一昨日のAI関連ニュースを教えて"
<!-- i18n-examples:end -->

Objectives

Within the specified time window, retrieve the latest content from a set of AI news sources and produce a "deliverable-ready" news digest:
  • Deliverables: 1 Markdown digest (JSON data optional)
  • Each news item: Title, time, source, link, 1-3 sentence summary, tags (optional "why it's important")
  • Default strategy: RSS/Atom first, HTML fallback; do not bypass paywalls
  • Default output: Chinese (if source is in English, translate to Chinese before output)

Inputs (Clarify First)

  • Time window (default "today"):
    • Natural language:
      今天/昨天/前天
      (extendable to
      过去7天/最近24 hours
      )
    • Specified date:
      YYYY-MM-DD
      (interpreted as "00:00-23:59:59 on that day" in the user's time zone)
    • Specific start/end time:
      since/until
      (with time zone)
  • Time zone: Default
    UTC+8
    (recommended to implement default
    Asia/Shanghai
    ), users can explicitly specify
  • Output language: Default
    zh
    (Chinese); optional
    en
    /
    both
  • Topic scope: Research/Product/Open Source/Investment & Financing/Policy (multiple selection allowed)
  • Source scope: Use default list or user-specified subset (see
    references/sources.md
    )
  • Output format: Markdown (default) / JSON / both
  • Maximum number of items: Total limit and per-topic limit (default total 20)
  • Processing depth: Title only with summary (default) / attempt full text extraction (for non-paywalled content)

Workflow (Recommended Architecture)

  1. Load source list (RSS first; adapt HTML if RSS is unavailable)
  2. Fetch and standardize items (title/link/publish time/summary/source)
  3. Deduplication and merging (same link/similar title/cross-source duplicates)
  4. Topic classification and sorting (time + source weight + keywords)
  5. Generate digest (apply template
    assets/digest-template.md
    , attach source links)
  6. Quality check (time window hit, no duplicates, each item has link/source)

Guardrails (Compliance & Stability)

  • Do not bypass paywalls/login restrictions; only use public title/summary/meta info for paywalled content
  • Respect site terms and robots.txt; downgrade to "only fetch RSS items" if necessary
  • Degradable on failure: Only output the "retrievable" part and list failed sources with reasons
  • Translation/summary must retain traceability: Always keep original link and source in output; retain original
    title_raw/summary_raw
    in JSON if necessary
  • Confirm output path and overwrite permission before any file writing/overwriting export

How to Run

CLI Commands

bash
# Enter script directory
cd skills/public/ai-news-digest/scripts

# Get today's news digest
python run.py --day 今天

# Get yesterday's news
python run.py --day yesterday

# Disable SSL certificate verification if encountering local SSL certificate chain issues (not recommended)
python run.py --day yesterday --insecure

# Specify date
python run.py --day 2026-01-15

# Output in JSON format
python run.py --day 今天 --format json

# Export as image (Pillow required)
python run.py --day 今天 --format image

# Export as landscape image (suitable for official accounts)
python run.py --day 今天 --format image --image-preset landscape

# Export as light theme image
python run.py --day 今天 --format image --image-theme light

# Write to file
python run.py --day 今天 --out digest.md

# Use LLM for translation (API key required)
python run.py --day 今天 --llm

# Detailed output
python run.py --day 今天 --verbose

# Run smoke test
python run.py --test

CLI Parameters

ParameterDescriptionDefault Value
--day, -d
Date (today/yesterday/the day before yesterday/YYYY-MM-DD)today
--since
Start time (ISO 8601)-
--until
End time (ISO 8601)-
--tz
Time zoneAsia/Shanghai
--lang, -l
Output language (zh/en)zh
--format, -f
Output format (markdown/json/image)markdown
--image-preset
Image size (portrait/landscape/square)portrait
--image-theme
Image theme (dark/light)dark
--out, -o
Output file path-
--topics, -t
Topic filter (comma-separated)All
--sources, -s
Source filter (IDs, comma-separated)All
--max
Maximum number of items20
--max-per-topic
Maximum items per topic5
--llm
Use LLM for translationNo
--verbose, -v
Detailed outputNo
--insecure
Disable SSL certificate verification (not recommended)No

Script Module Description

ScriptFunction
run.py
CLI entry point, integrates all modules
time_window.py
Time window parsing
fetch_feeds.py
Feed fetching (caching/rate limiting/retry)
parse_feeds.py
RSS/Atom parsing and standardization
dedupe.py
Deduplication and cross-source merging
classify_rank.py
Topic classification and sorting
render_digest.py
Markdown/JSON rendering
render_image.py
Image rendering (social sharing cards)
summarize_llm.py
LLM-based translation (optional)

Dependencies

Required (Python Standard Library):
  • Python 3.10+
  • No third-party dependencies required for Markdown/JSON output
Optional (Enhanced Features):
  • Pillow
    : Image rendering functionality (
    --format image
    )
  • pyyaml
    : More complete YAML parsing (the script has a built-in simplified parser, so
    sources.yaml
    can be loaded normally without installation)
  • anthropic
    or
    openai
    : LLM translation functionality

Install Optional Dependencies

bash
# Install image rendering support
pip install Pillow

# Install all optional dependencies
pip install Pillow pyyaml anthropic
Note:
  • If Pillow is not installed, Markdown and JSON output work normally, only image output is unavailable
  • If pyyaml is not installed, the script uses the built-in simplified YAML parser, and the complete source list can be loaded normally

Resources

  • Data model and output specification:
    references/output-spec.md
  • Source registry:
    references/sources.yaml
  • Source evaluation description:
    references/sources.md
  • Time window specification:
    references/time-window.md
  • Topic keywords:
    references/topic-keywords.md
  • Translation specification:
    references/translation.md
  • Markdown template:
    assets/digest-template.md
  • LLM prompt:
    assets/summarize-prompt.md