The first-run wizard
Runhashwarp without options and without a configuration file, in a terminal. It asks:
- Whether you mine on a pool or solo, on your own node.
- On a pool: which one, from a list of known Parallax pools, or another pool’s address and whether it uses TLS. Then your Parallax address and a name for the rig (the computer’s name by default).
- Solo: your node’s URL (
http://127.0.0.1:8545by default). - Whether to save the answers to
hashwarp.json, and whether to start mining now.
hashwarp.exe starts the wizard too, and the window stays open when Hashwarp exits so you can read why.
The configuration file
Run without options, Hashwarp readshashwarp.json from the folder of the executable, or else from the current folder. Run with options, it reads a configuration file only when given one with --config:
hashwarp.json.example:
- An option that takes a value is a string or a number:
"worker": "rig1","retry-delay": 10. - An option that takes a list is an array:
"pool": ["a.example.com:3333", "b.example.com:3333"]. - A flag (an option without a value) is
true:"tls": true. - A key Hashwarp doesn’t know stops it with an error, so a typo doesn’t go unnoticed.
hashwarp --config hashwarp.json --worker rig2 mines with the file’s settings as rig2.
Writing a configuration file
--save-config writes the options you give to a file, then exits:
Lists per GPU
Tuning, temperature and overclocking options take one value per GPU, separated by commas, in the order of--gpu-id (or of hashwarp --list-devices when all GPUs mine). A single value applies to every GPU:
"temp-stop": [85, 80, 80]. Overclocking options also accept x for a GPU to leave alone: --oc-mem-offset 2000,x,1500.
Start scripts
The download has start scripts to edit and double-click (start.bat, start-solo.bat on Windows) or run (start.sh, start-solo.sh on Linux). Each sets the pool or node and your address at its top, and passes on any extra options.
Running as a service (Linux)
To start Hashwarp with the computer and restart it after a watchdog exit, run it as a systemd service. Save as/etc/systemd/system/hashwarp.service, with your paths:
--syslog leaves out the time, which journald adds, and marks each line’s level so journalctl -p warning shows only the warnings and errors. The service runs as root, which overclocking needs; without overclocking, add User= with an ordinary user.

