A terminal-based TUI tool for managing proxy deployments across multiple VPS servers.
- Multi-Server Management: Add and remove VPS servers with SSH credentials (edit planned)
- Multi-Protocol Support: Hysteria2, VLESS, VMess, Trojan, Tuic, sing-box, and more
- Extensible Templates: Define custom protocols via YAML templates (planned)
- Hybrid Deployment: Generate configs locally or use existing installation scripts (planned)
- Real-time Status: Monitor service status across all your servers (planned)
# Install from crates.io (coming soon)
cargo install proxy-tui
# Or build from source
git clone https://github.com/gandli/proxy-tui.git
cd proxy-tui
cargo build --release
./target/release/proxy-tuiConvenience scripts for common development workflows:
# Development
./scripts/dev.sh # Build and run the TUI
./scripts/dev.sh watch # Watch mode with auto-rebuild
./scripts/dev.sh docker # Start SSH target container for testing
# Testing
./scripts/test.sh # Quick check (cargo check)
./scripts/test.sh unit # Run unit tests
./scripts/test.sh test # Run unit + integration tests
./scripts/test.sh lint # Format and lint code
./scripts/test.sh ci # Full CI check (fmt + clippy + tests)All scripts are cross-platform friendly (macOS/Linux) and include helpful error messages.
Alternatively, use the Makefile for more targets:
make run # Build and run
make test # Run unit tests
make lint # Format + clippy
make help # Show all available targetsproxy-tui # Launch the TUI
proxy-tui --help # Show help
| Key | Action |
|---|---|
j/k or ↑/↓ |
Navigate |
Enter |
Select / Confirm |
a |
Add server |
d or x |
Delete server (with confirmation) |
e |
Edit server (planned) |
i |
Install protocol (placeholder) |
t |
Test SSH connectivity |
p |
Protocol list (from detail view) |
q / Ctrl+C |
Quit |
Note:
h(help) andr(refresh) are planned for v0.2.
Protocols are defined as YAML templates in ~/.config/proxy-tui/protocols/:
# example: hysteria2.yaml
name: Hysteria2
core: sing-box
description: High-performance QUIC-based proxy
config_template: |
{
"inbounds": [{
"type": "hysteria2",
"tag": "hysteria2-in",
"listen": ":${port}"
}]
}
install_steps:
- download: https://github.com/SagerNet/sing-box/releases/latest
- copy: config.json -> /etc/sing-box/
- systemd: enable sing-box- User Guide - How to use proxy-tui
- PRD (Product Requirements)
- Testing Guide
- Release Checklist - Pre-push and pre-release validation
- Architecture Design (planned)
- Protocol Template Guide (planned)
- v0.1: Core TUI + server management + SSH connectivity test
- v0.2: Protocol installation + edit server + SSH session
- v0.3: Multi-server batch operations + custom protocols
- v0.4: Traffic statistics + user management
- v1.0: Stable release with full documentation
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
Inspired by v2ray-agent and other proxy installation scripts. Built with Ratatui TUI framework.