Výzkum
Prozkoumejte cílový účet před prvním kontaktem
Přečtěte web firmy, nedávné pokrytí a co veřejně publikují, a napište brief účtu s nedávnými kroky, pravděpodobnými prioritami, tématy rozhovoru a poctivě neznámým.
Zkopírovat prompt
Nahraďte pole v hranatých závorkách a vložte do Claude Code, Codex nebo AI s přístupem k terminálu. Nainstaluje skill Felo, zeptá se před utracením kreditů a spustí workflow.
Připrav briefing o účtu [název firmy nebo doména] před [kontaktem / discovery hovorem / obnovením]. Naše nabídka: [produkt nebo služba]. Kupující, na kterém nám záleží: [role]. Období posledních pohybů: [posledních 90 dní / posledních 12 měsíců]. Přečti si jejich web, veřejné pokrytí a veřejné příspěvky. Vytvoř Markdown briefing s: 1. Tím, co dělají, v jednom odstavci, se zdroji. 2. Posledními pohyby: launch, financování, nábor, vedení, partnerství — s daty a odkazy. 3. Pravděpodobnými prioritami tohoto kvartálu, jasně označenými jako odvození. 4. Tématy pro začátek rozhovoru: tři konkrétní pozorování, každé se zdrojem. 5. Neznámými: co se nepodařilo ověřit z veřejných zdrojů. 6. Úplným seznamem zdrojů. Pravidla: - Nikdy si nevymýšlej jméno kontaktu, e-mail, telefon, počet zaměstnanců, tržby ani výši financování. - Jen veřejné zdroje: žádná soukromá data, stránky jen pro přihlášené ani scrapované adresáře. - Nezapisuj do CRM ani jiného systému. Briefing je soubor, který kontroluje člověk. - Každý závěr označ jako závěr; fakta drž s odkazy a daty. - Neuváděj záměr kupujícího jako fakt. - Než utratíš kredity, ukaž plánovaná volání API a počkej na mé schválení. - Nic neposílej, neplánuj, nezveřejňuj a nikomu nepiš. - Výsledek zapiš do ./account-brief.md a shrň ho v chatu.
Kopie obsahuje i instalační kroky a bezpečnostní pravidla.
Co dostanete
Ukázkový výstup jednoho běhu. Ne živé generování.
Briefing účtu — [firma], zkontrolováno 2026-10-30
Co dělají
Staví skladové pickovací roboty pro středně velké logistické operátory. Zdroj: https://example.com/about (zkontrolováno 2026-10-30).
Nedávné pohyby
- Otevřel druhou montážní lokalitu — https://example.com/news/expansion (2026-10-24)
- Nabírá tým „deployment operations” — https://example.com/careers (zkontrolováno 2026-10-30)
- Post jejich účtu o partnerské integraci — @example_company (2026-10-21)
Pravděpodobné priority (závěr)
Rychlejší nasazení na více lokalitách. Závěr z postu o expanzi a nové deployment role — není to oznámený plán ani veřejně potvrzené.
Témata pro začátek rozhovoru
- Druhá lokalita je nová: zeptat se, jak se playbook nasazení mění, když se lokality liší. Zdroj: https://example.com/news/expansion
- Vyhrazená role deployment operations naznačuje předání mezi prodejem a instalací. Zdroj: https://example.com/careers
Neznámé
- Kdo dnes vede deployment operations: data z veřejných zdrojů nejsou.
- Velikost flotily a hodnoty kontraktů: data nejsou.
Zdroje
- https://example.com/about
- https://example.com/news/expansion
- https://example.com/careers
Přesná volání
Pro vývojáře: stejný workflow jako kód, v pořadí provádění.
Zobrazit skutečná API volání
Získejte přehled firmy
Zeptejte se Chat, co firma dělá a jaké jsou nedávné veřejné změny, a držte citované zdroje.
account.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 company = "Example Robotics"; const domain = "example.com"; const buyerRole = "Head of Operations"; const overview = await felo<ChatData>("/v2/chat", { query: `What does ${company} do, who buys from it, and what changed in the last 90 days?`, }); const seedSources = overview.data.resources.slice(0, 5);Ukázkový výstup
{ "answer": "The company builds …", "sources": [ { "link": "https://example.com/about", "title": "…", "snippet": "…" } ] }Přečtěte web, ceny a kariéru
Přes Web Fetch přečtěte About, ceny a kariéru, abyste pochopili produkt, zákazníky a otevřené role.
account.ts type ExtractData = { data: { content: string } }; const companyPages = [ { url: `https://${domain}/about`, title: "About" }, { url: `https://${domain}/pricing`, title: "Pricing" }, { url: `https://${domain}/careers`, title: "Careers" }, ]; const pages = await Promise.all( companyPages.map(async (page) => { const res = await felo<ExtractData>("/v2/web/extract", { url: page.url, output_format: "markdown", with_readability: true, with_cache: true, }); const checkedAt = new Date().toISOString().slice(0, 10); return { ...page, checkedAt, content: res.data.content }; }), );Ukázkový výstup
{ "url": "https://example.com/careers", "checkedAt": "2026-10-30", "content": "# Careers\n\nOpen roles: deployment operations…" }Podívejte se na veřejné signály za 90 dní
Hledejte na X název firmy a produktu, držte veřejné posty, účty a data za posledních 90 dní.
account.ts type XData = { data: { tweets: { content: string; author: { username: string }; created_at: string; metrics: { retweet_count: number; favorite_count: number }; }[]; }; }; const since = Math.floor((Date.now() - 90 * 24 * 60 * 60 * 1000) / 1000); const posts = await felo<XData>("/v2/x/tweet/search", { query: `"${company}" (hiring OR launch OR partnership OR expansion)`, limit: 20, since_time: since, }); const recent = posts.data.tweets.slice(0, 5);Ukázkový výstup
{ "data": { "tweets": [ { "content": "We just opened our second assembly site", "author": { "username": "example_company" }, "created_at": "2026-10-21T14:02:00Z", "metrics": { "retweet_count": 4, "favorite_count": 31 } } ] } }Napište brief účtu
Popište přehled, nedávné kroky, pravděpodobné priority, témata rozhovoru, neznámé a zdroje.
account.ts const today = new Date().toISOString().slice(0, 10); const accountBrief = [ `# Account brief — ${company}`, `Checked ${today}. Buyer role: ${buyerRole}.`, "", "## What they do", overview.data.answer, "", "## Recent moves", ...recent.map( (post) => `- ${post.created_at.slice(0, 10)}: ${post.content} (from @${post.author.username})`, ), ...pages.map((page) => `- ${page.title} page captured ${page.checkedAt}: ${page.url}`), "", "## Likely priorities (inference)", "<!-- One or two sentences from the moves above. Mark them as inference, never a stated plan. Delete this comment when filled. -->", "", "## Conversation starters", ...recent.slice(0, 3).map( (post) => `- Ask about: ${post.content.slice(0, 100)} (dated ${post.created_at.slice(0, 10)})`, ), "", "## Unknowns", "- Who owns the workflow we sell into: Not available from public sources.", "- Contract values and team size: Not available.", "", "## Sources", ...pages.map((page) => `- ${page.title}: ${page.url}`), ...seedSources.map((source) => `- ${source.title}: ${source.link}`), ].join("\n"); console.log(accountBrief);Ukázkový výstup
# Account brief — Example Robotics
Uložte do LiveDoc
Uložte brief a zdroje do LiveDoc pro opětovné použití při dalším kontaktu.
account.ts type LiveDocData = { data: { short_id: string } }; const accountDoc = await felo<LiveDocData>("/v2/livedocs", { name: `Account: ${company}`, description: `Briefs and sources checked ${today}`, }); await felo(`/v2/livedocs/${accountDoc.data.short_id}/resources/urls`, { urls: [ ...pages.map((page) => ({ url: page.url, title: page.title })), ...seedSources.map((source) => ({ url: source.link, title: source.title })), ], }); await felo(`/v2/livedocs/${accountDoc.data.short_id}/resources/doc`, { title: `Account brief ${today}`, content: accountBrief, }); console.log(accountDoc.data.short_id); // the next call reuses this LiveDocUkázkový výstup
{ "short_id": "PvyKouzJirXjFdst4uKRK3" }
Co obsahuje
- Přehled firmy se zdroji z Chat
- Web, ceny a kariéra jako Markdown
- Datované veřejné posty na X
- Strukturovaný brief účtu
- LiveDoc s důkazy
Co nedělá
- Nedává e-maily, telefony ani osobní data
- Nečte privátní data ani stránky jen po přihlášení
- Nezapisuje do CRM a neposílá zprávy
- Počet zaměstnanců, tržby a financování jen s jasným zdrojem
- Priority a záměry označené jako inference
Otázky
Dává kontaktní e-maily?
Ne. Workflow dělá jen veřejný výzkum a nedává e-mail, telefon ani osobní data.
Odkud data?
Chat vrací přehled se zdroji, Web Fetch čte web, ceny a kariéru, X Search přidává veřejné posty. Každá položka drží odkaz a datum.
Lze zkoumat firmy mimo technologie?
Ano. Kde je málo veřejných informací, brief označí neznámé místo vymýšlení.
Zapisuje do CRM?
Ne. Tvoří jen Markdown brief; integrace CRM je na vás.
Jsou priority fakta?
Ne. Brief označuje „pravděpodobné priority“ jako inferenci a ukazuje základ; konečné rozhodnutí je na prodejci.
Kolik stojí jeden běh?
Chat, extrakce a X Search se účtují podle užití; aktuální sazby na stránce cen a prompt žádá schválení před útratou.
Související workflowy
Proměňte otázku trhu v go-to-market brief
Položte trhu přesnou otázku, přečtěte stránky kategorií a cen za odpovědí, shromážděte, jak kupující popisují problém na X, a uložte GTM brief s tvrzeními ze zdrojů a otevřenými otázkami.
Otevřít workflowVýzkumVytvořte analýzu konkurence, kterou obchodní tým opravdu použije
Shromážděte stránky konkurenta, pokrytí kolem něj a to, co kupující říkají na X, a sestavte analýzu, kde každé tvrzení má zdroj, datum a stav.
Otevřít workflowObsahProměňte produktový brief v landing page
Prozkoumejte publikum, uložte brief do LiveDoc, vytvořte z toho kontextu úkol Landing Page a ptejte se, dokud hostovaná stránka není hotová.
Otevřít workflowPřizpůsobte
Stejný recept, upravený podle toho, jak skutečně dodáváte.
Jen jeden segment
Omezte na odvětví nebo region pro konkrétnější brief.
Přidejte poslední launch
Přidejte stránku launchu jako další zdroj aktuálních témat.
Spolu s analýzou konkurence
Porovnejte priority z briefu s positioningem z analýzy a najděte úhel.
Pokračujte
Referenční stránky za tímto receptem a další kroky.