SignalPipe
Julgamento de intenção de compra para agentes de IA: três juízes decidem se o autor de qualquer post ou mensagem é um comprador real e elaboram uma resposta que você aprova.
Documentação
SignalPipe
Pipeline de vendas agêntico — detecção de intenção de compra, qualificação de leads com pontuação por enxame e nutrição de prospects para agentes OpenClaw.
O SignalPipe avalia se o autor de uma postagem, e-mail ou ticket quer comprar. Seu agente traz o texto de qualquer lugar onde lê, incluindo o X por meio do seu próprio acesso à API do X, e um scout opcional lê os feeds RSS ou Atom que você escolher. Três juízes independentes decidem sobre cada sinal limítrofe, cada lead mantido recebe uma resposta rascunhada que responde ao que a pessoa realmente perguntou, e apenas leads reais chegam até você para aprovação. Funciona com qualquer agente compatível com OpenClaw — ou conecte-se diretamente via MCP do Claude Code, Cursor ou Windsurf.
signalpipe.io · Smithery · Glama
O Que Ele Faz
Topo do funil — Aquisição de Sinais (Mantidae): Seu agente traz texto de qualquer lugar onde lê, e o scout opcional lê os feeds RSS ou Atom que você escolher a cada ciclo. Postagens claras são decididas apenas pelo conteúdo; as limítrofes vão para três juízes independentes (Cético, Analista, Otimista), e quando eles divergem, você vê. Apenas leads reais chegam à sua fila, cada um com uma resposta rascunhada que responde ao que a pessoa perguntou e menciona seu produto somente quando ela pediu uma ferramenta.
Postagens de troca de concorrente têm piso rígido e sempre chegam à sua fila, independentemente da pontuação.
Meio/fundo do funil — Mecanismo de Nutrição: Rastreia a temperatura de cada prospect (0–100) em 14 tipos de sinal. Seleciona automaticamente a persona certa (Educador → Consultor → Fechador → Reengajador). Lembra objeções permanentemente — se alguém disse que o preço está alto, esse ângulo nunca é repetido. Nunca envia spam. Transições de modo unidirecionais.
Execução — Remetente (v2.0):
O cérebro pontua, rascunha e aprova; o plugin agora também pode enviar. Um remetente opcional em segundo plano mantém um stream aberto para o cérebro, recebe as missões que você já aprovou e publica reddit_comment / reddit_dm no Reddit com suas próprias credenciais. A matemática roda conosco, o envio roda com você — suas credenciais do Reddit e chaves de LLM nunca chegam ao SignalPipe. twitter_reply é tratado pelo signalpipe-daemon autônomo. O remetente é opcional: defina as variáveis de ambiente REDDIT_* para ativá-lo, ou ignore-o completamente e permaneça apenas com MCP. Mensagens privadas vão apenas para quem pediu uma: Reddit e X exigem o consentimento do destinatário antes que um aplicativo envie uma. O SignalPipe nunca envia automaticamente um DM ou uma resposta no X; cada um aguarda sua aprovação.
Ferramentas (29 no total)
Aquisição de Sinais
| Ferramenta | O que faz |
|---|---|
signalpipe_get_missions | Lista leads pendentes aguardando revisão — pontuação, papel, canal, trecho, rascunho. Enxuto por padrão; opte por include_context=true apenas ao rascunhar. |
signalpipe_draft_mission | Obtém o payload de rascunho para uma única missão para que o LLM do host possa escrever a resposta ele mesmo (caminho BYOK) |
signalpipe_upload_draft | Envia um rascunho escrito pelo LLM do host para uma missão |
signalpipe_approve_mission | Aprova um lead e o coloca na fila para divulgação |
signalpipe_reject_mission | Rejeita um lead com um motivo — ensina o loop de RL por estação (o tamanho da penalidade se adapta ao motivo; rebaixa um feed ruidoso sem arrastar o resto do produto para baixo). Não use isso quando a postagem simplesmente sumiu — use signalpipe_delete_mission em vez disso. |
signalpipe_delete_mission | Exclui permanentemente uma linha de missão — limpeza silenciosa, sem sinal de aprendizado. Complemento da rejeição. Caso canônico: a postagem foi excluída / 404 / removida antes que você pudesse responder. |
signalpipe_mark_sent | Registra que você respondeu manualmente, para que os acompanhamentos saibam o que foi dito e o feed de origem receba o crédito |
signalpipe_scout_now | Dispara uma execução de scouting sob demanda em seus produtos ativos |
signalpipe_get_products | Lista todos os produtos configurados |
signalpipe_suggest_anchors | Rascunha frases-âncora na voz do comprador para um produto, para você editar antes de adicioná-lo |
signalpipe_add_product | Registra um novo produto para monitorar — descreva-o na linguagem do comprador |
signalpipe_update_product | Edita as âncoras ou a descrição de um produto, ou pausa e retoma |
signalpipe_add_station | Adiciona um feed RSS, subreddit ou feed de palavras-chave do HN para um produto |
signalpipe_list_stations | Seus feeds com um relatório de saúde: postagens capturadas, postagens que chegaram à sua fila e o que mudar |
signalpipe_update_station | Pausa, retoma, renomeia ou redireciona um feed |
signalpipe_remove_station | Remove um feed (um com histórico é desativado em vez disso, para mantê-lo) |
signalpipe_reload_products | Recarrega o cache de produtos a quente após alterações — sem necessidade de novo deploy |
Mecanismo de Nutrição
| Ferramenta | O que faz |
|---|---|
signalpipe_track_prospect | Registra um sinal de um prospect, atualiza a temperatura dele |
signalpipe_record_reply | Envia a resposta de um prospect ao cérebro, que a lê: intenção, objeções, não-contatar e se ele convidou uma mensagem privada |
signalpipe_get_message | Gera a próxima mensagem de divulgação via LLM do backend |
signalpipe_get_message_prompt | Obtém o prompt completo + contexto para que o LLM do host escreva a mensagem (caminho BYOK) |
signalpipe_record_message | Registra uma mensagem escrita pelo LLM do host como enviada |
signalpipe_get_pipeline | Visualiza o pipeline completo de prospects ordenado por temperatura |
signalpipe_score_signal | Pontuador universal — cole qualquer texto (Gmail, Slack, Discord, Telegram, LinkedIn, transcrições) e receba a mesma pontuação + classificação + contexto de rascunho que o scout produz para postagens do Reddit/HN. Para uma resposta ou comentário, passe a postagem que ele responde como context. panel_verdict diz o que os juízes decidiram. O SignalPipe nunca toca no canal de origem; seu agente host faz isso. |
Remetente
Apenas Reddit; requer as variáveis de ambiente opcionais REDDIT_*. Não contém pontuação ou rascunho — apenas publica missões pré-aprovadas com suas credenciais.
| Ferramenta | O que faz |
|---|---|
signalpipe_start_sender | Inicia o remetente em segundo plano — transmite missões aprovadas e publica reddit_comment / reddit_dm com suas próprias credenciais do Reddit. Suporta dry_run. |
signalpipe_stop_sender | Para o remetente em segundo plano; missões aprovadas não enviadas permanecem na fila do cérebro |
signalpipe_sender_status | Relata o estado do remetente — em execução / conectado, contagens de enviadas / falhas / puladas nesta sessão, além da profundidade da fila no cérebro |
Leitor
Lê feeds desta máquina. Sem credenciais e sem dependências extras.
| Ferramenta | O que faz |
|---|---|
signalpipe_read_feeds | Lê as estações marcadas pelo cliente desta máquina e envia cada página de feed ao cérebro para julgamento. Uma passada em segundo plano por padrão (um minuto por feed); every_minutes continua lendo em um intervalo, stop encerra. |
signalpipe_preview_station | Verifica se um feed tem compradores antes de adicioná-lo: lê aqui, é julgado pelo cérebro, nada é salvo. Responde VIÁVEL, MARGINAL, NO TÓPICO MAS FORA DO MERCADO, SEM COMPRADORES ou SEM DADOS. |
Suporte MCP
O SignalPipe expõe todas as ferramentas como um servidor MCP — sem necessidade de instalar plugin do OpenClaw.
Conecte-se do Claude Code, Cursor ou Windsurf — adicione esta URL à sua configuração MCP:
https://api.signalpipe.io/mcp
Autenticação: Authorization: Bearer YOUR_OPERATOR_KEY
Depois de conectado, pergunte ao seu agente:
- "Mostre-me meus leads"
- "Rejeite o primeiro — é um fundador promovendo a própria ferramenta"
- "Com quem devo fazer follow-up hoje?"
Exemplo de Sessão ao Vivo
Uma revisão típica de leads pela manhã dentro do seu agente OpenClaw ou Claude.ai via MCP.
Você: Mostre-me os leads de hoje.
→ signalpipe_get_missions
3 missions pending review
MISSION 1 · score: 91 · role: CLOSER · competitor_flag: true
Product : AcmeTool
Channel : reddit_dm
Handle : u/frustrated_dev99
Snippet : "Their pricing just doubled again. Done. Need a replacement ASAP."
Draft : "Saw your post — we built AcmeTool for exactly the gap you're
describing. Teams typically switch in under a week. Worth a
quick look? Happy to show you how it compares."
MISSION 2 · score: 68 · role: ADVISOR · competitor_flag: false
Product : AcmeTool
Channel : reddit_dm
Handle : u/ops_lead_rachel
Snippet : "Looking for a tool to automate repetitive ops workflows.
Budget is flexible, need something the team actually uses."
Draft : "The part about 'something the team actually uses' is the real
problem to solve — most tools fail there, not on features.
AcmeTool is built around that constraint. Happy to walk through
a real team setup if useful."
MISSION 3 · score: 24 · role: EDUCATOR · competitor_flag: false
Product : AcmeTool
Channel : reddit_dm
Handle : u/just_browsing_thx
Snippet : "Saw an ad for workflow tools. Not really something I need right now"
Draft : [Swarm low-confidence — auto-rejected]
Agente: 2 leads prontos. O lead 1 é um sinal de troca de concorrente, pontuação 91 — rascunho de Fechador, propõe um próximo passo direto. O lead 2 é uma necessidade genuína com orçamento flexível, pontuação 68 — rascunho de Consultor, começa pelo problema real deles. O lead 3 foi rejeitado automaticamente pelo enxame. Aprovo 1 e 2, ou edito primeiro?
Você: O lead 1 é bom, aprove-o. Para o lead 2, mude o rascunho para: "Oi Rachel — resolvemos exatamente isso. A maioria dos times de operações está rodando automações em um dia. Quer que eu mostre como um time como o seu usa?"
→ signalpipe_approve_mission (msn_8f3a — swarm draft unchanged)
→ signalpipe_approve_mission (msn_2b91 — user-edited draft)
✓ msn_8f3a queued for outreach
✓ msn_2b91 queued for outreach (your version)
Você: A Rachel acabou de responder — ela está interessada. Registre isso.
→ signalpipe_track_prospect
handle : u/ops_lead_rachel
channel : reddit_dm
signal : replied
mission_id: msn_2b91
{
"prospect_id": "pro_7f2c",
"handle": "u/ops_lead_rachel",
"temperature": 45,
"mode": "sales",
"persona": "Consultant",
"follow_up_in": "2–3 days"
}
Agente: Rachel está no modo Vendas, temperatura 45. Persona Consultor ativa — qualifique e mostre adequação, sem venda agressiva ainda.
Você: Quem está mais quente? Gere uma mensagem para essa pessoa.
→ signalpipe_get_pipeline
→ signalpipe_get_message (prospect_id: pro_sarah_cto)
{
"message": "Sarah — you've seen how it works. Happy to answer any last
questions before your team makes a call. What's the main
thing you're still weighing?",
"tactic": "remove_friction",
"mode": "closing",
"temperature": 88,
"note": "Previous objection (too_expensive) on record — pricing angle avoided"
}
Agente: Modo de fechamento, tática de remoção de atrito. A objeção de preço anterior dela está permanentemente registrada — a IA evitou esse ângulo automaticamente.
Início Rápido
1. Obtenha um backend + chave de operador
Assine em signalpipe.io, entre no console com o e-mail que você usou no pagamento e crie seu SIGNALPIPE_OPERATOR_KEY lá (ele é mostrado uma única vez). A URL do backend é https://api.signalpipe.io. Sem infraestrutura para gerenciar.
2. Instalação
Via OpenClaw:
openclaw plugins install signalpipe
# or from ClawHub:
openclaw plugins install clawhub:signalpipe
Via MCP (sem instalação de plugin): Adicione a URL do servidor MCP ao Claude.ai, Cursor ou Windsurf — veja Suporte MCP acima.
3. Defina as variáveis de ambiente
export SIGNALPIPE_API_URL=https://api.signalpipe.io
export SIGNALPIPE_OPERATOR_KEY=your-operator-key
Opcional — para executar o remetente Reddit no plugin (v2.0): adicione as credenciais de um aplicativo "script" do Reddit (crie um em https://www.reddit.com/prefs/apps na conta de envio; desde novembro de 2025, o Reddit revisa novos aplicativos de API sob sua Responsible Builder Policy antes de emiti-los). Elas permanecem na sua máquina e nunca são enviadas ao SignalPipe.
export REDDIT_CLIENT_ID=your-client-id
export REDDIT_CLIENT_SECRET=your-client-secret
export REDDIT_USERNAME=your-sending-account
export REDDIT_PASSWORD=your-password
# optional caps (defaults shown)
# export MAX_REDDIT_COMMENTS_PER_DAY=15
# export MAX_REDDIT_DMS_PER_DAY=5
4. Configure um produto
Pergunte ao seu agente:
"Configure meu produto. Ele se chama AcmeTool, automatiza fluxos de trabalho repetitivos de operações, e é comprado por líderes de operações e fundadores."
O agente rascunha âncoras na voz do comprador com signalpipe_suggest_anchors (por exemplo, "estamos afogados nas mesmas transferências manuais toda semana"), mostra a você para editar e então adiciona o produto. Antes de adicionar um feed, peça para ele executar signalpipe_preview_station no feed: ele diz se compradores realmente postam lá.
O mecanismo de sinais é ativado no próximo ciclo de scouting.
Como a Pontuação Funciona
Cada postagem recebida passa por dois pipelines sequenciais.
Pipeline 1 — Pontuação (backend):
- Filtro opcional de palavras-chave — apenas se você definir
buy_signal_keywords. Uma postagem que não corresponda a nenhuma delas é descartada antes que qualquer coisa a leia, então deixe a lista vazia a menos que seus compradores usem um vocabulário fixo. - Pontuação semântica multifatorial — similaridade de embeddings, urgência, especificidade e densidade de palavras-chave. Multilíngue: inglês, espanhol, francês, alemão, português, finlandês.
- Detecção de sarcasmo — distingue compradores genuínos de desabafos ou ironia. Falha aberta — leads reais nunca são suprimidos pela verificação de sarcasmo.
Pipeline 2 — Rascunho por Enxame (backend gerenciado):
Postagens que sobrevivem à pontuação chegam a um enxame de IA com 3 juízes:
| Juiz | Papel |
|---|---|
| Cético | Veta não-compradores, vendedores promovendo suas próprias ferramentas, pesquisas |
| Analista | Avalia o quão bem o lead se encaixa no seu produto |
| Otimista | Encontra a leitura honesta mais forte do lead |
Os juízes rodam em paralelo, e suas pontuações são fundidas via um conjunto ponderado. Leads de baixa confiança são rejeitados automaticamente — nunca chegam à sua fila. Quando os juízes mantêm um lead, um escritor separado rascunha a resposta: uma resposta concreta ao que a pessoa perguntou, em duas ou três frases, mencionando seu produto apenas quando ela pediu uma ferramenta. Se o escritor estiver indisponível, o rascunho dos próprios juízes é usado, ajustado à força do sinal:
- Fechador (maior intenção): Propõe um próximo passo concreto — link de demonstração, teste ou pedido direto
- Consultor (intenção média): Consultivo — reconhece a situação, apresenta o produto naturalmente
- Educador (estágio inicial): Valor primeiro — responde à pergunta, menciona o produto apenas se fizer sentido
Aprendizado por reforço: Cada aprovação/rejeição ajusta o peso de RL da estação de origem — cada feed de escuta (subreddit, busca no HN, fonte RSS) carrega seu próprio multiplicador. Aprovações recompensam o feed; rejeições são conscientes do motivo, com a penalidade dimensionada pelo quão ruim o sinal foi — spam é penalizado mais severamente, depois público errado, depois rejeições fracas ou sem motivo, enquanto sarcasmo e produto errado são mais leves e "já é cliente" não carrega penalidade. O escopo por estação significa que um feed ruidoso é rebaixado sem penalizar o resto das fontes do produto.
Modelo de Temperatura
Mode é baseado em intenção, não em temperatura pura. Novos prospects começam em
nurture independentemente da temperatura inicial e só saem desse estado quando um sinal real chega.
| Modo | Quando | Persona |
|---|---|---|
| Nurture | Primeiro contato / sem engajamento ainda (padrão para novos prospects) | Educador — valor primeiro, lidere com insights, mencione o produto apenas se fizer sentido |
| Sales | Prospect engajado (respondeu / clicou / perguntou / visualizou) e temperatura atingiu 50 | Consultor — qualifique, mostre adequação, construa confiança |
| Closing | Engajamento sustentado e temperatura ≥ 75 | Fechador — urgência, prova social, CTA claro |
| Recovery | Já engajou antes e esfriou, ou sinal explícito de esfriamento (ghosted_3_days, ghosted_7_days, not_interested, bad_timing) | Reengajador — reacenda leads frios, sem venda agressiva |
| Dead | Pediu para não ser contatado (uma resposta que optou por sair, ou o sinal opted_out) | Nenhum: nenhuma mensagem adicional é redigida |
14 tipos de sinais mapeiam para deltas de calor calibrados: booked_demo, asked_pricing, viewed_content, replied, clicked_link, not_decision_maker, ghosted_3_days, no_time, competitor, too_expensive, not_interested, bad_timing, ghosted_7_days, opted_out. Com o texto da resposta em mãos, signalpipe_record_reply o lê e define o sinal para você.
Transições de modo unidirecionais — sem oscilação, sem spam. Memória de objeções — registrada permanentemente e injetada em toda mensagem futura para que a IA nunca repita um ângulo que falhou.
Preços
O plugin e o daemon são gratuitos e licenciados sob MIT. O cérebro gerenciado — pontuação e redação — é uma assinatura, medida em julgamentos (uma execução de painel de três juízes). Texto que é claramente ruído ou claramente um comprador é decidido sem convocar o painel e não gasta nada.
| Plano | Preço | Julgamentos / mês |
|---|---|---|
| Starter | $29/mês | 3.000 |
| Growth | $79/mês | 9.000 |
Cobrado mensalmente via Stripe; cancele a qualquer momento pela sua página de cobrança. Cada chamada de pontuação retorna quanto do mês ainda resta. Detalhes atuais: signalpipe.io/pricing.
Lendo seus feeds nesta máquina
Algumas estações podem ser lidas da sua própria máquina em vez do cérebro: elas mostram read_by: "client" em /stations/list. signalpipe_read_feeds busca esses feeds daqui, no máximo 50 posts por feed e um minuto entre feeds (o Reddit limita a velocidade com que uma máquina pode ler), e entrega cada página ao cérebro, que pontua os posts como se seu próprio scout os tivesse lido. Execute uma vez, ou com every_minutes para continuar lendo. O signalpipe-daemon autônomo faz o mesmo com signalpipe-daemon read.
Verificando um feed antes de adicioná-lo
signalpipe_preview_station lê um feed candidato nesta máquina e faz o cérebro julgar seus posts com melhor correspondência, sem salvar nada. O veredito vem de limites fixados antecipadamente: VIÁVEL (compradores reais postam aqui), MARGINAL (um gotejar), NO TÓPICO, FORA DO MERCADO (pessoas discutem seu tópico, mas ninguém está pedindo para comprar, geralmente criadores ou perguntas de suporte), SEM COMPRADORES, ou SEM DADOS (nada pôde ser julgado; a explicação diz o porquê, como um feed vazio ou desatualizado ou palavras-chave que bloquearam todos os posts). Cada post julgado custa um julgamento. Quais comunidades você ouve decide os resultados mais do que qualquer configuração, então verifique antes de adicionar.
Enviando das suas próprias contas
Os rascunhos são escritos por IA. O Reddit pede que conteúdo gerado por IA seja divulgado, e tanto o Reddit quanto o X agem contra postagem automatizada, então leia e edite cada rascunho com suas próprias palavras antes de publicar. Comentários públicos no Reddit, respostas e DMs no X nunca são enviados sem uma pessoa aprovar cada um.
O remetente no plugin publica missões aprovadas com um script app do Reddit na sua conta. Desde 11 de novembro de 2025, o Reddit emite novos apps de API apenas após aprovação manual, então se você ainda não tem um, pule o remetente: aprove os rascunhos no seu agente, publique você mesmo, e a fila funciona da mesma forma. O envio no X vive no signalpipe-daemon e precisa de uma conta de API paga (pay-per-use) do X.
Licença
Plugin: MIT. O cérebro gerenciado é um serviço hospedado e não é distribuído.