A modern VPN/proxy client that lives in your terminal
Features
- Modern protocols: VMess, VLESS, Trojan, Shadowsocks, Hysteria 1/2, TUIC, AnyTLS, SOCKS5, and more
- Flexible: import subscriptions from raw links or Clash/Mihomo YAML, with automatic refresh and a wide range of settings
- Headless: the daemon and embedded sing-box core run independently from the TUI, keeping connections alive after you detach
- Lightweight: ~50 MB RAM on Linux/macOS and ~100 MB on Windows
- Cross-platform: runs in modern terminals on Linux, macOS, and Windows, including native PowerShell and WSL
Installation
Using package manager:
# macOS or Linux
brew install luynrs/tap/justray
# Arch Linux (AUR)
yay -S justray-bin
# Windows
winget install luynrs.justray
Alternatively, with x-cmd:
x eget use luynrs/justray
Or via script:
# Linux / macOS
curl -fsSL https://raw.githubusercontent.com/luynrs/justray/main/install.sh | sh
# Windows
irm https://raw.githubusercontent.com/luynrs/justray/main/install.ps1 | iex
Nix:
# Run directly
nix run github:luynrs/justray
# Home Manager module (justrayd systemd user service)
{
imports = [ justray.homeManagerModules.default ];
services.justray.enable = true;
}
Usage
Package manager and script installations also provide jray as a short alias for justray
[!NOTE]
WinGet provides only justray and justrayd; the jray alias must be added manually
Connection Control (CLI)
jray up <node> [--tun | --proxy]: start the daemon and connect
jray down: disconnect
jray stop: shut down the daemon
jray status: show connection status
Subscriptions & Nodes
jray subscription or jray sub
add: add a subscription or raw protocol link
remove: remove a subscription by ID or name
list: list subscriptions and nodes
General Options
-h, --help: show help
-v, --version: show the current version
Keybinds (TUI)
| Key |
Action |
Key |
Action |
↑/↓, k/j |
Navigate list |
shift+↑/↓ |
Reorder subscriptions |
←/→, h/l |
Fold / expand group |
Enter |
Toggle group / connect |
t / T |
Ping selected / Ping all |
r / R |
Refresh selected / all |
m |
Switch mode (PROXY / TUN) |
/ |
Filter nodes |
a |
Add subscription / node |
d |
Delete subscription |
o |
Settings menu |
Esc |
Back / cancel input |
Tab |
Switch active panel |
q, Ctrl+C |
Detach / exit TUI |
License
GPL-3.0