Pesquisa
Pesquise uma conta-alvo antes do primeiro contato
Leia o site da empresa, a cobertura recente e o que ela publica, depois escreva um briefing da conta com movimentos recentes, prioridades prováveis, assuntos para a conversa e incógnitas honestas.
Copiar o prompt
Substitua os campos entre colchetes e cole no Claude Code, Codex ou qualquer IA com acesso ao terminal. Ela instala a skill da Felo, pergunta antes de gastar créditos e executa o fluxo.
Monte um briefing de conta sobre [nome ou domínio da empresa] antes de [abordagem / call de descoberta / renovação]. Nossa oferta: [produto ou serviço]. Comprador que nos interessa: [papel]. Janela de movimentos recentes: [últimos 90 dias / últimos 12 meses]. Leia o site deles, a cobertura pública e os posts públicos. Produza um briefing em Markdown com: 1. O que eles fazem, em um parágrafo, com fontes. 2. Movimentos recentes: lançamentos, financiamento, contratação, liderança, parcerias — com datas e links. 3. Prioridades prováveis do trimestre, claramente marcadas como inferência. 4. Assuntos para abrir conversa: três observações específicas, cada uma com sua fonte. 5. Desconhecidos: o que você não conseguiu verificar em fontes públicas. 6. Uma lista completa de fontes. Regras: - Nunca invente nome de contato, e-mail, telefone, headcount, receita ou valor de financiamento. - Apenas fontes públicas: sem dados privados, sem páginas restritas a login, sem diretórios raspados. - Não grave em CRM nem em qualquer outro sistema. O briefing é um arquivo que uma pessoa revisa. - Marque toda inferência como inferência; mantenha fatos com links e datas. - Não afirme a intenção do comprador como fato. - Antes de gastar créditos, mostre as chamadas de API planejadas e aguarde minha aprovação. - Não envie, agende, publique nem mande mensagem para ninguém. - Grave o resultado em ./account-brief.md e resuma no chat.
A cópia também inclui os passos de instalação e as regras de segurança.
O que você recebe
Saída de exemplo de uma execução. Não é geração ao vivo.
Briefing de conta — [empresa], verificado em 2026-10-30
O que fazem
Fabrica robôs de picking para armazéns de operadores logísticos médios. Fonte: https://example.com/about (verificado em 2026-10-30).
Movimentos recentes
- Abriu um segundo site de montagem — https://example.com/news/expansion (2026-10-24)
- Contratando time de “operações de implantação” — https://example.com/careers (verificado em 2026-10-30)
- Post da conta sobre integração de parceiro — @example_company (2026-10-21)
Prioridades prováveis (inferência)
Implantações mais rápidas em mais sites. Inferência do post de expansão e do novo cargo de implantação — não é plano declarado nem confirmado publicamente.
Assuntos para abrir conversa
- O segundo site é novo: perguntar como o playbook de implantação muda quando os sites diferem. Fonte: https://example.com/news/expansion
- Um cargo dedicado de operações de implantação sugere passagem entre vendas e instalação. Fonte: https://example.com/careers
Desconhecidos
- Quem lidera operações de implantação hoje: não disponível em fontes públicas.
- Tamanho da frota e valores de contrato: não disponível.
Fontes
- https://example.com/about
- https://example.com/news/expansion
- https://example.com/careers
As chamadas exatas
Para desenvolvedores: o mesmo fluxo em código, na ordem de execução.
Mostrar as chamadas reais da API
Obtenha a visão geral
Pergunte ao Chat o que a empresa faz e quais mudanças públicas recentes aconteceram, guardando as fontes citadas.
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);Saída de exemplo
{ "answer": "The company builds …", "sources": [ { "link": "https://example.com/about", "title": "…", "snippet": "…" } ] }Leia site, preços e vagas
Com Web Fetch, leia About, preços e vagas para entender produto, clientes e cargos abertos.
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 }; }), );Saída de exemplo
{ "url": "https://example.com/careers", "checkedAt": "2026-10-30", "content": "# Careers\n\nOpen roles: deployment operations…" }Veja sinais públicos dos últimos 90 dias
Pesquise no X o nome da empresa e do produto, guardando posts públicos, perfis e datas dos últimos 90 dias.
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);Saída de exemplo
{ "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 } } ] } }Escreva o briefing da conta
Descreva visão da empresa, movimentos recentes, prioridades prováveis, assuntos para a conversa, incógnitas e fontes.
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);Saída de exemplo
# Account brief — Example Robotics
Salve no LiveDoc
Salve o briefing e as fontes no LiveDoc para reutilizar no próximo contato.
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 LiveDocSaída de exemplo
{ "short_id": "PvyKouzJirXjFdst4uKRK3" }
O que está incluído
- Visão geral da empresa com fontes do Chat
- Extração de site, preços e vagas em Markdown
- Posts públicos datados no X
- Briefing de conta estruturado
- LiveDoc com as evidências
O que não faz
- Não fornece e-mails, telefones ou dados pessoais de contato
- Não lê dados privados nem páginas só para login
- Não grava no CRM nem envia mensagens
- Número de funcionários, receita e investimento só com fonte explícita
- Prioridades e intenções são marcadas como inferência
Perguntas
Ele fornece e-mails de contato?
Não. O fluxo só faz pesquisa pública e não fornece e-mail, telefone ou dados pessoais.
De onde vêm os dados?
O Chat devolve uma visão com fontes, o Web Fetch lê site, preços e vagas, e o X Search adiciona posts públicos. Cada item mantém link e data.
Posso pesquisar empresas fora de tecnologia?
Sim. Onde há pouca informação pública, o briefing marca as incógnitas em vez de inventar.
Ele grava no CRM?
Não. Ele gera apenas um briefing em Markdown; a integração com CRM é sua.
As prioridades são fatos?
Não. O briefing marca “prioridades prováveis” como inferência e mostra as bases; a decisão final é do vendedor.
Quanto custa uma execução?
Chat, extração e busca no X são cobrados por uso; as tarifas atuais estão na página de preços, e o prompt pede aprovação antes de gastar.
Fluxos relacionados
Transforme uma pergunta de mercado em um briefing go-to-market
Faça uma pergunta precisa ao mercado, leia as páginas de categoria e preços por trás da resposta, colete como os compradores descrevem o problema no X e salve um briefing de GTM com afirmações de fontes e perguntas em aberto.
Abrir o fluxo de trabalhoPesquisaMonte uma análise de concorrente que o time de vendas possa usar
Reúna as páginas do próprio concorrente, a cobertura ao redor dele e o que os compradores dizem no X, depois monte uma análise em que cada afirmação tem fonte, data e status.
Abrir o fluxo de trabalhoConteúdoTransforme um briefing de produto em landing page
Pesquise a audiência, guarde o briefing no LiveDoc, crie uma tarefa de Landing Page a partir desse contexto e consulte até a página hospedada ficar pronta.
Abrir o fluxo de trabalhoFaça do seu jeito
A mesma receita, adaptada ao seu processo real.
Só um segmento
Restrinja a um setor ou região para o briefing ficar mais específico.
Adicione o último anúncio
Inclua a página do anúncio como fonte extra para os assuntos ficarem atuais.
Junto com a análise de concorrentes
Compare as prioridades do briefing com o posicionamento da análise de concorrentes para achar um ângulo de diferenciação.
Continue
As páginas de referência por trás desta receita e para onde ir depois.