المحتوى
حوّل المحادثات الاجتماعية إلى موجز استماع أسبوعي
ابحث منشورات X هذا الأسبوع عن العلامة والمنافسين وأضف سياق ويب بمصادر واقرأ الصفحات خلفه وأرشِف كل إصدار ليبدأ الأسبوع التالي من المعلوم.
انسخ الموجّه
استبدل الحقول بين الأقواس المربعة وألصق في Claude Code أو Codex أو أي ذكاء اصطناعي يملك وصولًا إلى الطرفية. يثبّت مهارة Felo ويسأل قبل إنفاق الرصيد وينفّذ سير العمل.
نفّذ موجز استماع اجتماعي لـ [العلامة أو المنتج أو الفئة]. مصطلحات المراقبة: [العلامة]، [اسم المنتج]، [أسماء المنافسين]، [كلمات الفئة المفتاحية]. الفترة: آخر [7 / 14] يومًا. المنطقة الزمنية: [المنطقة]. الجمهور: [الفريق]. المصادر المسموح بها: منشورات X العامة وصفحات الويب العامة فقط. أنتج: 1. ملخصًا من خمسة أسطر لما تغيّر في المحادثة. 2. الموضوعات، كل واحد بما يقوله الناس، والمنشورات الداعمة، ونطاق التواريخ. 3. إشارات المنافسين: من يُوصى به، وفي أي سياق. 4. المخاطر: الشكاوى، الانقطاعات، الأسئلة المتكررة، أو ردود الفعل السلبية. 5. الخطوات التالية، مقسمة إلى «رد الآن» و«راقب» و«أرسل إلى المنتج». 6. قائمة مصادر بكل منشور وصفحة ورابط وتاريخ. القواعد: - أبلغ فقط عن المنشورات والصفحات التي تعيدها API. لا تختلق درجات مشاعر أو أرقام تفاعل أو اقتباسات أو مصادر. - عامل X كإشارة لا كاستطلاع تمثيلي. قل ذلك عندما تكون العينة أصغر من أن تستنتج. - افصل كلمات العميل عن ملخصك واقتبس بإيجاز مع رابط. - حوّل الفترة إلى تاريخي بداية ونهاية صريحين واذكر المنطقة الزمنية. - قبل استهلاك الأرصدة، اعرض عمليات البحث والاستخراج المخطط لها وانتظر موافقتي. - لا ترد ولا تنشر ولا تتابع ولا تراسل أحدًا. هذا الموجز للقراءة فقط. - اكتب النتيجة في ./social-listening.md ولخّصها في الدردشة.
تتضمن النسخة خطوات التثبيت وقواعد الأمان أيضًا.
ما تحصل عليه
مخرجات نموذجية لتشغيل واحد. ليست توليدًا مباشرًا.
موجز استماع اجتماعي — 2026-10-30
ما تغيّر
- شكاوى تدفق التصدير أصبحت الموضوع الأول.
- يُوصى بمنافس أرخص في سلاسل الأسعار.
- لم يعد يُذكر انقطاع 2026-10-27.
المواضيع
- التصدير بطيء منذ التحديث — @example_dev: «زر التصدير يستغرق الآن دقائق لمستند من 40 صفحة» (2026-10-28)؛ @example_ops: «هل يرى أحد آخر تصديرات في الطابور نهاية الشهر؟» (2026-10-29)
- يُوصى ببديل أرخص — يظهر 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 الفعلية
ابحث منشورات الأسبوع
استخدم 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/..." } ] } }أضف سياق ويب بمصادر
اسأل 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": "…" } ] }اقرأ الصفحات خلفها
عبر 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…"
اكتب التقرير حسب الموضوع
ركّب 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);أرشِف وقارن بالأسبوع الماضي
احفظ التقرير والمصادر في 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 ناقصة ولا تمثل كل المستخدمين
- لا استنتاجات نهائية عن المشاعر
- لا ينشر أو يرد تلقائيًا
- لا رسائل خاصة أو مجتمعات مغلقة
- تشغيل واحد أسبوعيًا؛ الجدولة في وكيلك أو cron
أسئلة
ما الذي يُعد مصدرًا؟
كل منشور X يحفظ الرابط والحساب والتاريخ؛ وسياق الويب من صفحات Chat وWeb Fetch العامة. الادعاءات بلا مصدر لا تدخل.
هل يمكن متابعة المنافسين؟
نعم. ابحث العلامة والمنافسين معًا وجمّعهم في التقرير.
هل يقيس المشاعر؟
يلخص المواضيع والنبرة لكنه يعلّم ذلك حكمًا تحريريًا ولا يدّعي نسبة مشاعر دقيقة.
إلى أي مدى ينظر للخلف؟
افتراضيًا آخر 7 أيام للتقرير الأسبوعي؛ لنافذة أكبر غيّر `since_time`.
هل يمكن تشغيله أسبوعيًا؟
نعم. ضع الموجّه نفسه في cron أو مجدول وكيل واكتب في LiveDoc نفسه.
كم تكلفة موجز واحد؟
يُحتسب X Search وChat واستخراج الصفحات حسب الاستخدام؛ الأسعار الحالية في صفحة الأسعار ويطلب الموجّه الموافقة قبل الإنفاق.
سير عمل مرتبط
حوّل سؤالًا واحدًا إلى موجز بحث بمصادر
اسأل الويب واحفظ الصفحات خلف الإجابة بصيغة Markdown وأضف ما يقوله الممارسون على X واحتفظ بالأدلة في LiveDoc يمكن البحث فيه لاحقًا.
افتح سير العملالبحثابنِ تحليل منافسين يمكن لفريق المبيعات استخدامه
اجمع صفحات المنافس والتغطية حوله وما يقوله المشترون على X ثم ركّب تحليلًا يحمل كل ادعاء مصدرًا وتاريخًا وحالة.
افتح سير العملالمحتوىانشر ملخص أخبار AI يوميًا يقرأه الفريق فعلًا
احصل على ملخص بمصادر وأضف نقاش الممارسين على X وخذ نص فيديو وركّب الإصدار بصيغة Markdown وأرشفه في LiveDoc.
افتح سير العملاجعله مناسبًا لك
الوصفة نفسها، معدّلة بحسب طريقة تسليمك الفعلية.
موضوع واحد فقط
اقتصر على إطلاق أو جدل واحد لتركيز الموجز.
أضف آراء YouTube
أكمل بنص فيديو لكن علّمه تجربة شخصية.
اجعله شهريًا
غيّر التكرار إلى شهري للعلامة والعلاقات العامة.
واصل
صفحات المراجع خلف هذه الوصفة والخطوات التالية.