Set correct node version (see .nvmrc
) with nvm
nvm use
Install requirements with yarn:
yarn
Create .env
file to use the commands (see .env.sample
for more info):
NETWORK
- Network that should be used (e.g.rinkeby
,mainnet
orcustom
)PK
orMNEMONIC
- Credentials for the account that should be usedINFURA
- For network that use Infura based RPCNODE
- RPC node forcustom
network (optional)
Use yarn safe help <command>
to get more information about parameters of a command.
Example:
yarn safe help create
Creates and setups a Safe proxy via the proxy factory. All parameters of the Safe setup
method can be configured.
This will deploy a Safe that uses the first imported account as an owner and set the threshold to 1.
yarn safe create
Displays information about a Safe
yarn safe info <address>
Creates a proposal json file for a Safe transaction that can be shared. The name of the json file will be <safe_tx_hash>.proposal.json
and it will be stored in the cli_cache
folder.
This will create a transaction from the Safe to the target without any value or data.
yarn safe propose <address> --to <target>
This will create a transaction based on the sample tx input json that mints some WETH and sets an approve for it.
yarn safe propose-multi <address> tx_input.sample.json
Shows the information of the proposal.
Note: This requires the proposal file created before for that Safe transaction in the cli_cache
.
yarn safe show-proposal <safeTxHash>
Signs a proposal with the imported account
Note: This requires the proposal file created before for that Safe transaction in the cli_cache
.
yarn safe sign-proposal <safeTxHash>
Submits a proposal with the imported account
Note: This requires the proposal file created before for that Safe transaction in the cli_cache
.
yarn safe submit-proposal <safeTxHash>
Displays the transaction history of a Safe based on events
yarn safe history <address>
All contracts are WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
All smart contracts are released under LGPL-3.0