Skip to main content

Address Checker CLI

About

Address Checker CLI helps you check different security related information about the addresses with ease. To provide the information about the addresses we use our own address ban list and also GoPlus API.


License

Licensed under the PolyForm Noncommercial License 1.0.0. Commercial use requires a separate written commercial license agreement from the licensor — contact alex@vir-tec.net.


Key features

  • Supported Networks: Ethereum, Optimism, BSC, Arbitrum, Polygon, Base, Avalanche, Sonic, Solana, Tron, Sui
  • Pro mode: use EXTRA WALLET API key to be able to get more detailed info without any additional effort
  • Free mode: Do not want to use EXTRA WALLET API key? Provide your own GoPlus keys and receive the same information! You can also use the CLI without neither EXTRA WALLET nor GoPlus keys, but in that case you will receive much smaller amount of information.

How to run

This is the recommended way for most users.

Requirements

  • Node.js (v22)

Run

npx @extra-wallet/address-checker

This will:

  • download the CLI on demand,
  • start the interactive terminal UI

Option 2: Run locally from the repository (development)

Use this if you want to:

  • inspect the code,
  • modify the CLI,
  • contribute or debug.

Requirements

  • Node.js (v22)
  • pnpm

1. Install dependencies

From the repository root:

pnpm install

2. Build shared code

cd shared/sdk
pnpm build

3. Return to the root of the repository

cd ../..

4. Build the CLI

cd packages/address-checker-cli
pnpm build

5. Run locally

npx address-checker

How to use

The CLI can be run in two modes: interactive and non-interactive

To run the program in interactive mode you just have to follow the instructions of the previous step. In this mode you will be asked for needed inputs step by step. At the end you will be shown the risk level of the address

To run the program in non-interactive mode you have to also specify arguments using flags like this:

npx address-checker --address="..." --network="arbitrum" --extrawallet-key="..."

To get information about every argument, you can use help command:

npx address-checker help

Arguments

FlagRequiredDescriptionAliases
networktrueNetwork the address belongs ton
addresstrueThe address you want to check security information abouta
extrawallet-keyfalseYour EXTRA WALLET API keye, api-key, key
go-plus-keyfalseYour GoPlus app key
go-plus-secretfalseYour GoPlus app secret
verbosefalseWhether the full result of address check should be shown or the short one like in interactive mode. Defaults to falsev
formattedfalseWhether output should be formatted or raw json. Defaults to falsef

If extrawallet-key is already specified, there is no need to specify go-plus-key and go-plus-secret.

If neither extrawallet-key nor go-plus-key and go-plus-secret is specified, the address information will still be checked but by only using our own ban list, which only contains info about EVM and Tron addresses, which obviously decreases the quality of the result.

Output

Interactive Mode

At the end you will see text with risk level of the address like this: Address risk level: <risk level>

Non-interactive Mode

Depending on arguments specified you can see different json results. If formatted flag is used, the output json will be formatted for easier reading. If verbose is false, the json will have only one field: riskLevel. But if verbose is true, there will also be securityDetails field with much more detailed information about the address.

About Risk Levels

There are totally three risk levels: low, medium and high. High risk level means that the address is most likely somehow related to fishing, scam etc. Medium risk level indicates that the address is very likely, but not guaranteed to be related to some scam or other such stuff. Low risk level indicates that we could not find any information that would mark this address as scummy.

Be Careful

Low risk level does not guarantee that the address is safe. It only indicates that we could not find any information that would prove it to somehow be risky to interact with