ニュースそのものを楽しもう。あとはHorizonにおまかせを
📡 あなた専用のAI搭載ニュースレーダー。英語と中国語で日次ブリーフィングを生成します。 | 构建你专属的 AI 新闻雷达
|
ランク付けされた日次ブリーフィング
|
背景・要約・ディスカッション
|
読みたい記事はフィードやコミュニティ、タイムラインに散らばっています。でも、読める時間は限られています。Horizonが収集・選別・重複排除を引き受け、読む価値のある内容を背景や議論とともに届けます。
何を読むかも、何を読み取るかも、人それぞれ。ニュースなら「なぜ重要か」、技術記事なら「何を活かせるか」。Horizonのプロファイルなら、内容に合わせて評価基準とまとめ方を変えられます。自分で選び抜いたような日報へ。
- 📡 気になる情報を一か所に — RSS、Hacker News、Reddit、Telegram、X、GitHub、金融ニュースなどをまとめて収集。
- 🎯 読む価値は、自分の基準で — プロファイルごとに評価基準としきい値を設定し、同じプロファイル内の重複した話題を統合。
- 🧩 ニュースには背景を、技術記事には学びを — MarkdownのプロンプトとJSONで、要約・背景・解決策・学びなどの出力を定義。
- 💬 見出しの先まで読む — 必要に応じてWebで背景を調べ、コミュニティの議論も読み解く。
- ⚖️ 読み切れる量に整える — 日報の総件数とカテゴリ別の枠を指定。話題の多い分野に、ほかの関心を埋もれさせない。
- 📬 いつもの場所で読む — 英語・中国語の日報をMarkdownに保存し、Pagesで公開、メールやWebhookで配信。
プロファイルは、何を対象にし、何を残し、どうまとめるかを定める再利用可能なルールです。組み込みの例:
| 読みたいもの | プロファイル | 得られるもの |
|---|---|---|
| テクノロジーニュース | tech-news |
出来事と背景、必要に応じて影響やコミュニティの議論 |
| 技術の深掘り記事 | tech-blog |
背景、解決策、実践に活かせる学び |
| AI関連の創作素材 | ai-creator |
要約、必要に応じて今取り上げる理由や企画の切り口 |
情報源にプロファイルを指定することも、AIに選ばせることもできます。自分好みに変えるなら既存のプロファイルから。通常、Pythonの変更は不要です。プロファイルをカスタマイズ →
プロファイルで処理のルールを、実行設定で読書の好みを。 各記事をひとつのプロファイルに振り分け、分析・選別・重複排除を経た記事に内容ブロックを生成。プロファイルごとにまとめて日報にします。
CLIから全体を実行するほか、MCPを通じてAIアシスタントから収集・分析・生成などの各段階を呼び出せます。
AIアシスタントに情報源の設定、プロファイルのカスタマイズ、日報の生成を任せられます。
npx skills add Thysrael/Horizon --skill horizon -gインストールコマンドにはNode.js 22.20+が必要です。Skillを追加したら、AIアシスタントにHorizonのインストールと設定を依頼するか、以下の手順で手動インストールできます。
オプションA: ローカルインストール
git clone https://github.com/Thysrael/Horizon.git
cd Horizon
# uvでインストール(推奨)
uv sync
# 必要に応じてテスト/開発用の追加依存をインストール
uv sync --extra dev
# またはpipで
pip install -e .devは現在pyproject.tomlでオプションのextraとして定義されているため、pytestやその他の開発用依存にはuv sync --extra devを使用してください。
オプションのOpenBB金融ニュース情報源が必要な場合は、そのextraもインストールしてください。
uv sync --extra openbbopenbbがお使いの環境でwheelのないパッケージを取得する場合は、バイナリのみでSDKを手動インストールしてください。
uv pip install --only-binary=:all: openbb openbb-benzingaオプションB: Docker
git clone https://github.com/Thysrael/Horizon.git
cd Horizon
# オプション: 初回実行前にカンマ区切りのextrasを含めてビルド
docker compose build --build-arg EXTRAS=openbb horizontrafilaturaによる全文抽出は基本インストールに含まれます。twitter extraにはPlaywrightブラウザとシステムパッケージも必要ですが、現在のDockerfileはそれらをインストールしません。
オプションA: 対話式ウィザード(推奨)
uv run horizon-wizardウィザードはあなたの興味(例: 「LLM inference」「嵌入式」「web security」)について質問し、data/config.jsonを自動生成します。CLIオプションは対話式ウィザードを参照してください。
対象のChatGPTサブスクリプションをお持ちの方は、openai-chatgptを選び、公式ログイン認証でプランの利用枠を使用できます。OpenAI APIキーは不要です。
オプションB: 手動設定
cp .env.example .env # APIキーを追加
cp data/config.example.json data/config.json # 情報源をカスタマイズ最小限の手動設定:
情報源でprofileを明示すると、そのプロファイルを直接使用します。省略するか
"auto"を指定すると、AIが利用可能なプロファイルから選択します。
["tech-news", "finance-news"]のような配列で候補を絞ることもでき、記事ごとにひとつが選ばれます。構造と動作は
処理プロファイルを参照してください。スコアしきい値やトピック
重複排除などのユーザー設定は、プロファイルファイルではなく
processing.profile_settingsに記述します。
バランス調整されたダイジェスト(オプション)
最終的なダイジェストのサイズを制限し、1つのカテゴリが結果を支配しないようにします。カテゴリはsources.rss[].categoryなどの情報源設定から取得されます。
{
"digest": {
"max_items": 20,
"category_groups": {
"ai": {
"limit": 5,
"categories": ["ai-news", "ai-tools", "machine-learning"]
},
"finance": {
"limit": 5,
"categories": ["finance", "business", "equities"]
}
},
"default_group": "other",
"default_group_limit": 3
}
}グループの上限は、プロファイルのフィルタリング後、エンリッチ前に適用されます。category_groups、max_items、default_group_limitを省略した場合、カテゴリ別の上限は適用されません。
api_key_envはAPIキーそのものではなく、環境変数の名前でなければなりません。実際のシークレットは.envに記述してください。
OPENAI_API_KEY=sk-your-keyGeminiの場合はGOOGLE_API_KEYを使用します。
{
"ai": {
"provider": "gemini",
"model": "gemini-2.0-flash",
"api_key_env": "GOOGLE_API_KEY"
}
}data/config.json内の任意の文字列値は、${VAR_NAME}で環境変数を参照できます。これはai.base_url、非公開のRSSフィードURL、webhookエンドポイント、カスタムヘッダーテンプレートなどの値に便利です。
完全なリファレンスについては、設定ガイドを参照してください。
A. ローカルインストール
uv run horizon [OPTIONS]B. Docker
docker compose run --rm horizon [OPTIONS]| オプション | デフォルト | 説明 |
|---|---|---|
--hours N |
24 | 過去N時間から取得 |
-d, --data-dir PATH |
data |
データディレクトリのパス |
-c, --config PATH |
<data-dir>/config.json |
設定ファイルのパス |
-l, --log-level LEVEL |
WARNING |
ログレベル(DEBUG/INFO/WARNING/ERROR/CRITICAL) |
--data-dirは、サマリー、購読者ファイル、デフォルト設定の場所を含む状態ディレクトリを変更します。--configは設定ファイルだけを変更します。生成されたレポートはdata/summaries/に保存されます(--data-dirを指定した場合は<data-dir>/summaries/)。両方の場所を変更する場合やカスタム設定の初期化については、設定パスを参照してください。
GitHub ActionsでHorizonを定期実行できます。日次ワークフローのテンプレートは現在無効です。環境に合わせて設定し、daily-summary.ymlに名前を変更すると有効になります。
| 情報源 | 取得する内容 | コメント |
|---|---|---|
| Hacker News | スコア順のトップ記事 | あり(上位N件のコメント) |
| RSS / Atom | 任意のRSSまたはAtomフィード | — |
| サブレディット + ユーザー投稿 | あり(上位N件のコメント) | |
| Telegram | 公開チャンネルのメッセージ | — |
| Twitter / X | ユーザーの投稿 + キーワード検索(Apify) | あり(上位N件の返信) |
| GitHub | ユーザーイベント & リポジトリのリリース | — |
| OpenBB | ウォッチリスト/プロバイダー別の企業金融ニュース | — |
| OSS Insight | 注目のオープンソースリポジトリ | — |
| GDELT | クエリに一致するニュース | — |
| Google News | RSSによるニュース検索 | — |
Horizonは、生成されたブリーフィングをいくつかの方法で公開・配信できます。
| チャネル | 内容 |
|---|---|
| GitHub Pages 日次サイト | 生成されたMarkdownをdocs/にコピーし、GitHub Pagesが毎日更新されるブリーフィングサイトを公開できるようにします |
| メール購読 | 日次ブリーフィングを購読者に送信し、SMTP/IMAPを通じて購読・購読解除リクエストを処理します |
| Webhook通知 | 成功または失敗の結果をFeishu/Lark、DingTalk、Slack、Discord、または任意のカスタムWebhookエンドポイントへプッシュします |
| WeChat通知 | QRログイン後にボットへメッセージを送り、iLink Bot経由で日報を受信。WeChatの返信数制限が適用されます |
配信の設定は設定ガイドを参照してください。AIアシスタントから各段階を呼び出すにはMCPサーバーを利用できます:ツール一覧・クライアント設定。
Horizonは余暇に運営されているオープンソースプロジェクトです。プロジェクトを支援したい、またはここに掲載されたい場合は、お気軽にissueを開くかメールでご連絡ください。
| サポーター | 詳細 |
|---|---|
![]() |
本プロジェクトをご支援いただいているModelflareに感謝します!Modelflareは、性能を落とさず、安定した品質で、世界最先端のモデルをより低コストで提供します。米国のHavenbyte LLCが運営し、一般的な互換プロトコルを通じてGPT、Claude、Gemini、Grokなどの主要モデルに対応するほか、40以上の画像・動画モデルも利用できます。 キャッシュ補償が特長です。対象のOpenAIグループ(価格優先・安定・プレミアム)では、日次キャッシュヒット率65%、75%、85%をそれぞれ保証します。条件を満たすリクエストが基準に届かない場合、Modelflareが差額を返金し、精算後に利用状況ダッシュボードで確認できます。 特別オファー:1回で20米ドルをチャージすると価格倍率0.015xのGPT割引グループが、1回で50米ドルをチャージすると価格倍率0.03xのClaude割引グループが利用可能になります。こちらの専用リンクから登録してご利用ください。 |
![]() |
Compshareは現在Horizonをサポートしています。CompshareはUCloudのAIクラウドプラットフォームで、月額49人民元から始まるコスト効率の良い月額・従量課金の国内モデルエージェントプランや、安定した公式リレーの海外モデルを提供しています。Claude Code、Codex、APIの利用に対応し、エンタープライズグレードの高同時実行、24時間365日の技術サポート、セルフサービスの請求書発行を備えています。 彼らのリンクから登録すると、無料で5人民元のトライアルクレジットを受け取れます。 |
| OfoxAIは、複数のプロバイダーのテキスト・画像・動画モデルを集約した統合AI APIプラットフォームです。OpenAI互換インターフェースに加え、AnthropicとGeminiのネイティブインターフェースにも対応しています。開発者はひとつのプラットフォームを通じて、AIアプリケーション、エージェント、コンテンツ制作にモデルを組み込み、タスクに適した機能を選択できます。 OfoxAIのモデルとAPIを見る → |
| ガイド | 説明 |
|---|---|
| 設定 | AIプロバイダー、情報源、処理プロファイル、フィルタリング、メール、webhook、WeChat、GitHub Pages、MCPのセットアップ |
| 処理プロファイル | プロファイルの振り分け、プロンプト、実行時フィルター設定、エンリッチブロック、ツール |
| スコアリング | Horizonがニュース項目を評価・ランク付けする方法 |
| スクレイパー | 情報源スクレイパーの詳細と拡張に関する注記 |
| コンテンツエクストラクター | RSS情報源の全文抽出 |
| MCPツール | MCP互換クライアント向けのツールリファレンス |
| Agent Skill | AIアシスタントによるHorizonの設定、実行、カスタマイズ、定期配信、拡張 |
Horizonはすでに日次ブリーフィングの全ループをサポートしています。マルチソース収集、プロファイル駆動の分析とエンリッチ、重複排除、コメント要約、2言語生成、GitHub Pages公開、メール配信、webhook配信、WeChat配信、Dockerデプロイ、MCP統合、セットアップウィザードです。
予定している改善:
- Discordなど、より多くの情報源タイプ
- GitHubでのリリース公開
pip install用にPyPIへパッケージを公開
Horizonのユーザー・開発者向けQQグループで、情報源やプロファイル、導入のヒントを共有しましょう。
QQグループ番号:1106121909
QQでスキャンするか、グループ番号を検索して参加できます。
コントリビューションを歓迎します。コード、ドキュメント、情報源共有のガイドラインについてはCONTRIBUTING.mdを参照してください。
価値のある情報源の発見をHorizonコミュニティと共有したいですか? ぜひ**horizon1123.top**から投稿してください。
- プロモーションの場を提供してくださったLINUX.DOに特別な感謝を。
- 貴重な指導と提案をいただいたHelloGitHubに特別な感謝を。
- 小紅書(XiaoHongShu)でのプロモーションをしてくださったAIGC Linkに特別な感謝を。








{ "ai": { "provider": "openai", "model": "gpt-4", "api_key_env": "OPENAI_API_KEY" }, "sources": { "rss": [ { "name": "Simon Willison", "url": "https://simonwillison.net/atom/everything/", "profile": "tech-news" } ] }, "processing": { "profiles_dir": "profiles", "default_profile": "tech-news", "profile_settings": { "tech-news": { "threshold": 7.0, "topic_dedup": true } } } }