# AI Frontier Monitor

> AI frontier intelligence briefing — aggregate, score, and deliver structured daily briefings from 5 tracks (RSS enterprise, 36kr hotlist, arXiv papers, GitHub Trending, Anthropic web search). Use when user mentions: AI前沿, 情报汇总, 每日情报, 行业动态, AI动态, 技术趋势, 行业信号, 今天有什么信号, AI动态汇总, frontier monitor, daily briefing AI, signal check, AI news, tech briefing.

- Skill: `lord1egypt/ai-frontier-monitor` (Agent Skill)
- Install (CLI): `npx skillmds@latest add lord1egypt/ai-frontier-monitor`
- Raw SKILL.md: https://api.skillmd.com/api/skills/lord1egypt/ai-frontier-monitor/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Lord1Egypt (https://skillmd.com/u/lord1egypt)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/lord1egypt/ai-frontier-monitor

---


# AI 前沿情报汇总

> 信息聚合 ≠ 信息堆砌。每日情报经筛选、评分、分层后输出，不做 50 条标题的噪音。

## When to Use

触发词（任意语言）：
- "AI 前沿" / "情报汇总" / "每日情报" / "frontier monitor" / "daily briefing" → 全量简报
- "今天有什么信号" / "signal check" / "快速扫描" / "what signals today" → 快速信号检测
- "arXiv 最新" / "论文追踪" / "paper tracker" / "latest papers" → 仅 arXiv 轨道
- "GitHub Trending" / "AI 热榜" / "trending AI" → 仅 GitHub 轨道

## Architecture: 5-Track Parallel

| Track | Source | Script | Priority |
|-------|--------|--------|----------|
| 🏢 Enterprise | 11 RSS feeds (OpenAI/AWS/Techmeme/...) | `{baseDir}/scripts/rss-crawler.py` then `{baseDir}/scripts/generate-briefing.py --candidates <path>` | ⭐⭐⭐⭐⭐ |
| 🇨🇳 China | 36kr Hotlist API | `curl https://openclaw.36krcdn.com/media/hotlist/{date}/24h_hot_list.json` | ⭐⭐⭐⭐ |
| 📚 Papers | arXiv cs.AI/cs.LG/cs.CL | `{baseDir}/scripts/arxiv-fetch.sh --category cs.AI --days 7 --max 10` | ⭐⭐⭐ |
| 🔥 GitHub | GitHub Trending (AI/ML) | `{baseDir}/scripts/github-trending-fetch.sh --period daily` | ⭐⭐⭐ |
| 🔍 Anthropic | Web search supplement | `web_search` tool | ⭐⭐⭐⭐⭐ |

> For full data source details, read `{baseDir}/references/data-sources.md`

## Workflow

### Step 1: Fetch All Tracks

```bash
# Track 1: RSS (run crawler first, outputs to {baseDir}/data/candidates/)
python3 {baseDir}/scripts/rss-crawler.py

# Track 2-4: Generate briefing (all tracks auto-fetched)
python3 {baseDir}/scripts/generate-briefing.py --mode full
```

Modes: `full` | `quick` | `arxiv` | `github`

### Step 2: Auto-Score & Tier

Each candidate without a score is auto-scored (0-5) by keyword matching across 4 dimensions:

| Dimension | Weight | What to look for |
|-----------|--------|-----------------|
| Enterprise landing | 40% | Real company name, deployment scale |
| Data support | 20% | Quantified metrics (% improvement, $ saved) |
| Learnability | 20% | Methodology, architecture, lessons learned |
| Novelty | 20% | New scene, new product, not old news |

Source bonus: OpenAI/AWS +1.0, Techmeme +0.5, PH/HN +0.3

Tiers are **dynamic** (based on actual score distribution, not hardcoded thresholds):
- 🔴 Core: top ~15% or ≥3.5 (max 3)
- 🟡 Worth watching: top ~30% or ≥2.5 (max 5)
- 🟢 Quick scan: ≥1.0 (max 8, 36kr first)

> For scoring keywords and signal detection rules, read `{baseDir}/references/scoring.md`

### Step 3: Detect Signals

Extract cross-track signals into 3 dimensions:
- 🛠 **Tech trends** — new models, architectures, frameworks, benchmarks
- 🏢 **Product launches** — new releases, open-source, GA announcements
- 💰 **Funding/M&A** — investments, acquisitions, IPOs

### Step 4: Render Briefing

Strict format — emoji headers, tiered sections, signal summary. Output in **Chinese** (中文为主). Total ≤ 16 items across all tiers.

```
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🤖 AI 前沿情报 · {Day} {Date}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📡 数据源：11 RSS + 36kr + arXiv + GitHub + Anthropic
   候选：{N} 条 | 高质量：{M} 条 | 阈值：核心≥{X} / 关注≥{Y}

## 🔴 核心情报（{N} 条）
### 1. {Title}
🔗 {Link}
💡 启示：{One-line insight}

## 🟡 值得关注（{N} 条）
1. **{Title}**
   🔗 {Link}

## 🟢 快速浏览（{N} 条）
• [{Title}]({Link})

## 📚 arXiv · 论文追踪（≤3 篇）
**{Title}** — {Authors} | {Date}
摘要：{Abstract[:150]}... → {Link}

## 🔥 GitHub Trending · AI（≤3 个）
**{Repo}** ({Lang}) +{TodayStars}⭐ → {Link}

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 今日信号
🛠 技术趋势：{signal}
🏢 产品发布：{signal}
💰 资本动向：{signal}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⏰ {HH:MM} | ai-frontier-monitor v3.0
```

### Step 5: Deliver & Archive

1. **Reply in conversation** — 直接在当前对话输出简报
2. **Push to Feishu** — 通过 `message` 工具发送到飞书（channel: feishu, to: user ID）
3. **Save to file** — 将完整简报保存为 Markdown 文件到：
   ```
   {baseDir}/data/briefings/{YYYY-MM-DD}-frontier-briefing.md
   ```
   保存时覆盖当日内容。

## Data Directory

All runtime data is stored under `{baseDir}/data/`:

```
{baseDir}/data/
├── candidates/          # RSS 爬取的候选条目 (JSON)
│   └── *_candidates.json
├── briefings/           # 生成的简报 (Markdown)
│   └── YYYY-MM-DD-frontier-briefing.md
└── rss-state.json       # RSS 爬取状态
```

> `{baseDir}` is the skill root directory containing this SKILL.md. All paths use `{baseDir}` for portability.

## Edge Cases

| Situation | Action |
|-----------|--------|
| No candidates (RSS empty) | Run with 36kr + arXiv + GitHub only, skip RSS section |
| arXiv API timeout (>30s) | Skip paper section, log warning |
| GitHub fetch fails | Skip trending section, log warning |
| 36kr API 404 (no data yet) | Skip 36kr items in quick scan |
| Zero high quality items (<2 at ≥2.5) | Return `NO_REPLY` instead of empty briefing |
| Same company appears in multiple sources | Deduplicate, keep highest-scored entry |
| First run (no data dir) | Auto-create `{baseDir}/data/` and subdirectories |

## Skill Integration

| Skill | Role |
|-------|------|
| **wechat-curator** | WeChat articles → 🟢 Quick scan supplement |
| **zsxq-helper** | Zsxq content → independent push (not in main briefing) |
| **rss-crawler.py** | RSS fetching engine (11 sources) — now included in `{baseDir}/scripts/` |

## Configuration

Edit `{baseDir}/references/BRIEFING_CONFIG.md` to customize:
- Quantity limits per tier
- Data source on/off switches
- Signal detection thresholds
- Delivery target (Feishu user ID / Discord channel / etc.)

## Quality Gates

- Max 16 items per day (3+5+5+3 papers)
- `NO_REPLY` when <2 quality candidates
- Deduplicate same company/product, keep highest score
- 3 consecutive days below 3 core items → trigger keyword review

## Dependencies

- **Python 3.8+** with `feedparser` (for RSS crawling)
- **bash** (for arXiv/GitHub fetch scripts)
- **curl** (for 36kr API)
- **web_search** tool (for Anthropic track)

---

_Last updated: 2026-05-09 | v3.0_

