🎸

【n8n】「情報収集」を自動化する。RSSとGeminiで作る、自分専用の "AIニュース・キュレーター"

に公開

はじめに

エンジニアやマーケターにとって、最新情報のキャッチアップは必須スキルです。 しかし、毎朝いくつものテックブログやニュースサイトを巡回するのは時間がかかりますし、その9割は「自分には関係ない情報」だったりします。

そこで今回は、「自分の興味ある分野だけを選別し、3行で要約して毎朝Slackに届けてくれる」 自分専用のAIキュレーターを作りました。 SNSのタイムラインをダラダラ眺める時間をゼロにし、本当に必要な情報だけをインプットする仕組みです。

作ったもの

AI Tech Watcher

  • 収集: TechCrunch、n8n公式ブログ、Google AI BlogなどのRSSを自動取得。

  • 選別: Geminiが記事の中身を読み、「これは自動化/NoCodeに関係あるか?」を判定。

  • 要約: 重要と判断された記事だけを、日本語で3行に要約。

  • 通知: 毎朝8時にSlackに配信。

Slack通知のイメージ

朝起きると、以下のような通知が届いています。

News: Introducing n8n's New AI Agent Features

n8nに新しいAIエージェント機能が追加され、自律的なタスク実行が可能になりました。

メモリ管理機能が強化され、過去の会話文脈を保持しやすくなっています。

LangChainとの連携がよりスムーズになり、複雑なワークフロー構築が容易です。 🔗 [記事リンク]

技術的なポイント:JavaScriptによる「重複排除」

RSSリーダーを作るときに一番困るのが、「同じ記事が何度も通知されてしまう」 問題です。

n8nには標準で「Deduplication(重複排除)」ノードがありますが、より細かく制御するために、今回はあえて数行のJavaScript(Codeノード)で実装しました。

処理ロジック

  • 過去に通知した記事のID(URL)を、n8nのメモリ(Static Data)に保存。

  • 今回取得した記事のIDと照合。

  • 「リストにない(=新着)」場合のみ通過させ、リストを更新する。

// 重複排除ロジック(抜粋)
const staticData = $getWorkflowStaticData('node');
const processedIds = staticData.processedIds || [];
// 新着のみをフィルタリング
for (const item of $input.all()) {
const id = item.json.guid || item.json.link;
if (id && !processedIds.includes(id)) {
newItems.push(item);
// ...
}
}

このコードを挟むだけで、通知の重複を完全に防ぐことができます。

Geminiへのプロンプト

ただ要約するだけでなく、「自分の職種」 を伝えることで、選別の精度を上げています。

Act as a Tech News Curator. Analyze this article for a No-Code Automation Engineer.

Rate Relevance (1-5): How relevant is this to AI, Automation, or n8n?

Summarize: Write a 3-bullet point summary in Japanese.

これにより、「一般的なビジネスニュース」は弾かれ、「実務に使える技術ネタ」だけが届くようになります。

GitHubで公開中

このワークフロー(JSON)はGitHubで公開しています。 RSSのURLを書き換えるだけで、あなた専用の「医療ニュースBot」や「マーケティング情報局」が作れます。

📂 GitHubリポジトリ: n8n-automation-workflows / 21-ai-tech-watcher
https://github.com/alternativescom/n8n-automation-workflows/blob/main/21-ai-tech-watcher

さいごに

「情報は、浴びるものではなく、選ぶもの」。 AIに一次情報をフィルターさせることで、空いた時間を「考えること」や「作ること」に使いましょう。

https://alternativecomputers.org/

非エンジニアの方々向けにご案内しています
https://alternativecomputers.org/n8n-ai-10/

Discussion