Alkanes protocol docs

History

Changelog

Two different histories matter here: the version history of this documentation, and the heights at which the protocol itself changed behaviour on chain. Both are below.

Documentation versions

1.0.0, 1 September 2026

Complete rebuild. The previous site was marketing copy with no protocol detail; this version documents the wire format and the indexer semantics against alkanes-rs 2.2.1-rc.4.

Corrections made in this version

Before 1.0.0

The repository published a single promotional page describing Alkanes in general terms. It contained no wire format, no specification, no test vectors, and no tooling. Its accurate claims, that Alkanes brings WebAssembly contracts to Bitcoin through protorunes and that only a confirmed transaction changes on-chain state, are preserved in this version.

Protocol heights this documentation describes

Alkanes has no version number on chain. Behaviour changes at fixed heights instead, so an implementation must know which side of each height it is on.

Bitcoin mainnet, from src/network.rs and src/vm/fuel.rs.
HeightChange
880,000Alkanes genesis. Below this height the indexer processes the Runes layer only and performs no alkanes setup or execution.
899,087Fuel change. Block fuel rises from 100,000,000 to 1,000,000,000, the per-transaction floor rises, and the per-byte storage cost rises from 8 to 40.
908,888Genesis alkane upgrade.
917,888Genesis alkane EOA upgrade.
943,500Fuel enforcement becomes strict, and the edict spread behaviour is corrected so that OP_RETURN outputs are skipped before per-output amounts are computed rather than after.
950,000V220 fork height.
957,000 and 960,000fr-BTC contract fork heights.

On regtest every one of these heights is 0, which is why a contract that behaves correctly in the test harness still needs its mainnet activation height checked.

Implementation versions

ComponentVersion
alkanes-rs workspace2.2.1-rc.4
@alkanes/ts-sdk0.1.6
This documentation1.0.0