Frequently Asked Questions
Do I need Docker and a local node?
Do I need Docker and a local node?
node manages. If you already run an RGB Lightning Node elsewhere, point the CLI at it with --node-url and skip Docker entirely.Should I use kaleido setup or kaleido node create?
Should I use kaleido setup or kaleido node create?
setup is the first-run path, node create is the wizard for additional environments.kaleido setupsaves your API and node defaults to~/.kaleido/config.jsonand, inlocalmode, creates and starts one environment with default ports. Barekaleido setupruns non-interactively, so Docker must already be running.kaleido node create [name]prompts for base directory, name, node count, network, and base ports. Use it when you want a second environment or non-default ports.
Why are my swap amounts off by orders of magnitude?
Why are my swap amounts off by orders of magnitude?
--from-amount 0.001 is right for a quote, while kaleido asset send rgb:abc... 100 rgb:invoice... sends 100 raw units, not 100 display units. Check an asset’s precision with kaleido asset metadata <asset-id> before sending.What is the difference between swap atomic and node swap?
What is the difference between swap atomic and node swap?
kaleido swap atomic run <pair> wraps init, whitelist, and execute in one command. See Market And Swaps.Which layer values can I pass?
Which layer values can I pass?
market quote—BTC_LN,RGB_LN,BTC_ONCHAINswap atomic initandswap atomic run—BTC_L1,BTC_LN,RGB_L1,RGB_LN
--from-layer and --to-layer are optional: when omitted, the layers are derived from the requested pair direction. Pass them explicitly when you need a specific route, such as sending over Lightning and receiving over RGB on Lightning:Does the CLI hold my keys?
Does the CLI hold my keys?
kaleido node init, and every signature happens there. Nothing in the CLI can move funds the node has not authorised.Wallet passwords passed with --password land in your shell history — prefer the interactive prompt for anything you care about, and keep backups from kaleido wallet backup somewhere safe.Why do I have to unlock after every restart?
Why do I have to unlock after every restart?
kaleido node init runs once per node; kaleido node unlock runs after every restart.Unlock also tells the node which Bitcoin services to use. Interactively the CLI offers three profiles — signet defaults, regtest defaults, or custom — and asks how the node should follow the chain:--chain-sync block(default) reads blocks from a bitcoind over RPC--chain-sync transactionfollows the chain from the indexer only, with no bitcoind at all
--chain-sync transaction, the --bitcoind-* options are ignored. See Node Environments.Which configuration wins — flag, environment variable, or config file?
Which configuration wins — flag, environment variable, or config file?
- Command-line flags:
--node-url,--api-url - Environment variables:
KALEIDO_NODE_URL,KALEIDO_API_URL - Stored config in
~/.kaleido/config.json
kaleido config show and its path with kaleido config path. Note that kaleido node use <name> writes to the stored config, so it has no effect on a command that also passes --node-url.Can I run several nodes at once?
Can I run several nodes at once?
up, stop, logs, and clean auto-detect it; with several, you must name one.What is the difference between node stop, down, and clean?
What is the difference between node stop, down, and clean?
clean is irreversible: it takes the environment down and then deletes the data volumes, wallet included. Take a kaleido wallet backup first if the node holds anything you need.Why do I need to create UTXOs for RGB assets?
Why do I need to create UTXOs for RGB assets?
--up-to changes --num from “create this many” to “top up to this many in total”.How do I drive the CLI from a script or an agent?
How do I drive the CLI from a script or an agent?
--jsonreturns raw JSON instead of tables, for piping intojq--agentdisables every interactive prompt, so a missing value fails instead of blocking--yesaccepts quotes, payments, and destructive confirmations that would otherwise prompt
--yes is required in non-interactive mode to accept the quoted price. See Troubleshooting.Is the CLI built on the KaleidoSDK?
Is the CLI built on the KaleidoSDK?
kaleido-sdk), which is why command output maps so closely onto the API models. Practical consequences:- Requests use a 30-second timeout and up to 3 retries
- Errors surface as
Error: <message>from the underlying SDK exception, so the SDK error reference explains what a failure means market quotedisplay amounts are converted with the same precision helpers the SDK exposes
CLI, SDK, or Desktop App?
CLI, SDK, or Desktop App?
How do I install it, update it, and check which version I have?
How do I install it, update it, and check which version I have?
pip install kaleido-cli will not find it. Use the bootstrap installer or uv:uv installs replace the existing tool. There is no kaleido --version flag, so report your version as the output of uv tool list or the commit you installed from. Full options in Installation.Get Help
Check the Troubleshooting for errors rather than questions, and Additional Resources for upstream documentation and links. For anything else, report a problem through your preferred channel from the options below, including:- How you installed the CLI, and the output of
uv tool list(there is no--versionflag) - Python version (
python --version) and your operating system - The exact command you ran, plus its output with
--jsonadded - Whether the node is a local Docker environment or a remote one, and the network
kaleido config showandkaleido node psoutput, with passwords removed