A
arkd
arkd is the server implementation of Arkade, enabling offchain transactions, onchain settlement, and virtual output management. It runs as two processes (arkd and arkd-wallet) and exposes APIs via ArkService, IndexerService, and AdminService for coordination, querying, and administration.
ArkService
The ArkService is the primary gRPC/REST API of arkd, handling the core business logic of Arkade. It manages intents, batch coordination, MuSig2 signing, and offchain virtual output spending, while also providing real-time transaction streams.Arkade Asset
An Arkade Asset is a Bitcoin-native token that lives on virtual outputs and moves through standard Arkade transactions. Assets are issued, transferred, and burned via the SDK’sassetManager interface. Each asset is identified by a permanent assetId derived from its issuance transaction, and can carry immutable metadata (name, ticker, decimals, icon). Supply can optionally be kept open-ended by referencing a Control Asset at issuance time.
Arkade
An open execution engine for Bitcoin that enables programmable money through offchain coordination while preserving Bitcoin’s security guarantee. Arkade virtualizes Bitcoin’s transaction capabilities to enable instant, parallel execution without consensus changes.Arkade Operator
The Arkade Operator is the coordinator of Arkade’s virtual execution engine who validates transactions, forwards requests to the Arkade Signer, and aggregates operations into onchain commitment transactions. Cannot unilaterally spend user virtual outputs due to architectural constraints.Arkade Script
Arkade Script is an enhanced version of Bitcoin Script that enables expressive and stateful transaction flows. It extends Bitcoin’s opcodes with additional primitives for introspection, arithmetic, logic, and asset operations, running exclusively in the preconfirmation state.Arkade Script Compiler
The Arkade Script Compiler is an experimental development tool that translates high-level contract logic into executable Arkade Script code. Inspired by Bitcoin scripting languages like Ivy and CashScript, it verifies scripts preserve Arkade constraints and unilateral exit guarantees.Arkade Signer
The Arkade Signer is an independent entity that manages the cryptographic keys used for cosigning user transactions. Operates within a TEE and generates a single key that all Arkade addresses require for virtual output cosigning, isolated from operator control.Arkade Transaction
Arkade Transactions are the default transaction type within Arkade. They are standard presigned Bitcoin transactions used within Arkade to coordinate offchain execution with unilateral exit option for the user.B
Batch Expiry
The batch expiry is a timeout mechanism where Batch Outputs can be swept by the Arkade Operator after a predetermined period. Essential for operator liquidity management, as the operator must front capital while users transition between virtual outputs.Batch Output
A batch output is a single Bitcoin output that consolidates multiple users’ ownership claims through a tree of presigned virtual transactions. Created through Commitment Transactions and locked to a Taproot address with specific spending conditions.Batch Swaps
A batch swap is the process of aggregating multiple Arkade Transactions into a single onchain Commitment Transaction, allowing many offchain operations to be compressed into one Bitcoin transaction output.BIP322
BIP322 defines a standard for signing arbitrary messages in Bitcoin using virtual transactions, enabling secure proofs of address ownership for any script type, including multisig and Taproot, which can then be used with intents.Bitcoin Finality
The highest level of transaction security achieved when virtual outputs are anchored to the Bitcoin blockchain through a Commitment Transaction, inheriting Bitcoin’s security guarantees.C
Collaborative Path
One of two spending paths of a virtual output that requires both the owner’s signature and a cosignature from the Arkade Signer. This is the default path used for Arkade operations, enabling instant offchain transactions.Control Asset
A Control Asset is a special Arkade Asset that authorizes supply changes for another asset. When an asset is issued with acontrolAssetId, the holder of that control asset can reissue (increase supply) at any time. Transferring the control asset transfers reissuance authority; burning it permanently disables reissuance.
Commitment Transaction
A commitment transaction is the onchain Bitcoin transaction that finalizes Batch Outputs as settlements, serving as the anchor for users to enforce their offchain balances onchain using presigned transaction paths.D
DAG (Directed Acyclic Graph)
A DAG is the data structure used in Arkade’s Virtual Mempool where transactions form nodes that explicitly encode dependencies, enabling parallel execution of independent transaction branches.E
Emulator
The Emulator is a cosigner that evaluates Arkade-specific opcodes — covenants, custom arithmetic, and other spending conditions Bitcoin consensus doesn’t natively enforce. Anyone can run an emulator; it isn’t exclusive to the operator, though the operator runs one as part of the execution stack alongsidearkd (coordination) and the Arkade Signer (cosigning).