Skip to content

CLI Reference

This is the command surface for @ckb-firewall/cli.

  • Node 20+ required
  • ESM only
  • Defaults point to the canonical testnet registry cell
  • The registry-touching commands read live registry cell data through RPC before they build or inspect anything

Show the current registry entries.

Options:

  • --rpc-url <url>
  • --registry-tx <hash>
  • --registry-index <n>

Example:

Terminal window
ckb-firewall inspect --rpc-url https://testnet.ckb.dev

Quickly append a lock args entry to the registry for testnet/dev use.

Options:

  • --lock-args <hex>
  • --expires-at <timestamp>
  • --rpc-url <url>
  • --registry-tx <hash>
  • --registry-index <n>
  • --tx-out <file>
  • --sign
  • --from-account <address>

Example:

Terminal window
ckb-firewall add \
--lock-args 0xabc123... \
--expires-at 0 \
--tx-out ./tx.json

Quickly remove a lock args entry for testnet/dev use.

Options:

  • --lock-args <hex>
  • --rpc-url <url>
  • --registry-tx <hash>
  • --registry-index <n>
  • --tx-out <file>
  • --sign
  • --from-account <address>

Example:

Terminal window
ckb-firewall remove \
--lock-args 0xabc123... \
--tx-out ./tx.json

Create a governance proposal.

Options:

  • --action <add|remove>
  • --lock-args <hex>
  • --expires-at <timestamp>
  • --evidence <text>
  • --classification <type>
  • --severity <level>
  • --rationale <text>
  • --proposer <name>

Example:

Terminal window
ckb-firewall propose --action add --lock-args 0xabc123... --proposer alice

List proposals and filter by status.

Options:

  • --status <status>

Record a validator vote.

Options:

  • --proposal <id>
  • --vote <choice>
  • --validator <id>

Example:

Terminal window
ckb-firewall vote --proposal abc123 --vote yes --validator alice

Add a governance signer signature.

Options:

  • --proposal <id>
  • --signer-index <0-4>
  • --key <hex>

Example:

Terminal window
ckb-firewall sign --proposal abc123 --signer-index 0

Build and submit the registry update transaction.

Options:

  • --proposal <id>
  • --rpc-url <url>
  • --registry-tx <hash>
  • --registry-index <n>
  • --tx-out <file>
  • --sign
  • --from-account <address>

Example:

Terminal window
ckb-firewall execute --proposal abc123 --tx-out ./tx.json

add and remove are convenience flows for testnet and development.

The public governance path is proposevotesignexecute.

If you need the live cell data that backs these commands, read How to Use.