Skip to main content

Named Environment Model

kaleido node manages named Docker Compose environments stored under a base directory, which defaults to:
Each environment gets its own compose file and volumes, which makes it practical to keep separate local stacks for development, testing, or demos. Example layout:
Each node in an environment is a rgb_node_<n> service with its own data volume. Only the node itself runs locally: bitcoind, the indexer, and the RGB proxy are remote services.

Create An Environment

The wizard prompts for:
  1. Base directory
  2. Environment name
  3. Node count
  4. Bitcoin network
  5. Base daemon and peer ports
  6. Whether to start the environment immediately

Lifecycle Commands

When exactly one environment exists, commands like up, stop, logs, and clean can auto-detect it.

Switch The Active Node

Use kaleido node use to update the configured node URL:
Node 1 listens on daemon port 3001 and peer port 9735, node 2 on 3002 and 9736, and so on from the base ports chosen at creation. kaleido node list marks the active node with ●. This is the bridge between Docker-managed environments and all node-dependent commands such as wallet, asset, channel, and payment.

Initialize And Unlock

After a fresh environment starts, initialize the wallet once:
Key options:
  • --password to pass the wallet password directly
  • --mnemonic to restore from an existing mnemonic during initialization
After every restart, unlock the wallet:
Unlock is also where the node learns which Bitcoin services to use. Run interactively, it offers a service profile — signet defaults, regtest defaults, or custom — and then asks how the node should follow the chain.

Chain sync mode

With transaction, every --bitcoind-* option is ignored:

Unlock options

By default the command uses the KaleidoSwap signet services. For a scripted unlock, pass the password explicitly and disable prompts:

Inspect And Lock

Use info to confirm the node is reachable and correctly configured before running wallet, channel, or swap flows.

Node Swap Operations

The nested swap group supports atomic and low-level swap operations on the node side:

Operational Notes

  • clean is irreversible because it removes the underlying data volumes.
  • down removes containers and networks, but preserves volumes.
  • logs accepts --service to limit output to one container.
Continue to Wallet, Assets, And Payments for the commands you run against an unlocked node.