Contenu
Publiez un résumé quotidien d’actualité IA que votre équipe lit vraiment
Obtenez une synthèse sourcée, ajoutez ce que publient les praticiens sur X, récupérez une transcription vidéo, composez l’édition en Markdown et archivez-la dans un LiveDoc.
Copier le prompt
Remplacez les champs entre crochets, puis collez dans Claude Code, Codex ou toute IA avec accès au terminal. Elle installe le skill Felo, demande avant de dépenser des crédits et exécute le workflow.
Rédige un brief sectoriel quotidien pour [secteur ou sujet]. Période : dernières 24 heures, fuseau [fuseau]. Public : [lecteurs]. Liste de veille (facultatif) : X [comptes ou sujets], YouTube [chaînes], Reddit [communautés]. Choisis les 5 à 8 sujets qui comptent. Pour chacun : ce qui s’est passé, pourquoi c’est important, le lien source et s’il s’agit d’une annonce, d’un résultat ou d’une opinion. Sections : 1. Sujet principal. 2. 5 à 8 sujets avec un lien source chacun. 3. Ce qui se dit sur X, avec comptes et dates. 4. Une citation vidéo avec horodatage. 5. Ce qu’il faut surveiller ensuite. Règles : - Lie chaque sujet. Regroupe les couvertures en double et garde la meilleure source. - Sépare les annonces des résultats indépendants ; étiquette les affirmations fournisseur. - Ne reporte que les chiffres renvoyés par la source. Une donnée manquante s’écrit « Non disponible », jamais zéro. - Si rien d’important ne s’est produit, dis-le au lieu de remplir l’édition. - Avant de consommer des crédits, montre les appels API prévus et attends mon accord. - Ne planifie, ne publie et n’envoie rien. - Écris le résultat dans ./daily-brief.md et résume-le dans le chat.
La copie inclut aussi les étapes d'installation et les règles de sécurité.
Ce que vous obtenez
Exemple de sortie d'une exécution. Pas de génération en direct.
Brief sectoriel IA — 2026-10-30
À la une
Un grand laboratoire a publié un modèle plus petit, avec usage d’outils, au même score de benchmark que son fer de lance. Affirmation fournisseur ; les résultats indépendants sont attendus.
Éléments
- Petit modèle, même benchmark — benchmark fournisseur, pas encore répliqué. [source]
- Sortie d’un framework d’agents — nouveaux contrôles de tracing et de retry. [source]
Ce qui se dit
@example_dev : « Le gain est la latence, pas le score. » — 2026-10-30 08:12 JST
Une citation vidéo
« Nous avons arrêté de mesurer les tokens et commencé à mesurer les tickets résolus. » — [12:40]
À suivre
Les évaluations indépendantes de l’usage d’outils, et si le prix tient après la semaine de lancement.
Les appels exacts
Pour les développeurs : le même workflow en code, dans l'ordre d'exécution.
Afficher les appels API
Composez la synthèse sourcée
Demandez à Chat les actualités IA des dernières 24 heures et gardez sources et dates citées.
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);Exemple de sortie
{ "answer": "The main stories today are …", "sources": [ { "link": "https://example.com/story", "title": "…", "snippet": "…" } ] }Ajoutez les discussions de praticiens
Cherchez le même thème sur X et collectez des posts de praticiens avec comptes et dates.
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);Exemple de sortie
{ "data": { "tweets": [ { "content": "…", "author": { "username": "…" }, "created_at": "2026-10-29T02:14:00Z", "metrics": { "retweet_count": 12, "favorite_count": 180 } } ] } }Récupérez une transcription vidéo
Utilisez YouTube Subtitling pour une vidéo liée et choisissez une citation horodatée.
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(" ");Exemple de sortie
{ "title": "Example Video Title", "contents": [ { "text": "Subtitle text", "start": 0.32, "duration": 14.26 } ] }Écrivez le résumé en Markdown
Structurez en « actualités clés / réactions de praticiens / citation vidéo / à suivre ».
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);Archivez dans le LiveDoc
Enregistrez l’édition et les sources dans le LiveDoc pour que la suivante consulte l’historique.
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));Exemple de sortie
[ { "title": "AI digest — 2026-10-01", "content": "…", "score": 0.88 } ]
Ce qui est inclus
- Synthèse d’actualités sourcée et liens
- Discussions de praticiens sur X avec comptes et dates
- Une citation vidéo horodatée
- LiveDoc qui conserve chaque édition et permet la recherche sémantique
Ce qu'elle ne fait pas
- Sources publiques uniquement ; le contenu payant peut manquer
- X est un signal, pas une enquête d’opinion complète
- Ne publie ni n’envoie automatiquement le résumé
- La vidéo doit avoir des sous-titres
- Une exécution par jour ; la planification revient à votre agent ou cron
Questions
Les sources sont-elles fiables ?
Chaque actualité a un lien et une date de publication ; les posts X ont aussi compte et horodatage. Le contenu non vérifié n’est pas présenté comme un fait.
Puis-je changer de secteur ?
Oui. Remplacez le champ thème par votre secteur et ajustez sources et requêtes X.
Pourquoi la vidéo ?
Elle apporte un point de vue de praticien horodaté, pour que le résumé ne soit pas que des titres. Les vidéos sans sous-titres sont ignorées.
Publie-t-il dans Slack ?
Non. Il crée un fichier Markdown ; l’envoi est une intégration à votre charge.
Puis-je garder les anciennes éditions ?
Oui. Le LiveDoc conserve chaque édition et permet de consulter les actualités des semaines passées.
Combien coûte une édition ?
Chat, recherche X et transcription vidéo sont facturés à l’usage ; les tarifs actuels sont sur la page des prix, et le prompt demande votre accord avant dépense.
Workflows liés
Transformez une question en brief de recherche sourcé
Interrogez le web, récupérez les pages derrière la réponse en Markdown, ajoutez ce que disent les praticiens sur X, puis conservez les preuves dans un LiveDoc que vous pourrez interroger plus tard.
Ouvrir le workflowContenuTransformez une vidéo YouTube en article publiable
Récupérez la transcription horodatée, structurez-la en blocs lisibles, faites le plan et le brouillon avec un modèle que vous contrôlez, puis laissez le résultat dans un LiveDoc pour relecture.
Ouvrir le workflowBureauTransformez une page de recherche en présentation
Extrayez la page, enregistrez-la comme contexte LiveDoc, laissez l’API PPT Task construire le deck et interrogez jusqu’au lien final.
Ouvrir le workflowAdaptez-la
La même recette, adaptée à votre façon de livrer.
Une seule verticale
Restreignez à l’IA pour le code, la vidéo ou la recherche pour plus de précision.
Ajoutez « changements de la semaine »
Consultez l’édition précédente dans le LiveDoc et comparez ce qui a été ajouté.
Transformez en rapport hebdomadaire
Passez à une exécution hebdomadaire pour réduire le bruit quotidien.
Aller plus loin
Les pages de référence derrière cette recette et la suite.