npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@nexaomni/n8n-nodes-nexachat

v1.0.2

Published

NexaChat integration for n8n: conversations, contacts, WhatsApp, Kanban CRM and AI.

Readme

@nexaomni/n8n-nodes-nexachat

Nodes do NexaChat para o n8n: conversas, contatos, WhatsApp, Kanban CRM, Captain (IA), agenda, Help Center e mais — e, na Fase 2, os módulos próprios da NexaOmni (Instagram, Anúncios, Formulários).

Guia para clientes

Ver docs/GUIA-DO-CLIENTE.md (cliente-safe: instalação, credencial, exemplos, erros).

Instalação (n8n self-hosted)

Settings → Community Nodes → Install → @nexaomni/n8n-nodes-nexachat

Credencial NexaChat API:

  • URL: https://chat.nexaomni.com.br
  • Access Token: Perfil → Configurações → Token de acesso

Como o pacote é feito

@clubmega/n8n-nodes-mega (npm, MIT)        ← node oficial do MEGA, por Nestor Davalos
        │  scripts/sync-upstream.mjs
        │    1. npm pack <versão> + confere integridade com upstream.lock.json
        │    2. de-para MEGA → NexaChat (rebrand/rules.mjs), só em strings, via AST
        │    3. guarda: falha se sobrar MEGA/Chatwoot/WAHA/Evolution/UAZAPI em texto
        ▼
upstream/   (versionado — o diff do PR mostra o que mudou na release)
        │  scripts/build.mjs
        ▼
dist/  =  upstream/  +  src/ (nodes próprios NexaOmni, TypeScript — Fase 2)

| Comando | O quê | |---|---| | npm run sync | Reaplica o de-para na versão do upstream.lock.json (após mudar regras) | | npm run sync:latest | Puxa a última versão do Nestor | | npm test | Build + testes (carrega nodes como o n8n, procura vazamento de marca) |

Quando o Nestor lançar versão nova

Automático: o workflow sync-upstream roda todo dia às 08:00, e abre PR (de-para ok) ou issue (frase nova com marca → precisa de regra). Manual: npm run sync:latest && npm test.

Se o guarda falhar, adicione em rebrand/rules.mjs:

  • texto de tela → PHRASES (trecho) ou EXACT (string inteira);
  • valor interno enviado à API (não aparece na tela) → ALLOWLIST, com comentário justificando.

Publicar

npm version <minor|patch> → push → git tag vX.Y.Z && git push --tags (workflow publish, precisa do secret NPM_TOKEN).

Nodes próprios NexaOmni (Fase 2 — src/)

| Node | Operações | |---|---| | NexaChat Instagram | Comentários: listar, responder, DM, ocultar, resolver · Leads · Posts: agendar, agendados, publicados, métricas · Mídia: upload · Conta: crescimento | | NexaChat Instagram Trigger | Novo comentário / novo lead (polling, cursor after_id) | | NexaChat Forms | Formulários: listar · Respostas: listar (filtro por data/busca) | | NexaChat Forms Trigger | Dispara a cada nova resposta de um formulário (polling) | | NexaChat Ads | Status · Insights · Atribuição (ROAS) · Funil · Vendas por anúncio · Origens · Saúde da CAPI · Enviar conversão (POST /mkt/events) | | NexaChat Ads Trigger | Novo lead vindo de anúncio (polling, conjunto de conversas já vistas) |

Usam a mesma credencial NexaChat API. Falam com o backend dos módulos (https://engagement.nexaomni.com.br/n8n/v1, repo nexa-social), que valida o Access Token no NexaChat, exige que o usuário seja membro da conta e aplica as mesmas permissões da tela. Só uma lista branca de rotas é exposta (backend/routes/n8n.js no nexa-social) — nada destrutivo, de configuração ou de conexão com a Meta. Homologação: NEXACHAT_MODULES_URL no servidor n8n.

Rota nova = liberar em ALLOWED (nexa-social) + operação no node aqui.

O que o de-para muda

  • Nome/ícone/descrições: MEGA → NexaChat; ícone icons/nexachat.svg.
  • Tipos: nexaChat, nexaChatTrigger; credenciais nexaChatApi, nexaChatPlatformApi.
  • Provedores de WhatsApp não oficiais aparecem como "QR Code" (nunca WAHA/Evolution/UAZAPI).
  • Captain → NexaAI em todo texto de tela (mesmo de-para do DS nexaai-captain-renamer); rotas/ids captain* minúsculos intactos.
  • Remove os aliases legacy Chatwoot / Chatwoot Trigger.
  • Remove a Platform API (contas, usuários da plataforma, banners globais, agent bots da plataforma) e a credencial Platform: conta só se cria/suspende pelo ERP. Feito em src/nodes/NexaChat/NexaChat.node.ts, que estende o node do upstream e lê a lista de recursos Platform da própria definição dele.
  • Texto de contexto pra agentes de IA (n8n MCP/AI Builder) reescrito sem citar MEGA/Chatwoot.
  • Valores de API (whatsapp_waha, rotas etc.) ficam intactos — o comportamento é idêntico ao original.

Licença

MIT. Derivado de @clubmega/n8n-nodes-mega (MIT) — licença original em upstream/LICENSE.upstream.md (copiada para dist/).