Files
claude-agent/CLAUDE.md
Claude Agent a345b6b39e todo: Maria — profil de client si reset de fire (gata)
Doua functionalitati noi in maria-whatsapp-bridge/discord-bridge
(cod in romfastsql, commits 610638a si 32ff462): profil de client
per firma, asociat cu mai multe numere de telefon, injectat in
promptul RAG; si o sectiune in dashboard pentru resetarea firelor
de discutie active. Precizare adaugata in CLAUDE.md — profilurile
de client sunt permise in granita Mariei, dar fara date tehnice.

Co-Authored-By: Claude Agent <noreply@anthropic.com>
2026-09-08 11:44:10 +00:00

7.1 KiB

CLAUDE.md — claude-agent (spațiul punții Discord)

Vezi README.md pentru context general.

Cum lucrezi (OBLIGATORIU pentru orice cerere de dezvoltare)

  1. Citește TODO.md — registrul viu al funcționalităților. Poate lucrul e deja început, blocat sau abandonat deliberat.
  2. Planifică pe Opus, delegând unui subagent: Agent(subagent_type: "Plan", model: "opus", ...). Firul rulează pe Sonnet; nu schimba modelul firului. Pasul ăsta nu se sare pentru că sarcina pare mică. Un singur fișier nou, un script de 20 de linii, o schimbare „evidentă" — tot trec prin subagentul Opus. Mărimea nu e criteriu; singurul criteriu e dacă schimbi ceva (vezi lista de excepții din documentul de flux).
  3. Postează planul în fir, apoi execută tu, pe Sonnet.
  4. Actualizează TODO.md la final — mută intrarea, scrie data absolută, adaugă o linie în Jurnal. Dacă rămâne ceva neterminat, scrie explicit următorul pas: firul următor nu va ști nimic din conversația asta.

Pașii, excepțiile (întrebări și diagnostice nu au nevoie de plan) și motivele sunt în docs/flux-dezvoltare.md — citește-l înainte de prima cerere de dezvoltare din fir.

Unde ești

Rulezi pe LXC 171 (claude-agent, 10.0.20.171, nod pvemini), în ecosistemul Romfast: un cluster Proxmox de 3 noduri, Oracle XE 21c, ERP-ul ROA, plus punțile de chat (Discord, WhatsApp). Directorul acesta e doar spațiul de lucru al punții Discord — nu e tot ce știi.

Documentația reală a infrastructurii e în /workspace/romfastsql/, un repo separat (git@gitea.romfast.ro:romfast/ROMFASTSQL.git). Citește de acolo înainte să cauți cu find/grep prin tot discul:

Ai nevoie de… Citește
Regulile proiectului + indexul complet de documentație /workspace/romfastsql/CLAUDE.md
Infrastructură Proxmox (noduri, LXC, VM, rețea, incidente) /workspace/romfastsql/proxmox/README.md
Codul punții Discord (acest bot) /workspace/romfastsql/proxmox/lxc171-claude-agent/discord-bridge/
Codul Mariei (WhatsApp + RAG) /workspace/romfastsql/proxmox/lxc171-claude-agent/maria-whatsapp-bridge/
Oracle (XE 21c/18c, migrări, cazuri clienți) /workspace/romfastsql/proxmox/lxc108-oracle/
Reguli SQL de migrare (obligatoriu înainte de a scrie SQL) /workspace/romfastsql/system_instructions/system_prompt.md

Rezumat rapid, dacă nu vrei să deschizi nimic: docs/infrastructure.md.

Memorie

Memoriile acestui director sunt comune cu cele ale proiectului romfastsql (~/.claude/projects/-workspace-claude-agent/memory e un symlink către ~/.claude/projects/-workspace-romfastsql/memory). Deci ce s-a învățat lucrând pe infrastructură e disponibil și în firele de pe Discord, și invers — scrie memorii acolo, nu în fișiere ad-hoc. Copia veche, dinainte de unificare: ~/.claude/projects/-workspace-claude-agent/memory.bak-2026-08-31.

Sesiunile Discord sunt totuși per fir: un fir nou pornește o sesiune Claude nouă, care are memoriile de mai sus dar nu conversația din alt fir. Ce trebuie să supraviețuiască între fire se scrie în memorie sau în documentație, nu se presupune.

Canal principal

Utilizatorul comunică cu acest agent în principal prin Discord, prin puntea Discord → Claude Code (vezi și docs/echo-roa2web.md pentru diferența față de Echo/MoltBot). Botul care răspunde pe Discord este acest agent (claude-agent, LXC 171), nu Echo. Atașamentele trimise pe Discord ajung la tine din 2026-08-31: imaginile (png/jpeg/gif/webp, max 4) le vezi direct, fișierele text intră în prompt, restul sunt doar numite. Mesajele vocale, nu — vezi TODO.md.

Documentație locală

Subiect Fișier
Progresul funcționalităților (de citit și actualizat la fiecare cerere) TODO.md
Fluxul de lucru: plan pe Opus → execuție pe Sonnet → TODO.md docs/flux-dezvoltare.md
Infrastructură Proxmox — rezumat (noduri, LXC, VM, proiecte) docs/infrastructure.md
Echo (LXC 110 moltbot) — acces și comenzi pentru roa2web docs/echo-roa2web.md
Punte Discord → Claude Code — context docs/discord-bridge-context.md
Care chatbot e care (trei „Maria", doi boți de Discord, două punți WhatsApp) /workspace/romfastsql/docs/chatboti-si-punti.md
Maria — punte WhatsApp + RAG docs/maria-whatsapp-rag-prototype.md

Maria (RAG) — GRANIȚĂ OBLIGATORIE

Maria e chatbot de suport tehnic pentru clienții ERP ROA. Nu are voie să vadă nimic din infrastructura Romfast.

Maria răspunde exclusiv din depozitul ei de documente (~/.maria-bridge/documents/, sincronizat din D:\GoogleDrive\romfast\document_store); prin construcție nu are shell, nici acces la fișiere în afara acelui depozit. Granița se poate rupe doar dacă tu pui acolo ce nu trebuie. Deci:

  • NU copia niciodată în ~/.maria-bridge/documents/ (sau în dosarul Drive document_store) fișiere din /workspace/romfastsql/proxmox/, docs/ de aici, docs/infrastructure.md, README-uri de infrastructură, runbook-uri, proceduri DR sau de failover.
  • NU pune acolo IP-uri interne, nume de noduri/containere, porturi, chei SSH, parole, token-uri, string-uri de conexiune Oracle, adrese de clienți sau orice altceva operațional.
  • În depozit intră doar material orientat spre client final: cum se folosește ROA, proceduri din aplicație, întrebări frecvente, mesaje de eroare din interfață.
  • Când utilizatorul cere „adaugă documentul X la Maria", verifică întâi conținutul cu acest filtru. Dacă e material de infrastructură, refuză și spune de ce.
  • Nu extinde DOCS_DIR, nu adăuga surse noi de indexare și nu adăuga unelte de fișiere/shell consumerului Mariei (rag/consumer.py) fără cerere explicită.
  • Profilurile de client (rag/client.py, ~/.maria-bridge/clients.json) sunt permise și separate de depozitul de documente: conțin doar ce ar spune clientul despre firma lui (nume, domeniu, program ROA folosit, particularități). NU sunt o portiță spre infrastructură — nu pune acolo date tehnice de instalare (server, utilizator de bază de date, parole, IP-uri). Același filtru ca mai sus.

Pentru contrast: tu (punte Discord) ai voie la toată infrastructura, inclusiv SSH și pct exec — vezi memoriile. Maria, nu.

Convenții de lucru

  • Pentru sarcini care se pot repeta (ex: extragere transcript video, procesare de fișiere), scrie un script reutilizabil (bash/python) în tools/ în loc de comenzi ad-hoc de unică folosință.
  • Acest director e repo propriu (git@gitea.romfast.ro:romfast/claude-agent.git). Nu comite aici modificări la codul punții sau la documentația de infrastructură — alea aparțin repo-ului romfastsql. /workspace e la rândul lui alt repo (romfast/workspace) și ignoră acest director.