Termote

· 1 phút đọc

PWA điều khiển CLI tools từ xa qua mobile/desktop

thẻ: pwa, terminal, remote-control, cli, mobile

công nghệ: react, typescript, go, tailwindcss, vite, tmux, psmux, ttyd, docker


What

Termote (Terminal + Remote) là PWA cho phép điều khiển CLI tools — Claude Code, GitHub Copilot, hoặc bất kỳ terminal nào — từ điện thoại hoặc thiết bị khác. Frontend dùng React 19 + TypeScript, backend là Go server (tmux-api) proxy WebSocket tới ttyd/tmux. Hỗ trợ container mode (Docker/Podman) và native mode (macOS, Linux, Windows).

Why

Làm việc với CLI AI tools như Claude Code thường phải ngồi trước laptop. Termote giải quyết vấn đề đó — chạy AI session trên server, tương tác từ bất kỳ thiết bị nào qua trình duyệt. Không cần SSH client, chỉ cần mở PWA.

Notes

  • Bảo mật terminal 3 lớp: basic auth + kiểm tra Sec-Fetch-Dest header + token dùng một lần (TTL 30s)
  • Lưu cấu hình với mật khẩu mã hóa AES-256-CBC (PBKDF2 machine-derived key)
  • Tích hợp rate limiting, chống Slowloris, giới hạn kích thước request
  • UX mobile: bàn phím ảo, Hammer.js gestures (vuốt để gửi Ctrl+C, Tab, lịch sử lệnh)
  • Tự phát hiện container runtime (podman > docker), cross-compile Go cho Linux trên macOS
  • Cài đặt một dòng lệnh: curl | bash (Unix) / irm | iex (Windows)