id = "proxychains"
name = "proxychains-ng"
homepage = "https://github.com/rofl0r/proxychains-ng"
description = "A preloader which hooks calls to sockets in dynamically linked programs and redirects it through one or more socks/http proxies."
executables = ["proxychains", "proxychains4"]
platforms = ["macos", "linux"]
[dotfiles]
paths = ["~/.proxychains/proxychains.conf"]
exclude = []
secret = []
side_effect = false
[[dotfiles.secret_paths]]
file = "~/.proxychains/proxychains.conf"
match = { prefix = ["socks5", "http"] }
[commands]
format = 1
label = "Run through proxies"
description = "Run a program with its TCP connections forced through the configured proxy chain. Uses proxychains4; chain mode and proxy list live in the config file."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = false, short_bundles = false }
[[commands.source]]
id = "man"
kind = "manual"
url = "https://manpages.debian.org/testing/proxychains4/proxychains4.1.en.html"
revision = "2026-10-27"
evidence = """
proxychains4 --help
proxychains4 [ -f configfile.conf ] <program>
"""
[[commands.field]]
id = "config"
label = "Config file"
description = "Defaults to the search order documented by proxychains-ng when empty."
type = "path"
path = { kind = "file", role = "input" }
option = ["-f"]
sources = ["man"]
[[commands.field]]
id = "program"
label = "Program"
type = "string"
position = 0
min = 1
sources = ["man"]
[[commands.field]]
id = "args"
label = "Program arguments"
type = "string"
position = 1
multiple = true
sources = ["man"]
[[commands.task]]
id = "run"
label = "Run a program via proxies"
fields = ["program", "args"]
required = ["program"]
[[commands.task]]
id = "run_conf"
label = "Run with a specific config"
fields = ["config", "program", "args"]
required = ["config", "program"]
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["config", "program", "args"]