Claude Code Survoje
Mi rulas ses Claude Code agentojn paralele de mia telefono. Neniu tekkomputilo, neniu labortabla komputilo—nur Termius sur iOS kaj nuba VM.
La Agordo
flowchart LR
A[Phone] -->|Termius + mosh| B[Tailscale VPN]
B --> C[Vultr VM]
C --> D[Claude Code]
D -->|PreToolUse hook| E[Poke webhook]
E -->|Push notification| A
La ciklo estas: lanĉi taskon, enpoŝigi la telefonon, ricevi sciigon kiam Claude bezonas enigon. Nesinkrona programado de ie ajn.
Infrastrukturo
Vultr VM en Silicon Valley:
| Spec | Value |
|---|---|
| Instance | vhf-8c-32gb |
| Cost | $0.29/horo (~$7/tage dum rulado) |
| Access | Nur Tailscale (neniu publika SSH) |
Mi pagas nur dum laborado. Du skriptoj administras la vivciklon:
vm-start # Start VM, wait for Tailscale, connect via mosh
vm-stop # Halt VM
Mi ankaŭ havas iOS Shortcut kiu rekte vokas la Vultr API—startigas la VM de mia telefono antaŭ ol mi eĉ malfermas Termius.
La publika IP de la VM havas neniun SSH-aŭskultanton. Ĉiu aliro iras tra la privata reto de Tailscale. Profunda defendo: nuba fajrobarilo blokas ĉion krom Tailscale-koordinado, loka nftables kiel savkopio, fail2ban por sekureco.
Portebla Terminalo
Termius traktas SSH kaj mosh sur iOS/Android. Mosh estas la ŝlosilo—ĝi pluvivas rettransitojn. Ŝanĝi de WiFi al ĉela reto, promeni tra senzono, endormigi la telefonon. La konekto persistas.
mosh --ssh="ssh -p 47892" [email protected]
Unu kapto: mosh ne plusendas SSH-agenton. Por git-operacioj kiuj bezonas GitHub-aŭtentikigon, mi uzas regulan SSH ene de tmux.
Seancpersisto
La ŝelo aŭtomate aliĝas al tmux dum ensaluto. Fermu Termius, remalfermu horojn poste, ĉio ankoraŭ tie estas.
# In .zshrc
if [[ -z "$TMUX" ]]; then
tmux attach -t main 2>/dev/null || tmux new -s main
fi
Pluraj Claude-agentoj rulas en paralelaj fenestroj. C-a c por nova fenestro, C-a n por cikli. Funkcias bone sur telefona klavaro.
Puŝsciigoj
Jen kio praktigas porteblan programadon. Sen sciigoj, vi konstante kontrolus la terminalon. Kun ili, vi povas foriri.
La hoko en ~/.claude/settings.json:
{
"hooks": {
"PreToolUse": [{
"matcher": "AskUserQuestion",
"hooks": [{
"type": "command",
"command": "~/.claude/hooks/poke-notify.sh question"
}]
}]
}
}
Kiam Claude vokas AskUserQuestion, la hoko ekfunkcias. Simpla skripto ekstraktas la demandon kaj POST-as al la webhook de Poke:
QUESTION=$(echo "$EVENT_DATA" | jq -r '.tool_input.questions[0].question')
MESSAGE="$PROJECT_NAME: Claude needs input - $QUESTION"
curl -X POST "$API_URL" -d "{\"message\": \"$MESSAGE\"}"
Telefono vibras. Sciigo montras la demandon. Tuŝetu, respondu, daŭrigu.
Fidmodelo
Mi rulas Claude Code en permesa reĝimo. La VM estas izolita—neniu aliro al produktaj sistemoj, neniuj sekretoj preter kio necesas por programado. Plej malbona kazo: Claude faras ion neatenditan sur forĵetebla VM.
Kostkontrolon aldonas alian tavolon. La VM kostas $0.29/horo. Eĉ se io eskapis, la taga limo estas limigita.
Paralela Programado
Git worktrees ebligas al mi ruli plurajn funkciojn samtempе:
~/Code/myproject/ # main
~/Code/myproject-sidebar/ # feature branch
~/Code/myproject-dark-mode/ # another feature
Ĉiu worktree ricevas sian propran tmux-fenestron kun Claude-agento. Porda asigno estas haketbazita—determinisma el branĉnomo, neniuj konfliktoj:
hash_val = sum(ord(c) for c in branch_name)
django_port = 8001 + (hash_val % 99)
Ses agentoj, ses funkcioj, unu telefono.
Kion Ĉi Tio Ebligas
Kontroli PR-ojn dum atendado de kafo. Lanĉi refaktorigon en trajno. Ripari cimon de kanapo dum rigardado de televidilo.
La ŝablono: komenci taskon kiu prenos al Claude 10-20 minutojn, fari ion alian, ricevi sciigon, respondi, ripeti. Programado enkadriiĝas en la breĉojn de la tago anstataŭ postuli dediĉitan labortablan tempon.
La Komponentoj
| Tool | Purpose |
|---|---|
| Vultr | Nuba VM ($0.29/horo, pago laŭuze) |
| Tailscale | Privata reto, sekura aliro |
| Termius | iOS/Android SSH-kliento |
| mosh | Ret-rezista ŝelo |
| tmux | Seancpersisto |
| Poke | Puŝsciigoj per webhook |
| Claude Code | La efektiva laboro |
La agordo bezonis unu Claude Code-seancon por konstrui—donis al ĝi mian Vultr API-ŝlosilon kaj aliron al gh, petis sekuran programadan VM. Nun mi kodigas de mia telefono.
Diskutu ĉi tiun artikolon sur Hacker News