Felo API PlatformFelo API Platform

תוכן

הפכו שיחות חברתיות לתקציר האזנה שבועי

חפשו פוסטים ב-X מהשבוע על המותג והמתחרים, הוסיפו הקשר אינטרנט עם מקורות, קראו את העמודים שמאחוריו וארכבו כל מהדורה כדי שהשבוע הבא יתחיל ממה שידוע.

זמן25 דקותרמהבינוניעודכן2026-10-30
למימותג ותקשורתשיווק מוצרניהול קהילה

העתיקו את הפרומפט

החליפו את השדות בסוגריים מרובעים והדביקו ב-Claude Code, Codex או AI עם גישה לטרמינל. הוא מתקין את סקיל Felo, שואל לפני שריפת קרדיטים ומריץ את תהליך העבודה.

הרץ תקציר האזנה חברתית עבור [מותג, מוצר או קטגוריה].

מונחי מעקב: [מותג], [שם מוצר], [שמות מתחרים], [מילות מפתח של הקטגוריה].
תקופה: [7 / 14] הימים האחרונים. אזור זמן: [אזור זמן]. קהל: [צוות].
מקורות מותרים: פוסטים ציבוריים ב-X ועמודים ציבוריים בלבד.

הפק:
1. סיכום בחמש שורות של מה שהשתנה בשיחה.
2. נושאים, כל אחד עם מה שאנשים אומרים, הפוסטים שתומכים בכך וטווח התאריכים שהם מכסים.
3. אזכורי מתחרים: מי מומלץ, ובאיזה הקשר.
4. סיכונים: תלונות, תקלות, שאלות חוזרות או תגובות שליליות.
5. צעדים הבאים, מחולקים ל„השב עכשיו”, „עקוב” ו„העבר למוצר”.
6. רשימת מקורות עם כל פוסט ועמוד, URL ותאריך.

כללים:
- דווח רק על פוסטים ועמודים שה-API מחזיר. לעולם אל תמציא ציוני סנטימנט, מספרי מעורבות, ציטוטים או מקורות.
- התייחס ל-X כאות, לא כסקר מייצג. אמור זאת כשהמדגם קטן מדי למסקנה.
- הפרד את מילות הלקוח מהסיכום שלך וצטט בקצרה עם קישור.
- המר את התקופה לתאריכי התחלה וסיום מפורשים וציין אזור זמן.
- לפני שימוש בקרדיטים, הצג את החיפושים והחילוצים המתוכננים והמתן לאישור שלי.
- אל תשיב, תפרסם, תעקוב או תשלח הודעה לאף אחד. התקציר הזה לקריאה בלבד.
- כתוב את התוצאה ל-./social-listening.md וסכם אותה בצ׳אט.

ההעתקה כוללת גם שלבי התקנה וכללי בטיחות.

מה מקבלים

פלט לדוגמה של ריצה אחת. לא יצירה חיה.

דוגמת תקציר (קטע)

תקציר האזנה חברתית — 2026-10-30

מה השתנה

  • תלונות על זרימת הייצוא הן כעת הנושא המוביל.
  • מתחרה זול יותר מומלץ בשרשורי תמחור.
  • התקלה מ-2026-10-27 כבר לא מוזכרת.

נושאים

  1. הייצוא איטי מאז העדכון — @example_dev: „כפתור הייצוא לוקח עכשיו דקות למסמך של 40 עמודים.” (2026-10-28); @example_ops: „עוד מישהו רואה ייצואים בתור בסוף החודש?” (2026-10-29)
  2. מומלצת חלופה זולה יותר — Example Rival מופיע בשרשורים שמבקשים מחיר נמוך יותר

מתחרים

Example Rival מומלץ כשמבקשים חלופה זולה יותר; ההמלצה עוסקת במחיר, לא בתכונות.

סיכונים

תלונת הייצוא מופיעה בשרשורים סמוכים לתמיכה ועלולה להגיע לשיחות נטישה.

הבא

  • להגיב עכשיו: שרשור הייצוא מ-2026-10-28.
  • לעקוב: האם התלונה מתפשטת לקהל ה-API.
  • להעביר למוצר: השהיית ייצוא בסוף החודש.

מקורות

  • https://x.com/example_dev/status/... — 2026-10-28
  • https://example.com/export-thread — 2026-10-29

הקריאות המדויקות

למפתחים: אותו תהליך עבודה כקוד, לפי סדר ההרצה.

הצג קריאות API אמיתיות
  1. חפשו פוסטים מהשבוע

    השתמשו ב-X Search למותג ולמתחרים ב-7 הימים האחרונים ושמרו חשבונות ותאריכים.

    listening.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 XData = {
      data: {
        tweets: {
          content: string;
          author: { username: string };
          created_at: string;
          metrics: { retweet_count: number; favorite_count: number; reply_count: number };
          url: string;
        }[];
      };
    };
    
    const since = Math.floor((Date.now() - 7 * 24 * 60 * 60 * 1000) / 1000);
    
    const search = await felo<XData>("/v2/x/tweet/search", {
      query: '"Acme" OR "Acme app"',
      limit: 50,
      since_time: since,
    });
    
    const posts = search.data.tweets;

    פלט לדוגמה

    { "data": { "tweets": [
      {
        "content": "The export flow is slow again.",
        "author": { "username": "example_dev" },
        "created_at": "2026-10-28T09:14:00Z",
        "metrics": { "retweet_count": 4, "favorite_count": 21, "reply_count": 6 },
        "url": "https://x.com/example_dev/status/..."
      }
    ] } }
  2. הוסיפו הקשר אינטרנט עם מקורות

    שאלו את Chat על הקשר הדיונים וקבלו רשימת עמודים עם מקורות.

    listening.ts
    type ChatData = {
      data: {
        answer: string;
        resources: { link: string; title: string; snippet: string }[];
      };
    };
    
    const context = await felo<ChatData>("/v2/chat", {
      query: "Recent customer complaints and competitor mentions around Acme",
    });
    
    const sources = context.data.resources.slice(0, 5);

    פלט לדוגמה

    {
      "answer": "The main threads are …",
      "sources": [
        { "link": "https://example.com/thread", "title": "…", "snippet": "…" }
      ]
    }
  3. קראו את העמודים שמאחוריהם

    עם Web Fetch קראו שניים או שלושה עמודים רלוונטיים והוסיפו עובדות וקישורים.

    listening.ts
    type ExtractData = { data: { content: string } };
    
    const pages = await Promise.all(
      sources.slice(0, 3).map((source) =>
        felo<ExtractData>("/v2/web/extract", {
          url: source.link,
          output_format: "markdown",
          with_readability: true,
          with_cache: true,
        }).then((page) => ({ ...source, content: page.data.content })),
      ),
    );

    פלט לדוגמה

    // pages[0].content
    "# Example thread summary\n\nExtracted page content…"
  4. כתבו דוח לפי נושא

    הרכיבו Markdown עם נושאים, פוסטים מייצגים, הקשר, סיכונים ונקודות תשומת לב.

    listening.ts
    const date = new Date().toISOString().slice(0, 10);
    
    const ranked = [...posts].sort(
      (a, b) => b.metrics.favorite_count - a.metrics.favorite_count,
    );
    
    const brief = [
      `# Social listening brief — ${date}`,
      "",
      "## What the web says",
      context.data.answer,
      "",
      "## What people are posting",
      ...ranked.slice(0, 10).map(
        (post) =>
          `- @${post.author.username} (${post.created_at.slice(0, 10)}): ${post.content}\n  ${post.url}`,
      ),
      "",
      "## Pages behind the answer",
      ...pages.map((page) => `- [${page.title}](${page.link})`),
      "",
      "## Sources",
      ...sources.map((source) => `- [${source.title}](${source.link})`),
    ].join("\n");
    
    console.log(brief);
  5. ארכבו והשוו לשבוע שעבר

    שמרו את הדוח והמקורות ב-LiveDoc ובשבוע הבא חפשו את המהדורה הקודמת.

    listening.ts
    type LiveDocData = { data: { short_id: string } };
    
    const archive = await felo<LiveDocData>("/v2/livedocs", {
      name: "Social listening archive",
      description: "One document resource per weekly brief",
    });
    
    await felo(`/v2/livedocs/${archive.data.short_id}/resources/doc`, {
      title: `Social listening — ${date}`,
      content: brief,
    });
    
    type Retrieved = { data: { title: string; content: string; score: number }[] };
    
    const previous = await felo<Retrieved>(
      `/v2/livedocs/${archive.data.short_id}/resources/retrieve`,
      { query: "what changed since last week" },
    ).then((res) => res.data.filter((hit) => hit.score >= 0.7));

    פלט לדוגמה

    [
      { "title": "Social listening — 2026-10-23", "content": "…", "score": 0.88 }
    ]

מה כלול

  • פוסטים ב-X מתוארכים מהשבוע
  • הקשר אינטרנט עם מקורות
  • סיכום הדיונים לפי נושא
  • דוח שבועי מוכן לשיתוף
  • LiveDoc עם כל מהדורה

מה זה לא עושה

  • כיסוי X חלקי ואינו מייצג את כל המשתמשים
  • בלי מסקנות סנטימנט סופיות
  • לא מפרסם או מגיב אוטומטית
  • בלי DM או קהילות סגורות
  • ריצה אחת בשבוע; תזמון בסוכן או ב-cron

שאלות

מה נחשב מקור?

כל פוסט ב-X שומר קישור, חשבון ותאריך; ההקשר מהעמודים הציבוריים של Chat ו-Web Fetch. טענות בלי מקור לא נכנסות.

אפשר לעקוב אחרי מתחרים?

כן. חפשו מותג ומתחרים יחד וקבצו בדוח.

האם הוא מודד סנטימנט?

הוא מסכם נושאים וטון אבל מסמן זאת כשיפוט עריכתי ולא טוען לאחוז סנטימנט מדויק.

כמה אחורה הוא מסתכל?

ברירת מחדל 7 הימים האחרונים לדוח השבועי; לחלון גדול יותר שנו את `since_time`.

אפשר להריץ כל שבוע?

כן. שימו את אותו פרומפט ב-cron או במתזמן סוכן וכתבו לאותו LiveDoc.

כמה עולה תקציר אחד?

X Search, Chat וחילוץ עמודים מחויבים לפי שימוש; התעריפים העדכניים בעמוד המחירים והפרומפט מבקש אישור לפני הוצאה.

תהליכי עבודה קשורים

התאימו

אותו מתכון, מותאם לאיך שאתם באמת מספקים.

נושא אחד בלבד

הגבילו להשקה או למחלוקת אחת כדי למקד את התקציר.

הוסיפו דעות מ-YouTube

השלימו עם תמלול וידאו אבל סמנו כחוויה אישית.

הפכו לחודשי

שנו את התדירות לחודשית למותג ול-PR.

עמודי העזר שמאחורי המתכון והשלבים הבאים.