daily-briefing について
5 つのニュース・コミュニティソースを集約し、日次ダイジェストを作成するスキルです。Markdown 形式で出力し、必要時の実行や OpenClaw cron による Telegram への定期配信に対応します。
主な機能
- 015 種類のニュース・コミュニティソースを集約
- 02要約付き Markdown ダイジェストを作成
- 03RSS、HN、GitHub を並行取得
- 04セクションごとの件数を変更
- 05セクションの無効化や RSS リストの変更
活用シーン
- 01Telegram への日次ダイジェスト配信を設定
- 02必要時に技術・コミュニティの話題を集約
- 03ダイジェストのセクションや件数を調整
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ halanhuang2025-lgtm/ daily-briefing-skill --skill daily-briefingインストール後、Claude Code で/daily-briefingを入力して読み込まれたか確認します。
同梱ファイルREADME.mdscripts/daily-briefing.py
詳細
日次ブリーフィングスキル
5 つのニュースソースを集約し、要約付きの形式化された日次ダイジェストを作成します。OpenClaw cron を使った Telegram へのプッシュ配信向けに設計されています。
ソース
| # | ソース | API/方法 |
|---|---|---|
| 1 | Readhub 早报 | https://api.readhub.cn/daily — 詳細な要約付きの中国のテックニュース |
| 2 | Karpathy RSS | HN の人気ブログ 92 件を収録した OPML。並行取得により、最新記事とその説明を取得 |
| 3 | GitHub Trending | github.com/trending をスクレイピングし、GitHub API からリポジトリの説明とスター数を取得 |
| 4 | Hacker News | Firebase API hacker-news.firebaseio.com/v0/topstories.json |
| 5 | V2EX 热帖 | https://www.v2ex.com/api/topics/hot.json |
クイックスタート
1 回だけ実行(オンデマンド)
python3 scripts/daily-briefing.py 2>/dev/null
出力は Markdown 形式で、Telegram に直接送信できます。
毎日の cron を設定(CST 08:00)
openclaw cron add \
--name "每日资讯早报" \
--cron "0 8 * * *" \
--session isolated \
--announce \
--channel telegram \
--thinking low \
--message "运行 python3 <workspace>/scripts/daily-briefing.py 2>/dev/null 并将完整输出分段发送到 Telegram 主群"
<workspace> を実際のパス(例:/Users/you/.openclaw/workspace-main)に置き換えてください。
出力を Telegram に送信(セクションごとに分割)
出力は約 200 行です。Telegram の 4096 文字制限を超えないよう、セクション(📰/🔖/⭐/🔥+💬)ごとに 4 つのメッセージに分割してください。
スクリプトの詳細
ファイル: scripts/daily-briefing.py
- Python 標準ライブラリのみを使用 — pip の依存関係はありません
- 並行取得:RSS フィードに 25 ワーカー、HN 項目に 10 ワーカー、GitHub API に 8 ワーカー
- 合計実行時間:約 25 秒
- Karpathy OPML ソース:
https://gist.githubusercontent.com/emschwartz/e6d2bf860ccc367fe37ff953ba6de66b/raw/hn-popular-blogs-2025.opml
カスタマイズ
各セクションの項目数を変更する — main() 内の各 get_*() 呼び出しにある n= パラメーターを編集します:
readhub = get_readhub(8) # default 8
rss = get_karpathy_rss(10) # default 10
gh = get_github_trending(8) # default 8
hn = get_hn_top(8) # default 8
v2 = get_v2ex_hot(8) # default 8
セクションを無効にする — main() 内の該当ブロックをコメントアウトします。
RSS フィードリストを変更する — スクリプトは実行のたびに GitHub Gist から OPML を動的に取得します。代わりに固定のローカルリストを使うには、load_opml_feeds() の戻り値をハードコードしたリストに置き換えてください。