LXC 171 a fost asociat la WhatsApp (+40723197939, dispozitiv nou al aceluiasi cont), iar pe 104 `maria-whatsapp-bridge` si `maria-whatsapp-consumer` au fost oprite si dezactivate ca sa nu raspunda amandoua la acelasi mesaj. `llama-qwen35.service` ramane pornit acolo: el e LLM-ul de raspuns, folosit acum de 171 prin retea. docs/chatboti-si-punti.md a fost scris cu cateva ore inainte de mutare si spunea ca instanta vie e cea de pe 104 — actualizat peste tot (tabel, sectiuni, porturi, comenzi de verificare), plus un avertisment sa nu se reporneasca prototipul ca "reparatie": ar raspunde in paralel, pe acelasi numar, cu un index de 24 de chunk-uri. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Q4uzvgm7AyJch5WH8QHRhY
7.7 KiB
Chatboții și punțile de mesagerie — care e care
Există trei lucruri numite „Maria", doi boți pe Discord și două punți WhatsApp legate la același număr de telefon. Documentul ăsta spune care e care, unde rulează și cum verifici, în 30 de secunde, cu care vorbești de fapt.
De ce există documentul: pe 2026-08-31 s-a pierdut aproape o oră de diagnostic fiindcă Maria de pe WhatsApp răspundea, dar toate verificările se făceau pe containerul greșit. Pe LXC 171 totul părea rupt (niciun LLM, WhatsApp neasociat, log fără activitate) — răspunsurile veneau de pe LXC 104.
Verificat live pe 2026-08-31. Stările (connected, ce serviciu rulează) se schimbă;
topologia, nu.
Tabelul scurt
| Cine | Unde rulează | Canal | Model | Sursa de cunoștințe |
|---|---|---|---|---|
| Maria pe Flowise | LXC 104, flowise.service, port 3000 |
web (prin ngrok) | configurat în chatflow | chatflow Flowise + docstore propriu |
| Maria WhatsApp ← instanța vie | LXC 171, maria-*.service |
WhatsApp, nr. 40723197939 | llama-qwen35 de pe 104, prin rețea |
depozit sincronizat din Google Drive |
| Maria WhatsApp — prototipul | LXC 104, maria-whatsapp-*.service |
— (oprit 2026-08-31) | — | rag_index.json propriu, mic |
| Echo (MoltBot) | LXC 110, echo-core.service |
Telegram + WhatsApp + Discord | Claude Opus 4.5 (API) | proiectele lui, roa2web |
| Puntea Discord → Claude Code | LXC 171, claude-discord.service |
Discord (guild privat) | Sonnet/Opus, per fir | tot /workspace, acces SSH la cluster |
Cele două Marii de WhatsApp rulează același cod, din surse diferite. Vezi mai jos.
Cele trei Marii
1. Maria pe Flowise — chatbot web
LXC 104 (10.0.20.161), flowise.service pe portul 3000, expus public prin
ngrok.service la https://mutual-special-koala.ngrok-free.app.
Chatflow-ul e definit în interfața Flowise; memoria e Buffer Window (ultimele 5 schimburi).
Sursa versionată a chatflow-ului: vfp_roaauto/COMUN/utile/chatbot/.
Detalii: proxmox/lxc104-flowise/README.md.
2. Maria WhatsApp + RAG — prototipul, OPRIT din 2026-08-31
LXC 104, /root/maria-whatsapp-bridge/ — în afara git-ului. Serviciile
maria-whatsapp-bridge și maria-whatsapp-consumer sunt oprite și dezactivate din
2026-08-31, când rolul a trecut pe versiunea din git de pe LXC 171. Codul a rămas pe disc
ca plasă de siguranță; llama-qwen35.service și flowise.service rulează mai departe și
sunt folosite de restul sistemului.
Ce era cât timp a fost activ:
| Serviciu | Ce face |
|---|---|
maria-whatsapp-bridge.service |
punte Baileys (Node), port 8099 |
maria-whatsapp-consumer.service |
consumer.py — citește mesaje, caută în RAG, întreabă LLM-ul |
llama-qwen35.service |
llama.cpp cu Qwen3.5-2B-Q4_K_M, API compatibil OpenAI pe 8091 |
ollama.service |
embeddings, port 11434 |
Era legată la +40723197939, în self-chat. De ce a fost înlocuită: indexul ei avea
24 de chunk-uri dintr-un singur fișier (knowledge/roaauto_instructiuni.txt), deci orice
întrebare din afara subiectului roaauto primea un răspuns inventat — retrieval-ul n-avea
ce să găsească.
3. Maria WhatsApp + RAG — versiunea din git, cea care răspunde acum
LXC 171, cod în proxmox/lxc171-claude-agent/maria-whatsapp-bridge/, stare în
~/.maria-bridge/. Aceleași servicii, sub systemctl --user.
Are tot ce s-a construit peste prototip: depozit sincronizat din Google Drive prin rclone
(11 documente, 173 de chunk-uri), suport .xml preferat peste .md, lacăt între
reindexări, dashboard de control. Foloseste LLM-ul de pe 104 prin rețea
(LLM_URL=http://10.0.20.161:8091) — pe 171 nu există niciun model de chat, doar
embeddings.
Asociată la +40723197939 pe 2026-08-31, ca dispozitiv nou al aceluiași cont; sesiunea
stă în ~/.maria-bridge/whatsapp-auth/. Din acel moment e singura Maria care răspunde pe
WhatsApp.
Detalii: maria-whatsapp-bridge/README.md.
Cei doi boți de Discord
Puntea Discord → Claude Code (LXC 171)
claude-discord.service. Un fir de Discord = o sesiune Claude Code care rulează pe
container, cu drepturile utilizatorului claude: acces la /workspace, chei SSH,
pct exec pe tot clusterul. Comenzi /new, /cd, /model, /status, /stop,
/cleanup, /permisiuni.
Dashboard de control: claude-discord-dashboard.service, port 18790, expus prin Tailscale
la https://claude-agent.tailf7372d.ts.net/claude. Tot de acolo se comandă și Maria.
Detalii: discord-bridge/README.md.
Echo Core (LXC 110)
echo-core.service — bot pe Telegram, WhatsApp și Discord, cu Claude Opus 4.5 prin
API. Alt bot, alt scop, alt container. Dacă un mesaj de pe Discord primește un răspuns
care nu seamănă cu Claude Code, verifică dacă nu cumva a răspuns Echo.
Detalii: proxmox/lxc110-moltbot/README.md.
Porturi
| Port | Container | Serviciu |
|---|---|---|
| 3000 | LXC 104 | Flowise (web, prin ngrok) |
| 4040 | LXC 104 | ngrok, interfață locală |
| 8091 | LXC 104 | llama.cpp / Qwen3.5-2B — LLM-ul de răspuns al Mariei, folosit de 171 |
| 8099 | LXC 104 | punte WhatsApp Maria — prototip, oprit |
| 11434 | LXC 104 | Ollama (embeddings) |
| 8098 | LXC 110 | punte WhatsApp Echo |
| 18789 | LXC 110 | gateway clawdbot |
| 7788 / 7789 | LXC 110 | supertonic-tts / pocket-tts |
| 8099 | LXC 171 | punte WhatsApp Maria — instanța vie |
| 11434 | LXC 171 | Ollama (doar embeddings, fără model de chat) |
| 18790 | LXC 171 | dashboard punte Discord + Maria |
8099 și 11434 există pe ambele containere, cu conținut diferit. De aici jumătate
din confuzie — verifică întotdeauna pe ce container ești.
Cum afli cu cine vorbești
# Care punte WhatsApp e conectata, si pe ce numar
ssh root@10.0.20.171 "curl -s http://127.0.0.1:8099/status" # Maria (vie)
ssh root@10.0.20.201 "pct exec 104 -- curl -s http://127.0.0.1:8099/status" # prototip (oprit)
ssh root@10.0.20.200 "pct exec 110 -- curl -s http://127.0.0.1:8098/status" # Echo
# Ce a procesat consumer-ul Mariei din git (daca e gol, nu ea a raspuns)
tail -20 ~/.maria-bridge/logs/rag.log
# LLM-ul de raspuns
curl -s http://10.0.20.161:8091/v1/models
Regula: WhatsApp-ul lui Echo (LXC 110) și cel al Mariei (LXC 104) sunt legate la
același număr, +40723197939, ca dispozitive diferite ale aceluiași cont. Un mesaj
poate ajunge la ambele. Dacă primești două răspunsuri, două punți sunt active simultan.
Capcane
- „Maria" nu e un singur lucru. Întreabă întâi: web (Flowise), WhatsApp de pe 104, sau WhatsApp de pe 171?
- Prototipul de pe 104 nu e în git și e oprit din 2026-08-31. Nu-l reporni ca să „repari" Maria: ar răspunde în paralel cu cea din git, pe același număr, cu un index de 24 de chunk-uri. Codul versionat e cel de pe 171.
- Depozitul Mariei din git e oglindă a Google Drive.
rclone syncșterge local ce nu mai există în Drive; un document adăugat manual din dashboard dispare la următoarea sincronizare. - Reindexarea durează ~21 de minute pentru 173 de chunk-uri (embedding CPU-only, ~7,3 s per chunk pe LXC 171). Nu pare blocată — chiar durează.
- Maria nu are voie la infrastructură. E chatbot pentru clienții ERP ROA; nimic din
proxmox/, niciun IP, port sau credențial nu intră în depozitul ei de documente. Puntea Discord, în schimb, are acces la tot. Veziclaude-agent/CLAUDE.md.