Felo API PlatformFelo API Platform

Contenido

Publica un resumen diario de IA que tu equipo realmente lea

Obtén un resumen con fuentes, añade lo que publican los profesionales en X, consigue una transcripción de vídeo, compón la edición en Markdown y archívala en un LiveDoc.

Tiempo25 minutosNivelIntermedioActualizado2026-10-29
Para quiénMarketing y crecimientoCreadoresMarketing de producto

Copiar el prompt

Sustituye los campos entre corchetes y pégalo en Claude Code, Codex o cualquier IA con acceso a terminal. Instala el skill de Felo, pregunta antes de gastar créditos y ejecuta el flujo.

Elabora un brief sectorial diario para [sector o tema].

Ventana: últimas 24 horas, zona horaria [zona]. Audiencia: [lectores].
Lista de seguimiento (opcional): X [cuentas o temas], YouTube [canales], Reddit [comunidades].

Elige los 5–8 temas que importan. Para cada uno: qué pasó, por qué importa, el enlace de la fuente y si es un anuncio, un resultado o una opinión.

Secciones:
1. Tema principal.
2. 5–8 temas con un enlace de fuente cada uno.
3. Qué se dice en X, con cuentas y fechas.
4. Una cita de vídeo con marca de tiempo.
5. Qué observar después.

Reglas:
- Enlaza cada tema. Agrupa coberturas duplicadas y conserva la mejor fuente.
- Separa anuncios de resultados independientes; etiqueta las afirmaciones de proveedores.
- Reporta solo las métricas que devuelve la fuente. Un dato ausente se escribe «No disponible», nunca cero.
- Si no pasó nada relevante, dilo en lugar de rellenar la edición.
- Antes de gastar créditos, muestra las llamadas API previstas y espera mi aprobación.
- No programes, publiques ni envíes nada.
- Escribe el resultado en ./daily-brief.md y resúmelo en el chat.

La copia también incluye los pasos de instalación y las reglas de seguridad.

Lo que obtienes

Salida de ejemplo de una ejecución. No es generación en vivo.

Ejemplo de número (extracto)

Informe sectorial de IA — 2026-10-30

Tema principal

Un laboratorio grande publicó un modelo más pequeño con uso de herramientas y la misma puntuación de benchmark que su buque insignia. Afirmación del proveedor; los resultados independientes siguen pendientes.

Elementos

  1. Modelo pequeño, mismo benchmark — benchmark del proveedor, aún sin replicar. [fuente]
  2. Lanzamiento de framework de agentes — nuevos controles de trazado y reintento. [fuente]

Qué se dice

@example_dev: «La victoria es la latencia, no la puntuación.» — 2026-10-30 08:12 JST

Una cita de vídeo

«Dejamos de medir tokens y empezamos a medir tickets resueltos.» — [12:40]

Qué observar después

Evaluaciones independientes de uso de herramientas y si el precio aguanta tras la semana de lanzamiento.

Las llamadas exactas

Para desarrolladores: el mismo flujo como código, en orden de ejecución.

Mostrar las llamadas reales a la API
  1. Resume las noticias con fuentes

    Pregunta a Chat por las noticias de IA de las últimas 24 horas y guarda fuentes y fechas citadas.

    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);

    Salida de ejemplo

    {
      "answer": "The main stories today are …",
      "sources": [
        { "link": "https://example.com/story", "title": "…", "snippet": "…" }
      ]
    }
  2. Añade discusiones de profesionales

    Busca el mismo tema en X y recoge posts de profesionales con cuentas y fechas.

    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);

    Salida de ejemplo

    { "data": { "tweets": [
      {
        "content": "…",
        "author": { "username": "…" },
        "created_at": "2026-10-29T02:14:00Z",
        "metrics": { "retweet_count": 12, "favorite_count": 180 }
      }
    ] } }
  3. Consigue una transcripción

    Usa YouTube Subtitling para un vídeo relacionado y elige una cita con timestamp.

    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(" ");

    Salida de ejemplo

    {
      "title": "Example Video Title",
      "contents": [
        { "text": "Subtitle text", "start": 0.32, "duration": 14.26 }
      ]
    }
  4. Escribe el resumen Markdown

    Estructura en «noticias clave / reacciones / cita de vídeo / qué seguir».

    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);
  5. Archiva en el LiveDoc

    Guarda la edición y las fuentes en el LiveDoc para que la siguiente consulte el historial.

    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));

    Salida de ejemplo

    [
      { "title": "AI digest — 2026-10-01", "content": "…", "score": 0.88 }
    ]

Qué incluye

  • Resumen de noticias con fuentes y enlaces
  • Discusiones de profesionales en X con cuentas y fechas
  • Una cita de vídeo con timestamp
  • LiveDoc que guarda cada edición y permite búsqueda semántica

Qué no hace

  • Solo fuentes públicas; el contenido de pago puede faltar
  • X es una señal, no una encuesta completa de opinión
  • No publica ni envía el resumen automáticamente
  • El vídeo necesita subtítulos
  • Una ejecución al día; la programación es de tu agent o cron

Preguntas

¿Las fuentes son fiables?

Cada noticia tiene enlace y fecha; los posts de X también cuenta y hora. Lo no verificado no se escribe como hecho.

¿Puedo cambiar de sector?

Sí. Cambia el tema por tu sector y ajusta fuentes y búsquedas en X.

¿Por qué el vídeo?

Aporta una perspectiva de profesional con timestamp para que el resumen no sea solo titulares. Los vídeos sin subtítulos se omiten.

¿Publica en Slack?

No. Crea un archivo Markdown; el envío es una integración tuya.

¿Puedo guardar ediciones antiguas?

Sí. El LiveDoc conserva cada edición y permite consultar noticias de semanas anteriores.

¿Cuánto cuesta una edición?

Chat, X Search y transcripción se facturan por uso; las tarifas están en la página de precios y el prompt pide aprobación antes de gastar.

Flujos relacionados

Hazlo tuyo

La misma receta, adaptada a cómo entregas de verdad.

Solo una vertical

Restringe a IA para código, vídeo o búsqueda para más precisión.

Añade «cambios de la semana»

Consulta la edición anterior en el LiveDoc y compara lo añadido.

Conviértelo en semanal

Pasa a una ejecución semanal para reducir el ruido diario.

Las páginas de referencia detrás de esta receta y los siguientes pasos.