bchnodetool mimics a real bitcoincashnode's RPC behavior. You can use it with the following steps:
action, where the action can be "add", "edit" or "retire".
bchnodeproduces blocks with fixed interval (default is 3 seconds) to vote for the validators.
bchnodewill simulate a fork at the height which is 8 blocks less than current height, and re-generate the recent 8 blocks.
bchnodeto follow the voting power and pubkeys specified in genesis.json
bchnode, such that at new epochs, the smartbchd follows the new voting power.
bchnode, and smartbchd can work normally.
bchnodevote them to be active.