Skip to content
These docs track the current main branch. Run labcoat docs --llm for the reference bundled with your installed version.Release details

Quick start

Terminal window
labcoat init hello-alkane
cd hello-alkane
labcoat test

Run labcoat init without a name to enter it interactively. Initialization always creates a new folder and refuses an existing destination.

Every project starts with a fixed Counter contract. Add another minimal contract package and matching host test from anywhere inside the project:

Terminal window
labcoat new token

The generated project contains Rust contract sources, native integration tests, public configuration, deployment state, and agent instructions.

Terminal window
labcoat up
labcoat status
labcoat wallet init
labcoat wallet addresses

Fund the displayed P2TR address and confirm it:

Terminal window
labcoat fund <address>
labcoat mine 1
labcoat wallet utxos
Terminal window
labcoat build counter
labcoat deploy counter --dry-run
labcoat deploy counter

Deploy selects and recompiles the exact Cargo package before creating the commit/reveal envelope and recording the resulting Alkanes ID in labcoat.lock. Use --wasm <path> only for an external raw Wasm artifact.

Terminal window
labcoat simulate counter get_count
labcoat call counter increment
labcoat trace <txid> --wait

Method names resolve against the deployed contract. A matching generated ABI avoids an indexer metadata request; if the local build differs, Labcoat warns and uses deployed metadata. Numeric opcodes remain available when you need to provide raw cellpack arguments. Simulation always uses deployed code and live indexed state; use labcoat test counter for an undeployed local build.

Finish by stopping the shared Labcoat Network:

Terminal window
labcoat down