OPPY - Mission Control for Proxy Links
Project description
OPPY - Mission Control for Proxy Links
OPPY is a cross-platform, high-performance TUI for validating proxy links at scale, with concurrent checks, live status and latency telemetry, rich per-row diagnostics, filtering, and flexible export workflows.
Supported link types:
vless://...vmess://...- Telegram SOCKS (
https://t.me/socks?...) - Telegram MTProto (
https://t.me/proxy?...,tg://proxy?...) - DNS resolvers (
udp://ip[:port],ip:port)
Requirements
- Python 3.10+
xrayinstalled and available inPATH(required for VLESS / VMESS checks)
Install Xray
macOS
Download the latest Xray release, extract xray, and put it in your PATH.
Then verify:
xray version
Ubuntu / Debian (APT)
sudo apt update
sudo apt install -y xray-core
If xray-core is unavailable in your configured repositories, use the official install method from the Xray project and ensure xray is in PATH.
Windows
- Download Xray release zip from the official project.
- Extract
xray.exe. - Add its folder to
PATHin System Environment Variables. - Open a new terminal and verify:
xray version
Install OPPY
One-liner (Linux / macOS)
curl -fsSL https://raw.githubusercontent.com/f4rih/oppy/main/install.sh | bash
What this script does:
- installs
xrayon Linux when missing (apt first, then official installer fallback) - installs OPPY with pip in user scope
- installs optional clipboard support (
pyperclip) - prints PATH hint if
oppycommand is not yet visible
Manual setup (clone + requirements)
git clone https://github.com/f4rih/oppy.git
cd oppy
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python oppy.py --input-file output.txt
pip
From PyPI:
pip install oppy-mc
With optional clipboard support:
pip install "oppy-mc[clipboard]"
uv
From PyPI:
uv pip install oppy-mc
Tool-style install:
uv tool install oppy-mc
Run
With input file:
oppy --input-file output.txt
Without file (import in app with i):
oppy
CLI mode:
oppy --input-file output.txt --no-tui
Terminal Rendering Note (macOS)
On macOS, the built-in Terminal app may render some borders/buttons with visual artifacts. For a cleaner UI, prefer a modern third-party terminal such as Ghostty, iTerm2, or WezTerm.
Highlights
- Multi-type checks in one table: VLESS, VMESS, Telegram SOCKS, MTProto, DNS.
- Live status meters + latency trend with running updates.
- Filter modal (
f) for type/name/server and drop-matching records. - Import modal (
i) with paste/file tabs and clipboard load. - Config modal (
c) for concurrency, timeout, DNS retry settings, test URL, base port. - Export modal (
e) with type selection and optional partial export (green/orange only). - Row details modal (
Enter) with full payload and copy URL.
Tutorial
See TUTORIAL.md for a step-by-step workflow.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file oppy_mc-0.1.0.tar.gz.
File metadata
- Download URL: oppy_mc-0.1.0.tar.gz
- Upload date:
- Size: 1.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0c412a83c90fa4b3f358bfdd890ea317bc0ffeb371abdf15dceab68b7a7ba4ec
|
|
| MD5 |
18dc953b61b1e2a763f23ccfbd80329f
|
|
| BLAKE2b-256 |
0c3d496b9f9db170d337a4e4fbe37ef293c9da7f0fd3b60b771f94dfc6b1e364
|
File details
Details for the file oppy_mc-0.1.0-py3-none-any.whl.
File metadata
- Download URL: oppy_mc-0.1.0-py3-none-any.whl
- Upload date:
- Size: 34.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ecc42dd24dd0da1547d9828b56afcf8d9b24f7919001e13f8852a095786f708e
|
|
| MD5 |
640d57c337d0efdb378e79734c3369c0
|
|
| BLAKE2b-256 |
8231639692ddc27eefd57cdb2e99a48bbc5c693b16925ce8e9c006d4df79764f
|