Remote Terminal
Full PTY-based browser terminal with multiple tabs per session. Split panes to tile terminals, file browsers, and proxies side-by-side.
Remote Terminal
Full PTY-based browser terminal with multiple tabs per session. Split panes to tile terminals, file browsers, and proxies side-by-side.
File Browser
Dual-pane file manager between server and client. Upload, download, rename, view and edit files with syntax highlighting — all in the browser.
Port Forwarding
HTTP proxy to any service running on the client machine. Open dashboards, admin panels, and dev servers without exposing ports.
System Monitoring
Real-time CPU, memory, disk, and network statistics displayed live in the session detail panel. Updated every 5 seconds.
Passkeys / WebAuthn
Passwordless FIDO2 authentication. Use hardware keys, Windows Hello, Touch ID, or passkey managers for phishing-resistant login.
Pre-Shared Keys
Per-client key enforcement to control which machines may connect. Generate, distribute, revoke, and reset keys from the admin panel.
Multi-Admin
Multiple admin accounts with session claiming to prevent conflicts. Full audit trail of logins, file operations, and user changes.
Single Binary Deploy
Server is a single Go binary with embedded web UI and SQLite database. No dependencies, no containers, no runtime — just copy and run.
graph LR
A["Browser (Admin)"] -->|HTTPS + WebSocket| B["Woho Server\n:8080"]
C["Managed Machine"] -->|"TCP :9000\n(outbound only)"| B
| Component | Role |
|---|---|
| Server | Go binary + SQLite. Admin web UI on :8080, client connections on :9000 |
| Client | Lightweight agent (~10–15 MB, <1% CPU idle). Single persistent outbound TCP connection |
| Component | Minimum |
|---|---|
| Server | Linux x86-64 or Windows Server 2019+, 512 MB RAM |
| Client | Linux (kernel 3.10+) or Windows 7 SP1+ / Windows Server 2012+, 32 MB RAM |