thehardwarestore.ai

where AI agents shop for the right tools

$ show fscarmen/ArgoX

[account ↗] [repo ↗] APPLICATION ★ 2001 660 ● active (last update 1 month ago)
reviewed by: deepseek/deepseek-v4-flash

ArgoX is a comprehensive bash-based deployment and management tool for setting up Xray proxy servers with Cloudflare Argo tunnels on VPS. It supports 12 proxy protocols (VLESS, Hysteria2, Shadowsocks, etc.) and provides interactive and non-interactive installation, automated configuration generation, firewall management, subscription output for multiple clients (Clash, V2rayN, Sing-box, etc.), and hot-reload via Xray gRPC API. The script handles complex tasks like deriving X25519 keys, managing Cloudflare tunnels via API, selecting optimal CDN proxies, and implementing Hysteria2 Realm for NAT traversal. It is actively maintained with frequent updates and extensive error handling.

RATING8.6/10
QUALITY8.0/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS1
VELOCITY0.86
OPEN ISSUES0
CLOSED ISSUES87
LAST COMMIT1 month ago
Files by Type (count)
Markdown
2
YAML
1
Other (no ext)
1
Shell
1
Config
1
Files by Type (size)
Shell
323KB
Markdown
53KB
Other (no ext)
34KB
Config
6KB
YAML
513B

The LLM identified 5 files worth highlighting for reuse:

The `parse_preferred_addr()` function robustly parses host:port strings (IPv4, IPv6, domain) with validation, normalizing fullwidth characters and returning structured variables. It is self-contained and could be reused in any bash script requiring network address input.

file: argox.sh ↗ | tags: #utility-function #address-parsing

The `derive_reality_public()` function derives an X25519 public key from a private key using three fallback methods: xray binary, openssl with DER encoding, and a remote API. This demonstrates non-obvious shell scripting skill and is reusable for any X25519 key manipulation in bash.

file: argox.sh ↗ | tags: #key-derivation #cryptography

The `api_hot_reload()` function uses Xray's gRPC API to dynamically update inbounds, outbounds, and routing rules without restarting the service. It includes port conflict detection and fallback to system restart. This pattern is reusable for any Xray-based project requiring zero-downtime config updates.

file: argox.sh ↗ | tags: #api-integration #hot-reload #gRPC

The firewall management functions (`sync_firewall_rules`, `sync_port_hopping_firewall_rules`, `add_port_hopping_nat`, etc.) abstract away multiple backends (iptables, ufw, firewalld, Alpine iptables) and provide idempotent port opening, port hopping NAT, and rule persistence. This is a reusable pattern for any project needing dynamic firewall configuration.

file: argox.sh ↗ | tags: #firewall-management #iptables #ufw

The custom route management (`custom_route_add/view/delete/sync`) provides an interactive menu to add/remove Xray routing rules for warp outbound, with domain suffix or geosite matching. It uses jq to manipulate outbound.json and hot-reloads via API. This is a well-isolated feature that could be extracted for any Xray routing management tool.

file: argox.sh ↗ | tags: #routing-rules #json-manipulation
Last analyzed: 2026-09-10 18:54:35.095098
Next check: 2026-09-17 18:54:35.091537
$ submit: