mcpField
T
tech-news-report-skill

tech-news-report-skill

github.com/k5-mot生産性0108 回インストール6 週間前に更新
リポジトリ

tech-news-report-skill について

tech-news-report-skill は、生成 AI、クラウド、FinOps、開発ツール、インフラ、セキュリティなどの RSS 情報を集め、日本語レポートを作成するスキルです。`rss` MCP サーバーから最新情報を取得し、ニュース、記事、ポッドキャストの内容は呼び出し元のエージェントがまとめます。

主な機能

  1. 01情報源の分類に応じた RSS 選択
  2. 02`rss` MCP サーバー経由の最新情報取得
  3. 03ニュース、技術記事、ポッドキャストの区分
  4. 04一次情報の優先と重複整理
  5. 05呼び出し元エージェントによるレポート要約

活用シーン

  1. 01日本語の技術ニュースダイジェスト作成
  2. 02AI、クラウド、セキュリティの動向把握
  3. 03実務向け技術記事やポッドキャストの選定
  4. 04Open WebUI 投稿用レポートの準備

MCP 対応

`rss` MCP サーバーの `mcp_rss_get_feed` ツールでフィードを取得します。その素材を呼び出し元のエージェントがまとめてレポートを作成します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/k5-mot/skills --skill tech-news-report-skill

インストール後、Claude Code で/tech-news-report-skillを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
rss.txt
scripts/
report.py
tests/
test_tech_news_report_skill.py

詳細

プロジェクトの README より

tech-news-report-skill

目的

生成AI、クラウド、FinOps、開発ツール、インフラ、セキュリティ、周辺エコシステムの変化をRSS中心に調査し、日本語の技術ニュースレポートを作成する。レポートには「本日の主要ニュース」「おすすめの技術記事」「おすすめのポッドキャスト」を含める。

フィード台帳

RSSフィードの正本は references/rss.txt。SKILL.md にはURL一覧を重複管理しない。

references/rss.txt の見出しは情報源のジャンルを表す。ニュース本文の技術領域ではない。

  • 公式ベンダー・クラウド / AI
  • 国内企業 技術ブログ
  • 海外企業 技術ブログ
  • 開発者コミュニティ・キュレーション
  • 国内ニュースメディア・専門媒体
  • 海外ニュースメディア
  • 個人・専門ブログ
  • イベント・勉強会
  • ポッドキャスト

フィードを追加・移動するときは、記事トピックではなく発信元の性質で分類する。例えば、AI記事を掲載した国内企業ブログは「国内企業 技術ブログ」に置き、OpenAIやAWSの公式発表は「公式ベンダー・クラウド / AI」に置く。

ニュース取得

ニュースの取得には mcp_rss_get_feed ツール(rss MCPサーバー)を使う。MCPツール名を完全修飾できる環境では rss:mcp_rss_get_feed として参照する。curl・wget は使わない。

  1. references/rss.txt を読み、依頼の焦点に合う情報源ジャンルを選ぶ。
  2. 主要ニュースは公式ベンダー・クラウド / AI、国内外ニュースメディア、影響の大きい企業ブログを優先する。
  3. 技術記事は国内外企業技術ブログ、開発者コミュニティ、個人・専門ブログから実務に役立つものを選ぶ。
  4. ポッドキャストは「ポッドキャスト」ジャンルから、技術トピックが明確で学びがある回を選ぶ。
  5. 背景や市場反応を補う場合はニュースメディア、コミュニティ、ポッドキャストを補助的に使う。
  6. 一度に複数フィードをまとめて取得し、各フィードは count パラメータで取得件数を指定する(デフォルト1、0で全件)。

最新性ルール

ニュースは変化が速いため、レポート作成前に必ず mcp_rss_get_feed で最新フィードを取得し、出典リンクを含める。一次情報や信頼できる情報源を優先する。

  • ベンダーブログ、リリースノート
  • クラウドプロバイダーの公式発表
  • FinOps Foundationや公式プロジェクトの発表
  • ツールのGitHub releases
  • 標準化団体やセキュリティアドバイザリ
  • 補助情報として信頼できる技術メディア

手順

  1. 依頼の対象期間、対象領域、優先する情報源ジャンルを決める。期間指定がなければ直近24から72時間を目安にする。
  2. references/rss.txt から複数ジャンルのフィードを選び、mcp_rss_get_feed で最新記事を取得する。
  3. ひとつのベンダーや媒体に偏らず、公式情報、企業ブログ、メディア、コミュニティ、ポッドキャストを横断する。
  4. 同じ話題の重複を整理し、一次情報を主、解説記事を補助として扱う。
  5. 収集した記事・エピソード本文やRSS要約を読み、呼び出し元AgentがLLMとして内容を理解して、主要ニュースを5件程度、技術記事を5件程度、ポッドキャストを3件程度に絞る。Python内ではLLMを呼び出さない。
  6. scripts/report.py を使う場合は、返却JSONの report_input.news、report_input.articles、report_input.podcasts を素材として使う。source_inventory_markdown は確認用の素材一覧であり、最終レポートではない。
  7. 各項目について、タイトル、技術領域、情報源ジャンル、出典、URL、日付、概要、重要ポイントを押さえる。
  8. 技術記事は「誰におすすめか」「何を学べるか」「実務でどう使えるか」を、取得した本文や要約をもとに呼び出し元Agentが具体化する。
  9. ポッドキャストは「何の回か」「聴きどころ」「おすすめ対象」を、取得した本文や要約をもとに呼び出し元Agentが具体化する。
  10. Markdown本文は必ず日本語で作成する。製品名、サービス名、リリース名、短い引用は原文のままでもよい。
  11. 投稿が必要な場合は open-webui-skill で最終Markdownを投稿する。

補助ノーマライザー

収集したニュース項目をJSON配列にまとめた後、以下で呼び出し元Agentに渡す素材JSONへ正規化できる。これは最終レポート作成ではない。

python3 /opt/inferlab/skills/tech-news-report-skill/scripts/report.py \
  --items-json '[{"title":"Example News","category":"生成AI","source":"Vendor blog","url":"https://example.com","summary":"...","impact":"..."}]' \
  --articles-json '[{"title":"Example Article","category":"Cloud","source":"Tech blog","url":"https://example.com/article","summary":"...","recommended_for":"...","takeaways":"...","use_case":"..."}]' \
  --podcasts-json '[{"title":"Example Episode","source":"Tech podcast","url":"https://example.com/podcast","summary":"...","highlights":"...","recommended_for":"..."}]'

返却JSONでは report_input を最終レポート作成に使う。content_markdown ではなく source_inventory_markdown が返る場合、それは素材確認用の一覧として扱う。

要約ルール

  • 最終Markdownは呼び出し元Agentが作成する。Pythonスクリプトは本文要約や重要ポイント生成を担当しない。
  • 🧭 概要、💡 重要ポイント、🛠️ 学べること、🚀 活用アイデア、✨ 聴きどころ は、RSS要約・記事本文・エピソード説明を総合的に読んで日本語で書く。
  • URLと出典は必ず維持する。同じ話題が複数ソースにある場合は一次情報を主にし、解説記事は補助として扱う。
  • ニュース、技術記事、ポッドキャストを混同しない。実務ノウハウ中心の記事は「おすすめの技術記事」、音声番組は「おすすめのポッドキャスト」に置く。

出力形式

<ジャンル> はニュースの種類ではなく、生成AI・FinOps・Cloud・Developer Tools・Security などの技術領域を示すラベルとして使う。<情報源ジャンル> は必要に応じて references/rss.txt の見出しを使う。

---

## 技術ニュースレポート (YYYY-MM-DD)

- 📝 <ここに活動の全体的な傾向や重要なポイントを3行程度でまとめる>

### 🔥 本日の主要ニュース

#### 1. <ジャンル>: <ニュースAのタイトル> - <ニュースAの出典名>

- 🔗 URL:<ニュースAのURL>
- 🧭 概要:<ニュースAの内容を日本語で説明する。>
- 💡 重要ポイント:<ニュースAの重要なポイントを3行程度でまとめる。>

#### 2. <ジャンル>: <ニュースBのタイトル> - <ニュースBの出典名>

- 🔗 URL:<ニュースBのURL>
- 🧭 概要:<ニュースBの内容を日本語で説明する。>
- 💡 重要ポイント:<ニュースBの重要なポイントを3行程度でまとめる。>

#### 3. <ジャンル>: <ニュースCのタイトル> - <ニュースCの出典名>

<5件程度のニュースをピックアップすること>

### 📚 おすすめの技術記事

#### 1. <ジャンル>: <記事Aのタイトル> - <記事Aの出典名>

- 🔗 URL:<記事AのURL>
- 🎯 おすすめ対象:<この記事を読むとよい読者。例: SRE、バックエンドエンジニア、AIアプリ開発者など。>
- 🧭 概要:<記事Aの内容を日本語で説明する。>
- 🛠️ 学べること:<技術的な学び、設計判断、運用ノウハウなどを2から3点でまとめる。>
- 🚀 活用アイデア:<チームや個人の実務にどう活かせるかを具体化する。>

#### 2. <ジャンル>: <記事Bのタイトル> - <記事Bの出典名>

<5件程度の技術記事をピックアップすること>

### 🎧 おすすめのポッドキャスト

#### 1. <ジャンル>: <エピソードAのタイトル> - <番組名>

- 🔗 URL:<エピソードAのURL>
- 🎙️ 番組/回:<番組名や回数、ゲストが分かる場合はここに書く。>
- 🧭 概要:<エピソードAの内容を日本語で説明する。>
- ✨ 聴きどころ:<技術的・実務的に面白いポイントを2から3点でまとめる。>
- 🎯 おすすめ対象:<通勤中に概況を掴みたい人、深掘りしたい開発者など。>

#### 2. <ジャンル>: <エピソードBのタイトル> - <番組名>

<3件程度のポッドキャストをピックアップすること>

連携

投稿する場合:

python3 /opt/inferlab/skills/open-webui-skill/scripts/client.py channels post \
  --channel report \
  --file ./tech_news_report.md

コメント