From Rust source to decoded trace.
Labcoat is the Rust-native CLI for building, testing, and operating Alkanes smart contracts on Labcoat Network, a managed local Bitcoin regtest.
Early-stage software for local Alkanes development. Interfaces may change before 1.0; mainnet deployment controls are not production-ready.
Labcoat provides one command system for scaffolding Rust contracts, native tests, WebAssembly builds, Labcoat Network, wallets, deployment, calls, simulation, traces, JSON automation, and MCP.
Labcoat Network is Labcoat's local, private, resettable Alkanes network. It runs Bitcoin regtest under the hood. It is not Signet.
Website · Documentation · Agent index · Security policy
curl -fsSL https://labcoat.sh/install | sh
labcoat doctorThe installer verifies the published SHA-256 checksum and writes labcoat to
${LABCOAT_INSTALL_DIR:-$HOME/.local/bin}. Install or roll back to an exact
version with:
curl -fsSL https://labcoat.sh/install | sh -s -- 0.1.0CLI binaries are available for macOS and Linux on arm64 and x86_64. The Labcoat Network runtime currently supports macOS arm64 and Linux x86_64. Windows is not supported.
Contract compilation requires LLVM Clang with a WebAssembly backend:
brew install llvm # macOS
sudo apt install clang wasi-libc # Debian/UbuntuSee the installation guide for verification, upgrades, rollback, supported platforms, and data locations.
labcoat init hello-alkane
cd hello-alkane
labcoat test
labcoat up
labcoat wallet init
labcoat wallet addresses
labcoat fund <address>
labcoat mine 1
labcoat deploy counter
labcoat simulate counter get_count
labcoat call counter increment
labcoat trace <txid> --waitStop the local environment with labcoat down. Run labcoat --help,
labcoat <command> --help, or labcoat docs --llm for the complete reference
matching your installed executable.
Each cli-vX.Y.Z release is one tested compatibility unit:
- four native CLI executables and their checksums;
- the exact Qubitcoin runtime assets supported by that CLI;
- the matching
labcoat-testsource used by generated projects.
labcoat up downloads only the runtime bundle for the installed CLI version
and caches it in a versioned directory. It does not look for independently
newer runtime files. Upgrade the CLI to receive a newer runtime.
The workspace is pinned to Rust 1.86.0.
cargo fmt --all -- --check
cargo check --workspace --locked
cargo test --workspace --locked
cargo clippy --workspace --locked -- -D warningsRepository layout:
crates/isomer-core/ managed Labcoat Network runtime
crates/labcoat-core/ contract, wallet, deployment, and trace operations
crates/labcoat-cli/ CLI, MCP server, templates, and runtime build inputs
crates/labcoat-test/ native WebAssembly contract test harness
apps/web/ website and user documentation
Read CONTRIBUTING.md before making changes, TOOLCHAIN.md before updating pinned upstream dependencies, and docs/RELEASING.md before preparing a release.