Skip to content

Repository files navigation

justray

Last commit Platforms Version

A modern VPN/proxy client that lives in your terminal

meow >.<

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

  • jray: open the TUI

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

About

A modern VPN client that lives in your terminal

Topics

Resources

Contributing

Stars

30 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages