Show HN: Detach – 휴대폰에서 AI 코딩 에이전트를 관리하기 위한 모바일 UI

hackernews | | 📦 오픈소스
#ai 코딩 #claude #claude code #pwa #review #모바일 ui #샌드박스
원문 출처: hackernews · Genesis Park에서 요약 및 분석

요약

'Detach'는 사용자가 모바일 기기를 통해 원격 샌드박스 내에서 실행되는 AI 코딩 에이전트(현재는 Claude Code)를 관리할 수 있는 모바일 우선 UI로, 작업 완료 시 알림을 받고 코드를 검토하거나 반영할 수 있는 웹 기반 PWA입니다. 이 도구는 Go 언어로 작성된 WebSocket 브리지와 Ubuntu 샌드박스 컨테이너로 구성되어 있으며, 안전한 인증을 위해 토큰 기반 페어링과 SSH 키를 활용합니다. 또한 VPS 호스팅을 지원하여 어디서나 개발 환경에 접속할 수 있게 하며, HTTPS 설정 시 푸시 알림 기능도 제공합니다.

본문

Mobile-first UI for managing AI coding agents while remaining in the driving seat. A web-based progressive web app that connects to a remote sandbox where AI agents (currently only Claude Code) execute coding tasks. After each task finishes, a notification is received and it's possible to review, refine and commit the changes from the mobile app itself. - Webview - Frontend (HTML/CSS/JS) with xterm.js terminal and Git UI - Bridge - Go WebSocket server that connects browser to sandbox - Sandbox - Ubuntu container with SSH, development tools, and Git - Docker & Docker Compose This section explains how to set up a local development environment. For remote installation, see VPS Hosting. Copy .env.example to .env and customize values, then: make setup # Generate keys and .env (one-time) docker compose up # Start all services # Open the URL shown by make setup (includes auth token) Keys are stored in keys/ and not committed to git. They're generated by make setup (dev) or install.sh (production). | Key | Purpose | |---|---| bridge / bridge.pub | Bridge → Sandbox SSH connection | deploy_key / deploy_key.pub | Sandbox → GitHub authentication | For private repos: Add keys/deploy_key.pub as a deploy key on your GitHub repository (Settings → Deploy keys) with write access if you need to push. Detach uses secure token-based authentication for pairing devices with your instance. The token is auto-generated on first startup and displayed in the logs with a QR code for easy mobile pairing. Skip authentication (local development only): Set SKIP_AUTHENTICATION=1 (or true , yes ) to disable authentication. Any other value keeps authentication enabled. This is insecure and should only be used for local development. See docs/authentication.md for complete authentication specification. Detach can send push notifications to your device when tasks complete or require approval. Requires VAPID keys (generated during install.sh setup). See docs/notifications.md for setup and configuration. 8080 - Web UI8081 - WebSocket bridge2222 - Sandbox SSH (for debugging) # Rebuild after changes docker-compose build --no-cache bridge webview docker-compose up -d # View logs docker logs detach-bridge docker logs detach-webview docker logs detach-sandbox # SSH into sandbox for debugging ssh -i keys/bridge -p 2222 detach-dev@localhost Browser (xterm.js) ↓ WebSocket Bridge (Go) ↓ SSH Sandbox (Ubuntu + dev tools) You can install Detach on a VPS so you can access your coding sandbox from anywhere. You can provision a cheap Ubuntu VPS, run the install script and pair your phone. A cloud-init provisioning script is provided on vps-config.yaml for the providers that support it. It's been tested on Hetzner, should work with DigitalOcean, AWS EC2, and most Ubuntu-based providers). The cloud init script does: - Create user detach with SSH key authentication - Install Docker and Docker Compose - Set up Firewall (UFW) allowing SSH only - Set up Security: fail2ban, auto-updates, hardened SSH Before using, replace YOUR_SSH_PUBLIC_KEY_HERE in vps-config.yaml with your actual SSH public key. SSH into the VPS and clone Detach: ssh detach@ git clone https://github.com/salvozappa/detach.git cd detach ./install.sh The install script will interactively guide you through key generation, deploy key setup for your project repository, and starting the services. Note: HTTPS is required for PWA features (install to home screen, push notifications). The install script can set up HTTPS automatically via Caddy, but you'll need a domain name with DNS pointing to your VPS. Without HTTPS, the app still works in the browser over plain HTTP. ssh detach@ cd ~/detach git pull docker-compose -f docker-compose.prod.yml build docker-compose -f docker-compose.prod.yml up -d The install script will display a pairing URL and QR code. Scan it from your phone to connect. VPS requirements (minimum): 2 CPU cores, 4GB RAM, 20GB SSD This is a hobby project and is provided as-is. While I've tried to follow security best practices, I have not thoroughly vetted the code. Run it at your own risk. I don't provide support, maintenance, or accept feature requests. Forks and contributions are welcome.

Genesis Park 편집팀이 AI를 활용하여 작성한 분석입니다. 원문은 출처 링크를 통해 확인할 수 있습니다.

공유

관련 저널 읽기

전체 보기 →