Wallet Commander
The Wallet Commander is an open-source utility used for signing blockchain operations for Earn Management.
For blockchains like Axie Infinity's Ronin Network, it is not possible to deploy smart contracts to execute complex operations in a decentralized fashion.
Earn Management does not wish to and will never take custody of your private keys. We developed the Wallet Commander to run on your machine and automatically process operations that you have requested on Earn Management.
The owner of the wallet(s) that are being managed by a third-party, such as Earn Management, can register private keys with specific permissions on what the third-party is allowed to do with them.
The tool will be open source so that the code can be audited for safety and security. View the code here.
Current Statusβ
The Wallet Commander is currently in alpha status. Currently there is no whitelist protection of ensuring wallet commands are transferring assets amongst wallets you have approved. We are aiming to quickly get the Wallet Commander to beta status with improved security.
Getting Startedβ
First, install the wallet-commander
on your computer. Depending on the machine youβre using, follow the correct installation instructions below.
Installationβ
Windowsβ
Ensure you have the following requirements on your Windows machine:
Windows 7 SP1+ / Windows Server 2008+ PowerShell 5 (or later, include PowerShell Core)
Start powershell as an administrator and run the following command to install the wallet-commander
to your PATH.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/earn-alliance/wallet-commander-cli/main/install.ps1')
Once completed, you may open up a new Powershell command prompt and then run the wallet-commander help
command to confirm it has been installed successfully.
Macβ
Install the wallet-commander
on your machine by running the following commands.
curl -L https://raw.githubusercontent.com/earn-alliance/wallet-commander-cli/main/install.sh | bash
Restart the terminal and then run the wallet-commander help
command to confirm it has been installed successfully.
Linuxβ
Run the following commands β which will ensure you have unzip installed β and install the wallet-commander
to your path:
sudo apt-get install -y unzip
curl -L https://raw.githubusercontent.com/earn-alliance/wallet-commander-cli/main/install.sh | bash
Restart the terminal and then run the wallet-commander help
command to confirm it has been installed successfully.
Process Remote Commandsβ
Processing remote commands allows you to sign requests for Earn Management.
First, you need to set up your private keys. Then, you can run the wallet-commander
.
Set Up Private Keysβ
To start signing remote commands such as Payments, Claims and Distribution of Accounts, you will need to first set up your secrets.json
file, which is a json map of a {ronin-address}:{private-key}
.
To create your secrets.json
file:
- Open any text editor on your computer
- Use this template
{ronin-address}:{private-key}
- Name the file
secrets
and save it with the.json
extension
To find your private key:
- Go to your ronin account
- Click Manage at the top right
- Find the wallet
- View private key
Your secrets.json
file will look like this:
{
"ronin:ab673081b96b53ed7de9f87c5256212c2dbc016e":"0x4e2148146b276353252532b038c732e2fc",
"ronin:966d60933325252532969e1b5aasfafafafdsfafsd": "0x8643bb38c2e753252527e308022a3",
"ronin:f3392d399d67cfaa6094e202d21139cab65f3cb0":"0xfda4fe502532525252c0327931fdbe2ed4946"
}
Start the wallet-commander
β
Once your private keys file is ready, you can start the wallet-commander
to sign operations on your behalf.
To do this you will need to get your Client ID from Earn Management.
Click the Settings icon at the top right of your account and go to the Wallet Commander.
At the top right, you will find your Client ID.
Copy that and run the following command in your terminal.
wallet-commander start earn-alliance --client-id [enter-client-id-here]
The secrets.json
file must be stored in the same folder from which the Wallet Commander is run.
To ensure your secrets.json
file is stored in the correct location, run this command (remembering to enter your Client ID in the command):
wallet-commander start earn-alliance --client-id [enter-client-id-here] --secrets-file ../secrets.json
If you are successful, you will find the following logs:
Usageβ
When the wallet-commander
is running, it takes transaction requests from Earn Management and signs them with your private keys. The following events may occur when performing operations with Earn Management:
- Ronin Claims - When processing a PENDING_CLAIM event from a Payment Event, the Wallet Commander will sign and request claims on your behalf
- SLP Transfers - When transferring SLP, the Wallet Commander will sign transfer requests to execute a Payment Event
- Axie Transfers - When distributing Axies with Team Matchmaking, the Wallet Commander will sign transfers of Axie assets
In the future, the following operations will be added:
- AXS Claims and Transfers - Ability to transfer AXS and claim winnings
- RON Transfers - Automatically transfer RON to accounts in need
- Account Creation and Validation - Automatically create new ronin wallets and validate their emails