{"id":25617045,"url":"https://github.com/briansterle/hashman-rs","last_synced_at":"2026-04-18T00:05:22.125Z","repository":{"id":45330061,"uuid":"435725592","full_name":"briansterle/hashman-rs","owner":"briansterle","description":"miner software","archived":false,"fork":false,"pushed_at":"2021-12-27T00:09:25.000Z","size":213,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-05-14T01:23:50.654Z","etag":null,"topics":["bitcoin","cryptocurrency","ethereum","gpu","mining","nicehash","nicehash-miner"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/briansterle.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-12-07T03:06:50.000Z","updated_at":"2022-03-08T00:34:40.000Z","dependencies_parsed_at":"2022-08-28T01:50:51.697Z","dependency_job_id":null,"html_url":"https://github.com/briansterle/hashman-rs","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/briansterle%2Fhashman-rs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/briansterle%2Fhashman-rs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/briansterle%2Fhashman-rs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/briansterle%2Fhashman-rs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/briansterle","download_url":"https://codeload.github.com/briansterle/hashman-rs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240127077,"owners_count":19751936,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bitcoin","cryptocurrency","ethereum","gpu","mining","nicehash","nicehash-miner"],"created_at":"2025-02-22T04:28:27.262Z","updated_at":"2026-04-18T00:05:22.094Z","avatar_url":"https://github.com/briansterle.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"![example workflow](https://github.com/briansterle/hashman-rs/actions/workflows/rust.yml/badge.svg)\r\n\r\n# Hashman\r\n\r\nHashman is a manager for cryptocurrency miners on Windows. It introduces automation on top of a miner process that reacts to other GPU\r\nactivity on the target rig, i.e. gaming. Hashman detects when the GPU is idle and automatically starts\r\nmining. Then, if another app needs the GPU, Hashman will back off mining until the GPU is once again idle.\r\n\r\n## How to run\r\n\r\n#### build for release\r\n\r\nclone repo. from root run: \r\n\r\n```shell\r\ncargo build --release\r\n```\r\n\r\nthis outputs an exe at `target/release/hashman.exe`. Add it to your PATH for easy access.\r\n\r\n#### run the exe:\r\n\r\n```shell\r\nhashman-rs.exe {num_loops} {interval_seconds}\r\n```\r\n\r\n### args\r\n\r\n* num_loops:          n times the program will wake from sleep and check GPU contention\r\n  * default 21,000,000\r\n* interval_seconds:   loop every n seconds\r\n  * default 21\r\n\r\n## Configuration\r\n\r\nCreate your hashpath configuration file at `~/.hashman/hashpath.toml`\r\n\r\nIf it does not exist, this file is auto-generated and populated by default when you first run the app.\r\n\r\n#### Template\r\n\r\n```toml\r\ngaming_path = \"C:\\\\Games\\\\steamapps\\\\common,D:\\\\Games\\\\origin\"\r\nmining_path = \"NiceHashMiner.exe,app_nhm.exe\"\r\nminer_exe = \"~\\\\AppData\\\\Local\\\\Programs\\\\NiceHash Miner\\\\NiceHashMiner.exe\"\r\n```\r\n#### Schema\r\n* miner_exe: String\r\n   * the fully qualified path to your mining exe. This app is designed for a NiceHashMiner.exe but it should be compatible with other miners. \r\n* gaming_path: String\r\n   * a comma-separated list of directories and .exe's of games. Directories will be recursively searched for any .exe's within. This does not need to actually be a game executable, just any exe that needs exclusive access to the GPU. Gaming is the most common use case so this is the term used throughout hashman.\r\n* mining_path: String\r\n   * a comma-seprated list of executables that are considered \"miner\" proceseses\r\n\r\n## Testing\r\n\r\nrun tests\r\n\r\n```shell\r\ncargo test\r\n```\r\n\r\nrun bench\r\n\r\n```shell\r\ncargo bench\r\n```\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbriansterle%2Fhashman-rs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbriansterle%2Fhashman-rs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbriansterle%2Fhashman-rs/lists"}