News Base
Skill-first news lab
继续把新闻库做成一套可运行、可解释、可发布的站点能力
当前仓库把新闻分类、来源配置、真实新闻抓取脚本和 VitePress 文档站点统一到一套内容模型里。 这样我们既能快速验证页面和 API,也能把 skill 设计思路直接沉淀成在线文档。
站点概览
新闻站点、JSON API 与 skill 文档共用一套内容模型
正在读取最新站点概览...
五大新闻专区
🌍 全球热点新闻聚焦国际议题、供应链变化、能源安全与全球治理信号。🇨🇳 国内要闻跟进政策发布、产业升级、城市治理与民生恢复节奏。💰 投资关注追踪市场风格、产业链估值、一级二级联动与风险因子。🚀 科技资讯围绕 Agent、大模型、开发者工具、云基础设施组织内容。💻 GitHub 热点把热门仓库、开源实践和工程工作流放进一个专区里观察。
这次站点收口的关键原则
Single source of truth配置驱动,而不是页面各自写死`config/categories.json` 和 `config/news_sources.json` 同时驱动页面信息、数据结构与文档说明。Live first优先抓真实源,失败时按分类兜底`scripts/crawl_news.js` 会先抓取真实 feed 和 GitHub Trending,只有在源不可达时才补本地兜底内容。Docs as product文档站点本身就是能力展示层首页、今日总览、分类页和 skill 文档都直接消费同一套 JSON API 产物。Replaceable pipeline页面层和抓取层继续保持松耦合当前组件只关心统一输出契约,所以后续继续换源、加摘要策略时页面不需要重写。工作流
mermaid
flowchart LR
A["config/categories.json"] --> D["scripts/crawl_news.js"]
B["config/news_sources.json"] --> D
D --> E["public/api/*.json"]
D --> F["data/daily/YYYY-MM-DD.json"]
E --> G["VitePress 页面组件"]
G --> H["在线文档站点"]
H --> I["Cloudflare Pages 发布"]本地命令
bash
npm run crawl
npm run build
npm run dev下一步可以继续做什么
继续加真实来源 在保留当前 JSON 契约不变的前提下,继续补更多 RSS、HTML 解析器和站点级重试策略。
接定时任务 通过 GitHub Actions 或本地 cron 定时运行 `npm run deploy`。
扩展技能文档 把来源解析器、重试策略、摘要模板沉淀到 `docs/skills/` 下继续演进。