# Configurarea puntii Discord -> Claude Code. # # install.sh copiaza acest fisier in ~/.claude-discord/env cu drepturi 0600. # Formatul e cel cerut de systemd EnvironmentFile: CHEIE=valoare, fara `export`, # fara ghilimele in jurul valorii, fara expandare de variabile. # # DUPA COPIERE COMPLETEAZA MANUAL cel putin DISCORD_TOKEN si allowlist-ul. # --- Discord --------------------------------------------------------------- # Token-ul botului: Discord Developer Portal -> aplicatia ta -> Bot -> Reset Token. # Se vede o singura data. Daca ajunge in git, invalideaza-l imediat din portal. DISCORD_TOKEN= # Allowlist. Liste separate prin virgula, cu ID-uri numerice (Discord -> Advanced -> # Developer Mode, apoi click dreapta -> Copy ID). Gol = nimic permis (fail-closed). DISCORD_GUILD_IDS= DISCORD_CHANNEL_IDS= DISCORD_USER_IDS= # Aplicatia Discord a puntii (creata 2026-08-30). Link de reinvitare, daca botul # a fost scos din server sau ii lipsesc permisiuni: # https://discord.com/oauth2/authorize?client_id=1543576449624186880&scope=bot%20applications.commands&permissions=309237763136 # permissions=309237763136 -> View Channel, Send Messages, Embed Links, Attach Files, # Read Message History, Add Reactions, Create/Send in Public Threads. # --- Model si cost --------------------------------------------------------- # Modelul implicit al firelor noi. `/model opus` il schimba per fir. CLAUDE_MODEL=sonnet # Plafon de cost pe zi, in USD. La atingere botul refuza tururi noi si alerteaza. # Reper masurat: un tur banal pe opus a costat $0.1547. COST_CAP_USD_DAY=5.00 # --- Limite ---------------------------------------------------------------- # Maxim de procese `claude` vii simultan (406 MB RSS fiecare, masurat). MAX_LIVE_PROCESSES=4 # Timeout per tur, secunde. TURN_TIMEOUT_S=900 # Reaper: dupa cate secunde de inactivitate se opreste procesul unui fir. IDLE_REAP_S=1200 # Cat asteapta hook-ul de confirmare o apasare pe Allow/Deny, secunde. # CONSTRANGERE: trebuie sa ramana MAI MIC decat `timeout` din bot-settings.json # (acum 330), altfel CLI-ul taie hook-ul inainte ca acesta sa refuze curat. CLAUDE_DISCORD_APPROVAL_TIMEOUT=300 # --- Alerte (alerts.py) ---------------------------------------------------- # Destinatarul emailurilor de alerta. Aceeasi conventie ca restul repo-ului # (vezi proxmox/vm109-windows-dr/scripts/pveelite-down-alert.sh): default root. ALERT_RECIPIENT=root # --- Directorul de lucru implicit ----------------------------------------- # Directorul in care porneste un fir nou. Spatiu dedicat, cu git propriu, ca ce se # face din Discord sa aiba istoric separat de proiectele reale. `/cd ` il # schimba per fir, oriunde in /workspace. DEFAULT_CWD=/workspace/claude-agent # --- dashboard de control (dashboard/api.py) -------------------------------- # Token de acces. Generat automat de ops/install.sh daca lipseste. DASHBOARD_TOKEN= # `off` scoate complet login-ul. De pus DOAR fiindca panoul e legat de 127.0.0.1 # si publicat exclusiv in tailnet: acolo identitatea o face Tailscale (antetul # Tailscale-User-Login ajunge in jurnal la fiecare start/stop/restart). Orice # alta valoare pastreaza tokenul. DASHBOARD_AUTH= # Implicit 127.0.0.1: butoanele opresc un agent cu bypassPermissions si chei SSH # spre tot clusterul, deci accesul se face prin tunel SSH, nu expus in LAN. DASHBOARD_BIND=127.0.0.1 DASHBOARD_PORT=18790 # Prefixul sub care il publica `tailscale serve --set-path` (vezi dashboard/README.md). # Gol = montat in radacina. Paginile au URL-uri relative, deci prefixul e nevoie # doar pentru redirecturi. DASHBOARD_PREFIX=/claude