1. 项目定位与用途
Horizon 是一个全自动 AI 科技新闻聚合与摘要系统,核心定位是帮助用户高效获取精选科技资讯。它从 Hacker News、RSS、Reddit、Telegram 和 GitHub 等多个源自动收集新闻,利用 AI 模型进行评分和过滤,最终生成中英双语每日简报。简报包含新闻摘要、社区讨论总结以及背景知识解释,用户只需阅读即可掌握当日重要科技动态。系统支持静态站点部署,自动更新,也可通过邮件订阅接收每日推送。项目采用 MIT 许可证,代码开源,适合个人和团队使用。
Horizon 是全自动 AI 科技新闻聚合与摘要系统,集成 Hacker News、RSS、Reddit 等源,智能评分过滤,生成中英双语每日简报。本页提供项目完整介绍、安装步骤、配置方法及 GitHub Pages 部署指南,适合个人和团队高效跟踪科技动态。
Horizon 是一个全自动 AI 科技新闻聚合与摘要系统,从 Hacker News、RSS、Reddit、Telegram 和 GitHub 等多源收集新闻,使用 Claude、GPT、Gemini 等 AI 模型智能评分过滤,自动生成中英双语每日简报,帮助用户高效获取精选科技资讯。
Horizon 是一个全自动 AI 科技新闻聚合与摘要系统,核心定位是帮助用户高效获取精选科技资讯。它从 Hacker News、RSS、Reddit、Telegram 和 GitHub 等多个源自动收集新闻,利用 AI 模型进行评分和过滤,最终生成中英双语每日简报。简报包含新闻摘要、社区讨论总结以及背景知识解释,用户只需阅读即可掌握当日重要科技动态。系统支持静态站点部署,自动更新,也可通过邮件订阅接收每日推送。项目采用 MIT 许可证,代码开源,适合个人和团队使用。
Horizon 主要解决科技新闻信息过载与筛选成本高的问题。在信息爆炸时代,用户难以手动跟踪多个平台的优质内容。系统通过 AI 自动评分(0-10 分)过滤低质量新闻,合并跨平台重复内容,并提取关键信息生成摘要,将每日新闻筛选时间从数小时缩短至几分钟。同时,双语输出和背景知识补充降低了跨语言和信息理解门槛,使获取科技资讯变得轻松高效。此外,自托管邮件订阅和静态站点部署确保了内容的可靠分发与长期可访问性。
Horizon 适用于多种场景:个人用户可每日获取精选科技简报,快速了解行业动态;开发团队或研究小组可跟踪特定技术领域(如 AI、开源项目)的进展,并共享简报促进知识同步;社区或媒体可将其作为内容聚合工具,自动生成多语言新闻摘要。此外,对于需要监控 GitHub 项目发布、Reddit 讨论或 Hacker News 趋势的用户,Horizon 提供了一站式解决方案。系统的高度可配置性也使其能适应不同兴趣领域的新闻聚合需求。
安装 Horizon 需满足以下条件:首先确保 Python 3.11+ 环境。复制 .env.example 为 .env,至少配置一个 AI API 密钥(如 ANTHROPIC_API_KEY、OPENAI_API_KEY 等),可选 GitHub Token 以提高 API 速率限制。然后使用 uv 或 pip 安装 pyproject.toml 中定义的依赖项(httpx、feedparser、anthropic、openai 等)。安装完成后,可运行 horizon-wizard 命令进行交互式源配置,或直接编辑 data/config.json 自定义新闻源、AI 提供商和评分阈值。最后执行 horizon 命令生成简报,或通过 GitHub Actions 自动部署。Docker 部署方式可通过 docker-compose.yml 实现,但仓库中未提供详细文档。
使用 Horizon 生成每日简报有两种主要方式:手动运行或自动部署。手动方式下,编辑 data/config.json 配置新闻源列表、AI 模型和过滤阈值,然后执行 horizon 命令即可生成当日简报,输出为 Markdown 文件并部署到 docs 目录。自动方式通过 GitHub Actions 工作流(deploy-docs.yml)实现,定时触发或推送代码后自动运行完整流程并更新 GitHub Pages 站点。用户可访问生成的静态网站(如 https://thysrael.github.io/Horizon/),或订阅邮件接收每日简报推送。邮件订阅功能需在配置文件中设置 SMTP/IMAP 参数。
Horizon 采用模块化设计,核心模块包括:多源爬虫(src/scrapers/)、AI 评分与摘要(src/ai/)、内容编排(src/orchestrator.py)、静态站点生成(docs/)和邮件服务(src/services/emailer.py)。系统支持多种 AI 提供商,通过抽象层统一调用;基于 0-10 分的评分机制可配置阈值过滤;内容去重合并跨平台重复项;网络搜索增强提供背景知识。此外,项目提供 MCP 服务器(horizon-mcp)供外部集成,配置即代码理念通过单 JSON 文件和预设库(docs/presets.md)实现易定制性。测试套件位于 tests/ 目录,使用 pytest 进行单元和集成测试。
在 .env 文件中设置至少一个 AI API 密钥(如 ANTHROPIC_API_KEY、OPENAI_API_KEY、GOOGLE_API_KEY 等),并在 data/config.json 的 ai 部分指定提供商、模型和参数。支持 Anthropic、OpenAI、Google、MiniMax、DashScope 及任何 OpenAI 兼容 API。
系统内置支持 Hacker News 热门项目、RSS 订阅源、Reddit 帖子与评论、Telegram 频道以及 GitHub 发布与用户事件。所有源可在 data/config.json 中灵活启用、禁用或自定义参数。
项目已预配置 GitHub Actions 工作流(deploy-docs.yml)。将代码推送至 main 分支或到达 schedule 触发时间时,工作流会自动运行 horizon 生成简报、构建 Jekyll 站点,并部署到 GitHub Pages。访问 https://thysrael.github.io/Horizon/ 即可查看最新简报。
Horizon 包含自托管邮件服务(src/services/emailer.py),通过 SMTP/IMAP 协议处理订阅请求。用户在网站点击订阅后,系统自动记录邮箱;每日简报生成后,邮件服务将中英文版本发送至所有订阅者。邮件服务器参数需在 data/config.json 中配置。