Are you asking if there exists a standalone program that has tor client baked in - so that you wouldn't need a separate tor process running?
Such a program would have to initiate its connection to Tor network every time it's started, which would be extremely slow and costly. That is, unless it would run as a daemon, but then it would act like a system tor process anyway.
The project you linked also seems (in its own words) like "a poor man's GNU Wget". It doesn't currently do what its name says and as far as I can see it doesn't even support proxies.
I know that's not the answer you were looking for, but I recommend just using any "downloader" that supports SOCKS proxies with remote hostname resolving. You can tell such a program to connect over Tor, which also allows it to download files from .onion websites. In most cases tor proxy is specified with the following string:
socks5h://127.0.0.1:9050
The h
in socks5h://
tell the program that it should remotely resolve domain names. 9050
is default SOCKS port of system tor, while Tor Browser uses 9150
by default instead.
You can also tell tor process to isolate your downloader's stream via SOCKS credentials (username and password) which can be anything you want. For example:
socks5h://my_downloader:[email protected]:9050
This is the way Tor Browser does stream isolation based on URL-bar domain.
I've also come across programs that only recognize socks5://
proxies (without h
), yet internally still resolve domain names through the proxy (so no DNS leaks). youtube-dl is such an example.
If the program doesn't support SOCKS proxies then you can still try torifying it with torsocks, but if the program somehow bypasses its wrapper then it will leak. torsocks also supports stream isolation via --isolate
argument:
torsocks --isolate my_downloader ...