daily-brief
Operational knowledge for the daily-brief digest pipeline (this project). RSS/API fetchers, pluggable LLM enrichment (default claude CLI on Max; also anthropic/openai/deepseek/minimax API), trading section, HTML rendering, cross-platform scheduler integration (Windows Task Scheduler / macOS launchd / Linux cron). Load when the user asks about running daily / regenerating sections / debugging a failed run / adding or disabling sources / LLM quota / scheduler / why a tab shows wrong data / why a source failed / switching LLM backend. Always prefer the documented npm commands over re-implementing
npx skills add leiting-eric/DailyBrief --skill daily-brief --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# daily-brief — Operational Skill This project generates a single-page HTML daily digest covering tech / finance / politics / market data / community discussion. The pipeline runs locally via the OS scheduler (Windows Task Scheduler / macOS launchd / Linux cron, default 08:00 local time) and emits `daily_reports/<YYYY-MM-DD>/<YYYY-MM-DD>.html` + sidecar files (each date gets its own subdir). The date label uses the system local timezone by default — set `REPORT_TZ` (e.g. `Asia/Shanghai`, `UTC`) in `.env.local` to override. Detailed architecture lives in code; this skill is a cheat sheet for **operating** and **diagnosing**, not a re-explanation of the system. ## Project root assumption All paths in this skill are **relative to the project root** (the directory that contains `package.json`, `lib/`, `scripts/`). **Before any command, ensure the working directory is the project root.** Two cases: 1. **Claude Code session opened inside the project** — already there, no action needed 2. **Session opened elsewhere** — read the config file and `cd`: ```bash # Cross-platform Node one-liner (prints the project root path): node -e "const fs=require('fs'),os=require('os'),path=require('path')
- Project root assumption
- Quick command reference
- File map — where to change what
- How LLM enrichment works (mental model)
- Diagnostic flow
- "今天日报没出来" / "Chrome 没弹"
- "某个源数据不对 / 0 条"
- "LLM 调用炸 / 中文摘要缺失"
- "UI 出错 / 某个 tab 显示异常"
- Recurring failure patterns (institutional knowledge)
- LinuxDo / Cloudflare WAF
- Run-daily.mjs wrapper notes
- "X 推文 出现非英文"
- "社区讨论 tab 偶发空白"
What does the daily-brief skill do?
Operational knowledge for the daily-brief digest pipeline (this project). RSS/API fetchers, pluggable LLM enrichment (default claude CLI on Max; also anthropic/openai/deepseek/minimax API), trading section, HTML rendering, cross-platform scheduler integration (Windows Task Scheduler / macOS launchd / Linux cron). Load when the user asks about running daily / regenerating sections / debugging a failed run / adding or disabling sources / LLM quota / scheduler / why a tab shows wrong data / why a source failed / switching LLM backend. Always prefer the documented npm commands over re-implementing
How do I install it?
Run `npx skills add leiting-eric/DailyBrief --skill daily-brief --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From leiting-eric/DailyBrief, a repository with 311 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
