- Create LXC 171 (claude-agent) on pveelite with Ubuntu 24.04 - Install Node.js 20.x, Claude Code, tmux, Tailscale - Configure SSH access and Gitea integration - Add workflow scripts: start-agent.sh, work.sh, new-task.sh, finish-task.sh - Add code-server for mobile file browsing - Document complete setup in proxmox/claude-agent/README.md LXC Details: - IP internal: 10.0.20.171 - IP Tailscale: 100.95.55.51 - code-server: port 8080 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
142 lines
4.4 KiB
Markdown
142 lines
4.4 KiB
Markdown
# Misiune: Setup LXC pentru Claude Code Agent cu acces remote
|
|
|
|
## Context
|
|
Vreau să configurez un LXC pe Proxmox care să ruleze Claude Code autonom.
|
|
Voi porni task-uri de pe telefon (SSH) și voi monitoriza/edita de pe orice calculator folosind VS Code Remote SSH.
|
|
Repository-ul este pe Gitea intern: gitea.romfast.ro
|
|
|
|
## Informații infrastructură
|
|
CITESTE INFORMATII PROXMOX DIN fisierele din directorul proxmox.
|
|
Vreau sa instalezi LXC in nodul pveelite 10.0.20.202
|
|
Completeaza datele tu in acest fisier.
|
|
IP static dorit pentru LXC: 10.0.20.171
|
|
Gateway: 10.0.20.1
|
|
|
|
### Proxmox
|
|
- IP Proxmox: 10.0.20.202 (pveelite)
|
|
- User Proxmox: root
|
|
- Nodul Proxmox: pveelite
|
|
- Storage pentru LXC: local-zfs
|
|
|
|
### LXC nou pentru Claude Code
|
|
- VMID: 171
|
|
- Hostname: claude-agent
|
|
- IP static: 10.0.20.171
|
|
- Gateway: 10.0.20.1
|
|
- DNS: 8.8.8.8
|
|
- Resurse: 4GB RAM, 2 CPU cores, 32GB disk
|
|
|
|
### Gitea
|
|
- URL: gitea.romfast.ro
|
|
- Username Gitea: mmarius28@gmail.com
|
|
- Repo de test pentru verificare: romfast/romfastsql
|
|
|
|
### Calculatorul meu curent
|
|
- OS: Linux (WSL2)
|
|
- Am deja SSH key? Da, ~/.ssh/id_rsa
|
|
|
|
## Ce trebuie să faci
|
|
|
|
### FAZA 1: Pregătire locală și conectare Proxmox
|
|
|
|
1. Verifică dacă am SSH key local, dacă nu, generează unul
|
|
2. Testează conectivitatea la Proxmox prin SSH
|
|
3. Adaugă SSH key-ul meu în Proxmox pentru acces fără parolă (dacă nu e deja)
|
|
|
|
### FAZA 2: Creare LXC pe Proxmox
|
|
|
|
Conectează-te la Proxmox și execută comenzile pentru:
|
|
|
|
1. Descarcă template Ubuntu 24.04 (dacă nu există)
|
|
2. Creează LXC cu parametrii specificați mai sus
|
|
3. Configurează networking static
|
|
4. Pornește LXC-ul
|
|
|
|
### FAZA 3: Configurare LXC - Sistem de bază
|
|
|
|
Conectează-te la LXC nou creat și:
|
|
|
|
1. Update sistem
|
|
2. Instalează pachete esențiale:
|
|
- curl, wget, git, tmux, htop, vim
|
|
- build-essential (pentru compilări npm)
|
|
- openssh-server
|
|
|
|
3. Creează user "claude" cu sudo
|
|
4. Configurează SSH:
|
|
- Permite autentificare cu key
|
|
- Dezactivează autentificare cu parolă
|
|
- Adaugă SSH key-ul meu pentru userul "claude"
|
|
|
|
### FAZA 4: Instalare Node.js și Claude Code
|
|
|
|
În LXC, ca user "claude":
|
|
|
|
1. Instalează Node.js 20.x via nvm (pentru flexibilitate versiuni)
|
|
2. Configurează npm pentru instalări globale în user space
|
|
3. Instalează Claude Code: npm install -g @anthropic-ai/claude-code
|
|
4. Verifică instalarea: claude --version
|
|
|
|
### FAZA 5: Configurare Git pentru Gitea
|
|
|
|
În LXC, ca user "claude":
|
|
|
|
1. Generează SSH key dedicat pentru Gitea
|
|
2. Afișează public key-ul (eu îl voi adăuga manual în Gitea)
|
|
3. Configurează git global (user.name, user.email)
|
|
4. Creează ~/.ssh/config pentru gitea.romfast.ro
|
|
5. Creează directorul /workspace cu permisiuni pentru "claude"
|
|
|
|
### FAZA 6: Configurare tmux
|
|
|
|
În LXC, ca user "claude":
|
|
|
|
1. Creează ~/.tmux.conf cu configurație utilă:
|
|
- Mouse support
|
|
- History mare (50000 linii)
|
|
- Prefix mai ușor (Ctrl+A în loc de Ctrl+B)
|
|
- Status bar informativ
|
|
- 256 colors
|
|
|
|
2. Creează script helper ~/start-agent.sh care:
|
|
- Creează sesiune tmux "agent" dacă nu există
|
|
- Sau se atașează la ea dacă există
|
|
|
|
### FAZA 7: Configurare Claude Code defaults
|
|
|
|
În LXC, ca user "claude":
|
|
|
|
1. Creează ~/.claude/settings.json cu permisiuni default pentru development
|
|
2. Creează un CLAUDE.md template în /workspace
|
|
|
|
### FAZA 8: Verificări finale și documentație
|
|
|
|
1. Testează SSH de pe calculatorul meu la LXC (user claude)
|
|
2. Testează că tmux funcționează
|
|
3. Testează că claude --version funcționează
|
|
4. Creează un fișier SETUP-COMPLETE.md în /workspace cu:
|
|
- IP-ul LXC-ului
|
|
- Comenzi utile (cum să pornesc, cum să mă conectez)
|
|
- Public key-ul pentru Gitea (să-l adaug manual)
|
|
- Next steps (ce mai am de făcut manual)
|
|
|
|
## Output așteptat
|
|
|
|
La final vreau să primesc:
|
|
1. Confirmarea că totul e instalat și funcțional
|
|
2. Comenzile exacte pentru VS Code Remote SSH config
|
|
3. Public key-ul SSH pentru Gitea (să-l adaug în interfața web)
|
|
4. Instrucțiuni pentru prima autentificare Claude Code
|
|
|
|
## Note importante
|
|
|
|
- Dacă ceva necesită input manual de la mine (ex: parolă Proxmox, acceptare licență),
|
|
oprește-te și întreabă-mă
|
|
- Dacă întâmpini erori, nu sări peste ele - spune-mi ce s-a întâmplat
|
|
- Preferă comenzi non-interactive (cu -y, --yes unde e posibil)
|
|
- Loghează comenzile importante și output-ul lor
|
|
|
|
## Începe acum
|
|
|
|
Mai întâi, întreabă-mă informațiile lipsă marcate cu [COMPLETEAZĂ] de mai sus,
|
|
apoi continuă cu Faza 1. |