OxideMiner
⚡ High-performance open-source Monero (XMR) CPU miner written in Rust. Featuring RandomX optimization, auto-tuning, huge pages, SOCKS5 proxy, and real-time dashboard.
Install / Use
/learn @raystanza/OxideMinerREADME
OxideMiner: High-Performance Monero (XMR) CPU Miner in Rust

OxideMiner is a next-generation RandomX CPU miner written entirely in Rust. Engineered for speed, safety, and full transparency. It’s built to squeeze every cycle from your CPU while keeping your system secure and predictable. No hidden payloads, no opaque binaries...just verifiable, auditable performance.
📢 BETA TESTERS WANTED 🧪
Please visit oxide-randomx-public-beta to help provide crucial data related to the upcomming release of Oxide Miner's custom RandomX implementation. oxide-randomx will be the crate that adds a much needed performance boost to Oxide Miner. You can see the update I posted in the Discussions.
We ship a command-line miner with automatic CPU tuning, an optional embedded dashboard, and hardened controls for TLS, logging, and system friendliness. Every byte of it compiles from the code you see here.
Performance meets integrity. OxideMiner is what happens when modern Rust engineering meets Monero’s RandomX algorithm. Optimized for real-world rigs and safe for production hosts.
Note: This is an early-stage release. Expect rough edges while we stabilize and benchmark across more hardware. Bug reports and tuning data are especially valuable at this stage.
Table of contents
- Highlights
- Quick start
- Downloading and Verifying Releases
- Configuration
- Operating the miner
- Responsible usage
- Developer notes
- License
- Acknowledgments
- Contact
Highlights
TL;DR OxideMiner aims to be the most transparent, secure, and efficient RandomX CPU miner ever written in Rust.
-
⚡ Rust-first CPU miner: Built from the ground up in Rust for memory safety and predictable performance; with no C glue, no unsafe shortcuts. The
oxide-corecrate implements the RandomX hot loop, whileoxide-minerorchestrates worker threads through Tokio for maximum throughput and minimal overhead. -
🧠 Auto-tuned intelligence: At startup, OxideMiner introspects your CPU topology and cache sizes to pick the perfect thread count and batch size. You can always override them so you can squeeze every last drop of performance from you CPU.
-
🔒 TLS-ready stratum client: Secure pool connectivity via
--tls, with optional certificate pinning and custom CA support. -
📈 Prometheus-compatible metrics: The
/metricsendpoint exposes rich counters and gauges, ready for Grafana dashboards or cluster monitoring. -
🪶 Clean, structured logs: Human-readable by default, detailed under
--debug. Rotating log files keep long runs tidy. -
💎 Transparent dev fee: A fixed 1% developer fee, clearly logged and accounted for in metrics. No stealth mining, no surprises, just honesty.
-
📊 Built-in dashboard (with themes!): A modern, static web UI (HTML/CSS/JS fully embedded in the binary) shows hashrate, shares, uptime, connection state, build metadata, and a live ZMQ feed when solo ZMQ is enabled.

Now with extensible Themes like aurora and retro

Quick start
Super-Quick start
Download a pre-built binary from the Relases page, copy and rename 'config.toml.example' -> 'config.toml', fill in your desired pool & wallet address, run the miner:
Windows: .\oxide-miner.exe
Linux: ./oxide-miner
By default OxideMiner will look for a 'config.toml' file in the same directory as the binary, but you can supply the '--config <PATH_to_CONFIG.TOML>' argument.
Build from source
Prerequisites
The steps below are for if you want to build from source.
- Rust toolchain via rustup (stable channel). The workspace targets Rust 2021 edition.
- A Monero-compatible mining pool endpoint and wallet address.
- For solo mining: a fully-synced local
monerodwith JSON-RPC enabled. - Optional: elevated privileges for huge/large page support (see below).
Build and install
Clone the repository
git clone https://github.com/raystanza/OxideMiner.git
cd OxideMiner
Pick your compile method
OxideMiner supports multiple build configurations, depending on whether you want maximum compatibility or maximum performance on a specific machine.
cargo build --release
[OR]
cargo build --profile maxperf
[OR]
RUSTFLAGS="-C target-cpu=native" cargo build --profile maxperf
Explanation of each option:
-
cargo build --releaseBuilds OxideMiner using Cargo’s standardreleaseprofile. This produces a portable, optimized binary suitable for distribution and for running on a wide range of CPUs. Runtime CPU feature detection (AES, AVX2, etc.) is used to select the best available RandomX code paths at execution time. -
cargo build --profile maxperfBuilds using OxideMiner’s custommaxperfprofile, which enables more aggressive compiler optimizations (e.g. fat LTO, single codegen unit, stripped symbols). This improves performance while remaining portable across different CPUs. Recommended if you want better performance than--releasewithout sacrificing compatibility. -
RUSTFLAGS="-C target-cpu=native" cargo build --profile maxperfBuilds a host-optimized binary tuned specifically for the CPU on the machine performing the build. LLVM is allowed to fully specialize code generation for the host CPU (e.g. aes_ni, ssse3, avx2, avx512f, sse2). This typically yields the highest possible hash rate, but the resulting binary may not run on other machines.
Recommendation:
- Use
--releasefor general use and distribution.- Use
--profile maxperffor improved performance with broad compatibility.- Use
--profile maxperfwithtarget-cpu=nativewhen building for a specific machine and absolute maximum performance is desired.
Install executable on your PATH (optional, Debian Linux)
install -Dm755 target/release/oxide-miner "$HOME/.local/bin/oxide-miner"
The CLI can also be run directly with
cargo run -p oxide-miner --release -- <flags>while testing changes.
First run
Prefer the config.toml file for your first run. Copy config.toml.example to config.toml, fill in your pool and wallet, then run the miner.
# Preferred: config.toml in the same directory as the binary
./oxide-miner
By default OxideMiner looks for config.toml alongside the binary. Use --config <PATH> to point at a different file.
Command-line flags are also available if you prefer to launch without a config file:
# Example: plaintext stratum connection with HTTP dashboard on localhost (127.0.0.1:8080 by default)
oxide-miner \
--url <Your.Pool.of.Choice:Port> \
--user <YOUR_MONERO_WALLET> \
--pass rig001 \
--api-port 8080
Use --api-bind <ADDR> (for example --api-bind 0.0.0.0) if you need the dashboard reachable beyond 127.0.0.1.
For solo mining against a local monerod, use --mode solo (see the Solo mining section below).
Expected startup log flow:
- CPU introspection and auto-tune summary (threads, batch size, cache, NUMA, huge page availability).
- RandomX dataset initialization and worker spawn.
- Stratum handshake with the configured pool, including dev-fee scheduler announcements.
- HTTP API availability (if
--api-portis set.)
Downloading and Verifying Releases
The project publishes signed release artifacts on the GitHub Releases page.
Each release includes compressed binaries (.tar.gz for Linux, .zip for Windows), matching SHA-256 checksum files, and detached
GPG signatures (.asc). Always verify downloads before running them to protect against tampering.
1. Download the official artifacts
- Visit the Releases page and choose the tag you want (for example,
v0.4.0). - Download the archive for your operating system and the accompanying checksum (
.sha256). Download the.ascsignature files as well.
2. Verify SHA-256 checksums
Validati
Related Skills
himalaya
334.1kCLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).
node-connect
334.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
82.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
coding-agent
334.1kDelegate coding tasks to Codex, Claude Code, or Pi agents via background process
