CLI Commands Profiles Learn how to configure, manage, and interact with multiple key profiles in the Supra CLI.
On May 2nd, 2025 a new version of the CLI was released. The new image (v9.0.12) introduced a number of changes, including an improved profile feature which deprecated the key command of the previous version (v6.3.0).
Please be advised that this page has not yet been updated.
What Are CLI Key Profiles?
Profiles in the Supra CLI are configurations that allow you to manage multiple key pairs within your environment. Each profile is tied to a unique public/private key pair and serves as an identity for various operations, such as running a validator node, managing accounts, or accessing specific resources. Profiles can be created, activated, imported, or removed as needed, providing flexibility and security when working with different roles or use cases.
CLI Commands for Profiles
Here's how to use the Supra CLI commands to work with profiles:
List Profiles
View all available profiles in your current environment:
Copy supra key list-profile [OPTIONS]
Additional Options:
[OPTIONS ] = -r: Reveal secret keys to screen
Example:
Copy supra key list-profile
Result:
Copy ------------------------------------ Profile List -----------------------------------
exampleAddress
SmrPublicKey { account_address: "0xcdf7ac195644bd834c2f127bf17f970cdc90fec69414fe33fa461c7b8baa668d", ed25519_public_key
: 08b957cbd5c17bcca5769c8349a9bc9c5e235a19b2170d23d61360f2d8b7fb1d }
--------------------------------------------------------------------------------------
Active a Profile
Set a specific profile as active, so it is used for subsequent CLI commands:
Copy supra key activate-profile [OPTIONS] <NAME>
Additional Options:
[OPTIONS ] = -f: Run without password prompt but read from the `NODE_OPERATOR_KEY_PASSWORD` environment variable.
< NAME> = Name of profile to activate
Example:
Copy supra key activate-profile exampleAddress
Result:
Copy ------------------------------------ Profile List -----------------------------------
(*)exampleAddress
SmrPublicKey { account_address: "0xcdf7ac195644bd834c2f127bf17f970cdc90fec69414fe33fa461c7b8baa668d", ed25519_public_key
: 08b957cbd5c17bcca5769c8349a9bc9c5e235a19b2170d23d61360f2d8b7fb1d }
--------------------------------------------------------------------------------------
Generate a Profile
Create a new profile with a fresh key pair:
Copy supra key generate-profile [OPTIONS] <NAME>
Additional Options:
[OPTIONS ] = -f: Run without password prompt but read from the `NODE_OPERATOR_KEY_PASSWORD` environment variable.
< NAME> = Name of the profile to generate
Example:
Copy supra key generate-profile anotherExampleAddress
Result:
Copy ------------------------------------ Profile List -----------------------------------
(*)exampleAddress
SmrPublicKey { account_address: "0xcdf7ac195644bd834c2f127bf17f970cdc90fec69414fe33fa461c7b8baa668d", ed25519_public_key
: 08b957cbd5c17bcca5769c8349a9bc9c5e235a19b2170d23d61360f2d8b7fb1d }
anotherExampleAddress
SmrPublicKey { account_address: "0xec07bc3d5c30f85fb8a4c799aba5e2f185e420a2b223f4c1fc2a2a8eeef8192d", ed25519_public_key
: 680fffd96e017cc0dacf9350b7258e971e02d27c2e2686483bd2dbee5c13f5f5 }
--------------------------------------------------------------------------------------
Import an Existing Profile
Add an existing profile using its private key:
Copy supra key import-profile [OPTIONS] <NAME> <PRIVATE_KEY>
Additional Options:
[OPTIONS ] = -f: Run without password prompt but read from the `NODE_OPERATOR_KEY_PASSWORD` environment variable.
< NAME> = Name of the profile for the newly imported key
< PRIVATE_KEY> = A private key is a secret code that secures and controls access to a blockchain account.
Example:
Copy supra key import-profile anotherOneAddress 0x4c88b4a9e5c8924d36a8c9f8e2f9a7d4e6b9f1a2c3d4b5e6f7a8c9d012345678
Result:
Copy ------------------------------------ Profile List -----------------------------------
(*)exampleAddress
SmrPublicKey { account_address: "0xcdf7ac195644bd834c2f127bf17f970cdc90fec69414fe33fa461c7b8baa668d", ed25519_public_key
: 08b957cbd5c17bcca5769c8349a9bc9c5e235a19b2170d23d61360f2d8b7fb1d }
anotherExampleAddress
SmrPublicKey { account_address: "0xec07bc3d5c30f85fb8a4c799aba5e2f185e420a2b223f4c1fc2a2a8eeef8192d", ed25519_public_key
: 680fffd96e017cc0dacf9350b7258e971e02d27c2e2686483bd2dbee5c13f5f5 }
anotherOneAddress
SmrPublicKey { account_address: "0x608d604fd055b5428bb81c9a0591cfc62509f9965b88e3c633341e24b09982fb", ed25519_public_key
: 5ac625dee2f520734462774d60c8f9e02ab65b5a8815540e900c86b1cff80b39 }
--------------------------------------------------------------------------------------
Delete Profile
Delete an existing profile from your environment:
Copy supra key remove-profile <NAME>
Additional Options:
< NAME> = Name of the profile to be removed
Example:
Copy supra key remove-profile anotherOneAddress
Result:
Copy ------------------------------------ Profile List -----------------------------------
(*)exampleAddress
SmrPublicKey { account_address: "0xcdf7ac195644bd834c2f127bf17f970cdc90fec69414fe33fa461c7b8baa668d", ed25519_public_key
: 08b957cbd5c17bcca5769c8349a9bc9c5e235a19b2170d23d61360f2d8b7fb1d }
anotherExampleAddress
SmrPublicKey { account_address: "0xec07bc3d5c30f85fb8a4c799aba5e2f185e420a2b223f4c1fc2a2a8eeef8192d", ed25519_public_key
: 680fffd96e017cc0dacf9350b7258e971e02d27c2e2686483bd2dbee5c13f5f5 }
--------------------------------------------------------------------------------------