Skip to content

Repository files navigation

Daily Source Intelligence

一套可审计、中文优先的每日公开信息采集与阅读工作流。

Daily Source Intelligence 会围绕预设主题,收集官方博客、RSS、GitHub Releases、GitHub Trending 和公开 X/Twitter 信号,保留来源证据、生成阅读清单,并输出结构化中文日报。

打开网页版(自动置顶最新一期) · 浏览全部 Markdown 日报 · 阅读完整运行手册

它解决什么问题

每天的信息流很多,真正困难的不是“找到链接”,而是稳定地完成这条链路:

公开来源 → 本地证据归档 → 去重与来源健康 → 阅读清单 → 中文日报

本项目把采集、证据边界和报告生成拆开:脚本负责确定性工作,日报负责解释“今天发生了什么、为什么值得关注、哪些判断仍需验证”。

核心特点

  • 中文优先:日报面向中文阅读,保留必要的英文标识符与原始链接。
  • 证据可追溯:重要判断回到官方正文、Release、README 或结构化公开数据。
  • 失败不伪装:抓取受限、凭据缺失或来源失败时明确记录覆盖边界。
  • 来源分级:区分官方来源、直接 X 证据和 GitHub Trending 等发现线索。
  • 可重复运行:采集、状态更新、阅读清单和日报路径都有固定约定。

快速开始

要求:Python 3.10+、curl;如需网页正文 fallback,请安装 opencli

python3 scripts/run-dsi-pipeline.py --date YYYY-MM-DD

已有当天采集结果时,可以只重建确定性派生物:

python3 scripts/run-dsi-pipeline.py --date YYYY-MM-DD --skip-collection

开始前建议先阅读 运行手册,并按需调整 关注方向主题配置来源配置

X/Twitter 数据与凭据安全

X/Twitter 结构化数据通过 twitterapi.io 的只读接口采集。API key 不得写入配置、脚本、日报或任何提交文件。采集脚本只从以下位置读取凭据:

  1. 环境变量 TWITTERAPI_IO_KEY
  2. macOS Keychain:service=twitterapi.ioaccount=$USER

没有凭据时,流程会记录 skipped,不会把“未采集到”误写成“账号没有更新”。详细说明见 twitterapi.io 配置

仓库结构

路径 用途
config/ 关注主题、信息源与采集配置
scripts/ 采集、去重、派生与校验脚本
tests/ 工作流核心行为测试
docs/ 可读的每日情报日志
runbook.md 完整运行顺序、证据规则与失败边界

本仓库公开提交以代码、配置、运行手册和 docs/ 日报为主;本地 raw 抓取、状态数据库、审计产物和长期趋势工作区不作为日常公开提交内容。

验证

python3 -m unittest discover -s tests -v

如果你只想了解项目产出,直接打开 Daily Source Intelligence 网页版 即可。

Releases

Packages

Contributors

Languages