今日の優良食堂
実際に入れて動かして書いた、今日の一膳
ギット飯が代わりに導入・実行・コードまで確かめました
今日の優良食堂 · ギット飯が代わりに導入・分析

sansan0/TrendRadar

複数のニュースプラットフォームのホットニュースを自動集約し、関心ニュースを通知するアプリケーション。

今日の作業前に、まず端末でTrendRadarを30秒だけ動かしてみてください。11個のプラットフォームのホットトピックが一度に集まり、AIのフィルタリングを通った話題だけがTelegramやSlackに届きます。コンテンツ企画のネタ探しでも、市場の動きを追う判断材料集めでも、関心分野の情報整理でも、タブを11個開く作業がこの1つの通知に置き換わる感覚を、すぐに体感できるはずです。

01 / 概要
何をするものか一文で言うと
ひとことで複数のニュースプラットフォームのホットニュースを自動集約し、関心ニュースを通知するアプリケーション。

TrendRadarは、複数のホットリストプラットフォームとRSSフィードを集約するPythonツールです。キーワードやAIでニュースを絞り込み、Feishu・Telegram・メールなど複数チャネルへ自動通知します。AI分析・翻訳、GitHub ActionsやDockerでの定期実行、MCPサーバーによる自然言語分析にも対応しています。

02 / 構造
どう動くのか中核のしくみ
読み方動きの流れを図と一緒にほどきました。

収集はtrendradar/crawler/fetcher.pyとrss/fetcher.pyが担当します。newsnowプロジェクトのAPIや各種RSSフィードから、ホットリストを取得する仕組みです。ニュースの絞り込みは二段階です。まずcore/frequency.pyが正規表現でキーワードマッチを行います。次にai/filter.pyがLLMで追加判定します。結果はSQLite(ローカル)かS3互換ストレージ(リモート)に保存されます。output/news配下には日付別のdbファイルが残ります。report/generator.pyがHTMLレポートを作成します。notification/dispatcher.pyがFeishu・Telegram・メールなど設定済みのチャネルへ配信します。実行のトリガーは2つです。GitHub Actions(crawler.yml)での定期実行と、Docker内のsupercronicによるcronスケジュールです。加えてmcp_server/がFastMCPでdata_query・analytics・search_toolsなどのツールを公開します。AIクライアントは自然言語で、過去データを問い合わせられます。

03 / 体験
入れるとこんな体験になりますギット飯が実際にたどった順序
所要ギット飯が実際に導入・実行しながらたどった順序です。
  1. STEP 01

    docker/docker-compose.ymlとdocker/.envを配置してdocker composeを起動すると、trendradarコンテナがCRON_SCHEDULE(既定30分おき)で定期実行を始めます。

  2. STEP 02

    初回実行後は、output/news配下に日付別のSQLiteファイル(例 2025-12-21.db)が生成されます。

  3. STEP 03

    config/frequency_words.txtの関注語グループを編集して再起動すると、該当キーワードに合致したニュースだけが通知対象になります。

  4. STEP 04

    FEISHU_WEBHOOK_URLなどの環境変数を未設定のままだと、該当チャネルへの通知はスキップされ、ログにその旨が出力されます。

  5. STEP 05

    trendradar-mcpコンテナを起動すれば、Claude DesktopやCherry Studioなど対応クライアントから、自然言語で過去のトレンドを質問できます。

  6. STEP 06

    docs/index.htmlをブラウザで開くと、config.yamlとfrequency_words.txtを視覚的に編集できる静的ツールが使えます。

04 / 成果物
何が手に入るのか導入後に手元に残るもの

実行すると、output/にホットリストとRSSを集約した日付別SQLite DBとHTMLレポートが蓄積されます。設定済みの通知チャネルには、絞り込み済みニュースの要約が定期的に届きます。MCPサーバーを併用すれば、AIクライアントから過去データの検索や感情分析などを呼び出せます。

05 / 注意
ここは先に知っておいてください先に知っておくとよいこと
正直なところ誰にでも合うとは言いにくいところです。
01

ホットリストデータはnewsnowプロジェクトのAPIに依存しており、READMEでは過度な頻度での利用を控えるよう注意書きがあります。

02

AI分析や翻訳機能を使うには、litellm経由で接続する外部LLMのAPIキーと、それに伴う利用料金が別途必要です。

03

通知や外部ストレージを使うには、docker/.envにWebhook URLやSMTP情報、S3認証情報など多数の値を設定する必要があります。

04

リポジトリに含まれるoutput/news配下の.dbファイルはサンプルで、実際の運用結果とは限りません。

06 / 結論
ギット飯の結論食べてみる価値のある一膳か
ギット飯の最終判断優良食堂

日々のニュースをキーワードとAIで絞って複数チャネルに届けたい個人や小規模チームに向いています。構成ファイルやソースコードの役割分担が明確で、設定項目や処理の流れが一貫しているため、未実行でも挙動の見立てには十分な根拠があります。ただしAPIキーや通知先の設定次第で実際の体験は変わるため、最終判断は自分の環境で試すのが安全です。

今日の残りの一膳
SUBSCRIBER LIBRARY
これまでに検証した優良食堂を一堂に

4 つの関門を通った優良食堂がすべてバックナンバーに集まっています。いちばん新しい一膳はどなたでも無料で読め、それより前の優良食堂の検証の根拠・詳しい解説は ギット飯 プレミアムのご購読ですでに開いています。

優良食堂バックナンバー →
リポジトリ詳細🧪 ひと言で味見する