# Claude Agent LXC - Documentație ## Informații Container | Parametru | Valoare | |-----------|---------| | VMID | 171 | | Hostname | claude-agent | | IP intern | 10.0.20.171 | | IP Tailscale | 100.95.55.51 | | Host Proxmox | pveelite (10.0.20.202) | | User | claude | | Storage | local-zfs (32GB) | | RAM | 4GB | | CPU | 2 cores | ## Componente Instalate - Ubuntu 24.04 LTS - Node.js v20.x (via nvm) - Claude Code - tmux - Git (configurat pentru Gitea) - Tailscale ## Conectare ### De pe calculator (rețea internă) ```bash ssh claude@10.0.20.171 ``` ### De pe telefon/exterior (Tailscale) ```bash ssh claude@100.95.55.51 ``` ### VS Code Remote SSH Config în `~/.ssh/config`: ``` Host claude-agent HostName 10.0.20.171 User claude ``` ## Scripturi Workflow ### start-agent.sh Pornește sau se atașează la sesiunea tmux "agent". ```bash ~/start-agent.sh ``` ### work.sh (recomandat) Meniu interactiv pentru workflow complet: - Listează proiectele disponibile în /workspace - Permite crearea de branch-uri noi - Continuarea pe branch-uri existente - Finalizare task (commit + push) - Vizualizare branch-uri ```bash ~/work.sh ``` ### new-task.sh Creează branch nou pentru un task (hardcodat pentru romfastsql). ```bash ~/new-task.sh fix/nume-bug ``` ### finish-task.sh Finalizează task-ul curent (commit + push). ```bash ~/finish-task.sh ``` ## Workflow Complet ### De pe telefon (JuiceSSH + Tailscale) 1. Conectează-te la `100.95.55.51` cu user `claude` 2. Rulează: ```bash ~/start-agent.sh # pornește tmux ~/work.sh # meniu interactiv ``` 3. Alege proiectul 4. Alege acțiunea (task nou / continuă / finalizează) 5. Lucrează cu Claude Code 6. Când termini: `~/work.sh` → opțiunea 3 (finalizează) ### De pe calculator (VS Code) 1. VS Code → Remote SSH → `claude-agent` 2. Open Folder → `/workspace/` 3. Terminal → `source ~/.nvm/nvm.sh && claude` ## Structura Directoare pe LXC ``` /home/claude/ ├── .ssh/ │ ├── authorized_keys # Chei SSH pentru acces │ ├── gitea_ed25519 # Cheie pentru Gitea │ └── config # Config SSH pentru Gitea ├── .nvm/ # Node Version Manager ├── .claude/ │ └── settings.json # Permisiuni Claude Code ├── .tmux.conf # Configurare tmux ├── start-agent.sh -> /workspace/start-agent.sh └── work.sh -> /workspace/work.sh /workspace/ ├── start-agent.sh # Script pornire tmux ├── work.sh # Script workflow interactiv ├── new-task.sh # Script creare branch ├── finish-task.sh # Script finalizare task ├── CLAUDE.md # Info agent ├── SETUP-COMPLETE.md # Documentație setup ├── romfastsql/ # Proiect clonat └── test/ # Alte proiecte ``` ## Comenzi tmux Utile | Comandă | Acțiune | |---------|---------| | `Ctrl+A, d` | Detașare din sesiune | | `Ctrl+A, c` | Fereastră nouă | | `Ctrl+A, n` | Fereastră următoare | | `Ctrl+A, p` | Fereastră anterioară | | `Ctrl+A, [` | Mod scroll (q pentru ieșire) | | `tmux attach -t agent` | Reatașare la sesiune | | `tmux ls` | Listare sesiuni | ## Git / Gitea ### Clonare proiect nou ```bash cd /workspace git clone git@gitea.romfast.ro:romfast/.git ``` ### Workflow branch-uri ```bash git checkout main git pull git checkout -b feature/nume-feature # ... lucrezi ... git add . git commit -m "descriere" git push -u origin feature/nume-feature # Creează Pull Request în Gitea ``` ## Troubleshooting ### Claude Code nu pornește ```bash source ~/.nvm/nvm.sh which claude claude --version ``` ### tmux nu găsește sesiunea ```bash tmux ls tmux new -s agent -c /workspace ``` ### Git clone eșuează ```bash # Testează conexiunea SSH la Gitea ssh -T git@gitea.romfast.ro ``` ### Tailscale nu funcționează ```bash sudo systemctl status tailscaled sudo tailscale status tailscale ip ``` ## Instalare pe LXC nou Scripturile pot fi copiate pe un LXC nou: ```bash scp proxmox/claude-agent/*.sh claude@:/workspace/ ssh claude@ "chmod +x /workspace/*.sh" ssh claude@ "ln -s /workspace/start-agent.sh ~/start-agent.sh" ssh claude@ "ln -s /workspace/work.sh ~/work.sh" ``` --- **Data setup:** 2025-12-31 **Ultima actualizare:** 2025-12-31