17somh1/ThreatDigest
GitHub: 17somh1/ThreatDigest
一个基于 Python 和 OpenAI 的自动化每日威胁情报摘要工具,通过聚合 RSS 订阅源生成教育性新闻简报并自动部署为静态站点。
Stars: 0 | Forks: 0
# ThreatDigest
一个具有辛辣且富有教育意义风格的、作品集级别的每日威胁摘要。它通过摄取免费的 RSS/Atom 订阅源,对条目进行过滤和排名,使用 OpenAI 将每条内容总结为严格的 JSON schema,并通过 GitHub Pages 发布静态站点。
## 架构
```
RSS/Atom feeds -> filter + dedupe + rank -> OpenAI JSON summaries
| |
+--> editor layer ----> clusters -> themes (OpenAI)
Rendered HTML -> docs/index.html + docs/archive/YYYY-MM-DD.html
```
## 本地运行
```
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
export OPENAI_API_KEY=...
python -m src.main
```
输出:
- `docs/index.html`
- `docs/archive/YYYY-MM-DD.html`
## 配置
- `config/settings.yaml` 包含 RSS 订阅源列表。
- 环境变量:
- `OPENAI_API_KEY`(必填)
- `OPENAI_MODEL`(可选,默认为 `gpt-4o-mini`)
- `MAX_ITEMS`(可选,默认为 `15`)
- `RECENT_HOURS`(可选,默认为 `48`)
## 成本控制
- 仅考虑最近(过去 24-48 小时)的条目。
- 通过规范 URL 和标准化标题哈希进行去重。
- 限制每次运行总结的条目数量(`MAX_ITEMS`)。
## 方法论
该 pipeline 使用关键词和来源过滤器仅保留相关条目,对其进行确定性排名,并使用严格的 JSON schema 对每条内容进行总结。编辑层将相关条目聚类为故事,强制进行优先级排序(头条故事、前三条,然后是上下文),并将每次输出限制为 6 个聚类。使用的任何术语必须为初学者提供定义。如果来源内容单薄,模型会被指示将置信度设置为 LOW 并解释不确定性。
## GitHub Actions
`.github/workflows/digest.yml` 中的 workflow 每日按计划运行,生成摘要,并将 `docs/` 部署到 GitHub Pages。
标签:AI自动化, DLL 劫持, DNS解析, GitHub Actions, GitHub Pages, Newsletter, OpenAI, Petitpotam, Python, RSS聚合, 信息过滤, 内存规避, 内容生成, 大语言模型, 威胁情报, 安全快讯, 开发者工具, 开源项目, 技术分享, 无后门, 智能写作, 每日摘要, 网络安全, 自动化新闻, 自动笔记, 逆向工具, 隐私保护, 静态站点