BWC
Black Cat Corp · Documentação de Projetos

Mapeamento completo de infraestrutura, endpoints e APIs — gerado por Jota · QA Engine

Gerado em 2026-07-16
VPS 87.99.145.112 · Hetzner
11 projetos ativos
Proxy Caddy / HTTPS
Sistema Online

Visão Geral da BlackCat Corp

Toda a infraestrutura roda em uma VPS Hetzner (Ubuntu). O tráfego público passa pelo Caddy que gerencia HTTPS/TLS automaticamente e faz proxy reverso para cada container Docker.

🛡️
Portal BWC
⚠ Warning
🗳️
Meu Candidato
⚠ Warning
🔐
Shield
✅ Clean
💍
RingCore
⚠ Warning
🚛
TruckRightWay
⚠ Warning
💪
ShapeOS
❌ Failed
🎥
CazéLive
✅ Clean
📈
StockTrade
⚠ Warning
Omicron
✅ Clean
📚
Consultor IA
✅ Clean
📡
BWC Status
Interno

Arquitetura de Infraestrutura

Hetzner 87.99.145.112
Ubuntu Linux
Docker Compose
Caddy (HTTPS auto)
blackcat (compartilhada)
Evolution API
PostgreSQL por projeto
Portainer (localhost:9443)
🛡️

Portal BWC — Admin BlackCat Corp

Node.js / Express PostgreSQL Pluggy API Google Drive ⚠ Drive Warning

Descrição

Portal interno da BlackCat Corp. Servidor Node.js/Express monolítico que serve tanto o painel financeiro pessoal do Victor (gastos, transações bancárias via Pluggy, orçamentos) quanto o módulo Meu Candidato na rota /meucandidato. Banco de dados PostgreSQL local (container edilenelura-db compartilhado). Integração com Google Drive para upload de documentos (com falha no subfolder atual). JWT para autenticação.

Drive subfolder: invalid_grant — account not found. A Service Account conecta no Drive raiz mas falha ao acessar a subpasta. Funcionalidade de upload/sync de documentos ao Drive está inoperante. Verificar DRIVE_SUBFOLDER_ID e permissões da Service Account na pasta.

Infraestrutura

blackcat-portal
3001
blackcat
91 MB
Up 30h+
Conectado ✓

Endpoints — Auth & Geral

MétodoPathAuthDescrição
GET/api/healthpúblicoHealthcheck do servidor
POST/api/auth/loginpúblicoLogin — retorna JWT
GET/api/auth/meJWTDados do usuário autenticado
GET/api/projectsJWTLista de projetos disponíveis no portal

Endpoints — Gastos & Finanças

MétodoPathAuthDescrição
GET/api/gastos/dashboardJWTDashboard financeiro mensal
GET/api/gastos/transactionsJWTTransações por mês, busca, paginação
POST/api/gastos/transactionsJWTCriar transação manual
PATCH/api/gastos/transactions/:idJWTEditar transação
DELETE/api/gastos/transactions/:idJWTRemover transação
GET/api/gastos/accountsJWTContas bancárias conectadas
GET/api/gastos/investmentsJWTCarteira de investimentos
GET/api/gastos/categoriesJWTCategorias de gasto
POST/api/gastos/categoriesJWTCriar categoria
DELETE/api/gastos/categories/:idJWTRemover categoria
POST/api/gastos/categories/apply-rulesJWTAplicar regras de categorização retroativamente
GET/api/gastos/budgetsJWTOrçamentos por categoria
PUT/api/gastos/budgetsJWTDefinir orçamentos
GET/api/gastos/evolutionJWTEvolução histórica dos gastos

Endpoints — Pluggy (Open Banking)

MétodoPathAuthDescrição
POST/api/pluggy/connect-tokenJWTGera token para conectar conta bancária via Pluggy Widget
POST/api/pluggy/save-connectionJWTSalva conexão bancária após autenticação no widget
POST/api/pluggy/resyncJWTRe-sincroniza todas as conexões bancárias
🗳️

Meu Candidato — Painel Edilene Lura 2026

Node.js / Express PostgreSQL Google Drive Meta Ads API Instagram API Google Calendar ⚠ Drive Warning

Descrição

Painel de gestão de campanha política para a candidata Edilene Lura (eleições 2026). Mesma arquitetura do Portal BWC (Node.js/Express), banco PostgreSQL dedicado (edilenelura-db). O módulo é servido em /meucandidato/* e possui dois níveis de acesso: admin (acesso total) e usuário (acesso restrito). Integrações com Meta Ads, Instagram, Google Calendar e Google Drive para gestão completa da campanha.

Drive subfolder: mesma falha do Portal BWC — invalid_grant. Corrigir a Service Account resolve ambos.

Infraestrutura

edilenelura-app
edilenelura-db (healthy)
3001
88 MB
35 MB
Up 9+ dias

Endpoints — Auth & Perfil

MétodoPathAuthDescrição
GET/api/healthpúblicoHealthcheck
POST/api/mc/loginpúblicoLogin campanha — retorna JWT
POST/api/mc/auth/change-passwordJWTAlterar senha
GET/api/mc/meJWTDados do usuário logado
GET/api/mc/me/dadosJWTDados detalhados do perfil
DELETE/api/mc/meJWTExcluir própria conta
GET/api/mc/auditoriaadminLog de auditoria de todas as mutações
GET/api/infra/statusJWTStatus dos serviços BlackCat referenciados

Endpoints — Campanha

MétodoPathAuthDescrição
GET/api/mc/dashboardadminMétricas gerais da campanha
GET/api/mc/configJWTConfigurações da campanha
PUT/api/mc/configadminAtualizar configurações
POST/api/mc/configadminConfiguração inicial
GET/api/mc/votosadminRegistro de votos mapeados
POST/api/mc/votosadminAdicionar votos
DELETE/api/mc/votos/:idadminRemover voto
GET/api/mc/mapa/posicoesJWTPosições no mapa eleitoral
PUT/api/mc/mapa/posicaoadminAtualizar posição no mapa
GET/api/mc/zonasadminZonas eleitorais mapeadas
GET/api/mc/guerraadminAnálise de campanha / dados de guerra eleitoral
GET/api/mc/demandasadminDemandas da comunidade
POST/api/mc/demandasadminRegistrar demanda
DELETE/api/mc/demandas/:idadminRemover demanda
GET/api/mc/propostasadminPropostas políticas
POST/api/mc/propostasadminCriar proposta
PATCH/api/mc/propostas/:idadminEditar proposta
DELETE/api/mc/propostas/:idadminRemover proposta
GET/api/mc/financeiroadminFinanças da campanha
POST/api/mc/financeiroadminRegistrar movimentação financeira

Endpoints — Equipe & Tarefas

MétodoPathAuthDescrição
GET/api/mc/equipeadminMembros da equipe
POST/api/mc/equipeadminAdicionar membro
PATCH/api/mc/equipe/:idadminEditar membro
GET/api/mc/tarefasadminTarefas da campanha
POST/api/mc/tarefasadminCriar tarefa
PATCH/api/mc/tarefas/:idadminAtualizar status/tarefa
DELETE/api/mc/tarefas/:idadminRemover tarefa
GET/api/mc/eventosJWTEventos da campanha
POST/api/mc/eventosadminCriar evento
PUT/api/mc/eventos/:idadminEditar evento
DELETE/api/mc/eventos/:idadminRemover evento

Endpoints — Conteúdo & Social

MétodoPathAuthDescrição
GET/api/mc/bibliotecaadminBiblioteca de materiais
POST/api/mc/bibliotecaadminUpload de material
GET/api/mc/conteudosJWTConteúdos de mídia social
POST/api/mc/conteudosJWTCriar conteúdo
PATCH/api/mc/conteudos/:idJWTEditar conteúdo
DELETE/api/mc/conteudos/:idJWTRemover conteúdo
POST/api/mc/posts/uploadJWTUpload de arquivo/post (multipart)
GET/api/mc/postsJWTPosts da campanha
PATCH/api/mc/posts/:id/statusJWTAtualizar status do post
DELETE/api/mc/posts/:idadminRemover post
GET/api/mc/posts/:id/mediaJWTMídia de um post
GET/api/mc/mencoesJWTMenções à candidata
POST/api/mc/mencoesJWTRegistrar menção
PATCH/api/mc/mencoes/:id/tratarJWTMarcar menção como tratada
GET/api/mc/redesJWTPerfis em redes sociais
GET/api/mc/concorrentesadminConcorrentes mapeados
GET/api/mc/adsJWTAnúncios cadastrados

Endpoints — Integrações OAuth

MétodoPathAuthDescrição
GET/oauth/drive/startpúblicoInicia fluxo OAuth Google Drive
GET/oauth/drive/callbackpúblicoCallback OAuth Drive
GET/api/mc/oauth/instagram/connectpúblicoInicia OAuth Instagram
GET/api/mc/oauth/instagram/callbackpúblicoCallback OAuth Instagram
POST/api/mc/oauth/instagram/disconnectadminDesconectar Instagram
GET/api/mc/instagram/metricsJWTMétricas Instagram da candidata
GET/api/mc/oauth/meta/connectpúblicoInicia OAuth Meta Ads
GET/api/mc/meta/campaignsJWTCampanhas no Meta Ads
GET/api/mc/meta/summaryJWTResumo de performance Meta
GET/api/mc/meta/ads-insightsJWTInsights de anúncios
GET/api/mc/meta/demographicsJWTDados demográficos do público
GET/api/mc/meta/audiencesJWTAudiências do Meta
GET/api/mc/oauth/calendar/connectpúblicoInicia OAuth Google Calendar
GET/api/mc/calendar/eventsJWTEventos do Google Calendar
GET/api/mc/calendar/ical-tokenJWTToken iCal para exportação
POST/api/mc/calendar/ical-token/regenerateJWTRegenerar token iCal
GET/api/mc/ical/:tokenpúblicoFeed iCal público da agenda
🔐

Shield — Identity Shield

NestJS Next.js (frontend) PostgreSQL Redis ✅ Clean

Descrição

Sistema de monitoramento de identidade digital. Monitora exposições de dados pessoais, vazamentos, breaches em bancos de dados, e gera alertas e planos de ação. Backend em NestJS (TypeScript) exposto em /identity-shield/api/*. Frontend Next.js separado. MFA (autenticação multifator) suportada. IA integrada via shield-ai para análise de risco. Dois bancos: PostgreSQL + Redis para sessões.

Infraestrutura

shield-backend (NestJS)
shield-frontend (Next.js)
shield-postgres (healthy)
shield-redis (healthy)
55 MB
36 MB
Up 36h+ (healthy)
/identity-shield/api

Endpoints — Auth (prefixo: /identity-shield/api/auth)

MétodoPath completoAuthDescrição
POST/identity-shield/api/auth/registerpúblicoRegistrar usuário
POST/identity-shield/api/auth/loginpúblicoLogin — retorna JWT
POST/identity-shield/api/auth/mfa/verifypúblicoVerificar código MFA (TOTP)
GET/identity-shield/api/auth/mfa/setupJWTObter QR code para configurar MFA
POST/identity-shield/api/auth/mfa/enableJWTAtivar MFA após verificação
POST/identity-shield/api/auth/refreshpúblicoRenovar access token via refresh token
POST/identity-shield/api/auth/logoutJWTLogout — invalida sessão
GET/identity-shield/api/healthpúblicoHealthcheck do backend

Endpoints — Monitoramento de Identidade

MétodoPath completoAuthDescrição
GET/identity-shield/api/monitoring/dashboardJWTDashboard geral de risco de identidade
GET/identity-shield/api/monitoring/identitiesJWTIdentidades monitoradas
POST/identity-shield/api/monitoring/identitiesJWTAdicionar identidade para monitorar
GET/identity-shield/api/monitoring/identities/:idJWTDetalhes de uma identidade
DELETE/identity-shield/api/monitoring/identities/:idJWTRemover identidade monitorada
GET/identity-shield/api/monitoring/breachesJWTVazamentos encontrados
POST/identity-shield/api/monitoring/scanJWTIniciar scan de exposição
GET/identity-shield/api/monitoring/scoreJWTScore de risco de identidade

Endpoints — Alertas, Planos de Ação & IA

MétodoPath completoAuthDescrição
GET/identity-shield/api/alertsJWTLista de alertas
GET/identity-shield/api/alerts/unread-countJWTContagem de alertas não lidos
POST/identity-shield/api/alerts/:id/readJWTMarcar alerta como lido
POST/identity-shield/api/alerts/read-allJWTMarcar todos como lidos
DELETE/identity-shield/api/alerts/:idJWTRemover alerta
GET/identity-shield/api/action-plansJWTPlanos de ação de segurança
POST/identity-shield/api/action-plans/generateJWTGerar plano de ação via IA
GET/identity-shield/api/action-plans/:idJWTDetalhes do plano
PATCH/identity-shield/api/action-plans/:planId/steps/:stepId/completeJWTMarcar etapa do plano como concluída
PATCH/identity-shield/api/action-plans/:id/dismissJWTDispensar plano
POST/identity-shield/api/shield-ai/chatJWTChat com IA de segurança (Shield AI)
💍

RingCore — Saúde Smart Ring R11M

Next.js (fullstack) Prisma ORM BLE (Bluetooth) ⚠ Sem /api/health

Descrição

Dashboard de saúde integrado com smart ring R11M via Bluetooth BLE. Coleta métricas do anel (frequência cardíaca, SpO2, temperatura, bateria, passos, estresse, HRV, sono) e exibe em dashboard Next.js. Banco de dados gerenciado via Prisma ORM. Comunicação BLE implementada em TypeScript (ble-client.ts, ble-protocol.ts). Também deployado como app mobile via Capacitor.

Sem endpoint /api/health — impede monitoramento automático pelo BWC Status dashboard.

Infraestrutura

ringcore-app
ringcore-db (healthy)
63 MB
Up 3+ dias

Endpoints — API

MétodoPathAuthDescrição
GET/api/metricsJWTBusca métricas do anel. Query params: type (hr, spo2, temp, battery, steps, stress, hrv, sleep), limit (1-200, default 50)
POST/api/metricsJWTGravar nova métrica coletada via BLE
App mobile (Capacitor) usa a mesma API REST. BLE funciona client-side via Web Bluetooth API ou plugin nativo Capacitor.
🚛

TruckRightWay — Logística de Transporte

Next.js 14 (App Router) NextAuth Prisma ORM Capacitor (mobile) ⚠ Sem /api/health

Descrição

Plataforma de logística para caminhoneiros. Permite mapear rotas, pontuar paradas, reportar problemas na estrada (com moderação admin), gerenciar veículos, capturar leads e administrar regras de negócio. Autenticação via NextAuth (suporta credenciais + OAuth). API construída com Next.js App Router (cada arquivo route.ts é um endpoint REST). Também exportado como app mobile via Capacitor. Tem testes automatizados (Vitest) para validação, geo e rules-engine.

Sem endpoint /api/health. O healthcheck no BWC Status retorna 404 para este serviço.

Infraestrutura

truckrightway-app
truckrightway-db (healthy)
110 MB
Up 3+ dias

Endpoints — API Routes (Next.js App Router)

MétodoPathAuthDescrição
POST/api/auth/registerpúblicoRegistrar conta
GET/api/auth/[...nextauth]públicoEndpoints NextAuth (login, callback, session)
POST/api/auth/[...nextauth]públicoEndpoints NextAuth (login, callback, session)
POST/api/auth/recoverpúblicoSolicitar recuperação de senha
PUT/api/auth/recoverpúblicoConfirmar nova senha com token
PATCH/api/meSessionAtualizar perfil do usuário
GET/api/routesSessionListar rotas disponíveis
GET/api/routes/planSessionPlanejar rota
GET/api/stop-pointsSessionListar pontos de parada
POST/api/stop-pointsSessionRegistrar ponto de parada
POST/api/stop-points/:id/reviewsSessionAvaliar ponto de parada
GET/api/vehiclesSessionListar veículos do usuário
POST/api/vehiclesSessionCadastrar veículo
GET/api/vehicles/:idSessionDetalhes do veículo
GET/api/vehicle-typespúblicoTipos de veículo disponíveis
GET/api/stop-point-categoriespúblicoCategorias de pontos de parada
GET/api/reportsSessionReportes de ocorrências
POST/api/reportsSessionCriar reporte de ocorrência
POST/api/reports/:id/voteSessionVotar em um reporte (confirmação)
POST/api/leadspúblicoCapturar lead (landing page)

Endpoints — Admin

MétodoPathAuthDescrição
GET/api/admin/statsadminEstatísticas gerais da plataforma
GET/api/admin/rulesadminRegras de negócio do rules-engine
POST/api/admin/rulesadminCriar regra
PUT/api/admin/rules/:idadminAtualizar regra
DELETE/api/admin/rules/:idadminRemover regra
GET/api/admin/moderationadminFila de moderação de reportes
POST/api/admin/moderationadminAprovar/rejeitar item na moderação
GET/api/admin/sourcesadminFontes de dados externas
POST/api/admin/sourcesadminAdicionar fonte de dados
💪

ShapeOS — App Fitness

React Native (Expo) Supabase self-hosted NativeWind Zustand ❌ Root 401

Descrição

Aplicativo fitness com tracking de treinos, dieta, scanner de alimentos via IA (foodScanner.ts), insights de saúde, planos de treino e score de evolução (EvoScore). Desenvolvido em React Native com Expo e NativeWind para styling. Estado global via Zustand. Backend 100% Supabase self-hosted (PostgreSQL + Auth + Storage + REST/Realtime). Autenticação gerenciada pelo Supabase Auth. Também suporta compras in-app (purchases.ts).

Root HTTP 401: A URL raiz shapeos.blackcatcorp.com.br retorna 401. Investigar nginx — o index.html da SPA deveria ser servido publicamente (o login acontece client-side).
API Supabase (api.shapeos.blackcatcorp.com.br): retorna 404. O domínio pode não estar configurado no Caddyfile ou o sb-rest não está recebendo tráfego por esse hostname.

Infraestrutura

shapeos (nginx) — 401!
sb-auth (healthy)
sb-rest (healthy)
sb-storage (healthy)
sb-postgres (healthy)
4 MB (nginx)

APIs (Supabase self-hosted)

O ShapeOS usa a API REST do Supabase diretamente. Todos os endpoints exigem o header apikey: <anon_key> e Authorization: Bearer <token> para rotas protegidas.

MétodoPathAuthDescrição
POST/auth/v1/signupanon keyCadastro de usuário
POST/auth/v1/token?grant_type=passwordanon keyLogin — retorna JWT
POST/auth/v1/logoutJWTLogout
GET/rest/v1/profilesJWTPerfis de usuário (RLS ativo)
GET/rest/v1/workoutsJWTTreinos do usuário
POST/rest/v1/workoutsJWTRegistrar treino
GET/rest/v1/mealsJWTRefeições registradas
POST/rest/v1/mealsJWTRegistrar refeição
POST/storage/v1/object/...JWTUpload de fotos/mídia
Endpoints Supabase acessíveis via api.shapeos.blackcatcorp.com.br (domínio com problema de roteamento). O app mobile usa as URLs diretamente via SDK @supabase/supabase-js.
🎥

CazéLive — Overlay de Transmissão ao Vivo

Python / FastAPI Uvicorn ✅ Clean

Descrição

Serviço de overlay para transmissões ao vivo estilo Cazé TV. Backend Python/FastAPI que fornece dados em tempo real via stream SSE para overlays de OBS ou browser source. Suporta proxy de status de lives e streaming de dados. Armazena cookies de sessão (cookies.txt) para acesso autenticado em plataformas externas.

Infraestrutura

cazelive
8420
uvicorn app:app
32 MB
0.15% (ativo)
Up 3+ dias

Endpoints

MétodoPathAuthDescrição
GET/públicoInterface HTML do overlay
GET/api/streampúblicoSSE stream de dados ao vivo (Server-Sent Events)
GET/api/proxy-statuspúblicoStatus do proxy de plataformas externas
GET/api/supportedpúblicoPlataformas de live suportadas
GET/api/healthpúblicoHealthcheck
📈

StockTrade — Bot de Trading Automatizado

Python / FastAPI PostgreSQL WebSocket React (frontend) ⚠ Mem 293MB

Descrição

Plataforma de trading algorítmico automatizado. Backend Python/FastAPI com módulos para criação e gerenciamento de estratégias, backtesting histórico, simulação em papel (paper trading), execução de portfólio real, histórico de trades e configurações globais. Frontend React estático. WebSocket para dados de mercado em tempo real. Banco PostgreSQL dedicado. Docs OpenAPI disponíveis em /openapi.json.

Backend consume 293MB de RAM — o mais alto da infra. Monitorar crescimento. Se ultrapassar 400MB, investigar memory leak.
Documentação interativa disponível em trade.blackcatcorp.com.br/openapi.json

Infraestrutura

stocktrade-backend
stocktrade-frontend
stocktrade-db (healthy)
293 MB ⚠
5 MB
Up 12+ dias

Endpoints — API v1 (prefixo: /api/v1)

MétodoPathAuthDescrição
POST/api/v1/auth/registerpúblicoRegistrar conta de trader
POST/api/v1/auth/loginpúblicoLogin — retorna access + refresh token
POST/api/v1/auth/refreshpúblicoRenovar token via refresh token
POST/api/v1/auth/logoutJWTLogout
GET/api/v1/strategiesJWTListar estratégias de trading
POST/api/v1/strategiesJWTCriar estratégia
PUT/api/v1/strategies/:idJWTAtualizar estratégia
DELETE/api/v1/strategies/:idJWTRemover estratégia
POST/api/v1/backtestJWTIniciar backtest (assíncrono, retorna 202)
GET/api/v1/backtestJWTListar backtests executados
GET/api/v1/backtest/:run_idJWTStatus/resultado de um backtest
GET/api/v1/portfolioJWTStatus atual do portfólio
POST/api/v1/portfolio/startJWTIniciar execução do portfólio (live trading)
POST/api/v1/portfolio/stopJWTParar execução do portfólio
POST/api/v1/portfolio/emergencyJWTParada de emergência — encerra todas as posições
GET/api/v1/simulationJWTStatus do paper trading
POST/api/v1/simulation/startJWTIniciar simulação (paper trading)
POST/api/v1/simulation/stopJWTParar simulação
GET/api/v1/history/tradesJWTHistórico completo de trades executados
GET/api/v1/settingsJWTConfigurações globais do bot
PUT/api/v1/settingsJWTAtualizar configurações
WS/wsTokenWebSocket — dados de mercado em tempo real

Omicron Assistant — GE Vernova / Subestações

Python / FastAPI PostgreSQL React (frontend) ✅ Clean

Descrição

Assistente técnico para engenharia de subestações elétricas (GE Vernova). Gerencia subestações, transformadores, linhas de transmissão, barramentos, relés de proteção e planos de teste. Gera planos de teste automaticamente via IA e exporta para formatos XRIO, PDF e Excel. Backend Python/FastAPI com banco PostgreSQL dedicado. Frontend React (nginx). Autenticação JWT.

Infraestrutura

omicron-backend
omicron-frontend
omicron-db (healthy)
82 MB
5 MB
Up 3+ dias

Endpoints — Auth

MétodoPathAuthDescrição
GET/healthpúblicoHealthcheck
POST/auth/loginpúblicoLogin — retorna JWT
POST/auth/logoutJWTLogout
GET/auth/meJWTUsuário atual

Endpoints — Subestações & Equipamentos

MétodoPathAuthDescrição
GET/substationsJWTListar subestações
POST/substationsJWTCriar subestação
GET/substations/:idJWTDetalhes da subestação
DELETE/substations/:idJWTRemover subestação
POST/substations/:id/transformersJWTAdicionar transformador
GET/substations/:id/transformersJWTListar transformadores
POST/substations/:id/linesJWTAdicionar linha de transmissão
GET/substations/:id/linesJWTListar linhas de transmissão
POST/substations/:id/busesJWTAdicionar barramento
GET/substations/:id/busesJWTListar barramentos
GET/relaysJWTListar relés de proteção
POST/relaysJWTCadastrar relé
GET/relays/:idJWTDetalhes do relé
PATCH/relays/:idJWTAtualizar relé
DELETE/relays/:idJWTRemover relé

Endpoints — Planos de Teste

MétodoPathAuthDescrição
POST/test-plans/generateJWTGerar plano de teste via IA (retorna 201)
GET/test-plansJWTListar planos de teste
GET/test-plans/:idJWTDetalhes de um plano
DELETE/test-plans/:idJWTRemover plano
POST/test-plans/:id/resultsJWTRegistrar resultados de teste executado
GET/test-plans/:id/export/xrioJWTExportar para formato XRIO (Omicron CMC)
GET/test-plans/:id/export/pdfJWTExportar relatório PDF
GET/test-plans/:id/export/excelJWTExportar planilha Excel
📚

Consultor IA — Documental

Python / FastAPI Qdrant (Vector DB) LLM ✅ Clean

Descrição

Assistente IA para consulta de documentos internos (RAG — Retrieval-Augmented Generation). Indexa documentos no Qdrant (Vector DB) e responde perguntas com base no conteúdo. Backend Python/FastAPI rodando em ia-documental. Qdrant roda como container separado na VPS. Alto consumo de memória esperado (286MB) por carregar modelos de embedding.

Infraestrutura

ia-documental
qdrant (porta 6333)
286 MB (esperado)
0.16% (ativo)
Up 10+ dias
📡

BWC Status — Dashboard de Monitoramento

Uso interno — porta 4000 da VPS
Node.js Interno ✅ Operacional

Descrição

Dashboard visual interno que monitora o status de todos os serviços BlackCat em tempo real. Faz healthcheck periódico em cada serviço configurado em services.json e exibe um grafo de topologia da infraestrutura. Intencionalmente sem domínio público — acessível apenas dentro da VPS via localhost:4000. Monitoramento inclui: VPS, Caddy, OpenClaw, OpenWebUI, Qdrant, Portainer, Evolution API, todos os projetos BlackCat e serviços externos (GitHub, Telegram, Neon, Render).

Uso interno por design. Não necessita de domínio público.

Serviços Monitorados

VPS, Caddy, OpenClaw, OpenWebUI, Qdrant, Portainer, Evolution
Portal, Shield, ShapeOS, RingCore, TruckRightWay, CazéLive, Consultor, StockTrade, Omicron, Kali, MeuCandidato
GitHub API, Telegram API, Neon PostgreSQL, Render

Endpoints

MétodoPathAuthDescrição
GET/internoDashboard HTML com grafo de topologia
GET/api/statusinternoJSON com status de todos os serviços