Kaspa CPU Miner v0.2.7 was released on April 16, 2026 for testnet and development mining. It added a custom user-agent suffix, a multi-architecture Docker build workflow, and the computeBudget field to the miner’s transaction RPC schema. The release did not make CPU mining competitive on Kaspa mainnet or change consensus by itself.
Key takeaways
- The official release lists three changes: user-agent suffix support, Docker image automation, and
computeBudgetinRpcTransactionInput. - The project’s README identifies the miner as a testnet and development tool, not a competitive mainnet miner.
- Preserving
computeBudgetprevented a post-covenant transaction from changing during a gRPC round trip. - Docker support improved repeatable deployment but did not remove the need to secure the node endpoint and mining address.
- v0.2.7 was tooling compatibility work, not evidence of higher profitability, a consensus activation, or a KAS price outcome.
What changed in Kaspa CPU Miner v0.2.7?
The official v0.2.7 release notes name contributions from PRs #3, #5, and #7. PR #3 added --user-agent-suffix, allowing an operator to append identifying text to the RPC client’s user agent and log the resulting value at startup. PR #5 added a Docker build script and workflow for multi-architecture images.
PR #7 updated the protocol schema with a computeBudget field on RpcTransactionInput. Although it was a one-field change, it protected the integrity of version-1 transaction data crossing the miner’s gRPC boundary.
Why did the computeBudget field matter?
The official PR #7 explanation says that, after covenant activation, version-1 transaction hashing included the compute-budget field in the relevant transaction commitment. Without the field in the miner’s protobuf schema, a transaction could lose it while being converted through gRPC. The reconstructed transaction would differ, causing a block to fail with BadMerkleRoot.
This is a serialization-consistency issue, not extra mining performance. Every component that receives, converts, and returns a transaction must preserve consensus-relevant data exactly. The related Kaspa Python wallet API overview describes another language boundary where typed fields and error mapping matter.
What did Docker support improve?
The Docker contribution added a build script and release workflow designed to produce multi-architecture images. Its PR described tags for ordinary pushes, prereleases, and releases. Containers can make a test miner easier to reproduce across machines and simplify paired testnet setups in which the node and miner are managed as separate services.
Containerization does not verify the image’s origin for an operator. Use the official repository or registry named by the project, pin an explicit version or digest when reproducibility matters, and review the command before exposing a node’s gRPC port. A container still receives the mining address and network endpoint supplied to it.
Who should use the CPU miner?
The official cpuminer README states that it is maintained for Kaspa testnets and development networks and that CPU mining is no longer used for competitive mainnet mining. Its examples run with --testnet, a testnet address, and a reachable testnet kaspad instance. A throttle option exists specifically for development testing.
That scope makes the tool useful for bootstrapping a private development network, producing test blocks, exercising mining RPC changes, and supporting testnets where CPU accessibility is valuable. It should not be marketed as a shortcut to profitable mainnet mining.
How should developers run v0.2.7 safely?
Use a testnet-only address and confirm the node’s network before starting. Restrict the node RPC interface to trusted hosts or a private network; do not expose it publicly just to make a container connect. Pin the miner version, retain startup logs, and use the user-agent suffix only for non-secret operational labels.
Monitor both the miner and node for rejected templates or blocks. A BadMerkleRoot error signals a structural mismatch, not something to suppress and retry indefinitely. When testing covenant-era software, keep node, miner, and RPC schema versions aligned. The SilverScript covenant declaration guide covers contract-facing changes, while cpuminer addresses block-production tooling.
Did v0.2.7 activate covenants or change mining rewards?
No. The release made the miner compatible with a field expected by later transaction rules. Network activation belongs to node consensus parameters and an announced upgrade process. The release notes do not change block rewards, issuance, proof-of-work, or mainnet hardware economics.
Accordingly, v0.2.7 provides no basis for a KAS price forecast or mining-return claim. Its value is reproducible test infrastructure and correct data transport.
Frequently asked questions
Is Kaspa CPU Miner v0.2.7 intended for mainnet profit mining?
No. The official README explicitly positions it for testnets and development networks and says CPU mining is not competitive on mainnet.
What does the user-agent suffix do?
It appends operator-chosen text to the RPC client user agent, which can help identify test instances in logs. It is not authentication.
Why can dropping one RPC field reject a block?
If conversion changes a transaction included in the block’s committed data, the node can compute a different Merkle root and reject the block.
Did the release guarantee an official image for every architecture?
It added the build script and workflow for multi-architecture images. Operators should still verify the actual published artifact and tag they use.
Source and verification note
This article is based on the official cpuminer v0.2.7 release, computeBudget PR #7, Docker PR #5, and the project README. These sources establish the release date, three listed changes, gRPC failure mode, and testnet/development scope. They do not establish mainnet activation, image provenance on a particular registry, profitability, hashrate gains, reward changes, or a KAS price effect.






