內容
做一份團隊真的會讀的每日 AI 新聞簡報
先拿有來源的新聞匯總,再加入實務者在 X 上的討論,拉一條影片轉錄,最後用 Markdown 寫成一期簡報並存進 LiveDoc。
複製 prompt
把方括號裡的欄位替換掉,然後貼到 Claude Code、Codex 或任何能存取終端機的 AI。它會安裝 Felo skill、在花額度前詢問,並執行這套工作流程。
為[產業或主題]製作一份每日產業簡報。 時間範圍:過去 24 小時,時區[時區]。讀者:[讀者]。 關注清單(選填):X [帳號或主題]、YouTube [頻道]、Reddit [社群]。 挑選 5–8 條真正重要的內容。每條寫:發生什麼事、為什麼重要、來源連結,以及它屬於公告、結果還是觀點。 章節: 1. 頭條。 2. 5–8 條內容,每條附來源連結。 3. X 上大家在說什麼,附帳號和日期。 4. 一條附時間戳的影片引文。 5. 接下來關注什麼。 規則: - 每條都附連結。合併重複報導,保留最好的來源。 - 區分公告和獨立結果;給廠商主張加標籤。 - 只報告來源回傳的指標。資料缺失時寫「暫無資料」,不要寫零。 - 如果沒有重要事件,直接說明,不要為湊篇幅而填充。 - 消耗額度前,先展示預計執行的 API 呼叫並等待我批准。 - 不要排程、發布或傳送任何內容。 - 將結果寫入 ./daily-brief.md,並在對話中總結。
複製的內容也包含安裝步驟和安全規則。
你會得到什麼
一次執行的範例輸出,不是即時生成。
AI 產業簡報 — 2026-10-30
頭條
一家大型實驗室發布了一款更小的模型,其工具使用基準分數與旗艦相同。廠商主張;獨立結果仍待公布。
條目
- 小模型,同分 — 廠商基準,尚未重現。[來源]
- 代理框架發布 — 新的追蹤與重試控制。[來源]
大家在說什麼
@example_dev:「贏的是延遲,不是分數。」 — 2026-10-30 08:12 JST
一條影片引文
「我們不再測 token,開始測已解決工單。」 — [12:40]
接下來關注
工具使用的獨立評測,以及發布週後價格是否維持。
實際呼叫
給開發者:同一套工作流程的可複製程式碼,依執行順序排列。
展開實際 API 呼叫
先做有來源的新聞匯總
用 Chat 問過去 24 小時的 AI 新聞,保留它引用的來源和日期。
digest.ts const BASE = "https://openapi.felo.ai"; const headers = { Authorization: `Bearer ${process.env.FELO_API_KEY}`, "Content-Type": "application/json", }; async function felo<T>(path: string, body?: unknown): Promise<T> { const res = await fetch(`${BASE}${path}`, { method: body ? "POST" : "GET", headers, body: body ? JSON.stringify(body) : undefined, }); if (!res.ok) throw new Error(`${res.status}: ${await res.text()}`); return res.json() as Promise<T>; } type ChatData = { data: { answer: string; resources: { link: string; title: string; snippet: string }[]; }; }; const roundup = await felo<ChatData>("/v2/chat", { query: "Biggest AI news stories in the last 24 hours", }); const sources = roundup.data.resources.slice(0, 5);範例輸出
{ "answer": "The main stories today are …", "sources": [ { "link": "https://example.com/story", "title": "…", "snippet": "…" } ] }加入實務者討論
在 X 搜同一話題,收集帶帳號和日期的實務者貼文。
digest.ts type XData = { data: { tweets: { content: string; author: { username: string }; created_at: string; metrics: { retweet_count: number; favorite_count: number }; }[]; next_cursor: string | null; has_next: boolean; }; }; const since = Math.floor((Date.now() - 24 * 60 * 60 * 1000) / 1000); const social = await felo<XData>("/v2/x/tweet/search", { query: "AI agents", limit: 20, since_time: since, }); const posts = social.data.tweets .filter((tweet) => tweet.metrics.favorite_count >= 50) .slice(0, 3);範例輸出
{ "data": { "tweets": [ { "content": "…", "author": { "username": "…" }, "created_at": "2026-10-29T02:14:00Z", "metrics": { "retweet_count": 12, "favorite_count": 180 } } ] } }拉一條影片轉錄
用 YouTube Subtitling 拉一條相關影片的轉錄,挑一條帶時間戳的引語。
digest.ts type SubtitleData = { data: { title: string; contents: { text: string; start: number; duration: number }[]; }; }; const videoCode = "dQw4w9WgXcQ"; // replace with today's video id const video = await felo<SubtitleData>( `/v2/youtube/subtitling?video_code=${videoCode}&language=en&with_time=true`, ); const transcript = video.data.contents.map((line) => line.text).join(" ");範例輸出
{ "title": "Example Video Title", "contents": [ { "text": "Subtitle text", "start": 0.32, "duration": 14.26 } ] }寫成 Markdown 簡報
依「重點新聞 / 實務者反應 / 影片引語 / 下一步關注」組織內容。
digest.ts const date = new Date().toISOString().slice(0, 10); const issue = [ `# AI digest — ${date}`, "", "## The roundup", roundup.data.answer, "", "## What practitioners are posting", ...posts.map((post) => `- @${post.author.username}: ${post.content}`), "", "## From the video", transcript.slice(0, 1200), "", "## Sources", ...sources.map((source) => `- [${source.title}](${source.link})`), ].join("\n"); console.log(issue);歸檔到 LiveDoc
把這一期和來源存進 LiveDoc,下一期可以檢索歷史。
digest.ts type LiveDocData = { data: { short_id: string } }; const archive = await felo<LiveDocData>("/v2/livedocs", { name: "AI digest archive", description: "One document resource per daily issue", }); await felo(`/v2/livedocs/${archive.data.short_id}/resources/doc`, { title: `AI digest — ${date}`, content: issue, }); type Retrieved = { data: { title: string; content: string; score: number }[] }; const past = await felo<Retrieved>( `/v2/livedocs/${archive.data.short_id}/resources/retrieve`, { query: "what did we say about agent frameworks last month" }, ).then((res) => res.data.filter((hit) => hit.score >= 0.7));範例輸出
[ { "title": "AI digest — 2026-10-01", "content": "…", "score": 0.88 } ]
包含什麼
- 有來源的新聞匯總和連結
- X 上帶帳號和日期的實務者討論
- 一條帶時間戳的影片引語
- 保存每一期、可語意檢索的 LiveDoc
不做什麼
- 只涵蓋公開來源;付費牆內容可能缺失
- X 只作為訊號,不代表完整輿情
- 不自動發佈或發送簡報
- 影片需要已有字幕
- 每天執行一次,排程由你的 agent 或 cron 負責
常見問題
來源可靠嗎?
每條新聞都帶來源連結和發佈日期;X 貼文額外帶帳號和時間戳。簡報不會把未核實的內容寫成事實。
可以換成其他行業嗎?
可以。把主題佔位符換成你的行業,來源和 X 搜尋詞跟著調整。
為什麼需要影片?
影片提供一條帶時間戳的實務者觀點,讓簡報不只有新聞標題。沒有字幕的影片會跳過。
會自動發到 Slack 嗎?
不會。它產生 Markdown 檔案;發送需要你自己的整合。
可以保存歷史嗎?
可以。LiveDoc 會保留每一期,之後可以檢索過去幾週的報導。
一次要花多少?
Chat、X 搜尋、影片轉錄都按用量計費;目前費率在價格頁面,prompt 會先請求確認。
相關工作流程
改成你的版本
同一套配方,依你實際的交付方式調整。
只做某一個細分
把主題縮到 AI 程式設計、AI 影片或 AI 搜尋,簡報會更有針對性。
加一個「本週變化」段落
把上一期 LiveDoc 檢索出來,對比本週新增了什麼。
改成週報
把排程改成每週一次,減少每天的資訊噪音。
繼續深入
這套配方背後的參考頁面,以及下一步可以看什麼。